lab
IP ALAPÚ TÁVKÖZLÉS
Broadcasting-multicasting
Távközlési és Médiainformatikai Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
IP cím típusok Unicast A célállomás egy hoszt
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
1
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
Broadcast típusok
Limited broadcast Net-directed broadcast Subnet-directed broadcast All-subnets directed broadcast
4
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
Limited broadcast Cím: 255.255.255.255 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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
2
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
Multicasting Csomagtovábbítás több célállomáshoz Multicast csoport címzés: Class D IP cím 1110
Multicast csoport azonosító – 28 bit
Használt címtartomány: 224.0.0.0 - 239.255.255.255
9
3
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
IP ALAPÚ TÁVKÖZLÉS
Multicast Routing
Távközlési és Médiainformatikai Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem
4
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
Multicast
14
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
Multicast via unicast
15
5
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
IP ALAPÚ TÁVKÖZLÉS
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
6
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
7
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
IGMP csomagformátum 8 bit
8 bit
Version Type
unused
8 bit
8 bit
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
8
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
9
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
Előnyök-hátrányok Core-Based/Shared trees:
Source-Rooted trees:
Csoportonként egy router bejegyzés Gyakran kevesebb linket használ
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
Feszítő fa – legrövidebb útvonal
A csomagok legtöbbször nem a legrövidebb utakon haladnak (késleltetés)
28
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
Jelzési módok A fák két módon jöhetnek létre: Broadcast & prune Üzenetszórás és metszés
Receiver initiated Fogadó kezdeményezé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
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
10
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
Multicast típusok és protokollok
33
11
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
12
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
PIM-re épülő protokollok PIM Dense Mode PIM-DM
PIM Sparse Mode PIM-SM
PIM Source Specific Multicast PIM-SSM
39
13
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
PIM - Dense Mode DVRMP-hez hasonló 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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
PIM-DM példa
41
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
PIM-DM példa
Receiver R1 csatlakozik a csoporthoz Source üzenetet küld AC,ABC utak – duplikáció! 42
14
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
PIM-DM példa
R2 csatlakozik IGMP report küldés
E,D becsatlakozik a fába R2 duplikált üzeneteket kap 44
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
PIM-DM példa
D az R2-LAN-on üzen E-nek E nem forgalmaz tovább Lemetszi magát 45
15
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
16
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
PIM-SM példa
50
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
17
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
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
18
TMIT BME
IP ALAPÚ TÁVKÖZLÉS
PIM-SM példa R2 az adatokat forrástól fogadja Source tree R1 az RP-n keresztül Shared (RP) tree
55
19