Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 24 – Internet Applications – Multimedia.

Slides:



Advertisements
Similar presentations
1 IP Telephony (VoIP) CSI4118 Fall Introduction (1) A recent application of Internet technology – Voice over IP (VoIP): Transmission of voice.
Advertisements

July 20, 2000H.323/SIP1 Interworking Between SIP/SDP and H.323 Agenda Compare SIP/H.323 Problems in interworking Possible solutions Conclusion Q/A Kundan.
29.1 Chapter 29 Multimedia Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
29.1 Chapter 29 Multimedia Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
RTP: A Transport Protocol for Real-Time Applications Provides end-to-end delivery services for data with real-time characteristics, such as interactive.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 25 Multimedia.
1 Chapter 3 TCP and IP. Chapter 3 TCP and IP 2 Introduction Transmission Control Protocol (TCP) Transmission Control Protocol (TCP) User Datagram Protocol.
Session Initiation Protocol Winelfred G. Pasamba.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
UNCW UNCW SIGGRAPH 2002 Topic #3: Continuous Media in Wired and Wireless Environments Ronald J. Vetter Department of Computer Science University of North.
Session Initiation Protocol (SIP) By: Zhixin Chen.
SIP/RTP/RTCP Implementation by George Fu, UCCS CS 525 Semester Project Fall 2006.
VoIP Using SIP/RTP by George Fu, UCCS CS 522 Semester Project Fall 2004.
Chapter 6: Distributed Applications Business Data Communications, 5e.
Real-time traffic Dr. Abdulaziz Almulhem. Almulhem©20012 Agenda RT traffic characteristic RT traffic profiles RT traffic requirements RT Architecture.
12/05/2000CS590F, Purdue University1 Sip Implementation Protocol Presented By: Sanjay Agrawal Sambhrama Mundkur.
EE 4272Spring, 2003 Protocols & Architecture A Protocol Architecture is the layered structure of hardware & software that supports the exchange of data.
SIP, Session Initiation Protocol Internet Draft, IETF, RFC 2543.
Real-time Transport Protocol Matt Boutell CS457: Computer Networks November 15, 2001.
TCP/IP Protocol Suite 1 Chapter 25 Upon completion you will be able to: Multimedia Know the characteristics of the 3 types of services Understand the methods.
Introduction to SIP Speaker: Min-Hua Yang Advisor: Ho-Ting Wu Date:2005/3/29.
CS 218 F 2003 Nov 3 lecture:  Streaming video/audio  Adaptive encoding (eg, layered encoding)  TCP friendliness References: r J. Padhye, V.Firoiu, D.
CIS679: RTP and RTCP r Review of Last Lecture r Streaming from Web Server r RTP and RTCP.
Advance Computer Networks Lecture#14
Session Initiation Protocol Team Members: Manjiri Ayyar Pallavi Murudkar Sriusha Kottalanka Vamsi Ambati Girish Satya LeeAnn Tam.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
1 Kommunikatsiooniteenuste arendus IRT0080 Loeng 4 Avo Ots telekommunikatsiooni õppetool, TTÜ raadio- ja sidetehnika inst.
Computer Networks: Multimedia Applications Ivan Marsic Rutgers University Chapter 3 – Multimedia & Real-time Applications.
Call Control with SIP Brian Elliott, Director of Engineering, NMS.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
Digital Multimedia, 2nd edition Nigel Chapman & Jenny Chapman Chapter 17 This presentation © 2004, MacAvon Media Productions Multimedia and Networks.
Multimedia Over IP: RTP, RTCP, RTSP “Computer Science” Department of Informatics Athens University of Economics and Business Λουκάς Ελευθέριος.
TCP/IP Protocol Suite 1 Chapter 25 Upon completion you will be able to: Multimedia Know the characteristics of the 3 types of services Understand the methods.
Session Initiation Protocol (SIP). What is SIP? An application-layer protocol A control (signaling) protocol.
IP Multicast A convention to identify a multicast address Each node must translate between an IP multicast address and a list of networks that contain.
1 Lecture 17 – March 21, 2002 Content-delivery services. Multimedia services Reminder  next week individual meetings and project status report are due.
Fall 2005 By: H. Veisi Computer networks course Olum-fonoon Babol Chapter 6 The Transport Layer.
Presented By Team Netgeeks SIP Session Initiation Protocol.
Team Members Atcharawan Jansprasert Padmoja Roy Rana Almakabi Ehsan Eslamlouevan Manya Tarawalie.
03/11/2015 Michael Chai; Behrouz Forouzan Staffordshire University School of Computing Streaming 1.
SIP:Session Initiation Protocol Che-Yu Kuo Computer & Information Science Department University of Delaware May 11, 2010 CISC 856: TCP/IP and Upper Layer.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Chapter 28 Multimedia.
Chapter 28. Network Management Chapter 29. Multimedia
Omar A. Abouabdalla Network Research Group (USM) SIP – Functionality and Structure of the Protocol SIP – Functionality and Structure of the Protocol By.
VoIP Signaling Protocols A signaling protocol is a common language spoken by telephones and call-management servers, the PSTN, and legacy PBX systems as.
Multimedia and Networks. Protocols (rules) Rules governing the exchange of data over networks Conceptually organized into stacked layers – Application-oriented.
Session Initiation Protocol (SIP) Chapter 5 speaker : Wenping Zhang data :
Digital Multimedia, 2nd edition Nigel Chapman & Jenny Chapman Chapter 17 This presentation © 2004, MacAvon Media Productions Multimedia and Networks.
CSE5803 Advanced Internet Protocols and Applications (14) Introduction Developed in recent years, for low cost phone calls (long distance in particular).
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Protocols and Architecture Slide 1 Use of Standard Protocols.
TCP/IP Protocol Suite 1 Chapter 25 Upon completion you will be able to: Multimedia Know the characteristics of the 3 types of services Understand the methods.
Multimedia Streaming I. Fatimah Alzahrani. Introduction We can divide audio and video services into three broad categories: streaming stored audio/video,
1 Internet Telephony: Architecture and Protocols an IETF Perspective Authors:Henning Schulzrinne, Jonathan Rosenberg. Presenter: Sambhrama Mundkur.
The Session Initiation Protocol - SIP
3/10/2016 Subject Name: Computer Networks - II Subject Code: 10CS64 Prepared By: Madhuleena Das Department: Computer Science & Engineering Date :
S Postgraduate Course in Radio Communications. Application Layer Mobility in WLAN Antti Keurulainen,
7: Multimedia Networking7-1 protocols for real-time interactive applications RTP, RTCP, SIP.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 24 – Internet Applications – Multimedia.
The Transport Layer Congestion Control & UDP
Chapter 9: Transport Layer
Chapter 29 Multimedia Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
IP Telephony (VoIP).
RTP: A Transport Protocol for Real-Time Applications
Session Initiation Protocol (SIP)
Chapter 6: Distributed Applications
Chapter 25 Multimedia TCP/IP Protocol Suite
Multimedia and Networks
Real Time Streaming Protocol
Computer Networks Protocols
Presentation transcript:

Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 24 – Internet Applications – Multimedia

Internet Applications – Multimedia Prior to the recent explosion of sophisticated research, scientists believed that birds required no special awareness or intelligence to perform their migrations and their navigational and homing feats. Accumulated research shows that in addition to performing the difficult tasks of correcting for displacement (by storms, winds, mountains, and other hindrances), birds integrate an astonishing variety of celestial, atmospheric, and geological information to travel between their winter and summer homes. In brief, avian navigation is characterized by the ability to gather a variety of informational cues and to interpret and coordinate them so as to move closer toward a goal. —The Human Nature of Birds, Theodore Barber

Audio and Video Compression  multimedia applications need efficient use of transmission capacity  hence audio/video compression algorithms  techniques standardized by MPEG MPEG  lossless compression loses no information limited by redundancy in original data limited by redundancy in original data  lossy compression provides acceptable approximation to original (typically use)

Simple Audio Compression  must first digitize audio signal, eg. PCM sample at twice highest frequency sample at twice highest frequency then quantize using fixed number of bits then quantize using fixed number of bits this is, in fact, a basic compression algorithmthis is, in fact, a basic compression algorithm otherwise need unlimited number of bits otherwise need unlimited number of bits  compress further by reducing sampling frequency or number of bits  or use more sophisticated approaches as in MPEG Layer 3 (MP3) giving 10:1 compression as in MPEG Layer 3 (MP3) giving 10:1 compression

Effective Audio Compression

Video Compression  moving picture a sequence of still images  hence can compress each individually  but get greater efficiency by using similarities between adjacent images  encode just differences between them  approach used in MPEG

(MPEG Video Compression)

MPEG Video Compression  important features in video compression random access -> needs access frames random access -> needs access frames fast forward / reverse -> scan stream using access frames fast forward / reverse -> scan stream using access frames  MPEG foundation is motion compensation prediction prediction interpolation interpolation

(Prediction)  MPEG uses 16x16 pixel macroblocks for motion compensation  each block encoded separately  with reference to preceeding anchor frame most closely matching it matching block not on 16-pixel boundary matching block not on 16-pixel boundary compare against decompressed frame compare against decompressed frame  MPEG then records motion vector and prediction error for current frame

(Interpolation)  have further compression improvement by using two reference frames bidirectional interpolation bidirectional interpolation  process current against frames before and after  encode using: block from before (forward prediction) block from before (forward prediction) block from after (backward prediction) block from after (backward prediction) average of blocks before and after (averaging) average of blocks before and after (averaging)  interpolation encodes more info than prediction

(MPEG Frame Ordering)  MPEG uses three types of frames: intraframe (I) intraframe (I) predicted (P) predicted (P) bidirectional interpolated (B) bidirectional interpolated (B)  relative frequency is configurable balance need for random access and FF/Rev with computational complexity and size balance need for random access and FF/Rev with computational complexity and size noting B frames rely only on I and P frames noting B frames rely only on I and P frames

(MPEG Frame Ordering)

Real-Time Traffic  increasing deployment of high-speed nets sees increasing real-time traffic use  has different requirements to traditional non real-time traffic traditionally throughput, delay, reliability traditionally throughput, delay, reliability real-time more concerned with timing issues and with deadline for delivery of data block real-time more concerned with timing issues and with deadline for delivery of data block

Real-Time Traffic Example In the computer

Examples of Real-Time Traffic Profiles

Real-Time Traffic Requirements  low jitter (variations in amplitude, phase or freq.)  low latency  integrate non-real-time and real-time services  adapts to changing network / traffic conditions  good performance for large nets / connections  modest buffer requirements within the network  high effective capacity utilization  low overhead in header bits per packet  low processing overhead

Hard vs Soft Real-Time Apps  soft real-time applications tolerate loss of some data tolerate loss of some data hence impose fewer requirements on network hence impose fewer requirements on network can focus on maximizing network utilization can focus on maximizing network utilization  hard real-time applications zero loss tolerance zero loss tolerance hence deterministic upper bound on jitter and high reliability take precedence over utilization hence deterministic upper bound on jitter and high reliability take precedence over utilization

Example of real-time application

Voice-over-IP (VoIP) and IP-TV Ex: service affaire de videotron (+ android ou iPhone) service affaire de videotron service affaire de videotron  Implemented using SIP (Session Initiation Protocol) SIP (Session Initiation Protocol) RTP (Real-Time Protocol) RTP (Real-Time Protocol) Introduction video : C8oPTMQSQ Introduction video : C8oPTMQSQ C8oPTMQSQ C8oPTMQSQ

Session Initiation Protocol (SIP)  control protocol for setting up, modifying, and terminating real-time sessions  defined in RFC 3261  five multimedia communications facets: user location user location user availablility user availablility user capabilities user capabilities session setup session setup session management session management

SIP Design Elements  based on earlier protocols  HTTP request/response transaction model client invokes server method/function client invokes server method/function receives at least one response receives at least one response using most header fields, encoding rules, and status codes of HTTP using most header fields, encoding rules, and status codes of HTTP  “DNS like” recursive and iterative searches  incorporates the use of a Session Description Protocol (SDP) -> set of types similar to MIME

SIP Components

SIP Servers and Protocols  servers are logical devices may be distinct servers or combined in one may be distinct servers or combined in one  user agent uses SIP to setup session  initiation dialogue uses SIP involving one or more proxies to relay to remote agent  proxies act as redirect servers if needed consulting location service DB consulting location service DB protocol used here outside SIP protocol used here outside SIP DNS also important DNS also important  SIP uses UDP for performance reasons  can use TLS for security if desired

Session Description Protocol (SDP) SDP  defined in RFC 2327  have SDP encoded body in SIP message  specifies information on media encodings parties can and will use  after exchange parties know IP addresses, transmission capacity, media types  may then exchange data using a suitable transport protocol, eg. RTP  change session parameters with SIP messages

SIP Uniform Resource Identifier (URI) -analog to URL-  identifies a resource within a SIP network eg. user, mailbox, phone number, group eg. user, mailbox, phone number, group  format based on address eg. eg.  may also include password, port number and other parameters  There is a version for secure transmission over TLS => “SIPS”

SIP Example (“alice” tries to reach “bob” but “bob” is not signed in)

SIP Example (“alice” wants to be informed when “bob” signes in)

SIP Example (“bob” finally signes in and “alice” is notified)

SIP Example (“alice” calls “bob”) Direct communication (using RTP) after 14

SIP Messages  SIP a text based protocol, cf. HTTP  have request messages first line a method name and request-URI first line a method name and request-URI  have response messages first line a response code first line a response code

SIP Requests  defined by RFC 3261  REGISTER  INVITE  ACK  CANCEL  BYE  OPTIONS

SIP Request Example INVITE SIP/2.0 Via: SIP/2.0/UDP :5060 Max-Forwards: 70 To: Bob To: Bob From: Alice ;tag= Call-ID: CSeq: INVITE Contact: Contact: Content-Type: application/sdp Content-Length: 142

SIP Response  Provisional (1xx)  Success (2xx)  Redirection (3xx)  Client Error (4xx)  Server Error (5xx)  Global Failure (6xx)

SIP Response Example SIP/ OK Via: SIP/2.0/UDP server10.biloxi.com Via: SIP/2.0/UDP bigbox3.site3.atlanta.com Via: SIP/2.0/UDP :5060 To: Bob ;tag=a6c85cf From: Alice ;tag= Call-ID: CSeq: INVITE Contact: Contact: Content-Type: application/sdp Content-Length: 131

(Session Description Protocol) (SDP)  describes content of sessions  includes information on: media streams media streams addresses addresses ports ports payload types payload types start and stop times start and stop times originator originator

Real-Time Transport Protocol (RTP)  TCP has disadvantages for real-time use is point-to-point and multicast operation not very flexible is point-to-point and multicast operation not very flexible includes retransmission mechanisms includes retransmission mechanisms has no timing mechanisms has no timing mechanisms  UDP can address some needs but not all  have Real-Time Transport Protocol (RTP) defined in RFC 1889 defined in RFC 1889 best suited to soft real-time applications best suited to soft real-time applications data transfer (RTP) & control (RTCP) protocols data transfer (RTP) & control (RTCP) protocols

RTP Protocol Architecture  have close coupling between RTP and application-layer functionality view RTP as framework used by applications view RTP as framework used by applications  imposes structure and defines common functions (to meet real-time requirement)  key concepts: application-level framing application-level framing integrated layer processing integrated layer processing

Application-Level Framing  Recall that TCP transparently performs data recovery  Some scenarios where more appropriately done by application layer when less than perfect delivery acceptable when less than perfect delivery acceptable when application can better provide data when application can better provide data  have application-level data units (ADUs) preserved by lower layer processing preserved by lower layer processing form unit of error recovery form unit of error recovery if lose part of ADU discard and retransmit entire ADU if lose part of ADU discard and retransmit entire ADU

(Integrated Layer Processing)  layered protocols have sequential processing of functions in each layer limits parallel or re-ordered functions limits parallel or re-ordered functions  instead integrated layer processing allows tight coupling between adjacent layers for greater efficiency  concept that strict layering is inefficient is not new, cf. RPC implementation

Integrated Layer Processing Video coding standard defined by ITU-T

RTP Data Transfer Protocol  supports transfer of real-time data  amongst participants in a session  define session by RTP port (UDP dest port) RTP port (UDP dest port) RTCP port (dest port for RTCP transfers) RTCP port (dest port for RTCP transfers) participant IP addresses (multicast or unicast) participant IP addresses (multicast or unicast)  strength is multicast transmission includes identity of source, timestamp, payload format includes identity of source, timestamp, payload format

(RTP Relays)  relay on intermediary system acts as both destination and source acts as both destination and source to relay data between systems to relay data between systems  mixer combines streams from multiple sources combines streams from multiple sources forwards new stream to one or more dests forwards new stream to one or more dests may change data format if needed may change data format if needed  translator simpler, sends 1+ RTP packets for each 1 in simpler, sends 1+ RTP packets for each 1 in

RTP Data Transfer Header

RTP Control Protocol (RTCP)  separate control protocol same transport (eg. UDP) but different port same transport (eg. UDP) but different port packets sent periodically to all members packets sent periodically to all members  RTCP functions: Quality of Service (QoS), congestion control Quality of Service (QoS), congestion control identification identification session size estimation and scaling session size estimation and scaling session control session control

RTCP Packet Types  have multiple RTCP packets in datagram  Sender Report (SR)  Receiver Report (RR)  Source Description (SDES)  Goodbye (BYE)  Application Specific

RCTP Packets

Summary  audio and video compression  real-time traffic  session initiation protocol (SIP)  real-time transport protocol (RTP)