RTSP 2
RTSP 2
RTSP 2
RTSP
Real Time Streaming Protocol IETF RFC 2326
RTSP
RTSP is a signaling protocol which acts as a Remote Control for controlling a IP media server. Very similar to HTTP /1.1 RTSP can request Server to send media Server invited to join a conference Server announces that additional media available
Overall Function
A presentation description file defines the type of media streams and its properties such as encoding language etc. A presentation may contain several media streams RTSP can use TCP, UDP or MUDP Popular RTSP clients:
Windows Media Player Real Player
Setup: Causes the server to allocate resources for a stream and start an RTSP session Play-Record: Starts data transmission on a stream allocated via SETUP Pause: Temporarily halts a stream without freeing server resources. Teardown: Frees resources associated with the stream. The RTSP session ceases to exist on the server.
OPTIONS
DESCRIBE
ANNOUNCE
A client can issue a SETUP request for a stream that is already playing to change transport parameters
A client can issue a SETUP request for a stream that is already playing to change transport parameters The PLAY method tells the server to start sending data via the mechanism specified in SETUP
SETUP,
PLAY,
PAUSE
The PAUSE request causes the stream delivery to be interrupted (halted) temporarily
The TEARDOWN request stops the stream The GET_PARAMETER request retrieves the value of a parameter of a presentation or stream A redirect request informs the client that it must connect to another server location Start recording the media
TEARDOWN
GET_PARAMETER, SET_PARAMETER
REDIRECT
RECORD
The "next state" column indicates the state assumed after sending a success response (2xx). If a request results in a status code of 3xx, the state becomes Init. A status code of 4xx results in no change
Security issues
Denial of service: Flood any arbitrary machine on the Internet with unrequested RTSP streams Session hijacking Authentication
multimedia: simplest
approach files transferred as HTTP object files transferred as HTTP received in entirety at client then passed to player
audio,
Progressive Download
browser GETs metafile browser launches player, passing metafile player contacts server server downloads audio/video to player
RTSP Example
Scenario: metafile communicated to web browser browser launches player player sets up an RTSP control connection, data connection to streaming server
RTSP Operation
Client Buffering
Client-side buffering, playout delay compensate for network-added delay, delay jitter
Client Buffering
Client-side buffering, playout delay compensate for network-added delay, delay jitter
UDP
server sends at rate appropriate for client (oblivious to network congestion !) often send rate = encoding rate = constant rate then, fill rate = constant rate - packet loss short playout delay (2-5 seconds) to compensate for network delay jitter error recover: time permitting
TCP
send at maximum possible rate under TCP fill rate fluctuates due to TCP congestion control larger playout delay: smooth TCP delivery rate HTTP/TCP passes more easily through firewalls
Packet Loss
Whenever there is non-consecutive loss, thereceiver can conceal the loss. Can also append (n-1)st and (n-2)nd low-bit ratechun
Interleaving
Interleaving
Re-sequence packets before transmission Better handling of burst losses Results in increased playout delay
Multimedia Networking
References
[1]www.wikipedia.com [2]http://www.ietf.org/rfc/rfc2326.txt [3] http://tesys.cres.it/jsp/activities/rtsp/rtsp.jsp [4]http://www.csee.umbc.edu/~pmundur/course s/CMSC691C/lab5-kurose-ross.html