Real-time Transport Protocol (RTP)

November 03 , 2021

What is RTP?


Real-time Transport Protocol (RTP) is a network standard designed for transmitting audio or video data that is optimized for consistent delivery of live data. It is used in internet telephony, Voice over IP and video telecommunication. It can be used for one-on-one calls (unicast) or in one-to-many conferences (multicast).

RTP typically runs over User Datagram Protocol (UDP). RTP is used in conjunction with the RTP Control Protocol (RTCP). While RTP carries the media streams (e.g., audio and video), RTCP is used to monitor transmission statistics and quality of service (QoS) and aids synchronization of multiple streams. RTP is one of the technical foundations of Voice over IP and in this context is often used in conjunction with a signaling protocol such as the Session Initiation Protocol (SIP) which establishes connections across the network.

RTP sessions are typically initiated between communicating peers using a signaling protocol, such as H.323, the Session Initiation Protocol (SIP), RTSP, or Jingle (XMPP). These protocols may use the Session Description Protocol to specify the parameters for the sessions. An RTP session is established for each multimedia stream. Audio and video streams may use separate RTP sessions, enabling a receiver to selectively receive components of a particular stream. RTP is used by real-time multimedia applications such as voice over IP, audio over IP, WebRTC and Internet Protocol television.


Figure: (a): The position of RTP in the protocol stack.  (b): Packet nesting.


RTP Fixed Header Fields


RTP packets are created at the application layer and handed to the transport layer for delivery. Each unit of RTP media data created by an application begins with the RTP packet header.


Figure: RTP packet header.


Version (V): 2 bits.
This field identifies the version of RTP.


Padding (P): 1 bit.
If the padding bit is set, the packet contains one or more additional padding octets at the end which are not part of the payload.


Extension (X): 1 bit
Indicates presence of an extension header between the header and payload data.


CSRC count (CC): 4 bits
The CSRC count contains the number of CSRC identifiers that follow the fixed header.


Marker (M): 1 bit
The interpretation of the marker is defined by a profile.


Payload type (PT): 7 bits
This field identifies the format of the RTP payload and determines its interpretation by the application.


Sequence number: 16 bits
The sequence number increments by one for each RTP data packet sent, and may be used by the receiver to detect packet loss and to restore packet sequence.


Timestamp: 32 bits
The timestamp reflects the sampling instant of the first octet in the RTP data packet.


SSRC: 32 bits
The SSRC field identifies the synchronization source.


CSRC list: 0 to 15 items, 32 bits each
The CSRC list identifies the contributing sources for the payload contained in this packet.



Leave A Message
Leave A Message
If you are interested in our products and want to know more details,please leave a message here,we will reply you as soon as we can.

Home

Products

skype

whatsapp