CS 414 Multimedia Systems Design Lecture 18 Multimedia

  • Slides: 23
Download presentation
CS 414 – Multimedia Systems Design Lecture 18 – Multimedia Session Protocols Klara Nahrstedt

CS 414 – Multimedia Systems Design Lecture 18 – Multimedia Session Protocols Klara Nahrstedt Spring 2011 CS 414 - Spring 2011

Administrative n HW 1 deadline March 2, midnight 11: 59 pm ¨ Individual effort!!!

Administrative n HW 1 deadline March 2, midnight 11: 59 pm ¨ Individual effort!!! (take it as a midterm preparation) n Midterm, March 7 11 -11: 50 am in class All topics/lectures until February 28, i. e. , the material covered this week March 2 and 4 will not be on the midterm ¨ You can bring calculator and 1 page of cheat-sheet (otherwise, exam is closed book, closed notes) ¨ n Class on Friday, March 4 - discussion of midterm topics CS 414 - Spring 2011

Outline n Multimedia Protocols – Standards ¨ RTP/UDP/IP – Transmission Protocol ¨ RTCP Control/Negotiation

Outline n Multimedia Protocols – Standards ¨ RTP/UDP/IP – Transmission Protocol ¨ RTCP Control/Negotiation Protocol to RTP ¨ RTSP – Control VOD Negotiation Protocol CS 414 - Spring 2011

Internet Multimedia Protocol Stack APPLICATION Media encaps (H. 264, MPEG-4) RTSP SIP RSVP Layer

Internet Multimedia Protocol Stack APPLICATION Media encaps (H. 264, MPEG-4) RTSP SIP RSVP Layer 5 (Session) RTCP RTP KERNEL TCP DCCP UDP IP Version 4, IP Version 6 AAL 3/4 AAL 5 MPLS CS 414 - Spring 2011 Layer 3 (Network) Layer 2 (Link/MAC) Ethernet/Wi. Fi ATM/Fiber Optics Layer 4 (Transport)

Service Requirements for Realtime Flows (Voice/Video) Sequencing n Intra-media synchronization n Inter-media synchronization n

Service Requirements for Realtime Flows (Voice/Video) Sequencing n Intra-media synchronization n Inter-media synchronization n Payload identification n Frame indication n CS 414 - Spring 2011

Real-time Transmission Protocol (RTP) n n RTP provides end-to-end transport functions suitable for real-time

Real-time Transmission Protocol (RTP) n n RTP provides end-to-end transport functions suitable for real-time audio/video applications over multicast and unicast network services RTP companion protocol – Real-time Transport Control Protocol (RTCP) RTP RTCP User Datagram Protocol Internet Protocol Ethernet 802. 13 or Wi-Fi 802. 11 PHY (Wired or Wireless) CS 414 - Spring 2011 Layer 4

Relation between RTP and RTCP Application Decoding Coding RTP RTCP Application Coding RTCP UDP/IP

Relation between RTP and RTCP Application Decoding Coding RTP RTCP Application Coding RTCP UDP/IP CS 414 - Spring 2011 Decoding RTP

RTCP: Control and Management n Out-of-band control information for RTP flow. ¨ Monitors Qo.

RTCP: Control and Management n Out-of-band control information for RTP flow. ¨ Monitors Qo. S for RTP in the delivery and packaging of multimedia data ¨ Used periodically to transmit control packets to participants in a streaming multimedia session. ¨ Provides feedback on the quality of service being provided by RTP. ¨ Gathers statistics on media connection n n Bytes sent, packets sent, lost packets, jitter, feedback and round trip delay. Application may use this information to increase the quality of service, perhaps by limiting flow or using a different codec. CS 414 - Spring 2011

RTCP Functions n There are several type of RTCP packets: ¨ Sender report packet,

RTCP Functions n There are several type of RTCP packets: ¨ Sender report packet, ¨ Receiver report packet, ¨ Source Description RTCP Packet, ¨ Goodbye RTCP Packet and ¨ Application Specific RTCP packets. n RTCP itself does not provide any flow encryption or authentication means. SRTCP protocol can be used for that purpose. CS 414 - Spring 2011

RTP Services n Payload Type Identification ¨ Determination of media coding ¨ Source identification

RTP Services n Payload Type Identification ¨ Determination of media coding ¨ Source identification ¨ RTP works with Profiles n n Profile defines a set of payload type codes and their mappings to payload formats Sequence numbering ¨ Error n Time-stamping ¨ Time n detection monitoring, synchronization, jitter calculation Delivery monitoring CS 414 - Spring 2011

RTP Message MAC header IP header UDP header RTP message 0 0 0 0

RTP Message MAC header IP header UDP header RTP message 0 0 0 0 0 1 1 1 1 1 2 2 2 2 2 3 3 0 1 2 3 4 5 6 7 8 9 0 1 Ver P X CC M PT Sequence Number Timestamp SSRC CSRC [0. . 15] : : : Ver – Version 2 P – Padding X – Extension, if set, the fixed head is followed by exactly one header extension CC – CSRC count M – Marker – intended to allow significant events such as frame boundaries to be marked (defined by profile) PT – Payload type SSRS – synchronization source, CSRC – contribution source CS 414 - Spring 2011

RTP Services – Support of Heterogeneity n Mixer service ¨ Allows for resynchronization of

RTP Services – Support of Heterogeneity n Mixer service ¨ Allows for resynchronization of incoming audio packets ¨ Reconstructs constant 20 ms spacing generated by sender ¨ Mixes reconstructed audio streams into single stream ¨ Translates audio encoding to lower bandwidth ¨ Forwards lower bandwidth packet streams n Translator service ¨ Allows for translation between IP and other high speed protocols ¨ May change encoding data CS 414 - Spring 2011

Difference between Mixers and Translators S 3 S 1 M 1 T S 2

Difference between Mixers and Translators S 3 S 1 M 1 T S 2 S 4 CS 414 - Spring 2011 M 2 R 1

Payload Formats n Static Payload formats ¨ Established in RTP Profile ¨ Payload type

Payload Formats n Static Payload formats ¨ Established in RTP Profile ¨ Payload type 0 : = µ-law audio codec n Dynamic Payload formats ¨ Applications agree per session on payload format ¨ H. 263, JPEG, MPEG CS 414 - Spring 2011

Session Management (Layer 5) n n Important part of multimedia communication Separates control aspects

Session Management (Layer 5) n n Important part of multimedia communication Separates control aspects from transport aspects SESSION MANAGER Participant Management Conference control Session Control Configuration control Session Control Protocol (e. g. , RTSP) Media control Presentation data communication whiteboard Continuous data communication video Continuous data communication audio CS 414 - Spring 2011

Session Manager n Tasks: ¨ Membership control ¨ Monitoring of shared workspace ¨ Coordination

Session Manager n Tasks: ¨ Membership control ¨ Monitoring of shared workspace ¨ Coordination of Media control management ¨ Exchange of Qo. S parameters ¨ Conference control management – establishment, modification, termination CS 414 - Spring 2011

Session Control n Session Described by ¨ Session n n state Name of session,

Session Control n Session Described by ¨ Session n n state Name of session, start, valid policies Session management – two steps for state processing ¨ Establishment of session ¨ Modification of session CS 414 - Spring 2011

Session Control n Conference Control ¨ Centralized n or distributed approach Media Control ¨

Session Control n Conference Control ¨ Centralized n or distributed approach Media Control ¨ Synchronization n Configuration Control ¨ Negotiation of Qo. S parameters, admission control and reservation/allocation of resources n Membership Control ¨ Invitation of users; registration of users, change of membership CS 414 - Spring 2011

Real-Time Streaming Protocol (RTSP) n n Application Protocol for Control of multimedia streams This

Real-Time Streaming Protocol (RTSP) n n Application Protocol for Control of multimedia streams This is not an application data transmission protocol, just remote control protocol between client and server Audio Video Decoder Session Control RTSP RTP Audio video Coder RTP CLIENT SERVER CS 414 - Spring 2011

RTSP n n Approved as Internet Draft, February 2, 1998, authors H. Schulzrinne, A.

RTSP n n Approved as Internet Draft, February 2, 1998, authors H. Schulzrinne, A. Rao, R. Lanphier Enables controlled, on-demand delivery of realtime data such as audio and video Intends to control multiple data delivery sessions Provides means for choosing delivery channels ¨ UDP ¨ Multicast UDP, ¨ TCP CS 414 - Spring 2011

RTSP Methods Request Direction Description OPTIONS S <-> C Determine capabilities of server (S)

RTSP Methods Request Direction Description OPTIONS S <-> C Determine capabilities of server (S) or client (C) DESCRIBE C -> S Get description of media stream ANNOUNCE S <-> C Announce new session description SETUP C -> S Create media session RECORD C -> S Start media recording PLAY C -> S Start media delivery PAUSE C -> S Pause media delivery REDIRECT S -> C Use other server TEARDOWN C -> S Destroy media session SET_PARAMETER S <-> C Set server or client parameter GET_PARAMETER S <-> C Read server or client parameter CS 414 - Spring 2011

RTSP Extensions n Timing ¨ RTSP needs to hide latency variations ¨ PLAY request

RTSP Extensions n Timing ¨ RTSP needs to hide latency variations ¨ PLAY request may contain information about when request is to be executed n Three types of timestamps ¨ SMPTE n Format: hours: minutes: seconds: frames ¨ Normal n (the same as in TV production) play time Measured relative to beginning of stream and expressed in ours, minutes, seconds and fractions of second ¨ Absolute n time Wall clock CS 414 - Spring 2011

Conclusion n n RTP usage – in several application audio and video tools (vat,

Conclusion n n RTP usage – in several application audio and video tools (vat, vic) RTP follows the principle of application level framing and integrated layer processing RTP/UDP/IP is being used by the current streaming session protocols such as RTSP Session protocols are actually negotiation/session establishment protocols that assist multimedia applications Multimedia applications such as Quick. Time, Real Player and others use them CS 414 - Spring 2011