4. Sítová vrstva - Směrování PB156: Počítačové sítě Eva Hladká S lidy připravil: Tomáš Re bok Fakulta informatiky Masarykovy univerzity jaro 2024 Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 1/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 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 :va Hladká fFl MU) 4. Sítová vrstva - Směrování jaro 2024 iměrování obecně 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 Multicast • Motivace • IP Multicast • Protokoly Rekapitulace Eva Hladká (TI MU) 4. Sítová vrstva - Směrování Směrování obecně Směrování obecně • Internet na L3 - datagramový přístup k přepínání paketů • data vyšších vrstev u místová na do datagramů • datagramy (fragmenty) putují sítí nezávisle A • směrování (Routing) = proces nalezení cesty mezi dvěma komunikujícími uzly • cesta musí splňovat určité omezující podmínky • ovlivňující faktory: • statické: topologie sítě • dynamické: zátěž sítě Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 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 2024 Směrování obecně Matematický pohled • na směrování lze nahlížet jako na problém teorie grafů • sít reprezentována grafem, kde: • uzly reprezentují směrovače (identifikovány svými IP adresami) o hrany reprezentují vzájemné propojení směrovačů (linku) • ohodnocení hran = cena komunikace • cíl: nalezení minimální cesty v grafu mezi libovolnými dvěma uzly B DE 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) • 10Mb linka má lOOx vyšší cenu než 1Gb linka • 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 2024 Směrování 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 Multicast • Motivace • IP Multicast • Protokoly Q Rekapitulace Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 8/84 Smerovaní 9 úkolem smerovaní je: • vyhledávat optimální směrovací trasy • kriteriem optimality je metrika • dopravit datový paket určenému adresátovi 9 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 2024 Smerovaní (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ěrováče (dle cílové adn • vyžaduje přístup ke směrovací tabulce Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 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 122 /24 —^/O 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. Sitová vrstva - Směrováni jaro 2024 11/84 Problém globálního pohledu o globální znalost topologie celé sítě je problematické • je složité ji získat • když už se to podaří, není aktuální • 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 2024 Směrování Základní přístupy Směrování - základní přístupy Členění dle způsobu vytvoře ní/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? a 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 o 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 2024 13/84 Směrování Základní přístupy Dynamické směrování - centralizované směrování • 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 2024 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áni jaro 2024 15/84 Směrování Základní přístupy Dynamické směrování - distribuované směrování • 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 2024 16/84 Smerovaní - další možná členění r distribuované krok za krokem" deterministické jedno dynamický INTERNET vs. centralizované vs. zdrojové vs. stochastické vs. více cestné vs. statický výber cest Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 17/84 Směrovací algoritmy 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í 9 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 Q Rekapitulace Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 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 9 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áni jaro 2024 19/84 Směrovací algoritmy Směrovací algoritmy - požadované vlastnosti Žádané vlastnosti směrovacího algoritmu: • správnost 9 jednoduchost • efektivita a škálovatelnost • minimalizace množství řídících informací (~ 5% provozu!) • minimalizace velikosti směrovacích tabulek • robustnost a stabilita • nezbytný je distribuovaný algoritmus 9 spravedlivost (fairness) • optimálnost • Co je to nej lepší cesta ? Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 20/84 Distribuované směrování Struktura přednášky Q Směrování obecně Q Směrování • Základní přístupy Q Směrovací algoritmy Distribuované směrování • Distance Vector o 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 Q Rekapitulace Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 21/84 Distribuované smerovaní - základní přístupy Třídy distribuovaných směrovacích protokolů (dle charakteru směrovací informace): • Distance Vector (DV) - Bell man-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 9 Link State (LS) 9 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á nej kratší cesta • čili informace o svých sousedech všem Eva Hladká (Fl MU) 4. Sítová vrstva - Směrováni jaro 2024 22 / Distribuované směrování Distance Vector Distance Vector I. Net A Net D R1 R2 <^^> R3 Net B Net C Network Interface A EO B SO C SO D SO I Network Interface Network Interface B SO C SO C S1 D EO A S B SO D S1 A SO • směrovač si udržuje všechny známé routy v tabulce ve formě uspořádaných trojic (A/, G, D), kde: • N ... cílová sít • G .. . adresa následujícího směrovače • D .. . vzdálenost do cílové sítě (metrika) o tabulky se upravují tak, aby se směrovalo nejkratší cestou • problémy: pomalá konvergence, příliš mnoho režijních dat Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 23/84 Distribuované směrování 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 9 Inicializace: • sousedé: známá cena • Distance Vector = < c/7, cena > • ostatní: nekonečno 9 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 2024 24/84 Distribuované směrování Distance Vector Distance Vector III. Ilustrace problému pomalé konvergence 10.1.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 S1 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 2024 25/84 Distribuované směrování Distance Vector Distance Vector III. Ilustrace problému pomalé konvergence 10.1.0.0 Routing Table 10.1.0.0 EO 0 10,2,0.0 50 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 2024 26/84 Distribuované směrování Distance Vector Distance Vector III. Ilustrace problému pomalé konvergence 10.1.0.0 10.4.0.0 ^ E0 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 2024 27/ Distribuované směrování Distance Vector Distance Vector Ilustrace problému pomalé konvergence Routing Table 10.1.0.o| 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,01 SO | 0 10,3.0,0 S1 Ô 10.4.0,0 S1 1 10.1,0.0 SO 1 Routing Table 10.3.0.01 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 2024 28/ Distribuované směrování Distance Vector Distance Vector Ilustrace problému pomalé konvergence 10.1.0.0 Packet for Network 10.4.0.0 Routing Tat >le 10.1.0.0 EO 0 10.2.0.0 SO 0 10.3.0.0 so 1 10.4.0.0 so 4 Routing Table 10.2.0.0 SO 0 10.3.0.0 S1 0 10.4.0.0 S1 3 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 • Důsledek: vznik směrovací smyčky • paket pro sít 10.4.0.0 skáče mezi routery B a C Eva Hladká (Fl MU) 4. Sítová vrstva - Směrová ni jaro 2024 29/84 Distribuované směrování 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 S1 1 10.1.0.0 $0 1 Routing Table 10.3.0.0 SO 0 10.4.0.0 E0 0 10.2.0.0 SO 1 10.1.0.0 $0 2 • Řešení: dělení horizontu • směrovač nesděluje cestu zpět uzlu, od kterého se o ní dozvěděl • problém zůstává ve složitějších topologiích (navržena řada rozšíření) Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 30/84 Distribuované směrování Distance Vector Distance Vector IV. - protokol RIP I. • hlavní představitel DV smerovaní o 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í) o použití: • 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 2024 31/84 Distribuované směrování 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 0 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 2024 32 / Distribuované směrování Distance Vector 08 1 - 23 1 - Figuře: RIP - příklad: iniciální stav tabulek. Eva Hladká (Fl MU) 4. S ítová vrstva - Směrování jaro 2024 33/84 Distribuované směrování Distance Vector Distance Vector IV. - protokol RIP IV 08 2 E 14 1 -- 23 1 — 55 2 B 66 3 E 78 1 92 2 F 08 3 A 14 1 — 23 2 A 55 1 — 66 2 C 78 2 A 92 3 A 08 3 A 14 2 A 23 2 A 55 3 A 66 4 A 78 1 -- 92 1 -- 08 2 D 14 2 B 23 3 D 55 1 — 66 1 — 78 3 B 92 4 B Eva Hladká (Fl MU) Figure: RIP - příklad: finální stav tabulek. 4. Sítová vrstva - Směrování jaro 2024 34/84 Distribuované směrování Link State Link State I. Směrovací tabulka Zprávy o stavu Topologická ^-spojení - Link databáze ^ State pakety SPF Algoritmus SPF strom o směrovače si zasílají pouze informaci o stavu linek, na něž jsou bezprostředně připojeny o získají tím kompletní mapu sítě • pak si počítají nej kratší cesty (např. s využitím Dijkstrova algoritmu) • 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ě 9 nevýhoda: složitější algoritmus větší nároky na CPU a pamět směrovače Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 35/84 Link State 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: • šíří se topologie, cesty si počítají směrovače samy • fáze 1: šíření topologie (broadcast) o fáze 2: výpočet nejkratší 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áni jaro 2024 36/84 Distribuované směrování Link State Link State III. - Výpočet nejkratší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) 9 označuje nezápornou cenu hrany (spoje (/,./)) • s je aktuální (zdrojový) uzel • M množina uzlů, které již byly navštíveny • C(n) cena cesty z s do n; oc pokud cesta neexistuje Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 Distribuované směrování Link State Link State III. - Výpočet nejkratších cest Dijkstrův algoritmus - pseudokód M = {s} 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 for each n in N\M C(n) = min(C(n), C(w)+l(w,n)) (N\M) • ilustrace výpočtu: http://www.unf .edu/~wkloster/ foundations/DijkstraApplet/DijkstraApplet.htm • animace: http://www.cse.yorku.ca/~aaw/HFHuang/DijkstraStart.html • více viz PA165: Grafy a sítě Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 38/84 Distribuované směrování Link State Link State IV. - protokol OSPF Open Shortest Pat h First nejpoužívanější LS protokol současnosti metrika: cena (cost) 9 číslo (v rozsahu 1 až 65535) prirazené 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čne menit 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 2024 39/84 Distribuované směrování 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: 9 0(r?2) 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í: Distance Vector • Složitost: • po změně ceny některé z linek je toto zapotřebí vypropagovat jen nej bližším u sousedovi; dále se propaguje jen tehdy, pokud daná změna znamená změnu stromu nej kratší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ě a \/hr>rln^ i nrn rrfzcáhl^ cÍť£ Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 40/84 Hierarchie směrování Struktura přednášky 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í Q Multicastové směrování - IP Multicast • Motivace • IP Multicast • Protokoly Q Rekapitulace Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 41/84 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áni jaro 2024 42/84 Hierarchie směrování Původní představy Původní predstavy aneb Jak běžel směrovací čas I. 9 v počátcích velmi malé sítě • každý počítač na síti zná cestu ke všem ostatním 9 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 • 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 2024 43/84 Hierarchie směrování Původní představy Původní predstavy aneb Jak běžel směrovací čas II. 9 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 2024 44/84 Autonomní systémy Autonomní systémy • cílem rozdělení Internetu na autonomní systémy }e 9 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 o 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 o 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ě: o Stub AS • Multihomed AS • Transit AS Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 45 / Autonomní systémy - Stu b AS one route to AS A one route to the outside autonomní systém A je tzv. stub AS • je připojen pouze k jednomu dalšímu AS směrovač A (tzv. hraničnísměrovač) je v rámci AS A výchozí směrovač pro všechny sítě ležící mimo AS A Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 46/84 Hierarchie směrování Autonomní systémy Autonomní systémy - Multihomed a Transit AS AS C autonomní systém B je • multihomed AS, pokud je připojen k nejméně dvěma dalším AS, mezi kterými však neumožňuje přenášení provozu • 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 2024 47/84 Hierarchie směrování Autonomní systémy - směrování Autonomní systémy - směrování I. oddělené směrování z důvodů škálovatelnosti • intradoménové - interior routing • směrování uvnitř AS • plně pod kontrolou správce AS • tzv. Interior Gateway Protocols (IGP) (např. RIP, OSPF) • interdoménové/mezidoménové - exterior routing • směrování mezi AS • tzv. Exterior Gateway Protocols (EGP) (např. EGP, BGP-4) • nutná spolupráce interior a exterior směrovacích protokolů ) B / TS Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 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) 9 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 2024 49/84 Hierarchie směrování Autonomní systémy - směrování Autonomní systémy - mezidoménové směrování ASI propojen s AS2 a AS3 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 2024 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í a lokální rozhodnutí definují • výběr cesty 9 zveřejnění interních podsítí <* důsledky: 9 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 2024 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. Z Y X Předpokládejme, že AS Z chce oznámit AS T cestu Z —>> y —>> X • 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 2024 Hierarchie směrování Autonomní systémy - směrování Autonomní systémy - mezidoménové směrování Směrovací pravidla - ilustrace II. ..--| T Z r Vi Y X A i • jestliže AS y neumožní přenos provozu AS 7", ale umožní přenos provozu AS X, budou data mezi AS T a AS X přenášena asymetricky Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 53/84 Hierarchie směrování Autonomní systémy - směrování Mezidoménové směrování - protokol EGP I. • Exterior Routing Protocol o 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 2024 54/84 Hierarchie směrování Autonomní systémy - směrování ezidoménové směrování - protokol EGP II. Figure: Představa Internetu podle EGP. Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 Autonomní systémy - směrování Mezidoménové směrování - BGP I. • Bor der Gateway Protocol • 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á Path 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) • používá CIDR pro agregaci cest Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 56/ Hierarchie směrování Autonomní systémy - směrování Mezidoménové směrování - BGP II. Figuře: Představa Internetu podle BGP. Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 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) 9 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 2024 58/ Hierarchie směrování Autonomní systémy - směrování Mezidoménové směrování - BGP III. Path Vector II. Distance Vector přístup: C je vzdáleno 2 hopy od A Path Vector přístup: cesta z ASI do AS3 vede skrze AS2 Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování Multicastové směrování - IP Multicast 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 Multicast • Motivace • IP Multicast • Protokoly Q Rekapitulace Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 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ě a 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 o Moderovaná diskuze, existence rolí ve skupině • ... Skupina se liší počtem členů, dynamikou, vzdáleností, aktivitou členů .. . Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 61 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 9 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 9 Virtuální sítě Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 62 / Multicastové směrování - IP Multicast Motivace Skupinová komunikace v síti - Unicast vs. Multicast unicast network multicast Figure: Doručení dat skupině příjemců - Unicast vs. Multicast Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 63/84 Multicastové směrování - IP Multicast Motivace Příklady skupinové komunikace v síti 9 Streamované video vysílané ve smyčce • Nedefinovaně mnoho příjemců o 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 2024 64/84 Multicastové směrování - IP Multicast IP Multicast IP Multicast - úvod Klasické řešení skupinové komunikace v síti. o Každým spojem nejvýše jedna kopie dat o 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 • 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 2024 65 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 rrijimajici: • žádný, jeden, více 9 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 2024 66 Multicastové směrování - IP Multicast IP Multicast IP Multicast - identifikace skupiny příjemců 128.119.40.186 r^^1 • • • ^^^i 128.59.16.20 128.34.108.63 lépe škáluje • Nevýhoda: závislost na dostupnosti jádra • Protokoly: CBT, PIM-SM (protokolově nezávislé) jaro 2024 68 / 4. Sítová vrstva - Směrování Multicastové směrování - IP Multicast IP Multicast Source Based free Multicastové směrování - IP Multicast IP Multicast Source Based free Multicastové směrování - IP Multicast IP Multicast Source Based free Multicastové směrování - IP Multicast IP Multicast Source Based free Multicastové směrování - IP Multicast IP Multicast Core Based free Multicastové směrování - IP Multicast IP Multicast Core Based free Multicastové směrování - IP Multicast IP Multicast Core Based free 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í 9 Problém se zajištěným doručením • Snadný terč útoku (DoS, DDoS) Absence kontroly členství (nelze zjistit přijímající) 9 Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 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) 9 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 T Source-Based Tree I DVMRP MOSPF PIM PIM-DM PIM-SM Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 77/84 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) 9 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 Membership Report Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 Multicastové směrování - IP Multicast Protokoly IP Multicast - správa skupiny - IGMP II IGMP 51 * • • 9» wide area multicast routing Network Rl To other networks List of groups having loyal members 225.70.8.20 231.24.60.9 To another network R2 To another network Figure: Ilustrace lokální působnosti IGMP protokolu. 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 OS PF protokolu o 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 nevvžaduie unicastovv orotokol íti. R\P} Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 IP Multicast - Core Based Tree - protokoly Core-Based Tree (CBT) 9 zdroj jako kořen budovaného stromu • AS rozdělen na regiony, pro každý region zvolen bod setkání (tzv. Rendezvous Router) • vytvoření jádra • uzly (v případě zájmu) kontaktují body setkání o budování stromu od listů Protocol Independent Multicast - Sparse Mode (PIM-SM) 9 využit v prostředí, kdy je malá pravděpodobnost, že většina směrovačů bude participovat na multicastování • podobný CBT protokolu • také využívá Rendezvous Points (RPs) 9 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 2024 81 Multicastové směrování - IP Multicast Protokoly IP Multicast - příklad reálné sítě (Cesnet2) TU Liberec AS65020 BGP, MBGP / MSDP směrovač jádra sítě (P) přístupový směrovač (PE) přístupový L2/L3 přepínač Anycast RP Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 82/84 Rekapitulace 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 Multicast • Motivace • IP Multicast • Protokoly Q Rekapitulace Eva Hladká (Fl MU) 4. Sítová vrstva - Směrování jaro 2024 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) o 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) 9 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áni jaro 2024 84/