RTP (Real-time Transport Protocol)
Application layer protocol RTP is accessible in the TCP/IP protocol suite. Assigned port for this protocol is 5004 and it belongs to the working groups “AVT” and “FEC Framework”. As a standardized packets format, Real-time Transport Protocol (RTP) is used to deliver the audio or video or both on the IP networks. IETF standards association working group of Audio and Video Transport was built up it, at first.
Features of RTP are included end to end communication and data streams transmission in real time manners. But transfer of data to more than one destination is done with the IP multicast support in case of RTP. Moreover, RTP as a primary audio/video transport standard within the IP networks is used along with payload format and connected profile. Today, communication and entertainment systems with streaming media (telephony) are being used it extensively. And some common examples of such systems are such as teleconference applications and television services.
Well! To carry the media streams or data, this protocol is used with the RTCP because later is well suited for monitoring the communication statistics, for throwing occasionally the control information and for the QOS (quality-of-service)) etc. This RTP protocol can also be used with H.323 protocol.
According to the RFC 3550, RTP is most suitable for the end-to-end network’s transportation job such as simulation statistics, over both the multicast and unicast networking services. But RTP doesn’t deal with the resource reservation within a network. It also doesn’t give the assurance of the quality-of-service. That’s why; for the data transportation improvement “RTCP” (a control protocol) that allows data delivery along with monitoring to outsized multicast network, is also used with it. But both RTP protocol and RTCP should be considered as free from the core transport as well as network layer.
RTP header (version 2) is consisted on: ver (2 bits for RTP ver number), P (1 bit for padding which will be required by some algorithms for encryption purposes and preset block sizes etc) X (1 bit extension), CC (4 bits CSRC count), M (1 bit Marker that is allowed for significant events), PT (7 bits payload type), Sequence number (16 bits) that can be incremented by one, and is being used for each data packet (RTP) forwarded. Another use of sequence number is to get help in detecting the receiver of data if any packet is lost during the transmission and to get help in restoring the packet sequence. One more to be remembered is that its initial value can be any random number so to make the plaintext hits on encrypted data more complex.
Timestamp (32 bits) part is made to reflect the first octet’s sampling instant in a RTP packet but SSRC (32 bits synchronization source), which recognizes synchronization source with the help of random value. CSRC (32 bits Contributing source) is an range from 0-15 CSRC elements. PT (7 bits Payload Type can identify the RTP payload’s format and can settle on its understanding via application.
In short, RTP Session with the help of an IP address can be established for every multimedia stream along with RTP and RTCP.