Real-Time ProtocolsRTP/RTCP/RTSP
Heba El-Dreamly– Ola nijam-
Real-time multimedia streamingReal-time multimedia applications
–Video teleconferencing–Internet Telephony (VoIP)
–Internet audio, video streaming
(A-PDUs)
Streaming performance requirements–Sequencing
–to report PDU loss –to report PDU reordering
–to perform out-of-order decoding
–Time stamping and Buffering –for play out
–for jitter and delay calculation
–Payload type identification–for media interpretation
–Error concealment –covers up errors from lost PDU by using redundancy in most-adjacent-frame
–Quality of Service (QoS) feedback – from receiver to sender for operation adjustment
–Rate control –sender reduces sending rate adaptively to network congestion
Ideal Timing – no jitter
00.00.00
00.00.10
00.00.20
00.00.30
00.00.11
00.00.21
00.00.31
Send time
Play time
30 se
cond
s
First RTP-PDU
Second RTP-PDU
Third RTP-PDU
application
Reality – jitter
00.00.00
00.00.10
00.00.20
00.00.30
00.00.11
Send time
Play time
00.00.21
00.00.25
00.00.35
00.00.37
00.00.47
delay
First RTP-PDU
Second RTP-PDU
Third RTP-PDU 00.00.40
Fourth RTP-PDU
00.00.41
00.00.51
How does Sequence number and Timestamp help?
Audio silent example:
Solution:
–After receiving no PDUs for a while, next PDU received at the receiver will reflect a big jump in timestamp, but have the correct next seq. no. Thus, receiver knows what happened .
– Why might this cause problems? sender
rece
iver
silent
Seq no.1, Tmpst 100Seq no.2, Tmpst 200Seq no.3, Tmpst 300
Seq no.4, Tmpst 600Seq no.5, Tmpst 700
Consider audio data– What should the sender do during silent?
Not send anything
Receiver cannot distinguish between loss and silent
RTCP
Why not UDP?
UDP offers datagram-like serviceConnectionless , Unreliable ,
Unordered No Flow , Error , Congestion
controlPort numbers
RTP + UDP usually used for multimedia services
Why not TCP ?
TCP does retransmissions unbounded delays TCP does not support multicast
TCP congestion control (slow-start) unsuitable for real-time transport (A-V media)
TCP(till now)
RTSP
Protocol stack for multimedia services
RTP RTCP
AVTCORE is to maintain the core RTP/RTCP specifications
AVTCORE will provide architectural guidance for extending the protocols and
guidelines for their proper use.
AVTCORE will coordinate closely with the Security Area
while working on maintenance and enhancements to the SRTP Profile.
When watching video clips on the Internet or listen to audio clips such as radio and others, as well as review in the games online, we need to Transmission control protocol, reception and transfer data in real time or in other words, the flow of data directly.
RTP: Introduction
The Organization for the development of IETF protocol called Real-time Transport Protocol or Acronym RTP.
RTP Control Protocol (RTCP) RTCP specifies report exchanged between sources and
destinations of multimedia information
receiver reception report
sender report
source description report
Reports contain statistics such as the number of RTP sent, number of RTP lost, inter-arrival jitter
Used by application to modify sender transmission rates .
Actually the RTP protocol consists of two parts, one is the same protocol and the other part is the RTCP protocol, where he works alongside. While working RTP protocol to transfer data and arrange them when they arrive in the wrong sequence, RTCP organizes this process by transferring control information, such as the synchronization of multiple transport channels and monitor the process used for QoS quantity of information or the Bandwidth occupied equal to 5%
All RTP sent to an even-numbered UDP port, 2p
All RTCP sent to UDP port 2p+1
All RTP and RTCP are sent to same multicast group
Of the basic things that have been taken into consideration when designing this protocol is the support for many formats, including
(H.264, MPEG-4, MJPEG, MPEG)
Real-Time Streaming Protocol (RTSP)
Application layer protocol (default port 554)Usually runs on RTP for stream & TCP for controlProvides the control channelUses out-of-band signalingUsable for Live broadcasts / multicast
Also known as “Network remote control” for multi-media servers.
web browser
media player
Web Server
Web Server/Media server
RTSP Overview
RTSPpres. desc,streaming commands
RTP/RTCPaudio/video content
Presentation
descriptor
HTTPpresentation descriptor
RTSP Methods
OPTIONSC S
determine capabilities of server/clientC S
DESCRIBE C S get description of media stream
ANNOUNCE C S announce new session description
SETUP C S create media session
RECORD C S start media recording
PLAY C S start media delivery
PAUSE C S pause media delivery
REDIRECT C S redirection to another server
TEARDOWN C S immediate teardown
SET_PARAMETER C S change server/client parameter
GET_PARAMETER C S read server/client parameter
RTSP Session
media server
RTSPserver
datasource
media player
AVsubsyste
m
RTSPclient
RTSP OK
RTSP PLAY
RTSP OK
RTP AUDIO
RTP VIDEO
RTSP TEARDOWNRTSP OK
get UDP portchooseUDP port
RTSP SETUP
Default port 554
RTCP
TCP
UDP