RTSP: protokol za pretočne medije in nadzor strežnikov — definicija
RTSP omogoča daljinski nadzor pretočnih medijskih strežnikov (play/pause), časovni dostop do datotek in prenos avdio/video vsebin prek RTP — definicija, delovanje in uporaba.
Protokol RTSP (Real Time Streaming Protocol), ki ga je razvil IETF in je bil leta 1998 oblikovan kot RFC 2326, je protokol za uporabo v pretočnih medijskih sistemih, ki odjemalcu omogoča daljinski nadzor pretočnega medijskega strežnika z izdajanjem ukazov, podobnih ukazom videorekorderja, kot sta "play" in "pause", ter omogoča časovno odvisen dostop do datotek v strežniku.
Samo pošiljanje podatkov o pretakanju ni del protokola RTSP. Večina strežnikov RTSP uporablja na standardah temelječi RTP kot prenosni protokol za dejanske avdio/video podatke. Strežnik RTSP podjetja RealNetworks kot transportni protokol uporablja tudi lastniški protokol RDT podjetja RealNetworks.
Kaj RTSP počne in kaj ne
RTSP deluje kot protokol za nadzor pretočnih vsebin: omogoča upravljanje predvajanja, izbiro predstavitev (streamov) in upravljanje sej med odjemalcem in strežnikom. Ne prenaša samih multimedijskih paketov—za prenos podatkov se običajno uporablja RTP (Real-time Transport Protocol) v povezavi z RTCP za nadzor in merjenje kakovosti. V nekaterih primerih strežniki uporabljajo tudi lastniške transportne rešitve ali pa medij pošiljajo preko TCP (interleaved) za lažji prehod skozi požarne zidove.
Glavne RTSP metode
- OPTIONS — zahteva, katere metode in funkcije strežnik podpira.
- DESCRIBE — pridobi opis predstavitve (npr. SDP), ki vsebuje informacije o razpoložljivih tokovih in kodekih.
- SETUP — inicializira transport za posamezen tok (npr. določi porte za RTP/RTCP ali zahteva interleaved prenos prek TCP).
- PLAY — začne ali nadaljuje predvajanje toka.
- PAUSE — začasno ustavi predvajanje, pri čemer se ohrani stanje seje.
- TEARDOWN — konča sejo in sprosti vire na strežniku.
- ANNOUNCE, RECORD — uporabljeno za snemanje ali objavo toka s strani odjemalca.
- GET_PARAMETER / SET_PARAMETER — pridobivanje ali nastavljanje parametrov seje ali toka.
Kako poteka tipična RTSP seja
- Odjemalec pošlje DESCRIBE in dobi SDP opis tokov.
- Za vsak tok pošlje SETUP, s katerim dogovori transport (RTP/UDP, RTP/AVP preko UDP, ali interleaved RTP preko TCP).
- Strežnik vrne identifikator seje (Session ID), ki se uporablja v nadaljnjih zahtevkih.
- Odjemalec pošlje PLAY — strežnik začne pošiljati podatke preko dogovorjenega transporta.
- Začasno ustavljanje se naredi z PAUSE, dokončno prekinitev pa z TEARDOWN.
Privzeti RTSP port je običajno 554. V okoljih z omejitvami požarnih zidov se pogosto uporablja interleaved prenos prek TCP ali HTTP-tunneling. Za zaščito se uporablja TLS (npr. rtsps://) in standardne sheme avtentikacije (Basic, Digest).
Uporabe v praksi
RTSP je zaradi nizke latence in nadzora nad predvajanjem zelo razširjen v sistemih za nadzor (IP kamere, CCTV), v rešitvah za video na zahtevo (VoD) in pri profesionalnih pretočnih strežnikih. Odjemalci, kot so VLC ali QuickTime, pogosto podpirajo RTSP. V zadnjih letih so se za široko distribucijo vsebin preko interneta (CDN) uveljavili HTTP-bazirani protokoli (HLS, DASH), a RTSP ostaja pomemben pri neposrednem povezanju s kamerami in pri scenarijih, kjer je pomembna nizka zakasnitev.
Standardi in varnost
Originalna specifikacija je RFC 2326 (1998), ki je opredelila RTSP 1.0. Kasneje je IETF objavil posodobitev in razširitev protokola v RTSP 2.0 (RFC 7826), ki prinaša izboljšave glede protokolarne skladnosti, varnosti, IPv6 podpore in poenostavljenega upravljanja sej. Za varnost je priporočljiva uporaba TLS, ustreznih avtentikacijskih mehanizmov in skrb za posodobitve strežnikov in odjemalcev, saj so naprave (npr. IP kamere) pogosto tarča napadov, če niso pravilno zaščitene.
Kratek povzetek
RTSP je nadzorni protokol za pretočne medije, ki omogoča upravljanje predvajanja in seje med odjemalcem in strežnikom, medtem ko se dejanski prenos avdio/video vsebin običajno izvaja prek RTP ali drugih transportnih mehanizmov. Zaradi zmogljivosti in nizke zakasnitve ostaja RTSP pomemben pri video nadzoru in aplikacijah z zahtevami po hitrem odzivu, medtem ko so za široko dostavo vsebin pogosteje uporabljeni HTTP-bazirani sistemi.
Stranke
- GStreamer
- Medijski predvajalnik Classic
- MPEG4IP
- MPlayer
- QuickTime
- Predvajalnik Avi
- RealPlayer
- Skype
- Medijski predvajalnik VLC
- Winamp
- Predvajalnik Windows Media Player
- Xine
- MythTV prek storitve Freebox
- Igralec Gom
Programska oprema strežnika
- Streaming strežnik QuickTime: Applov zaprtokodni strežnik za pretakanje, ki je priložen operacijskemu sistemu Mac OS X Server
- Darwin Streaming Server: Odprta različica strežnika Quicktime Streaming Server, ki ga vzdržuje Apple
- pvServer: To je Alcatel-Lucentov streaming strežnik, ki se je prej imenoval PacketVideo Streaming Server.
- Strežnik Helix DNA: Streaming strežnik družbe RealNetworks. Na voljo je v odprtokodni in lastniški različici.
- V živo555: Odprtokodne strežniške in odjemalske knjižnice C++, ki se uporabljajo v znanih odjemalcih, kot sta VLC in mplayer.
- VideoLAN: Odprtokodni medijski predvajalnik in streaming strežnik
- Storitve Windows Media Services: Microsoftov strežnik za pretakanje, ki je vključen v strežnik Windows Server.
- VX30: Streaming video strežnik in vgrajeni odjemalec JAVA podjetja Maui X-Stream.
Sorodne strani
- Prenosni protokol v realnem času (RTP)
- Rešitev Fusion RTSP za vgrajene sisteme, npr. IPTV, internetno televizijo in mobilne internetne naprave.
Iskati