6. Monilähetysreititys Paketti lähetetl hetet n usealle vastaanottajalle Miksi? Monet sovellukset hyötyv tyvät - ohjelmistopäivitykset ivitykset - etäopetus opetus, virtuaalikoulu - videoiden, itteiden lähetys - WWW-välimuistien päivitykset - interaktiiviset pelit Mitä hyötyä? - Nopeus, tehokkuus paketti monelle vastaanottajalle useita kaksipistelähetyksi hetyksiä: : kaikille oma paketti tulvitus multidestination routing: kohteet lueteltu paketissa, reititin kopioi kaikkiin tarpeellisiin ulosmenoihin muodostetaan virittävä puu (spanning tree) - ei silmukoita - yhteinen tai jokaiselle lähettäjälle oma puu reverse path -algoritmi (kää teinen polku) - estimoi virittävää ää puuta 3 Monilähetysryhmä Monilähetys ryhmäosoite (Luokan osoite) vastaanottajaryhmän n hallinta - ryhmien muodostus, poistaminen - vastaanottajien lisää ääminen, poistaminen Monilähetyksen reitittäminen reitittimet tietävät t ketkä kuuluvat mihinkin - laskevat lyhimmät t reitit vastaanottajiin - ohjaavat reititystaulujensa avulla paketit vastaanottajille Monilähetyksen protokollat Monilähetysryhmien hallinta Internet Group Management Protocol (IGMP) (R 36) IGMP isänt ntäkoneen ja sen lähimml himmän n reitittimen välillv lillä - isäntäkone ilmoittaa itsensä jäseneksi tiettyyn ryhm - isäntäkone poistaa itsensä ryhmä monilähetysreititysalgoritmi - reitittimien välillv lillä monilähetysten koordinoimiseksi - esim. PIM (R 36), VMRP (R 075), MOSP (R 58) - huom! ryhmän n isänt ntäkoneiden välillv lillä ei ole mitää n protokollaa * eivät tiedä, ketkä muut kuuluvat ryhm 5 6 -osoitteet monilähetykset -osoitetta käyttk yttäen - perilletoimitus best effort - 8 bittiä => yli 50 miljoonaa ryhmäosoitetta -.0.0.0 39.55.55.55..0.0.0 -.0.0.55 reititysprotokollille yms pysyviä ryhmiä -.0.0. kaikki lähiverkossal -.0.0. kaikki reitittimet lähiverkossa -.0.0.5 kaikki OSP-reitittimet lähiverkossal -.0.0.6 kaikki designated OSP-reitittimet lähiverkossa tilapäisi isiä ryhmiä 7 IGMP:n toimintaperiaate Toimii suoraan IP-kerroksen päällä kysely/vastaus monilähetysreitittimet kyselevät - noin minuutin välein v kysyvät t kaikilta koneiltaan, mihin ryhmiin kuuluvat *.0.0.-osoitteella koneet vastaavat - ilmoittamalla kaikkien niiden ryhmien -osoitteet, joihin jokin niiden sovellus on liittynyt host kysely vastaus router 8 Page
IGMP-sanomat IGMP-sanoma Membership query general: mihin ryhmiin kuuluvia? specific: onko tiettyyn n kuuluvia? Kyselyillä maksimivastausaika Membership report kone haluaa liittyä tai on liittynyt ilmoitettuun Leave group kone ilmoittaa poistuvansa ryhmäst vapaaehtoinen! - Jos ei vastaa kyselyihin, ei ole enää mukana * => jäsenyyden j voimassaololle aikaraja Type max. response checksum time Multicast Group ddress Type = mikä sanoma kyseessä max. response time = maksimivastausaika kyselyissä hecksum = taskistussumma Multicast Group ddress = monilähetysryhmän osoite 9 30 Maksimivastausaika? Internetin monilähetyspalvelumalli Optimointia varten, esim. LN-verkoissa, joissa kaikki kuulevat kaikki sanomat reititin haluaa tietää vain onko kukaan sen LNin koneista kiinnostunut tiety ryhmäst - ei sitä ketkä koneista haluavat ryhmän n jäseniksij - ei edes montako sen koneista on tietyn ryhmän jäseninä koneet vastaavat satunnaisen ajan kuluttua - jos joku muu kone jo vastannut, ei enää vastaa => vastausten määm äärä pienenee Kone ilmoittaa omalle reitittimelleen haluavansa liittyvä tiettyyn - IGMP:n membership_report-sanomalla sanomalla Reitittimet alkavat välittv littää koneelle tämän t n ryhmän n viestejä vastaanottajavetoinen (receiver-driven) - Lähettäjä ei pidä kirjaa ryhmän n jäsenistj seni eikä tiedä kenelle kaikille viesti menee. Kuka tahansa voi toimia lähettl hettäjänä - eri lähettl hettäjien sanomat tulevat sekaisin Monilähetysosoitteita ei koordinoida verkkotasolla - eri ryhmille voidaan valita sama osoite 3 3 IGMP ja IPv6?. Monilähetysreititys hetysreititys (multicast routing) IGMP käyttk yttää 3 bitin osoitetta i erilli IGMP-protokollaa IPv6:lle, vaan toiminnot liitetty IMPv6:een (R 70) - Multicast Listener Query * Yleinen kysely: millä monilähetysosoitteilla on 'kuuntelijoita' * Tietyn monilähetysosoitteen kuuntelijat - Multicast Listener Report - Multicast Listener one Ongelma: Reitittimien on kyettävä rakentamaan optimaaliset reitit ryhmän n kaikille vastaanottajille - kun mikä tahansa kone voi toimia lähettl hettäjänä - n voi kuulua eri määm äärä vastaanottajia * lähes kaikki isäntäkoneet * vain muutama isäntäkone - ryhmän n jäsennyys j voi olla hyvin dynaamista Tavoitteena on löytl ytää mahdollisimman optimaalinen puu,, joka yhdiä kaikki ryhmän n jäsenetj - sanomien reititys puun kaaria pitkin 33 3 Page
Monireitityspuun rakentaminen,, ja : ryhmän ja : Kaksi erilaista lähestymistapaal yksi puu koko ryhmälle lle (group shared tree) - kuka tahansa toimii lähettl hettäjänä,, niin reitityksessä käytet n samaa puuta jokaiselle lähettl hettäjälle oma puu (source-based tree) - jos ryhmäss ssä on n jäsentj sentä,, niin muodostetaan n eri puuta - jokaisen lähettl hettäjän n sanomat reititetää n sen oman puun avulla 35 36 Yksi puu koko ryhmälle ri lähettl hettäjille omat puut,, ja : ryhmän,, ja : ryhmän ja : reitityspolku ja : :n lähettäessä :n lähettäessä 37 38 Reititys käyttk yttäen yhtä puuta koko ryhmälle Pienimmän n kustannuksen monilähetyspuu Löydettävä puu, joka yhdiä kaikki ryhmän reitittimet - mukana myös s muita reitittimiä - puun kustannus on sen linkkien kustannusten summa pienimmän n kustannuksen puu NP-täydellinen ongelma (Steiner tree problem) - suht.koht. hyviä heuristisia ratkaisuja on - ei ole käytk ytössä Internetissä * tiedettävä kaikki linkkikustannukset eli koko verkon topologia * kustannusten muuttuessa laskettava uudelleen - mieluummin jo muutenkin laskettujen kustannusten (reititystietojen) hyödynt dyntäminen 3,, ja : ryhmän ja : 39 0 Page3 3
Keskuspohjainen reititys (enter (enter-based routing) Keskuspohjainen monilähetyspuu Ryhmän puun keskuksena on jokin solmu, johon muut myöhemmin liittyvät - ensin saadaan selville keskussolmu - muut liittyvät t siihen JOIN-sanomilla * yksilähetyksiä (unicast) keskussolmulle * JOIN-sanoman välittävä reititin lisää ko. Verkkoliitynnän ryhm ja lähettää sanoma eteenpäin, jollei jo ole mukana ryhmässä - Seurauksena virittävä puu ko. ryhmälle - Miten keskussolmu valitaan? * Optimaalinen valinta: NP-täydellinen ongelma * Ryhmän jäsenet vaihtuvat ==> sopiva keskussolmu vaihtuu * Valitaan siten, että Keskussolmu lähellä lähettäjääää TI Kiinteästi konfiguroitu 5. 3.. G,, ja : ryhmän ja : ei Ratkaisevaa on keskussolmun järkevä valinta Jokaiselle lähettl hettäjälle oma puu Tavallisessa reitityksessä jo yleensä lasketaan pienimmän n kustannuksen puu lähettäjältä muihin solmuihin ijkstra => reititystaulu Käytet tätä tietoa hyväksi paljon puita - N lähettäjääää => N puuta - reitityksessä käytetty puu valitaan lähettäjän mukaan Reverse path forwarding (pruning) Lisättyn ttynä karsinnalla - Älä turhaan lähetl hetä tänne Reverse path forwarding -algoritmi idea tuliko paketti verkkoliitynnäst,, josta normaalisti lähetet n paketin aloittaneelle solmulle? - jos tuli, paketti kopioidaan kaikkiin muihin ulosmenoihin ja talletetaan ryhmä ja lähde - jos ei tullut paketti tuhotaan kaksoiskappaleena edut - tehokas ja helppo toteuttaa - ei tarvitse tuntea virittävää ää puuta - ei ylim. yleisrasitetta (kohdelista, lisäbittej bittejä) - tulvitus pääp äättyy itseä 3 Monilähetysreititys Internetissä lähettäjä ryhmän jäsen ei ole jäsen pruning: Älä turhaan lähetä tänne! G VMRP (istance Vector Multicast Routing Protocol) (R 075) kullekin lähteelle oma puu käyttäen reverse path forwarding -menetelmää ja karsimista (pruning) ja lisäämi (graft) etäisyysvektorialgoritmin avulla kukin reititin laskee lyhyimmän polun jokaiseen mahdolliseen lähteeseen ja tallettaa linkin (next hop) tieto puussa alavirtaan sijaitsevista reitittimi, jotta tiedet, milloin haara voidaan kokonaan karsia - Kun kaikki reitittimet ilmoittavat, etteivät t enää ole kiinnostuneita - Ilmoituksesa ajastin karsinnan voimassaololle - ksplisiittinen lisääminen 5 6 Page
Muita Muita monilähetysprotokollia: T MOSP MOSP (Multicast Open Shortest Path irst) (R 58) OSP:ää käyttävissä S:issä linkkitilailmoituksissa myös s tieto monilähetysryhmien jäsennyyde kaikki reitittimet tietävät, t, mihin monilähetysryhmiin muiden reittimien isänt ntäkoneita kuuluu voidaan laskea kullekin lähteellel oma ennaltakarsittu lyhyimmän n polun puu jokaiselle monilähetysryhm hetysryhmälle T T (ore-based Trees) (R 0, R 89) kaksisuuntainen yhteiskäytt yttöinen puu, jossa yksi keskus sanomia - JOIN_RQUST keskussolmulle, kun haluaa liittyä - JOIN_K keskussolmu tai lähin l jo ryhmäss ssä oleva reititin - HO_RQUST vieläkö mukana ryhmäss ssä - HO_RPLY vielä mukana - LUSH_TR poistetaan ryhmäst 7 8 Muita: PIM PIM (Protocol Independent Multicast) (R 36) dense mode ~ VMRP - tulvita ja karsi sopii hyvin, jos vastaanottajia on tihe sparse mode ~ T - JOIN-sanomia, jotka ohjataan yksilähetyksen hetyksenä keskussolmuun - polulla olevat reitittimet monilähetysmoodiin - keskussolmu lähettl hettää monilähetyksen hetyksenä muille - yksi puu <=> lähettl hettäjälle oma puu 9 Page5 5