RTP Realtime Transport Protocol Presentation by Richard Bourgault
RTP – Real-time Transport Protocol Presentation by: Richard Bourgault and Steven Campbell
RTP - Introduction “RTP represents a new style of protocol following the principles of application level framing and integrated layer processing proposed by Clark and Tennenhouse. ” l Read: RTP is intended to be continuously reconfigurable often being integrated into the application itself. l RTP is intended to be tailored through modifications or additions to the headers as needed. l
Goals of RTP l To provide end-to-end delivery services for data with real-time characteristics. l Primarily designed to satisfy the needs of multi- participant multimedia conferences (using multicast distribution if provided by the underlying network ). l Services include payload type identification, sequence numbering, timestamping and delivery monitoring.
RTP - Defined RTP consists of two closely-linked parts: RTP- transport protocol that has realtime properties. RTCP – control protocol to monitor the quality of service (Qo. S) and to convey session information.
Defined - Continued l Does not guarantee timely service, quality of service, or sequenced delivery l RTP l is carried on top of IP and UDP. What are the advantages of this?
Answer l To make use of its multiplexing and checksum services
Question? l Since RTP is a real-time protocol that can lie on top of IP or UDP, what are some applications that can make use of these underlying protocols?
Answer l Streaming audio, videoconferencing, and storage of continuous simulation data. l Also active badge and control and measurement applications. l Any application relying on continuous data without requiring sequential packeting.
Example of Usage – Multicast Audio Conference Host obtains a multicast group address and pair of ports: - One port for audio - One for control (RTCP) packets l This address and port information is distributed to the intended participants l Each participant sends data in small packets, where each piece of data is preceded by an RTP header l RTP header and data are encapsulated in a UDP packet. l
Each header indicates what type of audio encoding (such as PCM, ADPCM or LPC) is present in the data. l To cope with loss/reorder delays, the RTP header contains timing information and a sequence number that allows the receivers to reconstruct the timing produced by the source. l Why is it beneficial to include the type of audio encoding in each packet header? l
Answer l In order to allow for different users to use different types of encoding during the same conference. l Allows for both low and high bandwidth encoding
A/V Conferencing l Similar to simple audio with the exception that audio and video are treated as different RTP sessions l How does this work?
Simultaneous RTP Sessions l. A participant may be involved in multiple RTP sessions at the same time l Distinguishes between RTP sessions by using different pairs of destination transport addresses l One pair of transport addresses is comprised of a network address and a pair of ports for RTP and RTCP
Simultaneous - Continued l Participants included in an RTP session consist of those able to receive a global SSRC identifier l This identifier can be transmitted by any of the participants either in RTP as the SSRC or in RTCP l SSRC is carried in the RTP header
RTP Header 32 Bits Long 2 1 1 4 1 7 16
RTP Header l l l Version (V) – 2 bits. Defines RTP Version. Padding (P) – 1 bit. Defines number of padding octets that are not part of the payload. Extension (X) – 1 bit. If set, the header must be followed by exactly one header extension. CSRC Count (CC) – 4 bits. Defines the number of CSRC identifiers following the header. Marker (M) – 1 bit. Specifies significant events such as frame boundaries.
l Payload Type (PT) – 7 bits. l Sequence Number – 16 bits. l Timestamp – 32 bits. Reflects the sampling instant of the first RTP packet. l SSRC (Synchronization Source) – 32 bits. Randomly specified identifier. l CSRC (Contributing Source) – 32 bits. Allows up to 16 different sources.
Question? l What might happen if more than 16 sources attempt to become part of the RTP session? (i. e. how can each source be uniquely identified? ) l Compared to the various TCP flavors what are the advantages/disadvantages of RTP?
- Slides: 18