Real-time Transport Protocol (RTP)
Real-time Transport Protocol
The Real-time Transport Protocol (RTP) is a network protocol for delivering audio and video over IP networks. RTP is used extensively in communication and entertainment systems that involve streaming media, such as telephony, video teleconference applications, television services and web-based push-to-talk features.
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 witha signaling protocol such as the Session Initiation Protocol (SIP) which establishes connections across the network.
Overview
RTP is designed for end-to-end, real-time, transfer of streaming media. The protocol provides facilities for jitter compensation and detection of out of sequence arrival in data, which are common during transmission on an IP network. RTP allows data transfer to multiple destinations through IP multicast. RTP is regarded as the primary standard for audio/video transport in IP networks and is used with an associated profile and payload format.
Real-time multimedia streaming applications require timely delivery of information and often can tolerate some packet lossto achieve this goal. For example, loss of a packet in audio application may result in loss of a fraction of a second of audio data, which can be made unnoticeable with suitable error concealment algorithms. The Transmission Control Protocol (TCP), although standardized for RTP use, is not normally used in RTP applications because TCP favors reliability over timeliness. Instead themajority of the RTP implementations are built on the User Datagram Protocol(UDP). Other transport protocols specifically designed for multimedia sessions are SCTP and DCCP, although, as of 2010, they are not in widespread use.
Protocol components
The RTP specification describes two sub-protocols, RTP and RTCP.
The data transfer protocol, RTP, facilitates the transfer of real-time data. Information provided by this protocol include timestamps, sequence numbers and the payload format which indicates the encoded format of the data.
The control protocol RTCP is used tospecify quality of service (QoS) feedback and synchronization between the media streams. The bandwidth of RTCP traffic compared to RTP is small, typically around 5%.