You are on page 1of 21

1

RTP & RTCP


2

Real-Time Transport Protocol


 End-to-end delivery services for applications
transmitting real-time data, such as audio and
video
 Payload type identification
 Sequence numbering
 Time stamping

 Goals
 lightweight
 flexible
 scalable
3

Origin of Protocol
 Developed by the Audio-Video Transport
Working Group of the IETF

 First published as RFC 1889 in the year 1996

 Superseded by RFC 3550 in the year 2003


4

RTP Use Scenarios


• Simple Multicast Audio Conference

▫ Each participant uses two ports. One for audio data and the
other for control (RTCP) packets

▫ Each participant sends audio data in small chunks of say 20


mS duration

▫ A RTP header is added which contains the timing field that


ensures that the chunks of data are continuously played for
every 20mS
5

RTP Use Scenarios


• Audio and Video Conference

▫ Both audio and video are transmitted as two separate RTP


sessions.

▫ Separate RTP and RTCP packets are transmitted for each


medium using two UDP port pairs and multicast addresses.

▫ No direct coupling at the RTP level between the audio and


video sessions
6

Protocol Structure

 Application layer protocol


 Typically used on top of IP and UDP

 Why does RTP used UDP instead of TCP?

 Applications that use RTP are:


 Less sensitive to packet loss
 Very sensitive to packet delays
7

RTP Header
8
9
10

Profiles and Payload Format

• Profile defines the codecs used to encode the


payload data.

• Payload format specification defines how a


particular kind of payload data should be carried
in RTP.
11

Payload Format

 Audio payload format include


• MP3
• DTMF
• GSM

 Video payload format include


• JPEG
• H.261
• MPEG
12
13
14

Overview

 Senders & receivers periodically generate reports of


various session statistics and multicast to the group
 Rtcp enables
• » Diagnosis of faults in the multicast distribution tree
• » Congestion control
• » Third party performance monitoring & logging
• » (Simple) conference control
15

Function
•  Provide feedback on the quality of the data
distribution

• Carries a persistent transport-level identifier for


an RTP source: Canonical name or CNAME

• Session bandwidth management: Dynamically


controlling the frequency of report transmissions

•  Convey minimal session control information


16

Message type

 Sender reports (SR)


 Receiver reports (RR)
 Source description (SDES) items
 “Bye” message
17

Mechanics
 RTCP messages are always sent in (at least) pairs
 RTCP messages are sent periodically with a period
set to ensure that control messages consume no
more than 5% of the session bandwidth
18

Sender reports — packet format


19

Receiver reports - packet format


20

RTCP Reception Report Blocks


Loss calculation
The number of lost packets is expressed as a fraction
fraction lost =number of packets lost/number of packets
expected

 Jitter calculation
Interarrival time jitter is an estimate of the statistical
variance of RTP data packet interarrival times
21

You might also like