Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

Protocol RTSP

Anem a http://m.youtube.es Busquem per exemple el video de psy i copiem lenlla Veiem el segent format: rtsp://v2.cache5.c.youtube.com/CjYLENy73wIaLQn99bW6p2S29RMYDSANFEIJbXYtZ29vZ2xlSA RSBXdhdGNoYPrPpeikz874UAw=/0/0/0/video.3gp Engeguem el wireshark i comencem a capturar Anem al vlc fem volcado de red amb lenlla anterior Fem play, pause i ens movem en diversos temps del propi video. Apaguem el wireshark Posem un filtre RTSP i veiem el segent: Una connexi TCP amb port dest 554(RTSP) on surt el segent:

Veiem mltiples peticions del estil http OPTIONS rtsp://v2.cache5.c.youtube.com/CjYLENy73wIaLQn99bW6p2S29RMYDSANFEIJbXYtZ29vZ2xlSA RSBXdhdGNoYPrPpeikz874UAw=/0/0/0/video.3gp RTSP/1.0 CSeq: 2 User-Agent: LibVLC/2.0.6 (LIVE555 Streaming Media v2012.12.18) RTSP/1.0 200 OK Public: DESCRIBE, GET_PARAMETER, OPTIONS, PAUSE, PLAY, SETUP, SET_PARAMETER, TEARDOWN CSeq: 2 Server: Google RTSP 1.0 DESCRIBE rtsp://v2.cache5.c.youtube.com/CjYLENy73wIaLQn99bW6p2S29RMYDSANFEIJbXYtZ29vZ2xlSA

RSBXdhdGNoYPrPpeikz874UAw=/0/0/0/video.3gp RTSP/1.0 CSeq: 3 User-Agent: LibVLC/2.0.6 (LIVE555 Streaming Media v2012.12.18) Accept: application/sdp RTSP/1.0 200 OK Content-Type: application/sdp Cache-Control: must-revalidate Date: Thu, 18 Apr 2013 10:46:56 GMT Expires: Thu, 18 Apr 2013 10:46:56 GMT Last-Modified: Thu, 18 Apr 2013 10:46:56 GMT Content-Base: rtsp://v2.cache5.c.youtube.com/CjYLENy73wIaLQn99bW6p2S29RMYDSANFEIJbXYtZ29vZ2xlSA RSBXdhdGNoYPrPpeikz874UAw=/0/0/0/video.3gp/ CSeq: 3 Server: Google RTSP 1.0 Content-Length: 405 v=0 o=GoogleStreamer 889555248 832495121 IN IP4 74.125.214.145 s=Video c=IN IP4 0.0.0.0 b=AS:64 t=0 0 a=control:* a=range:npt=0-252.266000 m=video 0 RTP/AVP 98 b=AS:52 a=rtpmap:98 H263-2000/90000 a=control:trackID=0 a=cliprect:0,0,144,176 a=framesize:98 176-144 a=fmtp:98 profile=0;level=10 m=audio 0 RTP/AVP 99 b=AS:12 a=rtpmap:99 AMR/8000/1 a=control:trackID=1 a=fmtp:99 octet-align SETUP rtsp://v2.cache5.c.youtube.com/CjYLENy73wIaLQn99bW6p2S29RMYDSANFEIJbXYtZ29vZ2xlSA RSBXdhdGNoYPrPpeikz874UAw=/0/0/0/video.3gp/trackID=0 RTSP/1.0 CSeq: 4 User-Agent: LibVLC/2.0.6 (LIVE555 Streaming Media v2012.12.18) Transport: RTP/AVP;unicast;client_port=55532-55533 RTSP/1.0 200 OK Session: 70e1907d;timeout=90 Transport: RTP/AVP;unicast;mode=play;client_port=55532-55533;server_port=1058010581;source=74.125.214.145;ssrc=6AEA6238 Cache-Control: must-revalidate Date: Thu, 18 Apr 2013 10:46:56 GMT

Expires: Thu, 18 Apr 2013 10:46:56 GMT Last-Modified: Thu, 18 Apr 2013 10:46:56 GMT CSeq: 4 Server: Google RTSP 1.0 SETUP rtsp://v2.cache5.c.youtube.com/CjYLENy73wIaLQn99bW6p2S29RMYDSANFEIJbXYtZ29vZ2xlSA RSBXdhdGNoYPrPpeikz874UAw=/0/0/0/video.3gp/trackID=1 RTSP/1.0 CSeq: 5 User-Agent: LibVLC/2.0.6 (LIVE555 Streaming Media v2012.12.18) Transport: RTP/AVP;unicast;client_port=55534-55535 Session: 70e1907d RTSP/1.0 200 OK Session: 70e1907d;timeout=90 Transport: RTP/AVP;unicast;mode=play;client_port=55534-55535;server_port=1058010581;source=74.125.214.145;ssrc=41D6C304 Cache-Control: must-revalidate Date: Thu, 18 Apr 2013 10:46:56 GMT Expires: Thu, 18 Apr 2013 10:46:56 GMT Last-Modified: Thu, 18 Apr 2013 10:46:56 GMT CSeq: 5 Server: Google RTSP 1.0

PLAY rtsp://v2.cache5.c.youtube.com/CjYLENy73wIaLQn99bW6p2S29RMYDSANFEIJbXYtZ29vZ2xlSA RSBXdhdGNoYPrPpeikz874UAw=/0/0/0/video.3gp/ RTSP/1.0 CSeq: 6 User-Agent: LibVLC/2.0.6 (LIVE555 Streaming Media v2012.12.18) Session: 70e1907d Range: npt=0.000-

RTSP/1.0 200 OK Session: 70e1907d;timeout=90 Range: npt=0.000-252.266 RTP-Info: url=rtsp://v2.cache5.c.youtube.com/CjYLENy73wIaLQn99bW6p2S29RMYDSANFEIJbXYtZ29vZ2

xlSARSBXdhdGNoYPrPpeikz874UAw=/0/0/0/video.3gp/trackID=0;seq=12718;rtptime=1292604 11,url=rtsp://v2.cache5.c.youtube.com/CjYLENy73wIaLQn99bW6p2S29RMYDSANFEIJbXYtZ29v Z2xlSARSBXdhdGNoYPrPpeikz874UAw=/0/0/0/video.3gp/trackID=1;seq=53050;rtptime=30002 7139 CSeq: 6 Server: Google RTSP 1.0

GET_PARAMETER rtsp://v2.cache5.c.youtube.com/CjYLENy73wIaLQn99bW6p2S29RMYDSANFEIJbXYtZ29vZ2xlSA RSBXdhdGNoYPrPpeikz874UAw=/0/0/0/video.3gp/ RTSP/1.0 CSeq: 7 User-Agent: LibVLC/2.0.6 (LIVE555 Streaming Media v2012.12.18) Session: 70e1907d RTSP/1.0 200 OK CSeq: 7 Session: 70e1907d Server: Google RTSP 1.0 Content-Length: 0 PAUSE rtsp://v2.cache5.c.youtube.com/CjYLENy73wIaLQn99bW6p2S29RMYDSANFEIJbXYtZ29vZ2xlSA RSBXdhdGNoYPrPpeikz874UAw=/0/0/0/video.3gp/ RTSP/1.0 CSeq: 8 User-Agent: LibVLC/2.0.6 (LIVE555 Streaming Media v2012.12.18) Session: 70e1907d RTSP/1.0 200 OK CSeq: 8 Session: 70e1907d Server: Google RTSP 1.0 Podem observar una connexi TCP amb una comunicaci semblant al protocol http, veiem un request de la direcci del video, codis de resposta del servidor que tot va be, el tipus de client que es (VLC) etc, els principals parmetres a destacar son els options, teardown, describe, setup, play,pause, get_parameter. A options son les opcions que pot demanar el client, que son les comentades anteriorment. Teardown, serveix per aturar les dades quan convingui. Describe: descrius les propietats del video a reproduir, resoluci, durada, cdec que utilitza etc. Setup: ens indica com ser transportat el flux de dades del video, ens determina els ports UDP del client de la connexi que es far amb el protocol rtp, en el nostre cas (55532-55533), la ip i els ports del servidor entre altres parmetres .

Play: Servir perqu el servidor comenci a enviar les dades a la connexi rtp (UDP) Pause: Atura el transport de dades temporalment, per desprs les pot recuperar amb un play. Get_parameter: Serveix per recuperar un parmetre dun temps determinat (quan desplacem el temps del video) SI analitzem els paquets del protocol rtp veiem que utilitza UDP i els ports que ens han donat al Setup anterior. Les dades que cont sn fluxos de video.

Breu resum: El protocol rtsp va fent peticions amb TCP del video i les va rebent pel protocol RTP en UDP tot i que si es desitja es pot servir amb TCP.

Http descarrega progressiva


Engeguem wireshark, Carreguem video al navegador Parem wireshark Analitzem el TCP stream, En primer lloc, veiem una connexi TCP al port 8080 que equival al port http alternatiu. El client fa una petici mitjanant el protocol http i el servidor va responent el contingut. GET http://www.youtube.com/watch?v=9bZkp7q19f0 HTTP/1.1 Accept: text/html, application/xhtml+xml, */* . . . HTTP/1.0 200 OK Last-Modified: Sat, 30 Mar 2013 07:17:14 GMT Content-Type: video/mp4 Date: Thu, 18 Apr 2013 12:36:10 GMT Expires: Thu, 18 Apr 2013 12:36:10 GMT Cache-Control: private, max-age=23891 Accept-Ranges: bytes Content-Length: 1155072 X-Content-Type-Options: nosniff Server: gvs 1.0 X-Cache: MISS from proxy.urv.cat X-Cache-Lookup: MISS from proxy.urv.cat:8080 Via: 1.0 wpf1.urv.cat (squid) Proxy-Connection: keep-alive Dades del video....

Dintre daquests diferents gets entre ells el servidor retorna video mp4. Simplement es una descarrega progressiva tal com podria ser qualsevol element de la pagina web, aix vol dir que si volem veure una part del video haurem desperar a que es carregui fins el punt desitjat.

Taula comparativa

Avantatges

RTSP til en temps real Permet avanar sense carregar tot el video Estalvia ample de banda Flexible pot fer servir UDP com TCP Es obert Necessita un servidor streamming

HTTP descarrega Progressiva Implementaci fcil en servidor i client Utilitza TCP per tant no perdem frames

Inconvenients

No s til en dispositius mbils. No s flexible.

You might also like