1
play

1 Recovery From Packet Loss Loss is in a broader sense: packet - PDF document

Multimedia Networking Last time Principles Classify multimedia Multimedia Networking Applications applications Streaming stored audio and video Identify the network Today services the apps Real-time Multimedia: Internet


  1. Multimedia Networking Last time Principles � Classify multimedia � Multimedia Networking Applications applications � Streaming stored audio and video � Identify the network Today services the apps � Real-time Multimedia: Internet Phone need study � Making the best of best effort service � Protocols for Real-Time Interactive Applications - RTP, RTCP, SIP � Mechanisms for providing QoS � Distributing Multimedia: content Protocols and distribution networks Architectures � Beyond Best Effort � Specific protocols � Scheduling and Policing Mechanisms for best-effort � Integrated Services and � Architectures for Differentiated Services QoS � RSVP 10/5-07 Datakommunikation - Jonny Pettersson, UmU Real-Time (Phone) Over IP’s Best-Effort � Settings � talk spurts � 8 Kbytes/sec � sample every 20 msec � packet of 160 Bytes + application header over UDP � up to 20 % loss is tolerable � TCP instead of UDP? 10/5-07 Datakommunikation - Jonny Pettersson, UmU Recovery From Jitter � End-to-end delays � max 400 msec tolerated � Delay jitter is handled by using � timestamps � sequence numbers � delaying playout • fixed amount • variable amount 10/5-07 Datakommunikation - Jonny Pettersson, UmU 1

  2. Recovery From Packet Loss � Loss is in a broader sense: � packet never arrives or arrives later than its scheduled playout time � FEC - Forward Error Correction � Simple or-ing � Mixed quality streams � Interleaving � Repair of packet 10/5-07 Datakommunikation - Jonny Pettersson, UmU Summary: Internet Multimedia: bag of tricks � use UDP to avoid TCP congestion control (delays) for time-sensitive traffic � client-side adaptive playout delay: to compensate for delay � server side matches stream bandwidth to available client-to-server path bandwidth � chose among pre-encoded stream rates � dynamic server encoding rate � error recovery (on top of UDP) � FEC, interleaving � retransmissions, time permitting � conceal errors: repeat nearby data 10/5-07 Datakommunikation - Jonny Pettersson, UmU Real-Time Protocol (RTP) � RTP specifies a packet � RTP runs in the end structure for packets systems carrying audio and � RTP packets are video data encapsulated in UDP � RFC 3550 segments � RTP packet provides � Interoperability: If two Internet phone � payload type identification applications run RTP, � packet sequence then they may be able numbering to work together � timestamping 10/5-07 Datakommunikation - Jonny Pettersson, UmU 2

  3. RTP and QoS � RTP does not provide any mechanism to ensure timely delivery of data or provide other quality of service guarantees � RTP encapsulation is only seen at the end systems: it is not seen by intermediate routers � Routers providing best-effort service do not make any special effort to ensure that RTP packets arrive at the destination in a timely matter 10/5-07 Datakommunikation - Jonny Pettersson, UmU Real-Time Protocol (RTP) � Specifies header fields � Payload Type : types of encoding � Sequence Number : to detect packet loss � Timestamp : the sampling instant of the first audio/video byte in the packet � Synchronization Source identifier (SSRC) : an id for the source of a stream 10/5-07 Datakommunikation - Jonny Pettersson, UmU Real-Time Control Protocol (RTCP) � Works in conjunction � Statistics include with RTP number of packets � Each participant in sent, number of RTP session packets lost, periodically transmits interarrival jitter, etc. RTCP control packets � Feedback can be used to all other to control participants performance � Each RTCP packet contains sender and/or � Sender may modify receiver reports its transmissions based on feedback � report statistics useful to application 10/5-07 Datakommunikation - Jonny Pettersson, UmU 3

  4. RTCP - Continued - For an RTP session there is typically a single multicast address; all RTP and RTCP packets belonging to the session use the multicast address - RTP and RTCP packets are distinguished from each other through the use of distinct port numbers - To limit traffic, each participant reduces his RTCP traffic as the number of conference participants increases 10/5-07 Datakommunikation - Jonny Pettersson, UmU RTCP Packets Source description packets: Receiver report packets: � SSRC of the RTP stream, � e-mail address of sender, fraction of packets lost, last sender's name, SSRC of sequence number, average associated RTP stream interarrival jitter � Provide a mapping between Sender report packets: the SSRC and the user/host name � SSRC of the RTP stream, the timestamp and the current time of the last RTP � 5% of total bandwidth packet, the number of � 25% of that for the packets sent, and the sender number of bytes sent � 75% for the receivers 10/5-07 Datakommunikation - Jonny Pettersson, UmU SIP � Session Initiation Protocol � Comes from IETF SIP long-term vision � All telephone calls and video conference calls take place over the Internet � People are identified by names or e-mail addresses, rather than by phone numbers � You can reach the callee, no matter where the callee roams, no matter what IP device the callee is currently using 10/5-07 Datakommunikation - Jonny Pettersson, UmU 4

  5. SIP Services � Setting up a call � Determine current IP address of callee � Provides mechanisms for caller to let � Maps mnemonic callee know she identifier to current IP wants to establish a address call � Call management � Provides mechanisms � Add new media streams so that caller and during call callee can agree on � Change encoding during media type and call encoding � Invite others � Provides mechanisms � Transfer and hold calls to end call 10/5-07 Datakommunikation - Jonny Pettersson, UmU Setting up a call to a known IP address • Alice’s SIP invite Bob Alice message indicates her port number & IP address. Indicates encoding that 167.180.112.24 193.64.210.89 INVITE bob@193.64.210.89 Alice prefers to receive c=IN IP4 167.180.112.24 m=audio 38060 RTP/AVP 0 (PCM ulaw) port 5060 Bob's terminal rings • Bob’s 200 OK message 200 OK c=IN IP4 193.64.210.89 m=audio 48753 RTP/AVP 3 indicates his port number, port 5060 IP address & preferred ACK encoding (GSM) port 5060 µ Law audio • SIP messages can be port 38060 sent over TCP or UDP; here sent over RTP/UDP GSM port 48753 •Default SIP port number is 5060 time time 10/5-07 Datakommunikation - Jonny Pettersson, UmU Setting up a call (more) � Rejecting the call � Codec negotiation: � Bob can reject with � Suppose Bob doesn’t have PCM ulaw encoder replies “busy,” “gone,” “payment required,” � Bob will instead reply with “forbidden” 606 Not Acceptable � Media can be sent over RTP Reply and list encoders he can use or some other protocol � Alice can then send a new INVITE message, advertising an appropriate encoder 10/5-07 Datakommunikation - Jonny Pettersson, UmU 5

  6. Example of SIP message • Here we don’t know INVITE sip:bob@domain.com SIP/2.0 Bob’s IP address. Via: SIP/2.0/UDP 167.180.112.24 Intermediate SIP From: sip:alice@hereway.com servers will be To: sip:bob@domain.com necessary Call-ID: a2e3a@pigeon.hereway.com Content-Type: application/sdp • Alice sends and Content-Length: 885 receives SIP messages using the SIP default c=IN IP4 167.180.112.24 port m=audio 38060 RTP/AVP 0 Notes: • Alice specifies in Via: � HTTP message syntax header that SIP client � sdp = session description protocol sends and receives SIP messages over UDP � Call-ID is unique for every call 10/5-07 Datakommunikation - Jonny Pettersson, UmU Name translation and user locataion � Result can be based on: � Caller wants to call � time of day (work, home) callee, but only has � caller (don’t want boss to callee’s name or e-mail call you at home) address � status of callee (calls sent to voicemail when callee is � Need to get IP already talking to address of callee’s someone) current host: Service provided by SIP � user moves around servers: � DHCP protocol � SIP registrar server � user has different IP devices (PC, PDA, car � SIP proxy server device) 10/5-07 Datakommunikation - Jonny Pettersson, UmU SIP Registrar � When Bob starts SIP client, client sends SIP REGISTER message to Bob’s registrar server (similar function needed by Instant Messaging) Register Message: REGISTER sip:domain.com SIP/2.0 Via: SIP/2.0/UDP 193.64.210.89 From: sip:bob@domain.com To: sip:bob@domain.com Expires: 3600 10/5-07 Datakommunikation - Jonny Pettersson, UmU 6

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend