Real-time transmission protocol (RTP) provides end-to-end transmission services with Real-Time Characteristics for data, such as interactive video audio or analog data under multicast or Unicast Network Services. Applications usually run RTP on UDP to use its multi-node and verification service. Both protocols provide the transport layer protocol function. However, RTP can be used with other suitable underlying networks or transport protocols. If the underlying network supports multicast, RTP can use this multicast table to transmit data to multiple destinations.
RTP does not provide the on-time transmission mechanism or other quality of service (QoS) guarantees. It relies on low-level services to implement this process. RTP does not guarantee transmission or prevent unordered transmission, nor determine the reliability of the underlying network. RTP implements ordered transmission. The serial number in RTP allows the receiver to restructure the packet sequence of the sender, and the serial number can also be used to determine the appropriate packet location. For example, in video decoding, sequential decoding is not required.
RTP consists of two closely linked parts:
- RTP: transfers data with real-time attributes;
- RTP Control Protocol (RTCP)-monitors service quality and transmits information about ongoing session participants. The second feature of RTCP is sufficient for "loose controlled" sessions, that is, without explicit member control and organization, it does not have to support all control communication requests of an application.
1 |
2 |
3 |
8 |
9 |
16bit |
V |
P |
X |
CSRC count |
M |
Payload type |
Sequence Number |
Timestamp |
SSRC |
CSRC (variable 0-15 items 32 bits each) |
- V-version. Recognize the RTP version.
- P-gap (padding ). When this parameter is set, the data packet contains one or more additional gap groups, which do not belong to the payload.
- X-extended bit. When setting, after the Fixed Header, set an extension header according to the specified format.
- CSRC count-the number of the CSRC identifier (after the Fixed Header.
- M-mark. Mark defined by the profile file. Allows important events such as frame boundary to be marked in the packet stream.
- Payload type-Identify the RTP payload format and determine its interpretation through the application. The profile file specifies the default static ing from payload encoding to payload format. In addition, payload type encoding may be dynamically defined using non-RTP methods.
- Sequence Number-each time an RTP packet is sent, the serial number increases by 1. The receiver can detect packet loss in sequence and restore the packet sequence.
- Timestamp indicates the sampling time of the first eight-bit group in the RTP data packet. The sampling time must be obtained through the clock in a timely and incremental manner without linear variation to support synchronization and jitter calculation.
- SSRC-synchronization source. This identifier is randomly selected to ensure that two synchronization sources do not have the same SSRC identifier in the same RTP session.
- CSRC-contribution source identifier. Identifies the contribution of the payload in the packet.
|
Protocols |
RTCP, RTSP, UDP, TCP, IP |
Organization Source |
RTP is defined by IETF (www.ietf.org) in RFC 3550 and 3551. |
Related Links |
Http://www.javvin.com/protocol/rfc3550.133: RTP: A transport protocol for real-time applications Http://www.javvin.com/protocol/rfc3551.20.: RTP profile for audio and video conferences with minimal control |