Készítette: Régeni Éva, 541. Multicast Ismerősen hangzik? Software upgrade elküldése azokhoz a felhasználókhoz, akik ezt igénylik Whiteboard vagy telekonferencia, amely osztott a résztvevők között Osztott, interaktív virtuális környezet, vagy többtagú játékok (Quake)
TCP/IP fölötti Multicast Mi is az a Multicast? Unicast, Broadcast probléma Multicast címek Hoszt szintek Multicast datagram küldése Multicast datagram fogadása Az Mbone IGMP Protokoll Multicast routing algoritmusok Multicast routing az Interneten
TCP/IP fölötti Multicast Mi is az a Multicast? szükséglet Multicast a megoldás: ha olyan információnk van, amelyet Interneten keresztül több hosztnak tovább kell küldenünk Tévé, rádió hasonlat: csak azt a kanálist látod, hallgatod, amelyik érdekel
Unicast, Broadcast probléma TCP/IP fölötti Multicast Unicast, Broadcast probléma Unicast: egy küldő folyamat, egy fogadó A TCP unicast orientált Az UDP-nél is működik a unicast évekig elégségesnek bizonyult az Internet számára
Unicast, Broadcast probléma 1993: 4.4 BSD A multicast legelső implementációja Változik az Internet Már nem elég: kapcsolat a hostokkal mail FTP Az emberek: képeket akartak látni mások honlapján majd hallani és látni is akarták ezeket az embereket
Unicast, Broadcast probléma Honlapok nézegetése unicast-el megengedhető a költség Audio/Video forgalom: 2 lehetőség Külön unicast kapcsolat minden fogadóval hatalmas sávszélesség igény Broadcast nem minden hostot érdekel, aki a LAN-on belül van olyat is érdekel, aki a LAN-on kívűl van Megoldás: egy speciális cím A hosztok, akik elhatározták, hogy csatlakoznak a konferenciához, tudatában lesznek a csomagoknak, elolvassák és átadják az IP rétegeknek.
Unicast, Broadcast probléma
Unicast, Broadcast probléma Speciális csomagok: IP csomagok Különbség a routing algoritmusban van
TCP/IP fölötti Multicast Multicast címek Multicast címzés Minden IP datagram, amely 1110-val kezdődik, IP multicast datagram Maradék 28 bit: a cél multicast csoportot azonosítja
Datagram: csoportnak címzett Datagram másolata: a fogadóknak Multicast címek Datagram: csoportnak címzett Datagram másolata: a fogadóknak
Multicast címek
Jól ismert Multicast csoportok: Multicast címek Jól ismert Multicast csoportok: 224.0.0.1 – minden host 224.0.0.2 – minden router 224.0.0.4 – minden DUMRP router 224.0.0.5 – minden OSPF router 224.0.0.13 – minden PIM router Mindenképp lefoglalt: 224.0.0.0 – 224.0.0.255 lokális célokra 239.0.0.0 - 239.255.255.255 adminisztratív célokra
TCP/IP fölötti Multicast Host szintek 0 – szint: nincs IP Multicast támogatás 1 – szint: küldésre, de nem fogadásra szolgáló IP Multicast támogatás 2 – szint: teljes IP Multicast támogatás Tartalmazniuk kell IGMP (Internet Group Managment Protocol) implementációt a TCP/IP stacken
Multicast datagram küldése TCP/IP fölötti Multicast Multicast datagram küldése A Multicast forgalmat UDP-vel kezelik a szállítási rétegben Kutatások folynak: Multicast Transport Protocols Az applikáció: megnyitja az UDP socket-et, kitölti D-osztályú multicast címmel a cél mezőt
Multicast datagram küldése TTL (Time To Live) ellenőrzi a datagram megmaradási idejét „threshold” – milyen messzire terjed a multicast forgalom a routerekre nézve Loopback ha 2 – szintű a küldő host, visszajön neki is egy másolat kikapcsolható opció Interface kiválasztás több hálózathoz csatlakozó hostok eldöntik, melyik interface-t használják küldésre
Multicast datagram küldése
Multicast datagram küldése Multicast Transport Protocols RTP (Real-Time Transport Protocol) SRM (Scalable Reliable Multicast) URGC (Uniform Reliable Group Communication Protocol) Muse MFTP (Multicast File Transfer Protocol) LBRM (Log-Based Receiver-reliable Multicast) STORM (Structure Oriented Resilient Multicast)
Multicast datagram fogadása TCP/IP fölötti Multicast Multicast datagram fogadása Multicast csoporthoz való csatlakozás a kernel értesítése a datagramokat a hardware vagy IP réteg megszűri a csatlakozás sajátos interface-en történik Multicast csoportból való kilépés nem folyamatonkénti, de hosztkénti tagság
TCP/IP fölötti Multicast Az MBone A multicast legnagyobb hátránya: Több száz hoszt, és legfőképp a routerek nem támogatják => Új felszerelés Operációs rendszer módosítása Multicast szigetek Nehéz kommunikáció
Az MBone Megoldás: virtuális multicast hálózat multicast szigetek multicast alagút Mbone: egy virtuális hálózat, amely alapját multicast szigetek képezik, amelyeket multicast alagutak kötnek össze egymással
TCP/IP fölötti Multicast IGMP Protokoll Internet Group Managment Protocol lokális célja limitált a hoszt és a „first hop” router között
IGMP üzenet típusok: membership query membership report IGMP protokoll IGMP üzenet típusok: membership query Általános Sajátos membership report leave group (opcionális)
IGMP üzenet: IP csomagban van Formátuma: IGMP protokoll Típus (8 bit) Maximális válasz idő (8 bit) Checksum (16 bit) Multicast csoport címe (32 bit)
Multicast routing algoritmusok TCP/IP fölötti Multicast Multicast routing algoritmusok Az általános eset Csoport-megosztott fát használva Forrásra alapuló fákat használva
Multicast routing algoritmusok A multicast routing célja: egy olyan linkekből álló fát találni, amely összekapcsolja a multicast csoporthoz tartozó hosztokat tartalmazó routereket multicast csomagok haladnak a fán a fa olyan routert is tartalmazhat, amelynek nincs a csoporthoz csatlakozó hosztja
Csoport-megosztott (Group-shared) fa Multicast routing algoritmusok Csoport-megosztott (Group-shared) fa Egyetlen fa az illető multicast csoport számára N hoszt. 1 fa. 1 multicast csoport. multicast csomagok csak ezeken a linkeken haladnak a linkek kétirányúak link költség
Multicast routing algoritmusok Steiner Fa probléma Minimális link költségű fa keresése NP-teljes Internet multicast routing algoritmus Központi csomópontra alapuló megközelítés Központi csomópont Csatlakozási üzenet
Forrásra alapuló (Source-based) fák Multicast routing algoritmusok Forrásra alapuló (Source-based) fák Saját routing fa minden küldő számára N hoszt. N fa. 1 multicast csoport. bizonyos linkek egyirányúak
Multicast routing algoritmusok Link state algoritmus Dijkstra link state routing algoritmusa a legkisebb költségű utak egyesítése minden link költségének ismerete RPF (reverse path forwarding) algoritmus kevesebb link állapot információ ismerete multicast router: Ha rajta van a forrástól hozzá vezető legrövidebb úton minden kimenő linknek továbbküldi a csomagot Ha nincs rajta, ejti a csomagot
Multicast routing az Interneten TCP/IP fölötti Multicast Multicast routing az Interneten Standard Internet multicast routing protokollok: DVMRP MOSPF PIM Egyéb protokollok: CBT BGMP
Multicast routing az Interneten DVMRP Distance Vector Multicast Routing Protocol az első multicast routing protokoll az Interneten távolság vektor routing algoritmus RPF algoritmus
Multicast routing az Interneten MOSPF Multicast Open Shortest Path First Protocol AS-en belül működik kiterjeszti az OSPF-t RPF algoritmus
Multicast routing az Interneten PIM Protocol Independent Multicast routing protokoll független a unicast protokolltól 2 eset Dense - RPF Sparse – központi-alapú megközelítés
Multicast routing az Interneten CBT Core Based Tree multicast routing protokoll kétirányú csoport-megosztott fa egyetlen központi csomópont
Multicast routing az Interneten BGMP Border Gateway Multicast Protocol inter-AS rendszer multicast routing csoport-osztott fa megközelítés
Juan-Mariano de Goyeneche: Multicast Over TCP/IP HOWTO Dokumentáció James F. Kurose, Keith W. Ross: Computer Networking – A top down approach Featuring the Internet Juan-Mariano de Goyeneche: Multicast Over TCP/IP HOWTO