MULTIMÉDIA TOVÁBBÍTÁSA IP FELETT

Hasonló dokumentumok
MULTIMÉDIA TOVÁBBÍTÁSA AZ IP FELETT

Kommunikációs rendszerek programozása. Voice over IP (VoIP)

Real-Time Protocol RTP RTCP

Real-Time Protocol RTP RTCP

IP alapú távközlés. Voice over IP (VoIP)

SzIP kompatibilis sávszélesség mérések

Infokommunikáció. Forgalmi tervezés, VoIP. - Varga Pál, BME TMIT -

Építsünk IP telefont!

Dr. Wührl Tibor Ph.D. MsC 04 Ea. IP kapcsolás hálózati réteg

E Q U I C O M M é r é s t e c h n i k a i K f t. H B u d a p e s t, M á t y á s k i r á l y u T. : F.

Dr. Wührl Tibor Ph.D. MsC 05 Ea. Szállítási protokollok - Bevezetés

Távközlési informatika VoIP Voice over Internet/IP. Dr. Beinschróth József

Tartalom. Hálózati kapcsolatok felépítése és tesztelése. Rétegek használata az adatok továbbításának leírására. OSI modell. Az OSI modell rétegei

Új módszerek és eszközök infokommunikációs hálózatok forgalmának vizsgálatához

Az Ethernet példája. Számítógépes Hálózatok Az Ethernet fizikai rétege. Ethernet Vezetékek

Alternatív zártláncú tartalomtovábbítás értékesítőhelyek számára

Televíziózás és az adaptív streaming. Dr. Kovács Imre

Hálózatok Rétegei. Számítógépes Hálózatok és Internet Eszközök. TCP/IP-Rétegmodell. Az Internet rétegei - TCP/IP-rétegek

Két típusú összeköttetés PVC Permanent Virtual Circuits Szolgáltató hozza létre Operátor manuálisan hozza létre a végpontok között (PVI,PCI)

Multiprotocol encapsulation (RFC1483) - IETF Classical IP over ATM (RFC1577) - IETF LAN Emulation (LANE) - ATM Forum Multiprotocol over ATM (MPOA) -

Fábián Zoltán Hálózatok elmélet

Mobil kommunikáció /A mobil hálózat/ /elektronikus oktatási segédlet/ v3.0

Számítógépes Hálózatok 2011

Üzenet a Pluto-ra. Delay- and Disruption- Tolerant Networking. Költl Péter. szenior műszaki tanácsadó CCIE #

Az adott eszköz IP címét viszont az adott hálózat üzemeltetői határozzákmeg.

Forrás jelek IPTV / OTT hálózatokhoz

Networkshop 2014 (április ) 1.

Számítógép-hálózatok. Gyakorló feladatok a 2. ZH témakörének egyes részeihez

Hogyan hatnak az európai projektek az Internet fejlődésére? avagy: példák a közelmúlt EU-s projektjeinek fejlesztéseiből

MOTIware IMS MediaGateway megvalósítása. Új generációs multimédiás szolgáltatások IMS alapokon

Ethernet/IP címzés - gyakorlat

Adatátviteli rendszerek Mobil IP. Dr. habil Wührl Tibor Óbudai Egyetem, KVK Híradástechnika Intézet

IP Telefónia és Biztonság

A TCP/IP modell hálózati rétege (Network Layer) Protokoll-készlet: a csomagok továbbítása. Legjobb szándékú kézbesítés

Voice over IP (VOIP) Dr. Répás Sándor

Hálózati architektúrák és rendszerek. Nyilvános kapcsolt mobil hálózatok (celluláris hálózatok) 2. rész

Hálózati architektúrák és rendszerek. 4G vagy B3G : újgenerációs mobil kommunikáció a 3G után

Televíziózás újgenerációs technológiák használatával

Internet Protokoll 6-os verzió. Varga Tamás

2. Az Internet Protocol alapjai

Járműinformatika Multimédiás buszrendszerek (MOST, D2B és Bluetooth) 4. Óra

Előnyei. Helyi hálózatok tervezése és üzemeltetése 2

GSM azonosítók, hitelesítés és titkosítás a GSM rendszerben, a kommunikáció rétegei, mobil hálózatok fejlődése

SIP. Jelzés a telefóniában. Session Initiation Protocol

Elektronikus levelek. Az informatikai biztonság alapjai II.

Számítógépes Hálózatok ősz Hálózati réteg IP címzés, ARP, Circuit Switching, Packet Switching

Infokommunikációs hálózatok IPTV rendszerek

TELE-OPERATOR UTS v.14 Field IPTV műszer. Adatlap

24. fejezet A szállítási réteg

Hálózati réteg, Internet

Hálózati ismeretek. Az együttműködés szükségessége:

Gyakorló feladatok a 2. ZH témakörének egyes részeihez. Számítógép-hálózatok. Dr. Lencse Gábor

KANDÓ KÁLMÁN VILLAMOSMÉRNÖKI KAR HÍRADÁSTECHNIKA INTÉZET. VoIP hálózati forgalom vizsgálata. Dr. Wührl Tibor Dr. Gyányi Sándor

A digitális KábelTV melléktermékeinek minőségi kérdései

Internet-hozzáférések teljesítményvizsgálata webböngészőben

Távközlő hálózatok és szolgáltatások VoIP Kapcsolástechnika

Hálózati architektúrák laborgyakorlat

Windows rendszeradminisztráció és Microsoft szerveralkalmazások támogatása. Kocsis Gergely, Supák Zoltán

Szállítási réteg (L4)

OSI-ISO modell. Az OSI rétegek feladatai: Adatkapcsolati réteg (data link layer) Hálózati réteg (network layer)

Építsünk IP telefont!

Számítógépes Hálózatok és Internet Eszközök

1. Soroljon fel 3 jellemző tulajdonságát a beszédkódolóknak! Egyet fejtsen ki bővebben!

Az RSVP szolgáltatást az R1 és R3 routereken fogjuk engedélyezni.


Internet vagy IP Multimedia System (IMS)

TCP ÉS UDP. Médiakommunikációs hálózatok (VIHIM161) évi fóliái alapján készült. Dr. Lencse Gábor

Mobil Peer-to-peer rendszerek

4. Hivatkozási modellek

Hangátvitel IP hálózaton Oktatási segédanyag a Távközlő hálózatok című tárgyhoz

1/9. Sunell IP kamerák webes felületének használati útmutatója. Élő kép (Live Video)

Kommunikáció. Kommunikáció. Folyamatok. Adatfolyam-orientált kommunikáció. Kommunikáció típusok (1) Kommunikáció típusok (2) Média. Folyamok (Streams)

Organizáció. Számítógépes Hálózatok Gyakorlati jegy. Vizsga. Web-oldal

Az IP hálózati protokoll

Hálózati architektúrák és Protokollok GI - 9. Kocsis Gergely

Kommunikáció. 3. előadás

20. Tétel 1.0 Internet felépítése, OSI modell, TCP/IP modell szintjenek bemutatása, protokollok Pozsonyi ; Szemenyei

4. Az alkalmazások hatása a hálózat tervezésre

BEÁGYAZOTT RENDSZEREK TERVEZÉSE UDP csomag küldése és fogadása beágyazott rendszerrel példa

A PET-adatgy informatikai háttereh. Nagy Ferenc Elektronikai osztály, ATOMKI

Számítógépes Hálózatok ősz 2006

Organizáció. Számítógépes Hálózatok ősz Tartalom. Vizsga. Web-oldal

Számítógép hálózatok

* Rendelje a PPP protokollt az TCP/IP rétegmodell megfelelő rétegéhez. Kapcsolati réteg

Gigabit/s sebess«gű internetkapcsolatok m«r«se b ng«szőben

Számítógépes hálózatok GY

Számítógépes Hálózatok GY 6.hét

Kommunikáció Androidon Mobilinternet Wifi

Miskolci Egyetem Gépészmérnöki és Informatikai Kar. IPTV szolgáltatásait vizsgáló alkalmazás fejlesztése Szakdolgozat

COMET webalkalmazás fejlesztés. Tóth Ádám Jasmin Media Group

Szolgáltat. gfelügyeleti gyeleti rendszer fejlesztése. NETWORKSHOP 2010 Sándor Tamás

Simon Balázs Dr. Goldschmidt Balázs Dr. Kondorosi Károly. BME, Irányítástechnika és Informatika Tanszék

A HANG SÁVSZÉLESSÉG IGÉNYE AZ MH MPLS TRANSZPORTHÁLÓZATÁN

I+K technológiák. Beágyazott rendszerek 3. előadás Dr. Aradi Szilárd

IP alapú távközlés. Virtuális magánhálózatok (VPN)

KANDÓ KÁLMÁN VILLAMOSMÉRNÖKI KAR HÍRADÁSTECHNIKA INTÉZET. Szállítási réteg vizsgálata Wireshark analizátorral. Dr. Wührl Tibor Dr.

Tömören a tartalomról Transzkódolási eljárások HFC szemmel

Számítógépes Hálózatok GY 7.hét

Transzport Réteg. Transzport réteg protokollok

Hálózati architektúrák laborgyakorlat

Átírás:

MULTIMÉDIA TOVÁBBÍTÁSA IP FELETT Médiakezelő protokollok (RTP, RTCP, RTSP) Szabadkai Műszaki Főiskola Dr. Huszák Árpád huszak@hit.bme.hu

2 Multimédia alkalmazások A multimédia alkalmazások fő csoportjai: Tárolt audió- és videó-streaming Élő audió- és videó-streaming Interaktív real-time audió és videó Szolgáltatásminőség-igényeik: Késleltetés-érzékenyek késleltetés és késleltetés-ingadozás Adatvesztésre általában nem érzékenyek Éppen ellentétesen az adatkommunikációval

3 Médiastreaming fogalma Azonnali adatfolyam általában tömörített multimédiás információ azonnaliságra összpontosít nem a multimédiás tartalom teljes hűségű visszaállítására Hagyományos média fájlok: egyetlen nagy csomagban letöltés az értelmezéshez Ezzel szemben itt folyamatos csomagözön Elterjedéséhez kellett: megnövekedett CPU és operációs rendszer képességek csomópontokban magas adatátviteli ráták, különösen utolsó mérföld hatékonyabb tömörítési algoritmusok

4 Tárolt médiastreaming A tartalom a forrásnál tárolódik (médiaszerver) Lejátszásra kerül a kliensneknél A lejátszás elkezdődik, mielőtt a teljes anyag megérkezik Interaktivitás: videomagnó-szerű funkciók szükségesek (előre-hátra, szünet, állj stb.)

5 Élőmédia-streaming Alkalmazási példák: rádió-, TV-állomások az interneten élő előadások ( webinar ) élő sportesemények Streaming: playback-tár lejátszás késleltetéssel Interaktivitás: néhány, a tárolt média lejátszásánál használt funkció (persze pl. gyors előre nincs)

6 Interaktív real-time audió és videó Alkalmazási példák: VoIP, IP feletti telefonálás videokonferencia Igények: kis késleltetés, kis késleltetésingadozás pl. beszédnél: 150 ms (max. 300 ms), ingadozás pár 10 ms Új funkció: hívásvezérlés

PÉLDA: MIT KELL TUDNI A BESZÉDRŐL A VOIP-HEZ?

8 Beszédfeldolgozás beszédcsomagkommunikációs rendszerekben Analóg-digitális átalakítás A 64 kbit/s-os beszéd: mintavétel 8 khz-cel, azaz 125 mikroszekundumonként a minták ábrázolása 8 biten (kerekítése 256 szintre) tehát 8 bit 125 μs-nként Redundanciák kivonása a beszédminta-folyamból PCM-DPCM-ADPCM-CELP Az inaktív szakaszok kivonása Szünet/aktivitás detektálás (VAD - Voice Activity Detection) Pszichoakusztikai modell használata Pl. 400Hz-3500Hz (20Hz-20kHz-ből) Csomagokká alakítás Beszédcsomag mérete függ a forrássebességtől és hogy milyen hosszú beszédszakaszt teszünk bele egy csomagba.

9 Néhány beszédtömörítés-szabvány összehasonlítása Szabvány* Kódolási módszer Bitsebesség [kbit/s] Bonyolultság Késleltetés [ms] G.711 PCM 64 1 0,125 G.726 ADPCM 32 10 0,125 G.728 Low Delay- CELP 16 50 0,625 G.729 CS-ACELP 8 30 15 G.723.1 ACELP 6,3/5,3 25 37,5 * ITU-T szabványok

Néhány beszédtömörítés-szabvány szubjektív minősége (perceptual quality) - MOS 10 *MOS: mean opinion score

11 Beszéd-csomagolás és -visszaállítás Analóg beszédjel szünet Beszédcsomagok a forrásnál Beszédcsomagok a célnál Reprodukált beszédjel idő

12 Szünet/aktivitás-detektálás Analóg beszédjel idő A beszéddetektor kimenete idő

13 Tipikus beszédcsomagméretek Pontosabban: payload-méretek Tipikus beszédszakasz, amelyet egy csomaggá alakítunk át: néhánytól ms-tól néhány 10 ms-ig a csomagolás fix kezdeti késleltetési komponenst okoz ha a csomag elveszik (nincs pótlás): viszonylag rövid szakasz essen csak ki gyakorlati értékek: 6 ms, 10 ms, 20 ms. 1. példa: 10 ms és tömörítés nélkül 80 byte. 2. példa: 20 ms és 2-szeres tömörítés esetén 80 byte. 3. példa: 6 ms és tömörítetlen beszéd esetén 48 byte.

14 Mire van még szükségünk az eddig megismert protokollokon túl? IP: best effort -szolgáltatás, datagram átvitel a hálózaton a végpontok között nincs késleltetés garancia TCP vagy UDP: kommunikáció a végpontok alkalmazásai között eddig még a payload bármi lehetett, nem kezeltük, hogy milyen IP, UDP összeköttetésmentes, TCP összeköttetés-alapú, de ez még nem hívásvezérlés

Mire van még szükségünk? Feladatcsoportok és jellegzetes protokollok 15 Médiakezelés RTP, RTCP, RTSP Hívásvezérlés (H.323) és SIP Szolgáltatásminőség biztosítása IntServ*, DiffServ*, RSVP * nem protokoll, hanem módszer

16 Egy kis rendcsinálás : továbbfejlesztett architekturális modellre lenne szükség Egyre feljebb megyünk az architektúrán: egyre kevésbé lesznek tisztán besorolhatók a funkciók egy-egy rétegbe az OSI szerint, ill. mostantól kezdve minden az alkalmazási réteg része, a TCP/IP szerint. Az egyes funkcionalitások nem is homogének: nem mindegyik közvetlen része a felhasználói adatkommunikáció folyamatának, vannak olyanok, amelyek ehhez segítséget nyújtanak, vannak olyanok, amelyek magának a hálózatnak a fenntartásához szükségesek. Ezért többsíkú modelleket találtak ki

17 A távközlésben használatos rétegezett (és többsíkú) architektúra A B-ISDN szabványosítási környezetében vezették be User, Control, Management Planes User Plane Felsőbb rétegek Felhasználói (adat) sík Vezérlő sík Menedzsment sík További közös rétegek, pl. adatkapcsolati Fizikai réteg Management Plane Control Plane Felsőbb rétegek Az egyes síkok közös alsóbb rétegekre támaszkodhatnak és saját felsőbb rétegekkel rendelkeznek Vezérlősík: pl. hívásvezérlő protokollok Menedzsmentsík: hálózatmenedzsment

18 Médiakezelő protokollok - tartalom Bevezetés RTP Real-time Transport Protocol RTCP Real-Time Transport Control Protocol RTSP Real-Time Streaming Protocol Összefoglalás

19 Bevezetés Multimédia, vagy egyszerűen média továbbítása IPhálózatokban média: beszéd, videó, adat Ezek a protokollok a multimédia-továbbítás mellett a kapcsolódó vezérlő információval is foglalkoznak, de nem hívásvezérléssel! RTP Real-time Transport Protocol RTCP Real-time Transport Control Protocol Multimédia-hívásvezérlés (call control, call processing) SIP, H.323 protokollcsalád

20 RTP és RTCP Mi az RTP és mi nem: a payloadjában média-, pl. beszédinformációt hordoz amit viszont pl. a H.323 vagy SIP vezérel szállítási protokoll felett működik támogatja a médiafolyamok (streamek) szállítását nem nyújt QoS garanciát RTCP: végpontok közötti QoS-monitorozás eszköze Különböző UDP portokat használnak párban RTP: páros számú portot RTCP: a következő páratlant RTP, RTCP: az RFC1889-ben specifikálták

21 Az RTP helye az IP protokollcsaládban Multimédiás forgalom általában UDP-t használ felhasználja annak multiplexelési és ellenőrzőösszeg képzési szolgáltatásait UDP helyett DCCP (Datagram Congestion Control Protocol) Nem kapcsolat orientált Nem garantálja a célba jutást Különböző UDP portokat használnak párban: RTP: páros számú portot RTCP: a következő páratlant Hálózati Rendszerek és Szolgáltatások Tanszék

22 Az RTP helye az IP protokollcsaládban Rétegek RTP Alkalmazási TCP UDP Szállítási (Host-to-host) RTP UDP/TCP IP Hálózati * az RTP-t néha a szállítási rétegbe sorolják

23 Az RTP helye az IP protokollcsaládban Szállítási rétegben nem megbízható transzport protokoll UDP, DCCP Felépítés: Adatátviteli protokoll Vezérlő protokoll (RTCP: RTP Control Protocol) Hálózati Rendszerek és Szolgáltatások Tanszék

24 Az RTP szolgáltatásai Videó és hang átviteléhez fontos információk átvitele Szinkronizáció folyamatának támogatása QoS támogatás segítése A szabvány párban definiálja az RTP-t és RTCP-t RTCP: QoS szolgáltatás Médiastream-ek közötti szinkronizálás 5% RTCP forgalom, többi RTP

25 Az RTP szolgáltatásai Végpont-végpont adatátviteli szolgáltatás valós idejű alkalmazások számára Típus azonosítás Csomag típus (packet type) Időzítés jelzés Időbélyeg (timestamp) szinkronizáció Csomagsorrend Sorszámozás (sequence number) Csomagvesztés detektálás QoS becslés Visszajelzés a sikeres fogadásról Hálózati Rendszerek és Szolgáltatások Tanszék

26 RTP: csomagfejrész-formátum (1) Version (V, 2 bits) Az RTP verziószáma; az RFC 1889-ben definiált módon Padding (P, 1 bit) Ha 1-es: van padding az RTP csomag végén Padding - utolsó byte: hányat kell figyelmen kívül hagyni Extension (X, 1 bit) Ha 1-es: a fejrész után változó hosszúságú fejrész kiterjesztés. Ha van kiterjesztés: első 2 byte a hosszát adja meg A kiterjesztés a fix fejrész utolsó érvényes mezője után következik

27 RTP: csomagfejrész-formátum (2) CSRC count (CC, 4 bits) a CSRC azonosítók száma = a multiplexált források száma (a források megadása: a CSRC mezőben) csak egy forrás: CC = 0 Marker (M, 1 bit) a csomagfolyam szignifikáns eseményeinek megjelölése példák: kerethatárok a különféle kódolási módszereknél a beszéd aktív időszakainak kezdete/vége az aktuális interpretációt a profile adja meg

28 RTP: csomagfejrész-formátum (3) Payload type (PT, 7 bit) profile, amely legtöbbször a médiakódolási típusokat kezeli, azoknak payload-formátumokat feleltet meg Sequence number (16 bit) lehetővé teszi az elveszett csomagok detektálását és a csomagsorrend helyreállítását kezdőértéke véletlen szám (l. később); minden elküldött RTP csomag után eggyel növelődik Timestamp (32 bit) Az RTP csomag első oktettjének megfelelő pozíció valódi ideje a médiafolyamban

29 RTP: csomagfejrész-formátum (4) SSRC (32 bit) Az RTP csomagfolyam forrását azonosítja, az RTCP rendeli hozzá, véletlenszerűen CSRC (0 15-ször 32 bit) contributing source: az RTP mixer által létrehozott kombinált csomagfolyam komponensét azonosítja

30 RTP profile -ok = A médiakódolást felelteti meg payload-formátumoknak Példák beszédátvitelnél (továbbiakat specifikál az RFC): Média kódolás Mintavételi seb., khz Adatsebesség, kbit/s RTP payload type G.711 8 64 0 G.722 16 48-64 9 G.728 8 16 15 GSM 8 13 3 Comfort noise - - 19 Videó-payloadok pl.: 26: JPEG, 33: MPEG2

31 SSRC, Synchronization source Stream forrását azonosítja, független a hálózati címtől Véletlen szám, egyedi kell hogy legyen a session-on belül Pl. Mikrofon, kamera, vagy akár mixer Ha több stream-et generál ugyanazon forrás egy sessionon belül: mindegyiknek más SSCR Pl. több kamerától Vevő ez alapján válogatja egy csoportba a csomagokat pl. playback esetén Változtathatja az adatformátumot időben

32 SSRC, Synchronization source A multimédia folyam azonosítása az összehangolási forrással (synchronization source, SSRC) történik Az SSRC meghatározza a folyam forrását (véletlen azonosító) Pl. Mikrofon, kamera, vagy akár mixer Egy összehangolási forrás változtathatja a videó- és hangkódolást. Közreműködő forrás (Contributing source, CSRC) olyan forrás, melyből érkező adatfolyamot egy RTP mixer felhasznál Az RTP mixer a csomag létrehozásakor CSRC listát készít a felhasznált források SSRC azonosítója alapján

33 RTP mixer Közbülső rendszer, amely fogadja az RTP csomagokat egy vagy több forrásból megváltoztathatja az adatformátumot kombinálja a csomagokat új RTP csomagként továbbítja kombinált streamre új időzítés Mixer által összerakott új csomagok SSRC-je a mixer lesz Viszont CSRC-ben felsorolja az eredeti forrásokat

34 RTP Mixer IP Network Source SSRC = 1 Media Gateway Source SSRC = 2 Media Gateway Gateway Mixer SSRC =N CSRC1 =1 CSRC2 =2 CSRC2 =3 Source SSRC = 3 Pl. telefonkonferencia

35 RTP csomag megjelenítése hálózatmonitoron RTP Header RTP: Version = 2 RTP: P Bit = 0 (Padding Does Not Exist) RTP: X Bit = 0 (No Extension Header Follows) RTP: CSRC Count = 0 RTP: Marker Bit = 0 RTP: Payload Type = MU Law Scaling (PCMU) (0) RTP: Sequence Number = 19382 RTP: Time Stamp = 7241.899 seconds RTP: Synchronization Source Indentifier = 0x1C1A054A RTP: 160 Bytes Of PCMU Payload Data 00 90 a0 00 00 73 00 90 a0 00 00 95 08 00 45 00...s.....E. 00 c8 00 37 00 00 78 11 a1 cb 0a 01 46 11 0a 01...7..x....F... 46 10 04 02 04 05 00 b4 00 00 80 00 4b b6 03 74 F......K..t 05 58 1c 1a 05 4a ff ff ff ff ff ff ff ff ff ff.x...j........

36 RTP payload-multiplexelés Javítja a sávszélesség-kihasználást Példa: 2 beszédforrás IP/UDP/RTP Header (40 bytes) CID 1 LI1 T R Mini-Header 1 RTP Voice Packet 1 CID 2 LI2 T R Mini-Header 2 RTP Voice Packet 2 CID: Channel ID, LI: Length Indicator, T: Transmit bit, R: Reserved

37 RTP-t használó alkalmazások QuickTime (Apple) audio és video streaming RealAudio, RealVideo (RealNetworks) média streaming NetMeeting (Microsoft) IP telefónia, whiteboard, text chat, alkalmazásmegosztás CU-SeeMe a NetMeeting-hez hasonló IP/TV (Cisco) jó minőségű videó/audió, élő, VoD

38 RTSP Real Time Streaming Protocol Kapcsolat felépítése és ellenőrzése a session végpontok között VCR-jellegű funkciók, azaz lejátszás-vezérlés: elindítás tetszőleges pozícióból előre, hátra, megállás, folytatás különböző lejátszási sebesség kérése különböző bitsebesség beállítása RTSP szerverek nagy része RTP-t használ

39 RTSP Hasonló mint HTTP, de ez állapotfüggő protokoll, több kérés típussal kliens-médiaszerver kapcsolat Pl. kérésekre: SETUP: specifikálja hogy kell átvinni az adott média stream-et (PLAY kérés előtt) Portszámok RTP-re és RTCP-re Szerver: jóváhagyja és elküldi saját portszámait PLAY: egy vagy több médiastream lejátszása Megadható a lejátszási intervallum is

RTSP 40

41 RTCP Real-time Transport Control Protocol RTP társprotokollja RFC 3550 2003 Szabályozza az RTP kapcsolatot Periodikus kontroll információkat juttat el a résztvevőkhöz szinkronizálja az RTP kapcsolatokat (pl. videókonferenciánál a hangot és a képet) Monitorozza az RTP kapcsolatot Információt szolgáltat a minőségről a kapcsolat résztvevőinek: Késleltetés, jitter, vett csomagok, elveszett csomagok stb. statisztikákat küld Hálózati Rendszerek és Szolgáltatások Tanszék

42 RTCP Real-time Transport Control Protocol Végpont-végpont információt szolgáltat a minőségről a kapcsolat résztvevőinek: késleltetés jitter vett csomagok, elveszett csomagok stb. RTT RTCP nem jelzésátviteli protokoll! Hatására alkalmazás kodeket válthat, vagy folyamot korlátozhat Minden session résztvevőnek CNAME egyedi azonosítót biztosít SSRC azonosító változhat végpontonként, de ez nem 3. fél is monitorozhat végig

43 RTCP csomagtípusok SR (Sender Report) Aktív adók statisztikái Egy session minden résztvevőjét informálja Abszolút időbélyeggel: audió és videó stream szinkronizálása RR (Receiver Report) Passzív résztvevőktől (nem forgalmaznak RTP csomagokat) származó információk Sávszélesség-hozzárendelés az SR/RR forgalom számára Max: a teljes sávszélesség 5%-a Ennek 75%-a az RR számára, 25%-a az SR-nek

44 RTCP csomagtípusok SDES: Source description CNAME elküldése a session résztvevőinek További infók a forrás tulajdonosáról (név, e-mail cím, telefon) BYE: End of participation Pl. forrás közli, hogy elhagyja a konferenciát, mindenki hallja

45 Gondok RTCP-vel Ha sok felhasználó és hosszú sessionok: ritkán jön RTCP jelentés (5% korlát miatt) Pl. IPTV esetén, több perc vagy akár óra után csak, miközben 10 mp az elfogadható Elavult jelentések miatt a forrás rossz intézkedéseket hozhat QoS szempontjából Megoldás: hierarchikus aggregáció Több jelentés összevonása egy összefoglaló jelentésbe Összevonás: node-ok hierarchiája, fastruktúra

RTCP Sender Report formátum 46

Most már túl sok protokollunk van Átvitelisebesség-igény a fejrész-halmozódás miatt 47 Application RTP UDP IP 20 byte IP hdr 8 byte UDP hdr 12 byte RTP hdr Payload: N byte Payload RTP packet UDP datagram Data link Overhead = 40 byte plusz az adatkapcsolati réteg fejrésze Egy médiacsomag hossza = 40+N+ link layer header

48 Fejrésztömörítés (1) Cél: az overhead csökkentése Kezeljük együtt mindhárom protokollt (IP + UDP + RTP)! Elv: a kapcsolat kezdete után kis változások a fejrészekben Redundáns információ (pl. megvan az adatkapcsolati fejlécben) Sok mezőben nincs változás a kapcsolat alatt Vannak mezők, amelyek változnak, de jósolható módon, pl. sequence number Először tömörítetlen és teljes fejrész elküldése Utána a kompresszor és a dekompresszor megállapodnak egy Context Session ID-ben (CID); (8/16 bit hosszú) és a tömörítés formátumában CID: IP címek, UDP portok, RTP SSCR halmazát azonosítja

49 Fejrésztömörítés (2) Nézzük meg az együttes fejrészt! 0 1 2 3 8 16 31 Version HLEN TOS total length (bytes) Identification Flags Fragment Offset TTL Protocol No Header Checksum 32 bit Src IP Addr 32 bit Dest IP Addr Src Port No Dest Port No UDP Length UDP Checksum (0 if not used) v=2 p x cc m PT timestamp synch src id (SSRC) Contributing Src (CSRC) (from mixers) UDP RTP IP Header Hdr Hdr 20 bytes 8 b 12 bytes

50 Fejrésztömörítés (3) Csak a következők változnak IP-nél: Teljes hossz: ezt az adatkapcsolati fejléc is tartalmazza, nem kell átvinni Header checksum: elhagyható, adatkapcsolatira bízva ID: inkrementálódik, IPv6-nál már nincs UDP: Ugyanaz az első kettő mint IP-nél RTP: Seq.number: inkrementálódik Időbélyeg: mintavételi időkkel növekszik M bit CSRC lista ritkán, csak akkor kell átvinni

51 Fejrésztömörítés (4) Compressed RTP (crtp) protokoll 4 formátum FULL_HEADER: teljes tömörítetlen fejrészek plusz CID és Sequence No Seq. No: csomagvesztés ellen kompresszió. és dekomp. között COMPRESSED_UDP: IP + UDP tömörített (2 v 6 byte), RTP tömörítetlen Ha változik az RTP payload típus COMPRESSED_RTP: normál eset, minden fejrész tömörítve Delta kódolás COMPRESSED_NON_TCP: IPv4 ID mező tömörítetlen védekezés nagy csomagvesztés esetén

52 Fejrésztömörítés (5) RTP Header Compression

53 Fejrész tömörítés alkalmazása Kis sebességű linkeken érdemes csak használni Ahol alacsony a hibaarány Pl. vezetéknélküli környezetben nem Szolgáltatások: Interaktív: videokonferencia, IP telefónia

Voice over RTP adatátviteli-sebesség számolása (adatkapcsolati réteg nélkül) 54 Payloadformátum Névleges sebesség Csomagolási idő [ms] Payload méret [byte] Átvitelisebesség-igény, tömörítetlen fejrészek [kbit/s] Átvitelisebesség-igény, tömörített fejrészek [kbit/s] G.711 20 160 80 64.8 64 kbit/s G.711 10 80 96 65.6 G.729 20 20 24 8.8 8 kbit/s G.729 10 10 40 9.6

55 RTP/RTCP, RTSP: összefoglalás RTP - médiakezelő protokoll UDP felett működik Különböző médiakódolási formátumokat támogat Az átvitelért felelős, a QoS-ért nem A fejrészt (az UDP+IP-vel együtt) kompresszióval lehet csökkenteni RTCP az RTP társprotokollja Nem jelzésprotokoll Nem QoS protokoll Hasznos segédeszköz a QoS megvalósításához RTSP: VCR-jellegű funkciók

RTP/RTCP, RTSP protocol stack 56

57 Demó VLC Server vlc -vvv input_stream --sout '#rtp{dst=192.168.0.12,port=1234,sdp=rtsp://152.66.249.24:8080/test.sdp} Client vlc rtsp://152.66.249.24:8080/test.sdp <http://www.videolan.org/doc/streaming-howto/en/ch04.html>

58 HTTP Live Streaming HLS, Apple HTTP Live Streaming 2009 Apple fejlesztés QuickTime, iphone, AppleTV eszközökhöz Broadcast és VoD támogatás Titkosítás és hitelesítés támogatás HTTPS Hálózati Rendszerek és Szolgáltatások Tanszék

59 HTTP Live Streaming rendszerfelépítés Szerver komponens (forrás) Tipikusan H.264 video és AAC audio kódolás Stream segmenter 10 mp darabolás (.ts) Elosztó komponens (továbbítás) Index fájl (.M3U8 ) létrehozása Index fájl felsorolja a stream darabjait Kliens komponens letöltés, megjelenítés Index fájl letöltése Stream darabok letöltése Hálózati Rendszerek és Szolgáltatások Tanszék

60 HLS adaptivitás Többféleképp kódolt média Master index fájl hivatkozhat más index fájlra is A felhasználó tapasztalat (pl. csomagvesztési arány) változtathat Broadcast esetén az index fájl folyamatosan változik Periodikus újratöltés szükséges Hálózati Rendszerek és Szolgáltatások Tanszék

61 HLS alternatívák Adobe Dynamic Streaming for Flash Microsoft Smooth Streaming MPEG-DASH (Dynamic Adaptive Streaming over HTTP) Hálózati Rendszerek és Szolgáltatások Tanszék

62 Köszönöm a figyelmet! http://www.hit.bme.hu/~huszak/oktatas/media_rtp.pdf