Real Time Transport Protocol
Real Time Transport Protocol
1
Outcomes
Learners will be able to:
Discuss in detail, the attributes of the RTP
Identify and describe the features of the RTP
Illustrate the RTP header
Describe the specification of the RTP
Multimedia Streaming Protocols
signalling and control protocols
protocols conveying session setup information and VCR-like
commands (play, pause, mute, setup, fast forward, backward etc.)
ex. RTSP, SDP, SIP
real-time transport protocols
protocols that convey the real-time data (audio, video or text)
RTP/RTCP
RTP (Real-Time Transport Protocol)
is a real-time streaming protocol for IP networks
usually runs on top of UDP
is an Internet standardized packet format for transporting
continuous audio-video data over Internet
was developed by the Audio-Video Transport Working
Group of IETF
the standard was published as RFC 1889 in 1996 and then
superseded by RFC 3550 in 2003
RTP has several profiles and payload types for different
kinds of audio or video streams (e.g. MPEG-1/2/4,
H.26[1234] etc.)
the RTP RFC describes also RTCP (Real Time Control
Protocol) for monitoring QoS parameters
the default port is 5004
RTP characteristics
provides end-to-end delivery service for real-time data, in
unicast and multicast sessions
offers synchronization services (timestamping), packet
identification and loss detection (sequence numbering)
and delivery monitoring/feedback (through RTCP)
does not provide in-order and reliable delivery of packets
does not provide timely delivery of packets, nor QoS
guarantees
is independent of the transport protocol (TCP, UDP,
DCCP, SCTP etc.)
a RTP session carries one multimedia stream; a RTP
session is identified by a pair of triplets (IP address, RTP
port, RTCP port) which are negotiated at setup using RTSP
and SDP
RTP: A Transport Protocol for Real-
Time Applications
Provides end-to-end delivery services for data with
real-time characteristics, such as interactive audio
and video.
Those services include payload type identification,
sequence numbering, timestamping and delivery
monitoring.
Applications typically run RTP on top of UDP
RTP Specification
Internet standard for real-time data
Interactive audio, video, and simulation data
Primarily designed for multi-user multimedia conference
Session management
Scalability considerations
Provides end-to-end transport functions for real-time
applications
Payload type identification
Sequence numbering
Timestamping
Delivery monitoring
RTP
Specification
Containing two closely linked parts: data + control
RTP: Real-time transport protocol
Carry real-time data
RTCP: RTP control protocol
QoS monitoring and feedback
Session control
Architecture
Applications
RTP & RTCP
Other transport and UDP
network protocols IP
RTP Specification
Independent of the underlying transport and
network layers
Does NOT provide timely delivery or other
QoS guarantees
Relies on lower-layer
Does NOT assume the underlying network is
reliable and delivers packets in sequence
Use sequence number
RTP use scenarios
Simple multicast audio conference
A multicast address and two UDP ports (for RTP and RTCP ),
assigned and distributed by mechanisms beyond the scope of RTP
Speaker send:
Desired: all
packets have the
same delay
t
Packets
sent
d1 d1+y
Packets
received
h h-y
Packets
playout
t
RTP – cont.
Multiplexing
Provided by transport address (network address + port
number)
Teleconference with Audio and Video
A and V are carried in separate RTP session
Profile-specific modification
Marker bit
Header extension starts at payload section
Mixers and Translators
Mixer
Could receive and combine various sources in an effort
to reduce bandwidth
Translator
Keeps incoming sources separate
To transform to a lower quality format to broadcast on
lower-speed networks
To send through firewalls
RTP Mixer and Translator
Mixer
64 kbps 8 kbps
G.729
Mixer
64 kbps
64 kbps
Translator
firewall
8 kbps
Translator
G.729
64 kbps Translator
PCM
MIXER
Receives streams of RTP data packets from one or
more sources, possibly changes the data format,
combines the streams in some manner and then
forwards the combined stream.
All data packets forwarded by a mixer will be
marked with the mixer's own SSRC identifier. In
order to preserve the identity of the original
sources contributing to the mixed packet
Translator
Forwards RTP packets with their SSRC identifier
intact
May change the encoding of the data and thus the
RTP data payload type
RTP
RTP Features
Multicasting
Payload type identification
Time stamping
Sequencing
Delivery monitoring
RTP
RTP Issues
No QoS guarantees
No guarantee of packet delivery
RTP Timestamp (TS) and Sequence Number (SN)
TS used to order packets in correct timing order
SN to detect packet loss
For a video frame that spans multiple packets – TS is
same but SN is different
RTP profiles (Payload Types)
RFC 2032 – RTP payload format for H.261 Video streams
RFC 2190 - RTP payload format for H.263 Video streams
RFC 2250 – RTP payload format for MPEG1/MPEG2 video
RFC 3984 - RTP payload format for H.264 Video streams
RFC 3016 – RTP payload format for MPEG-4 Audio/Visual streams
RFC 2435 – RTP payload format for JPEG-compressed video
RFC 3551 – RTP profile for Audio ad Video conferences with minimal
control
RFC 3640 - RTP payload format for transport of MPEG-4 Elementary
Streams
RFC 4175 – RTP payload format for uncompressed video