4. Sítová vrstva - Směrování PB156: Počítačové sítě Eva Hladká Slidy připravil: Tomáš Rebok Fakulta informatiky Masarykovy univerzity jaro 2014 Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 1/84 Struktura přednášky Q| Směrování obecně Směrování • Základní přístupy Směrovací algoritmy Distribuované směrování • Distance Vector • Link State • Link State vs. Distance Vector Ql Hierarchie směrování • Původní představy • Autonomní systémy • Autonomní systémy - směrování Multicastové směrování - IP Multicast • Motivace • IP Multicast • Protokoly ^} Rekapitulace Eva Hladká (Fl MU) jaro 2014 2 / 84 Struktura přednášky Q Směrování obecně Q Směrování • Základní přístupy Q Směrovací algoritmy Q Distribuované směrování • Distance Vector • Link State • Link State vs. Distance Vector Q Hierarchie směrování • Původní představy • Autonomní systémy • Autonomní systémy - směrování Q Multicastové směrování - IP Multic • Motivace • IP Multicast • Protokoly O Rekapitulace Směrování obecně Směrování obecně o Internet na L3 - datagramový přístup k přepínání paketů o data vyšších vrstev umístována do datagramů o datagramy (fragmenty) putují sítí nezávisle o směrování (Routing) = proces nalezení cesty mezi dvěma komunikujícími uzly o cesta musí splňovat určité omezující podmínky o ovlivňující faktory: o statické: topologie sítě dynamické: zátěž sítě Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování Směrování obecně Příklad reálné sítě Figuře: Logická topologie IP/MPLS vrstvy sítě CESNET2. Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 5 / 84 Směrování obecně Matematický pohled o na směrování lze nahlížet jako na problém teorie grafů o sít reprezentována grafem, kde: o uzly reprezentují směrovače (identifikovány svými IP adresami) o hrany reprezentují vzájemné propojení směrovačů (linku) o ohodnocení hran — cena komunikace o cíl: nalezení minimální cesty v grafu mezi libovolnými dvěma uzly Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 6 / 84 Cena komunikace Určení ceny (ohodnocení) linky - metrika: • všechny linky mají stejnou cenu (např. 1) • minimalizace ceny — minimalizace počtu skoků • nejjednodušší, nejčastěji využívané • cena linky = převrácená hodnota kapacity (1/prenosová-kapacita) o 10Mb linka má lOOx vyšší cenu než 1Gb linka a cena linky = zpoždění linky • 250ms satelitní spojení má lOx vyšší cenu než 25ms pozemní linka • cena linky = využití linky • linka s 90% využitím má lOx vyšší cenu než linka s 9% využitím • může způsobit oscilace (nezbytné tlumení) • cena linky = reálná cena (platba) za využití linky • staticky přiřazeno administrátorem • atd. Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 7 / 84 Směrování Struktura přednášky Ql Směrování obecně 0 Směrování • Základní přístupy Q Směrovací algoritmy Q Distribuované směrování • Distance Vector • Link State • Link State vs. Distance Vector Q Hierarchie směrování • Původní představy • Autonomní systémy • Autonomní systémy - směrování Qi Multicastové směrování - IP Multicast • Motivace • IP Multicast • Protokoly jaro 2014 8 / 84 Směrování • úkolem směrování je: • vyhledávat optimální směrovací trasy • kriteriem optimality je metrika • dopravit datový paket určenému adresátovi • zpravidla se nezabývá celou cestou paketu » směrovač řeší jen jeden krok - komu paket předat jako dalšímu • někomu blíže cíli • tzv. hop-by-hop • ten pak rozhoduje, co s paketem udělat dál Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 9 / 84 Směrování (Routing) vs. zasílání (Forwarding) • směrování • společná činnost směrovačů (globální) • proces nalezení/vytváření a údržby směrovacích tabulek • zasílání • lokální proces - každý směrovač samostatně • představuje proces průchodu paketů směrovačem • zaslání paketu na vybrané rozhraní směrovače (dle cílové adresy) • vyžaduje přístup ke směrovací tabulce Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 10 / 84 Směrovací tabulky • základní datovou strukturou je směrovací tabulka (routing table) • sada ukazatelů, podle kterých se rozhoduje, co udělat s kterým paketem • obsahují cesty k prefixům • počáteční IP adresa a blok • agregace záznamů - hledá se nejdelší prefix, který vyhovuje požadavku • existence více vyhovujících prefixů => použije se nejdelší • tzv. Longest-prefix Match Algorithm Host-specific Default Mask Destination address Next-hop address Interface /8 —W32 /22 /24 —*-/0 14.0.0.0 192.16.7.1 193.14.4.0 193.14.5.0 /O 118.45.23.8 202.45.9.3 84.12.6.20 84.78.4.12 145.11.10.6 ml mO ml m2 mO Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 11 / 84 Problém globálního pohledu • globální znalost topologie celé sítě je problematické • je složité ji získat • když už se to podaří, není aktuální o musí být lokálně relevantní • lokální představu o topologii reprezentuje směrovací tabulka • rozpor mezi lokální a globální znalostí může způsobit • cykly (černé díry) • oscilace (adaptace na zátěž) Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 12 / 84 Směrování - základní přístupy Členění dle způsobu vytvoření/udržování směrovací tabulky: • statické (neadaptivní) • administrátorem ručně editované záznamy • směrovač nemůže vytvářet alternativní cesty, pokud se nastavená cesta přeruší • jednodušší, málo flexibilní • vhodné pro statickou topologii • Otázka: Používá se v Internetu? • dynamické (adaptivní) - reagují na změny v síti • složité (většinou distribuované) algoritmy • (většinou) nutnost pravidelné aktualizace směrovacích tabulek • nutnost existence protokolu pro aktualizaci směrovacích tabulek • možnost dočasné nekonzistence • nezaručuje pořadí doručení • např. • centralizované - vše řídí centrum • izolované - každý sám za sebe • distribuované - kooperace uzlů Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 13 / 84 Dynamické smerovaní - centralizované smerovaní • v síti je Routing Control Center (RCC) • každý směrovač mu posílá zprávy o své situaci (stavu) • RCC informace sbírá, vypočte optimální cesty a rozešle směrovačům jejich tabulky • výhody: • globální informace (=>• optimální řešení) • ulehčení práce směrovačů • nevýhody: • špatně škáluje - nelze využít pro velké sítě (nemožnost získání globální informace) » pomalé • při výpadku centra se přestane aktualizovat Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 14 / 84 Dynamické smerovaní - izolované smerovaní • neposílají se žádné informace o stavu sítě, každý se rozhoduje sám za sebe • příklady: • náhodná procházka - paket pošle do náhodně vybrané linky • vysoká robustnost • horký brambor (hot potatoe) - paket pošle do linky s nejkratší frontou • forma náhodné procházky (=> vysoká robustnost) • záplava (flooding) - paket pošle do všech linek kromě té, po níž přišel • enormní zátěž sítě - obrovská režie, nutno řešit cykly • mimořádně robustní - pokud cesta existuje, vždy ji najde • dokonce tu nejlepší možnou (zkouší totiž všechny) • zpětné učení (backward learning) - učí se z procházejících paketů • do paketu se zapisuje vzdálenost, kterou urazil • směrovač se dozví, že příchozí linkou vede cesta k odesílateli nanejvýš dané délky Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 15 / 84 Dynamické smerovaní - distribuované smerovaní • směrovací informace si vyměňují sousedé či malé skupiny směrovačů • na základě periodicky šířených informací se (podle určitého algoritmu) vypočítávají mapy sítě • mezi směrovací musí být dohoda o implementaci určitého směrovacího algoritmu • dostatečně pružné a robustní, vhodné i pro rozlehlé sítě • standardní přístup ke směrování v síti Internet Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 16 / 84 Směrování Základní přístupy Směrování - další možná členění distribuované vs. centralizované krok za krokem" vs. zdrojové deterministické vs. stochastické jedno vs. více cestné dynamický vs. statický výběr ces INTERNET Směrovací algoritmy Struktura přednášky Ql Směrování obecně Q Směrování • Základní přístupy Q Směrovací algoritmy Q Distribuované směrování • Distance Vector • Link State • Link State vs. Distance Vector Q Hierarchie směrování • Původní představy • Autonomní systémy • Autonomní systémy - směrování Qi Multicastové směrování - IP Multicast • Motivace • IP Multicast • Protokoly jaro 2014 18 / 84 Směrovací algoritmy - funkce • zprostředkovávají funkcionalitu směrování • proces vytvoření a údržby směrovacích tabulek • zahrnuje výběr komunikační cesty • vlastní doručení dat • rozdělení dle okamžiku rozhodování: • při uzavírání spojení (— vytváření okruhu) • spojované služby, virtuální kanály • při příchodu paketu • nespojované služby, datagramy • rozdělení dle místa rozhodování: • jediný uzel =>• centralizované algoritmy • každý uzel =>• distribuované algoritmy • definice přesných pravidel komunikace a formátu zpráv nesoucích směrovací informace (pro určitý algoritmus) =4> směrovací protokol Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 19 / 84 Směrovací algoritmy - požadované vlastnosti Žádané vlastnosti směrovacího algoritmu: • správnost • jednoduchost • efektivita a škálovatelnost » minimalizace množství řídících informací 5% provozu!) • minimalizace velikosti směrovacích tabulek • robustnost a stabilita o nezbytný je distribuovaný algoritmus • spravedlivost (fairness) • optimálnost • Co je to nej lepší cesta ? Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 20 / 84 Distribuované směrování Struktura přednášky Ql Směrování obecně Q Směrování • Základní přístupy Q Distribuované směrování • Distance Vector • Link State • Link State vs. Distance Vector Q Hierarchie směrování • Původní představy • Autonomní systémy • Autonomní systémy - směrování Qi Multicastové směrování - IP Multicast • Motivace • IP Multicast • Protokoly Q Rekapitulace Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 21 / 84 Distribuované smerovaní - základní přístupy Třídy distribuovaných směrovacích protokolu (dle charakteru směrovací informace): • Distance Vector (DV) - Bellman-Fordův algoritmus • sousední směrovače si v pravidelných intervalech či při topologické změně (např. výpadek zařízení) vyměňují kompletní kopie svých směrovacích tabulek • na základe obsahu přijatých updatů si pak doplňují nové informace a inkrementují své distance vektor číslo • metrika udávající počet hopů k dané síti • čili všechny informace jen svým sousedům • Link State (LS) • jednotlivé směrovače si zasílají pouze informace o stavu linek, na něž jsou bezprostředně připojeny • udržují si tak kompletní informace o topologii dané sítě - zařízení jsou si vědoma všech ostatních zařízení na síti • pak se počítá nejkratší cesta • čili informace o svých sousedech všem Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 22 / 84 Distribuované smerovaní Distance Vector Distance Vector I. o smerovač si udržuje všechny známé routy v tabulce ve formě uspořádaných trojic (/V, G, D), kde: o N ... cílová sít o G .. . adresa následujícího směrovače o D . .. vzdálenost do cílové sítě (metrika) o tabulky se upravují tak, aby se směrovalo nejkratší cestou roblémy: pomalá konvergence, příliš mnoho režijních dat Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 Distribuované smerovaní Distance Vector Distance Vector II. Algoritmus • Předpoklad: • každý směrovač zná pouze cestu a cenu ke svým sousedům • Cíl: • v každém směrovací směrovací tabulka pro každý cíl • Idea: • řekni sousedům svou představu směrovací tabulky • Inicializace: » sousedé: známá cena • Distance Vector = < cil, cena > • ostatní: nekonečno • resp. hodnota definovaná jako nekonečno (pro RIP např. 16) • Aktualizace: » pokud je cesta v získaném DV zvětšená o cenu cesty k danému sousedovi lepší než stávající uložená, aktualizuj tabulku Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 24 / 84 Distribuované smerovaní Distance Vector Distance Vector III. Ilustrace problému pomalé konvergence 10.1.0.0 10.4.0.0 Routing Table 10.1.0.0 EO 0 10.2.0.0 SO 0 10.3.0.0 SO 1 10.4.0.0 SO 2 Routing Table 10.2.0.0 SO 0 10.3.0.0 S1 0 10.4.0.0 81 1 10.1.0.0 SO 1 Routing Table 10.3.0.0 SO 0 10.4.0.0 EO Down 10.2.0.0 SO 1 10.1.0.0 SO 2 • pomalá konvergence zapříčiní vznik nesprávných údajů ve směrovacích tabulkách Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 25 / 84 Distribuované smerovaní Distance Vector Distance Vector III. Ilustrace problému pomalé konvergence Routing Table 10.1.0.0 EO 0 10.2.0.0 SO 0 10.3.0.0 SO 1 10.4.0.0 SO 2 Routing Table 10.2.0.0 SO 0 10.3.0.0 S1 0 10.4.0.0 S1 1 10.1.0.0 SO 1 Routing Table 10.3.0.0 SO 0 10.4.0.0 SO 2 10.2.0.0 SO 1 10.1.0.0 SO 2 • směrovač C usoudí, že nejlepší cesta do sítě 10.4.0.0 je přes směrovač B Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 26 / 84 Distribuované směrování Distance Vector Distance Vector III. Ilustrace problému pomalé konvergence 10.1.0.0 SO 10.2.0.0 ~z._ SO 10.3.0.0 -z_ S1 SO ,10.4.0.0 EO Routing Table 10.1.0.0 E0 0 10.2.0.0 SO 0 10.3.0.0 SO 1 10.4.0.0 SO 2 Routing Table 10.2.0.0 SO 0 10.3.0.0 S1 0 10.4.0.0 S1 1 10.1.0.0 SO 1 Routing Table 10.3.0.0 SO 0 10.4.0.0 SO 2 10.2.0.0 SO 1 10.1.0.0 SO 2 • směrovač A opraví svojí směrovací tabulku - chybně Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 27 / 84 Distribuované smerovaní Distance Vector Distance Vector III. Ilustrace problému pomalé konvergence 10.1.0.0 SO 10.2.0.0 ~Z-_ so 10.3.0.0 S1 SD 10.4.0.0 X EO Routing Table 10.1.0.0 E0 0 10.2.0.0 SO 0 10.3.0.0 SO 1 10.4.0.0 SO 2 Routing Table 10.2.0.0 SO 0 10.3.0.0 S1 0 10.4.0.0 S1 1 10.1.0.0 SO 1 Routing Table 10.3.0.0 SO 0 10.4.0.0 SO 2 10.2.0.0 SO 1 10.1.0.0 SO 2 • metrika pro sít 10.4.0.0 roste do nekonečna (v rámci RIP do 16) Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 28 / 84 Distribuované smerovaní Distance Vector Distance Vector III. Ilustrace problému pomalé konvergence Distribuované smerovaní Distance Vector Distance Vector III. Ilustrace problému pomalé konvergence Routing Table 10.1.0.01 E0 j 0 10.2.0.0 SO 0 10.3.0.0 SO 1 10.4.0.0 SO 2 Routing Table 10.2.0.01 SO 0 10.3.0.0 S1 0 10.4.0.0 S1 1 10.1.0.0 SO 1 Routing Table 10.3.0.01 SO I 0 10.4.0.0 E0 0 10.2.0.0 SO 1 10.1.0.0 SO 2 Distribuované smerovaní Distance Vector Distance Vector IV. - protokol RIP I. • hlavní představitel DV směrování • RIPvl (RFC 1058) • RIPv2 (RFC 1723) - přidává např. autentizaci směrovacích informací • sítě identifikovány s využitím mechanismu CIDR • jako metrika se využívá počet hopů • přenos paketu mezi 2 sousedními směrovací má délku 1 • nekonečno — 16 • => nelze použít pro sítě s minimálním počtem hopů mezi libovolnými dvěma směrovací > 15 • směrovače zasílají informaci každých 30 sekund • triggered update při změně stavu hrany • časový limit 180s (detekce chyb spojení) • použití: o vhodné pro malé sítě a stabilní linky • není příliš vhodný pro redundantní sítě Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 31 / 84 Distribuované smerovaní Distance Vector Distance Vector IV. - protokol RIP II. RIP message from C Net2 4 Net3 8 Net6 4 Net8 3 Net9 5 Old routing table Netl 7 A Net2 2 C Net6 8 F Net8 4 E Net9 4 F RIP message from C after increment Net2 5 Net3 9 Net6 5 Net8 4 Net9 6 Updating algorithm New routing table Netl 7 A Net2 5 C Net3 9 C Net6 5 C Net8 4 E Net9 4 F Netl: No news, do not change Net2: Same next hop, replace Net3: A new router, add Net6: Different next hop, new hop count smaller, replace Net8: Different next hop, new hop count the same, do not change Net9: Different next hop, new hop count larger, do not change Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 istribuované směrování Distance Vector Figure: RIP - příklad: iniciální stav tabulek. Distribuované smerovaní Distance Vector Distance Vector IV. - protokol RIP IV. 08 3 A 14 1 — 23 2 A 55 1 — 66 2 C 78 2 A 92 3 A 08 1 -1 Net: 08 J- 08 1 14 2 A 14 3 E 23 1 - 23 2 E 55 3 A 55 2 C 66 2 D 66 1 - 78 2 A 78 3 Ľ 92 3 A 92 4 E Figure: RIP - příklad: finální stav tabulek. Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 34 / 84 Distribuované smerovaní Link State Link State I. 1 d -e opologick; atabáze ^_Směrovat! tabulka Zprávy o stavu ,-spojení - Link ^ State pakety SPF SPF strom směrovače si zasílají pouze informaci o stavu linek, na něž jsou bezprostředně připojeny získají tím kompletní mapu sítě o pak si počítají nejkratší cesty (např. s využitím Dijkstrova algoritmu) o při každé změně stavu linek směrovače testují pouze dosažitelnost svých bezprostředních sousedů výhoda: zaručená a rychlá konvergence, vhodné i pro rozsáhlé sítě evýhoda: složitější algoritmus =>• větší nároky na CPU a paměf směrovače Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 35 / Link State II. Algoritmus • Předpoklad: o každý směrovač zná pouze cestu a cenu ke svým sousedům • Cíl: • v každém směrovací směrovací tabulka pro každý cíl • Idea: • šíří se topologie, cesty si počítají směrovače samy • fáze 1: šíření topologie (broadcast) • fáze 2: výpočet nej kratší cesty - (Dijkstra) • směrovače si udržují databázi stavů linek a periodicky posílají LS pakety svým sousedům • obsah LS paketu: identifikátor uzlu, cena spojů k sousedům, pořadové číslo, doba platnosti • každý směrovač přeposílá LS pakety dále (kromě toho, od nějž informaci dostal) Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 36 / 84 Distribuované smerovaní Link State Li n k State III. - Výpočet nej kratších cest Dijkstrův algoritmus klasický algoritmus hledaní nejkratší cesty • hledá nejkratší cesty z jednoho vrcholu do všech ostatních Necht • N je množina všech uzlů v grafu (síti) • /(/,_/) označuje nezápornou cenu hrany (spoje (i, j)) a s je aktuálni (zdrojový) uzel • M množina uzlů, které již byly navštíveny • C(n) cena cesty z s do n; oo pokud cesta neexistuje Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 37 / 84 Li n k State III. - Výpočet nej kratších cest Dijkstrův algoritmus - pseudokód M = { S } for each n in N\M C(n) = l(s,n) while (N != M) # přidej w do M tak, že C (w) je minimální pro všechna w z (N\M) for each n in N\M C(n) =min(C(n), C(w)+l(w,n)) • ilustrace výpočtu: http://www.unf.edu/~wkloster/ foundations/DijkstraApplet/DijkstraApplet.htm • animace: http://www.cse.yorku.ca/~aaw/HFHuang/DijkstraStart.html a více viz PA165: Grafy a sítě Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 38 / 84 Link State IV. - protokol OSPF • Open Shortest Path First • nej používanější LS protokol současnosti • metrika: cena (cost) • číslo (v rozsahu 1 až 65535) přiřazené ke každému rozhraní směrovače • čím menší číslo, tím má cesta lepší metriku (bude tedy preferována) • standardně je ke každému rozhraní přiřazena cena automaticky odvozená z šířky pásma daného rozhraní • cost = 100000000/bandwidth (bw v bps) • možno ručně měnit • rozšíření: • autentizace zpráv • směrovací oblasti - další úroveň hierarchie • load-balancing - více cest se stejnou cenou Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 39 / 84 Distribuované smerovaní Link State vs. Distance Vector Link State vs. Distance Vector Link State • Složitost: • každý uzel musí znát cenu každé linky v sítí => O(nE) zpráv • změnu ceny některé z linek potřeba vypropagovat na všechny uzly • Rychlost konvergence: • 0(n2) alg., zasílá O(nE) zpráv • trpí na oscilace • Robustnost: • špatně fungující/kompromitovaný směrovač může šířit nesprávné informace jen o k němu přímo připojených linkách • každý směrovač si přepočítává směrovací tabulky sám za sebe => odděleno od vlastního šíření informací => forma robustnosti • Použití: • vhodné i pro rozsáhlé sítě Eva Hladká (Fl MU) 4. Sítová vrs Distance Vector • Složitost: • po změně ceny některé z linek je toto zapotřebí vypropagovat jen nejbližsímu sousedovi; dále se propaguje jen tehdy, pokud daná změna znamená změnu stromu nejkratších cest • Rychlost konvergence: • může konvergovat pomaleji než LS • problémy se směrovacími cykly, count-to-infinity problém • Robustnost: • nesprávný výpočet je postupně šířen sítí => může znamenat zmatení ostatních směrovačů a nesprávně vypočtené směrovací tabulky • Použití: • vhodné jen pro menší sítě - Směrování jaro 2014 40 / 84 Struktura přednášky Q Směrováni' obecně Směrování • Základní přístupy Q Směrovací algoritmy Q Distribuované směrování • Distance Vector • Link State • Link State vs. Distance Vector Ql Hierarchie směrování • Původní představy • Autonomní systémy • Autonomní systémy - směrování ^i^l Multicastove smerovaní — IP Multic • Motivace • IP Multicast • Protokoly O Rekapitulace Kde se nyní nacházíme? • máme vybudovaný Internet • složený z mnoha internetů • umíme identifikovat jednotlivé sítě/uzly • s využitím notace CIDR • cesty ve směrovacích tabulkách agregovány • umíme směrovat data mezi sítěmi • libovolné dva uzly mohou komunikovat • pro směrování využit LS nebo DV algoritmus • Kde je problém? • obrovský rozsah Internetu =>• nutnost správy obrovských směrovacích tabulek • problém se správou - Kdo je zodpovědný za který kus sítě? Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 42 / 84 Původní představy aneb Jak běžel směrovací čas I. • v počátcích velmi malé sítě • každý počítač na síti zná cestu ke všem ostatním • aneb každý uzel zná celý Internet • pro rozsáhlejší sítě neúnosné (rozsah tabulek, udržování vzájemné konzistence) • přesun směrovací znalosti na hraniční uzly sítí (brány/směrovače) » aneb každá brána zná celý Internet • pro rozsáhlejší sítě stále neúnosné (rozsah tabulek, udržování vzájemné konzistence) • =4> hierarchické členění Internetu • každá brána zná cesty jen do k ní přidružených podsítí (bezprostřední okolí); pro ostatní využita implicitní (default) brána a lokální působnost směrovacích informací (menší rozsah tabulek, jen lokální udržování vzájemné konzistence) • na nejvyšší úrovni (jediná) páteřní sít • páteřní brány musí mít úplnou znalost celého Internetu Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 43 / 84 Původní představy aneb Jak běžel směrovací čas II. • nedostatky prvotního návrhu hierarchického členění: • organizace předávání směrovacích informací páteřním branám • Jak je propagovat ze zanořených sítí obecně náležejících různým organizacím? • nutnost využívání jednotných mechanismů směrování v rámci celé sítě • včetně stejné metriky • =4> rozšíření hierarchického členění na koncepci tzv. autonomních systémů (AS) • základní myšlenka: vzájemně propojené sítě, které spadají pod společnou správu, budou tvořit jediný autonomní systém, za který plně odpovídá jeho provozovatel • zůstává nutnost jednotného způsobu vzájemného předávání směrovacích informací mezi jednotlivými autonomními systémy • =>• v rámci svého AS má každý možnost zajistit si přenos a aktualizaci směrovacích údajů podle svého, ale navenek musí všichni postupovat jednotně Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 44 / 84 Autonomní systémy • cílem rozdělení Internetu na autonomní systémy je • snížení směrovací režie • jednodušší směrovací tabulky, snížení množství vyměňovaných směrovacích informací, atp. • zjednodušení správy celé sítě • správa jednotlivých internetů různými organizacemi • autonomní systémy = domény • každému AS/doméně přiřazen 16bitový identifikátor • Autonomous System Number (ASN) - RFC 1930 • přiřazuje organizace ICANN (Internet Corporation For Assigned Names and Numbers) • odpovídají administrativním doménám • sítě a směrovače uvnitř jednoho AS spravovány jednou organizací • např. CESNET, PASNET, ... • dělení v závislosti na způsobu připojení AS do sítě: • Stub AS • Multihomed AS • Transit AS Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 45 / Hierarchie směrování Autonomní systémy Autonomní systémy - Stub AS AS A one route to the outside © autonomní systém A je tzv. stub AS o je připojen pouze k jednomu dalšímu AS o směrovač A (tzv. hraničnísměrovač) je v rámci AS A v\ směrovač pro všechny sítě ležící mimo AS A Hierarchie směrování Autonomní systémy Autonomní systémy - Multihomed a Transit AS o autonomní systém B je o multihomed AS, pokud je připojen k nejméně dvěma dalším AS, kterými však neumožňuje přenášení provozu o transit AS, pokud je připojen k nejméně dvěma dalším AS, mezi kterými umožňuje přenášení provozu (skrze své LANs) Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 Hierarchie směrování Autonomní systémy - směrování Autonomní systémy - směrování I. o oddělené směrování z důvodů škálovatelnosti o intradoménové - interior routing o směrování uvnitř AS o plně pod kontrolou správce AS o tzv. Interior Gateway Protocols (IGP) (např. RIP, OSPF) interdoménové/mezidoménové - exterior routing o směrování mezi AS o tzv. Exterior Gateway Protocols (EGP) (např. EGP, BGP-4) spolupráce interior a exterior směrovacích protokolů Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 48 / 84 Hierarchie směrování Autonomní systémy - směrování Autonomní systémy - směrování II. • interní směrovače (směrovače uvnitř AS) • znají cestu do všech podsítí uvnitř AS • mohou využít implicitní (default) cesty • skrze hraniční směrovače • hraniční směrovače (Border Routers) • sumarizují a zveřejňují interní cesty • aplikují směrovací pravidla (policy) • jádro sítě nepoužívá implicitní cesty • =>• směrovače musí znát cesty ke všem sítím • Proč rozlišovat mezi směrováním uvnitř AS a mezi AS? • uvnitř AS hraje hlavní roli výkon • mezi AS hrají hlavní roli politiky (typicky jde o peníze) a škálovatelnost (velikosti tabulek) Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 49 / 84 Hierarchie směrování Autonomní systémy - směrování Autonomní systémy - mezidoménové směrování o směrovací pravidla (policies) ASI mohou zakazovat, aby se v případě výpadku linky mezi AS2 a AS3 směrovalo mezi AS2 a AS3 skrze ASI Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 50 / 84 Hierarchie směrování Autonomní systémy - směrování Autonomní systémy - mezidoménové směrování Směrovací pravidla • volba cesty není nezávislá na lokálních požadavcích • obchodní rozhodnutí • lokální rozhodnutí definují • výběr cesty • zveřejnění interních podsítí • důsledky: • kombinace nejlepších lokálních pravidel nemusí představovat globální optimum • asymetrie cest Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 51 / 84 Hierarchie směrování Autonomní systémy - směrování Autonomní systémy - mezidoménové směrování Směrovací pravidla - ilustrace I. Předpokládejme, že AS Z chce oznámit AS T cestu Z —> Y o tato cesta může být AS T akceptována jen tehdy, pokud AS Y umožňuje přenos jeho provozu Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 Hierarchie směrování Autonomní systémy - směrování Autonomní systémy - mezidoménové směrování Směrovací pravidla - ilustrace II. Hierarchie směrování Autonomní systémy - směrování Mezidoménové směrování - protokol EGP I. • Exterior Routing Protocol • první protokol mezidoménového směrování (navržen v roce 1983) • využívá DV přístup • distance vektory kombinují cesty a pravidla • cílem dosažitelnost, nikoliv efektivita • navržen pro stromovou strukturu Internetu • přílišné zjednodušení • nepodporuje redundanci, neumí se vypořádat s cykly • =>• již se nepoužívá Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 54 / 84 Hierarchie směrování Autonomní systémy - směrování Mezidoménové směrování - protokol EGP II. Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 55 / 84 Hierarchie směrování Autonomní systémy - směrování Mezidoménové směrování - BGP I. • Border Gateway Protocol a aktuálně verze 4 (BGP-4) • navržen v důsledku růstu Internetu a požadavků na podporu komplexnějších topologií • podporuje redundantní topologie, vypořádá se s cykly • využívá Pat h Vector směrování • nevyměňují se ceny cest, ale popis celých cest zahrnující všechny skoky • umožňuje definici pravidel směrování • pracuje nad spolehlivým protokolem (TCP) a používá CIDR pro agregaci cest Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 56 / 84 Hierarchie směrování Autonomní systémy - směrování Mezidoménové směrování - BGP II. Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 57 / 84 Hierarchie směrování Autonomní systémy - směrování Mezidoménové směrování - BGP III. Path Vector I. • Path Vector (PV) • obdoba DV • posílají se celé cesty (ne jen koncové uzly) • snadná detekce cyklů • umožňuje definici pravidel (přátelské vs. nepřátelské AS) • kratší cesty preferovány (pokud policy nerozhodne jinak) • nepoužívá žádnou metriku, řeší se pouze dostupnost • důsledek: není nutné, aby všechny AS využívaly stejnou metriku Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 Multicastové směrování - IP Multicasl Struktura přednášky Ql Směrování obecně Q Směrování • Základní přístupy Q Směrovací algoritmy Q Distribuované směrování • Distance Vector • Link State • Link State vs. Distance Vector Q Hierarchie směrování • Původní představy • Autonomní systémy • Autonomní systémy - směrování Qí Multicastové směrování - IP Multicast • Motivace • IP Multicast • Protokoly O Rekapitulace Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 60 / 84 Multicastové směrování - IP Multicast Motivace Skupinová komunikace Výzva: způsob zasílání stejných zpráv skupině koncových stanic Příklady reálného světa: • Televize či rozhlas, informace od zdroje k dynamické skupině • Přednášející x auditorium, informace od zdroje ke skupině příjemců • s ojedinělou zpětnou vazbou • Pracovní porada, informace od více zdrojů k více příjemcům • Moderovaná diskuze, existence rolí ve skupině a . .. Skupina se liší počtem členů, dynamikou, vzdáleností, aktivitou členů . .. Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 61 / 84 Multicastové směrování - IP Multicast Motivace Skupinová komunikace v síti Obdoba předchozího. • Data jsou od zdroje přenášena ke skupině příjemců • Původní dvoubodová komunikace —> vícebodová komunikace • Nutno zajistit replikaci dat a jejich doručení Pokud by replikace byla součástí aplikace, musela by každá aplikace obsahovat replikační modul. Proto je lepší řešit replikaci a směrování dat ve skupině odděleně od aplikace. • IP Multicast • Virtuální sítě Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 62 / 84 Multicastové směrování - IP Multicast Motivace Multicastové směrování - IP Multicast Motivace Příklady skupinové komunikace v síti • Streamované video vysílané ve smyčce • Nedefinovaně mnoho příjemců • Sirka pásma: jednotky Kb/s až Mb/s • Kvalita přenosu • Data produkovaná přístrojem (např. LHC) • Definovaně mnoho příjemců • Velké objemy dat po dlouhou dobu • Spolehlivé doručení • Videokonference (např. nekomprimovaná HD videokonference) • Omezeny počet příjemců • Komunikace každý s každým • Šířka pásma: stovky Kb/s až Gb/s • Nízká latence (reálný čas) Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 64 / 84 Multicastové směrování - IP Multicast IP Multicast IP Multicast - úvod Klasické řešení skupinové komunikace v síti. • Každým spojem nejvýše jedna kopie dat • Vlastnost sítě (hop by hop, nikoliv end-to-end služba) • Doručení nezaručené (best effort, UDP, skupinová adresa) • Rozsah šíření omezen TTL (Time To Live) paketů Jak identifikovat skupinu? • =4> multicastová IP adresa a IPv4: třída D (224. 0. 0. 0 - 239. 255.255. 255) • IPv6: prefix f f 00: :/8 Dva základní přístupy k multicastovému směrování: • Source Based Tree • Shared Tree (Core Based Tree) Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 65 / 84 Multicastové směrování - IP Multicast IP Multicast IP Multicast - komunikující strany Vysílající: • každý může vysílat (pokud zná multicastovou/skupinovou adresu) • stačí zasílat pakety na skupinovou adresu • vysílajících je proměnný počet • může, ale nemusí být členem skupiny Přijímající: • žádný, jeden, více • kdokoliv se může přidat či může opustit skupinu • může patřit do více skupin současně Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 66 / 84 Multicastové směrování - IP Multicast IP Multicast IP Multicast - identifikace skupiny příjemců 128.119.40.186 128.59.16.20 128.34.108.63 128.34.108.60 Figuře: Identifikace příjemců - datagram zaslaný do multicastové skupiny je doručen všem členům skupiny. Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 67 Multicastové směrování - IP Multicast IP Multicast Source Based Tree vs. Core Source Based Tree • Aktivita shora od zakládajícího • Periodický broadcast • Ořezávání větví bez členů • Omezení šířky - TTL • Pro úzce lokalizované skupiny • Nevýhoda: režie, záplava broadcasty • Protokoly: DVMRP (RIP), MOSPF (OSPF), PIM-DM Based Tree Core Based Tree • Ustaveno jádro - body setkání (MP) • Zájemce o skupinu kontaktuje MP • Aktivita zdola od příjemce • Redukce broadcastu —> lépe škáluje • Nevýhoda: závislost na dostupnosti jádra • Protokoly: CBT, PIM-SM (protokolově nezávislé) Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 68 / 84 Multicastové směrování - IP Multicast IP Multicast Source Based Tree Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 Multicastové směrování - IP Multicast IP Multicast rce Based Tree Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování Multicastové směrování - IP Multicast IP Multicast Source Based Tree Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 71 / 84 Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 72 / 84 Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 73 / 84 Multicastové směrování - IP Multicast IP Multicast Core Based Tree Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 75 / 84 Multicastové směrování - IP Multicast IP Multicast IP Multicast - vlastnosti • Pozitivní: • Nekonečná škálovatelnost • Nezatěžuje sít násobnými kopiemi • Negativní: • Problematické účtování • Problém se zajištěným doručením • Snadný terč útoku (DoS, DDoS) • Absence kontroly členství (nelze zjistit přijímající) Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 76 / 84 Multicastové směrování - IP Multicast Protokoly IP Multicast - protokoly • Správa skupiny: • pouze v rámci LAN • Internet Group Management Protocol (IGMP) a Směrování: • mezi multicastovými směrovací • Source Based Tree - DVMRP (RIP), MOSPF (OSPF), PIM-DM • Core Based Tree - CBT, PIM-SM Multicasting Protocols Source-Based Tree Group-Shared Tree DVMRP MOSPF PIM CBT PIM-DM PIM-SM Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 77 / 84 Multicastové směrování - IP Multicast Protokoly IP Multicast - správa skupiny - IGMP • IGMP (RFC 1112), IGMPv2 (RFC 2236) • správa členství ve skupině • spravuje informace o členech skupiny (pouze v rámci LAN) • pouze lokální působnost » sít a k ní přidružený multicastový směrovač • typy zpráv: • přihlášení ke skupině (Membership Report) • odhlášení ze skupiny (Leave Report) • monitoring skupiny (Query) • např. dotazy směrovače na zájem uzlů setrvat ve skupině (řeší odstranění náhle vypadlých uzlů) IGMP Messages 1 i Query Membership Report Leave Report General Special Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 78 / 84 Multicastové směrování - IP Multicast Protokoly IP Multicast - správa skupiny - IGMP II. Multicastové směrování - IP Multicast Protokoly IP Multicast - Source Based Tree - protokoly Distance Vector Multicast Routing Protocol (DVMRP) • rozšíření unicastového DV směrování, využívá informací získaných RIP protokolem • 3 přístupy pro budování stromu: • Reverse Path Forwarding (RPF) • Reverse Path Broadcasting (RPB) • Reverse Path Multicasting (RPM) Multicast Open Shortest Path First (MOSPF) • rozšíření unicatového OSPF protokolu • využívá vytvořené znalosti topologie OSPF protokolem • všechny uzly počítají strom cest z kořene, kterým je zdroj multicastového vysílání Protocol Independent Multicast - Dense Mode (PIM-DM) • využit v prostředí, kdy je pravděpodobné, že většina směrovačů bude participovat na multicastování • podobný DVMRP protokolu • využívá RPF přístup • rozdíl: ke své činnosti nevyžaduje unicastový protokol (tj. RIP) Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 Multicastové směrování - IP Multicast Protokoly IP Multicast - Core Based Tree - protokoly Core-Based Tree (C B T) e zdroj jako kořen budovaného stromu a AS rozdělen na regiony, pro každý region zvolen bod setkání (tzv. Rendezvous Router) • =>• vytvoření jádra a uzly (v případě zájmu) kontaktují body setkání • budování stromu od listů Protocol Independent Multicast - Sparse Mode (PIM-SM) a využit v prostředí, kdy je malá pravděpodobnost, že většina směrovačů bude participovat na multicastování a podobný CBT protokolu • také využívá Rendezvous Points (RPs) • oproti CBT si buduje záložní RPs pro účely jejich výpadků • v případě potřeby (— mnoho příjemců vzdálených od RP) je schopen přepnout do strategie Source-based Tree Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 81 / 84 Multicastové směrování - IP Multicast Protokoly Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 Rekapitulace Struktura přednášky Ql Směrování obecně Q Směrování • Základní přístupy Q Směrovací algoritmy Q Distribuované směrování • Distance Vector • Link State • Link State vs. Distance Vector Q Hierarchie směrování • Původní představy • Autonomní systémy • Autonomní systémy - směrování Qi Multicastové směrování - IP Multicast • Motivace • IP Multicast • Protokoly Qí Rekapitulace Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 83 / 84 Rekapitulace - sítová vrstva • logicky propojuje samostatné heterogenní LAN sítě • vyšším vrstvám poskytuje iluzi uniformního prostředí jediné WAN sítě • internet vs. Internet • poskytuje možnost jednoznačné identifikace (adresace) každého PC/zařízení v síti (např. Internetu) • zajištuje (hierarchické) směrování procházejících paketů • Distance Vector přístup vs. Link State přístup • unicast vs. multicast • hlavní protokol sítové vrstvy: IP protokol (IPv4, IPv6) • další informace: • PA159: Počítačové sítě a jejich aplikace I. (doc. Hladká) • PV233: Počítačové sítě a směrovací protokoly (dr. Pelikán et al.) • grafové algoritmy - PB165: Grafy a sítě (prof. Matýska, doc. Hladká, doc. Rudová) Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2014 84 / 84