lab Broadcasting-multicasting Távközlési és Médiainformatikai Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Unicast A célállomás egy hoszt IP cím típusok Broadcast A célállomás az összes hoszt egy adott hálózaton Multicast A célállomás hosztok egy adott csoportja Ezek egy multicast csoporthoz tartoznak 2 1
Broadcasting és a multicasting UDP csomagok továbbítása TCP - elsősorban csak 2 hoszt 2 alkalmazása közötti megbízható kommunikáció Egy küldő több célállomásnak ugyanazt az üzenetet továbbítja 3 Broadcast típusok Limited broadcast Net-directed broadcast Subnet-directed broadcast All-subnets directed broadcast 4 2
Cím: 255.255.255.255 Limited broadcast Csak akkor használható ha a küldő Konfigurációs állapotban van Nem ismeri a hálózati paramétereit (BOOTP) Útválasztó ezeket a csomagokat nem továbbítja Csak az adott hálózati szegmensen jelenik meg 5 Net-directed broadcast A címben a hoszt azonosítója csupa 1 Pl. class A cím esetén: netid.255.255.255 Az adott hálózat összes hosztja a célállomás 6 3
Subnet-directed broadcast A cím rendelkezik egy adott alhálózati címmel, de a hoszt azonosító csupa 1 Az útválasztónak ismernie kell az alhálózati maszkot: Pl. (class B) célcím: 128.1.2.255 (128.1.0.0 hálózat) Ha a subnet maszk 255.255.255.0 broadcast csomag Ha a subnet maszk 255.255.254.0 nem broadcast csomag VLSM esetén hasonlóan (prefixek) 7 All-subnets directed broadcast A címben subnet és a hoszt azonosító is csupa 1 Szintén ismerni kell az alhálózati maszkot Pl. cél subnet maszk 255.255.255.0 Class B IP address 128.1.255.255 All-subnets directed broadcast, ha vannak subnetek Net-directed broadcast, ha nincsenek 8 4
Multicasting Csomagtovábbítás több célállomáshoz Multicast csoport címzés: Class D IP cím 1 1 1 0 Használt címtartomány: 224.0.0.0-239.255.255.255 Multicast csoport azonosító 28 bit 9 Host group Hosztok egy csoportja, mely egy multicast címmel elérhető Jellemzők A csoport tagjai több hálózaton is lehetnek Tagság dinamikus Nincs mennyiségi megkötés Multicast csoportnak tag és nem tag egyaránt küldhet üzenetet 10 5
Multicast well-known címek IANA (Internet Assigned Numbers Authority) által meghatározott multicast címek: Permanent host groups (hasonló a TCP/UDP well-known portokhoz) A csoportok állandóak A csoport tagság önkéntes Pl.: 224.0.0.1 minden rendszer ezen az alhálózaton 224.0.0.2 minden router ezen az alhálózaton 224.0.0.9 RIP-2... 11 lab Multicast Routing Távközlési és Médiainformatikai Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 6
Multicast útválasztás Egyazon csomag több címzetthez Multicastinggal hálózati-réteg szintű támogatást kapnak többrésztvevős hálózati alkalmazások Video on demand (VoD) Interaktív játékok stb. A multicast megvalósítható többszörös unicastinggal is Hátrány: sok pont-pont kapcsolat Küldő környékén redundáns többletforgalom 13 Multicast 14 7
Multicast via unicast 15 Multicast csoportcím Internet Class D cím, 224.0.0.0-239.255.255.255 A multicast csoportcímet az összes vevőhöz (taghoz) el kell juttatni Multicast cím elosztás, stb. menedzselése IGMP Internet Group Management Protocol 16 8
Multicast protokollok 2 csoport LAN-to-Router IGMP R2R prot Router-to-Router Core Based Trees (CBT) Protocol Independent Multicast (PIM) Dense Mode Sparse Mode Distance Vector Multicast Routing Protocol (DVRMP) Egyebek (MOSPF,...) IGMP 17 lab Internet Group Management Protocol LAN-to-Router protokoll Távközlési és Médiainformatikai Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 9
IGMP az útvonalválasztók és a helyi hosztok között egy LAN-on helyezkednek el (pl. Ethernet) Útválasztó lekérdezi (query) a hosztok multicast csoport tagsági információit A hosztok válaszolnak membership (tagsági) reporttal (response) Hosztok véletlen késleltetéssel válaszolnak 19 IGMP 2 Hosztok küldhetnek Azonnali tagság kérelmet csatlakozzanak egy csoporthoz Csoport elhagyása A router periódikusan küld query-ket a tagoknak Ha erre nem válaszol - kilépett A router az aktív hosztokat a multicast protokollal csatlakoztatja a multicast fához 20 10
IGMP enkapszuláció 20 bájt 8 bájt IP fejléc IGMP üzenet IP datagram IGMP üzenet Fix hosszúság 8 bájt Nincs opcionális adat 21 IGMP csomagformátum 8 bit 8 bit 8 bit 8 bit Version Type unused 16-bit checksum 32 bit group address (class D IP) Version 1 Type típus 1 query (multicast router küldi) 2 response (hosztok küldik) IP csomag, TTL mező Érték: 1 ne mehessen a LAN-on kívülre 22 11
Report és Query IGMP report, TTL=1 IGMP group address = group address Dest IP address = group address Src IP address = host IP address IGMP query, TTL=1 IGMP group address = 0 Dest IP address = 224.0.0.1 Src IP address = router IP address hoszt Multicast router 23 Router-to-router Multicast protokollok Célja Megtalálni a legjobb (pl. legolcsóbb) elosztási útvonalat forrás és tagok között Csomagtovábbítást elvégezze a létrehozott fa szerint 24 12
Dense-mode Sparse-mode Dense-mode protokollok (broadcast, prune) Feltételezés: a hálózat majdnem minden hosztja tag Alapértelmezés: küldő broadcasttal küldi a csomagot Nem tagoknak kötelező eltávolítani magukat az elosztási fából Nem skálázható Sparse-mode protokollok (receiver initiated) Feltételezés: a tagok nagyon szétszórva helyezkednek el Alapértelmezés: küldő nem küld csomagot A leendő tagoknak kötelező csatlakozni az elosztási fához Skálázható 25 Fa típusok Core-based/shared tree: Egy fa csoportonként A gyökér (A) a CORE Minden üzenet áthalad rajta Source based tree Minden forrás (A,B) saját fájának a gyökere 26 13
Router állapotok Milyen információkat kezel a router a multicasthoz? Core-based/shared tree: Interfészek Csoportok Source based tree Interfészek Csoportok Források 27 Előnyök-hátrányok Core-Based/Shared trees: Csoportonként egy router bejegyzés Gyakran kevesebb linket használ Feszítő fa legrövidebb útvonal A csomagok legtöbbször nem a legrövidebb utakon haladnak (késleltetés) Source-Rooted trees: nem egy hibaponti lehetőség (a core) Kevésbé centralizált a forgalom (a core körül) A legrövidebb útakon haladnak a csomagok a fogadókhoz 28 14
Jelzési módok A fák két módon jöhetnek létre: Broadcast & prune Üzenetszórás és metszés Dense mode prot. A végpont reverse-path továbbítással szórja üzenetét A fogadók önmagukat lemetszik (prune) a fáról, ha kilépnek Receiver initiated Fogadó kezdeményezés Sparse-mode prot. A fogadók csatlakozási üzenetet továbbítanak Küldőhöz, vagy Core-hoz A fa a forrás/core-hoz intézett üzenetek útvonalán alakul ki 29 Forrás alapú Broadcast & Prune Reverse-path továbbítással halad a fában A csomagok az összes szomszéd felé továbbításra kerülnek Ha a csomag olyan linken érkezik, mely a fogadó felé nem a legrövidebb út eldobás! Nincs védelem, hogy a csomagok ne érkezzenek meg 2x Hatékonyabb az elárasztásnál: Nincs szükség a fogadott csomagokról állapotinformációkat tárolni a duplikációk elkerülése végett 30 15
Forrás alapú Broadcast & Prune Pruning metszés Az a router, melynek már nincs forgalma nincs abban az irányban csoporttag Prune üzenetet küld Az érintett ágat levágják Router fogad egy prune üzenetet, eltárolja a levágott állapotot A prune üzenetek hatására, a fában csak azok az ágak maradnak melyek csoporttagokhoz mennek 31 Receiver initiated Core-Based/Shared tree esetén Előre meghatározott CORE pl. weboldalon meghirdetve A tagok join, leave üzenetekkel csatlakoznak és távoznak a csoportból A fa úgy nő, ahogy az új ágak adódnak hozzá 32 16
Multicast típusok és protokollok 33 MOSPF Multicast extensions to OSPF Az unicast OSPF kiterjesztése multicast képességre Routerek elárasztják a csoport tagsági információkkal az alhálózatokat A szabványos link-állapot információkkal együtt Routerek számolják a forrás alapú útvonalakat a csoport tagjaihoz Igény esetén (on-demand) Az első elküldött csomagot érzékelve a forrástól a csoportnak Link-állapot információk alapján Egy routing tartományon belül működik 34 17
DVRMP Distance Vector Multicast Routing Protocol Első multicast protokol az Interneten Mbone-on (Multicast Backbone) használták Forrás alapú Broadcast & prune protokoll 35 DVRMP 2 Kezdetben a forrás az összes routernak továbbítja a (broadcast) csomagokat (Reverse Path Forwarding) Az aktív hosztokkal nem rendelkező routerek lemetszik magukat a fáról Majd rekurzívan a többi belső router is, ha nincs aktív leszármazottja Időzítés elteltével (Interneten 3 perc) a levágott ágak visszanőnek Kezdődik elölről Csak egy routing tartomány van 36 18
Jellemzők Gyakorlatban: rendszerint kevés router multicast képes Megoldás: alagutazás (tunnel) Fizikai topológia Logikai multicast topológia DVRMP nem skálázható jól 37 PIM Protocol Independent Multicast NEM protokoll Közös tervezési alapelv protokollok egy csoportjára Protokoll függetlenség Használjunk minden elérhető unicast routing információt (DVRMP ilyet nem tud) Ne legyen saját routing tábla Egyszerűbb protokollokat lehessen létrehozni 38 19
PIM Dense Mode PIM-DM PIM Sparse Mode PIM-SM PIM-re épülő protokollok PIM Source Specific Multicast PIM-SSM 39 DVRMP-hez hasonló PIM - Dense Mode Alapértelmezés: reverse-path forwarding útválasztás A nem-résztvevő routereket levágjuk Különbségek: Az alsóbb rétegektől származó unicast útválasztó táblákat használja Egyszerűbb a protokoll Nem skálázható nagy hálózatokban nem jól működik Minden routernek nyilvántartást kell vezetnie minden (S,G) állapotról Források (source), melyek csoportoknak (group) forgalmaznak 40 20
PIM-DM példa 41 PIM-DM példa Receiver R1 csatlakozik a csoporthoz Source üzenetet küld AC,ABC utak duplikáció! 42 21
PIM-DM példa E,D metszés üzenet küld felfelé C metszést küld B-nek Ne legyen 2 út BC irány a költségesebb 43 PIM-DM példa R2 csatlakozik IGMP report küldés E,D becsatlakozik a fába R2 duplikált üzeneteket kap 44 22
PIM-DM példa D az R2-LAN-on üzen E-nek E nem forgalmaz tovább Lemetszi magát 45 PIM-DM példa R2 kikapcsolva D IGMP időzítése lejár Nem forgalmaz tovább a LAN-on C-nek üzenet - lemetszés 46 23
PIM-DM példa R1 IGMP frissítésre nem válaszol Kilép a multicastból C LAN-ra nem forgalmaz többet A-nak üzenet - lemetszés 47 PIM-DM példa A metszések időzítése lejárt A folyamat kezdődik elölről Akár van tag, akár nincs 48 24
PIM - Sparse Mode A csoport tagjai a megosztott fához csatlakoznak Középpontja a CORE (Rendez-Vous Point RP) Ha egy fogadó csatlakozni kíván A routerek kijelölnek egy új útvonalat a core és az új csomópont közé Üzenet küldés: Először unicast a core-ig Majd szétszórás a tagokhoz Később lehetőség van közvetlen utak felderítésére a forrásokhoz 49 PIM-SM példa 50 25
PIM-SM példa A forrás küldeni kezd A a register üzenetbe enkapszulálja az üzenetet, Unicasttal elküldi RP-nek R1 veszi az adatokat 51 PIM-SM példa RP join üzenetet küld a forrás felé Miután az üzenetek a fán keresztül érkeznek Register stop üzenet A-nak 52 26
PIM-SM példa R2 csatlakozik a csoporthoz D join üzenetet továbbít RP felé C join üzenetet továbbít RP felé R2 fogadja az adatokat RP fán 53 PIM-SM példa D (S,G) csatlakozás üzenetet küld a forrás felé A elkezdi a továbbítást D (S,G)RP prune üzenetet küld RP-nek 54 27
PIM-SM példa R2 az adatokat forrástól fogadja Source tree R1 az RP-n keresztül Shared (RP) tree 55 28