RTP stands for Real-time Transport Protocol.

What is the RTP protocol?

RTP is defined in IETF RFC 3550, with many additional RFCs referring to it and adding more functionality to it.

RTP is designed for sending and receiving real time media. To that end, it is implemented on top of UDP and focuses on low latency delivery.

RTP’s packet header is 12 bytes (or more) at length, keeping the overhead of packetization on top of the actual data being sent to a minimum.

RTP packets include a timestamp and a sequence number in them to deal with network issues such as jitter and out of order packets.

RTP is almost always paired with RTCP. The secured version of RTP is called SRTP.

What is the purpose of RTP in VoIP and WebRTC?

RTP is a very popular transport protocol that is used by most of the VoIP protocols and solutions today. VoIP services that don’t make direct use of RTP usually have their own proprietary implementation that operates in similar ways.

The popularity of RTP stems from its wide support of media codecs, its use of UDP and its low overhead.

WebRTC does NOT use RTP. That is because RTP isn’t secured. WebRTC uses SRTP instead which can be viewed as the secure variant of RTP.

How Does RTP Work?

At its core, RTP takes the media data, whether it’s audio or video, and breaks it down into smaller chunks called packets. These packets are then sent over the network to the recipient.

What makes RTP stand out is its ability to handle the unpredictable nature of the internet. Networks can be congested, data can get lost, and delays can occur. RTP is designed to handle these challenges.

Each RTP packet contains a sequence number and a timestamp. The sequence number ensures that the data is played back in the correct order, even if the packets arrive out of sequence.

The timestamp, on the other hand, ensures that the data is played back with the right timing, preserving the natural flow of the conversation or media stream.

RTP and WebRTC

WebRTC heavily relies on RTP. WebRTC is the technology that powers real-time communication on the web, enabling features like video calls directly from your browser without needing any additional software.

RTP plays a crucial role in this by ensuring that the audio and video data is transmitted efficiently and effectively between users.

Why is RTP Important?

In the digital age, where real-time communication is paramount, RTP is more relevant than ever. Its ability to adapt to network conditions, compensate for lost data, and ensure timely delivery makes it indispensable for a smooth communication experience.

Without RTP, our video calls might be jumbled, our voice chats could be out of sync, and our live streams might freeze unexpectedly.

In summary, RTP, is a vital protocol in the realm of multimedia communication. It ensures that audio and video data is transmitted in real-time over IP networks with efficiency and precision.

As the backbone of technologies like WebRTC, RTP continues to play a pivotal role in shaping our online communication experiences.

About WebRTC Glossary

The WebRTC Glossary is an ongoing project where users can learn more about WebRTC related terms. It is maintained by Tsahi Levent-Levi of BlogGeek.me.

Looking to learn more about WebRTC? 

Check my WebRTC training courses