Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

© DSRG 2001-2003, Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny1 Routing dynamiczny.

Podobne prezentacje


Prezentacja na temat: "© DSRG 2001-2003, Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny1 Routing dynamiczny."— Zapis prezentacji:

1 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny1 Routing dynamiczny

2 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny2 Warstwa łącza Warstwa sieci Warstwa transportu Warstwa sesji Warstwa prezentacji Miejsce w modelu OSI/ISO Warstwa aplikacji Zawiera programy obsługi urządzeń i odpowiadające im karty interfejsów sieciowych. Odpowiada za fizyczne dołączenie do kabla sieciowego Obsługuje ruch pakietów w sieci Zapewnia przepływ danych pomiędzy dwoma komputerami, obsługując znajdującą się nad nią warstwę aplikacji Obsługuje funkcje związane z określoną aplikacją

3 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny3 Plan wykładu Schemat adresacji CIDR Routing statyczny kontra dynamiczny Podział protokołów routingu Protokoły wewnętrzne –RIP, RIP2, IGRP –OSPF

4 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny4 Tablica routingu Zawiera skojarzenie pomiędzy adresem IP przeznaczenia (może to być zarówno pełny adres komputera jak i adres sieci) a adresem IP routera następnego przejścia bezp. dołączona bezp. dołączona IP nast. przejściaSieć docelowa bezp. dołączona bezp. dołączona IP nast. przejściaSieć docelowa ? R R2R R1

5 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny5 Tablica routingu – wnioski Routing IP jest dokonywany na podstawie kolejnych przejść Router nie zna pełnej trasy do żadnego z punktów przeznaczenia Routing jest możliwy dzięki przekazywaniu datagramu do następnego routera. Zakłada się, że kolejny router jest bliżej punktu przeznaczenia niż komputer wysyłający informację oraz że wysyłający komputer jest połączony z jakimś routerem, który odbiera od niego datagramy.

6 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny6 Classless Inter-Domain Routing (CIDR) Problem 1: brak wolnych adresów sieci –np. tylko sieci klasy B –rozwiązanie: dzielenie adresów klasy B na mniejsze (odpowiadające klasie C) Problem 2: wzrost wielkości tablic routingu –rozwiązanie: agregacja tablic routingu w zależności od providera lub od lokalizacji geograficznej Schemat adresacji - po co go wprowadzamy ?

7 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny7 Classless Inter-Domain Routing (CIDR) Podsumowanie: –Podobnie, CIDR służy oszczędzaniu adresów przez ich gęstą alokację –Techniki te są jednak środkami przejściowymi, jedynym rozwiązaniem omówionych problemów jest nowy schemat adresacji Prefix 13 do 27 bitów - numer sieci Numer hosta Nie mówimy o klasach adresów Struktura adresu CIDR

8 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny8 Podział Protokołów Routingu Routing Statyczny Routing Dynamiczny WewnętrznyZewnętrzny Z wektorem Stanu odległości łącza Z wektorem Stanu odległości łącza

9 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny9 Hierarchiczny routing w sieci IP Intra-AS border (exterior gateway) routers (routing zewnętrzny) Inter-AS interior (gateway) routers (routing wewętrzny)

10 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny10 AS- Autonomus System Wydzielony administracyjnie (przez przypisanie AS-id) zbiór routerów, który realizuje ten sam protokół routingu dynamicznego Wprowadzenie AS zmniejsza wielkość tablic routingu oraz Skraca czas ich wyznaczania przez protokoły routingu Wprowadzenie AS (hierarchii) jest podstawą skalowalności routingu w sieci Internet

11 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny11 Inter-AS routing between A and B Host h2 a b b a a C A B d c A.a A.c C.b B.a c b Host h1 Intra-AS routing within AS A Intra-AS routing within AS B border (exterior gateway) routers interior (gateway) routers Intra-AS and Inter-AS Routing

12 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny12 Wymagania stawiane protokołom routingu

13 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny13 Zbieżność Router potrzebuje czasu na znalezienie alterantywnej ścieżki w wypadku zmiany topologii sieci (np. awaria) Czas, po którym routery będą miały jednakowy obraz sieci jest zależny od konfiguracji (np. odstęp między periodycznie rozsyłanymi pakietami)

14 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny14 Zbieżność Czas wykrywania awarii: Łącza szeregowe: natychmiastowo (przerwa w obwodzie) Token Ring i FDDI: od razu Ethernet: dwa lub trzy cykle zegara keepalive Brak EIGRP Hello lub OSPF Hello R1 N1 Pierwotna ścieżka Alternatywna ścieżka X

15 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny15 Równoważenie obciążenia Równe koszty ścieżek R1 R4 N2 N1 R3 R2 T1

16 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny16 Równoważenie obciążenia Zbliżone koszty ścieżek R1 R4 N2 N1 R3 R2 T1 768K 512K T1

17 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny17 Routing statyczny vs. dynamiczny Przewidywalny – trasa po której pakiet jest przesyłany jest dobrze znana i może być kontrolowana. Łącza nie są dodatkowo obciążone wiadomościami służącymi do routowania. Łatwe do skonfigurowania w małych sieciach. Brak skalowalności Brak obsługi redundantnych połączeń Nieumiejętność dostosowania się do dynamicznych zmian w konfiguracji sieci Skalowalność Zdolność dostosowania się do zmian topologii sieci Łatwość konfiguracji – nie popełniamy błędów Większy stopień zawiłości działania sieci. Im lepiej protokół reaguje na zmiany w sieci tym bardziej skomplikowany musi być – trudności w implementacji – różnice pomiędzy sprzętem od różnych producentów Konieczność okresowej wymiany danych to z punktu widzenia użytkownika niepotrzebne obciążenie sieci.

18 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny18 Klasyfikacja protokołów routingu dynamicznego Podział ze względu na obszary zastosowań –protokoły wewnętrzne –protokoły zewnętrzne Podział ze względu na charakter wymienianych informacji –protokoły z wektorem odległości –protokoły stanu łącza

19 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny19 Protokoły routingu wewnętrzne i zewnętrzne Wewnętrzne –Stosowane wewnątrz jednej domeny administracyjnej –Proste, w małym stopniu obciążają routery –Mało skalowalne –RIP (Routing Information Protocol), IGRP (Interior Gateway Routing Protocol), OSPF (Open Shortest Path First), Zewnętrzne –Odpowiadają za wymianę informacji pomiędzy dwiema niezależnymi administracyjnie sieciami –Dają się skalować, łatwo obsługują duże sieci –Są skomplikowane, ilość dodatkowych informacji przesyłanych siecią może szybko zablokować pracę małej lub średniej sieci –EGP (exterior gateway protocol), BGP (border gateway protocol) Można je zamieniać, ale nie jest to mądre, bo zostały przystosowane do innego trybu pracy

20 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny20 Protokoły z wektorem odległości ang. Distance Vector

21 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny21 Protokoły dystans-wektor Router regularnie wysyła wszystkim swoim sąsiadom informacje na temat każdej dostępnej, znanej sobie sieci: –Jak daleko do niej jest (dystans) Czas podróży Liczba przeskoków Koszt przesyłu –Jak się można do niej dostać (wektor) Zwykle wyślij do mnie, bo ja wiem, jak to przesłać dalej. Inny router. Np. gdy router docelowy nie obsługuje danego protokołu routingu.

22 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny22 Distance Vector Routing Algorithm Based on Bellman-Ford algorithm –At node X, the distance to Y is updated by where D X (Y) denote the distance at X currently from X to Y, N(X) the neighbors of node X, and c(X, Z) the distance of the direct link from X to Z Properties –distributed: each node communicates its routing table to its directly-attached neighbors –iterative: continues periodically or when link changes, e.g. detects a link failure –asynchronous: nodes need not exchange info/iterate in lock step! –convergence in finite steps, independent of initial condition if the network is connected

23 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny23 Budowa tablic routingu Routery otrzymują tablice od swoich sąsiadów Zapamiętują najlepszą znaną odległość do określonego odbiorcy oraz router który przesłał taką informację Uaktualniają wpis jeśli odbiorą informację o lepszej odległości Obliczają minimalną odległość przyrostowo, nie potrzebują przechowywać wszystkich danych od sąsiadów

24 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny24 Protokół d-w stan 0 U YZ VX ab c e f d NHR -a0 -c0 NHR -a0 -b0 -d0 NHR -b0 -e0 NHR -c0 -f0 NHR -d0 -e0 -f0 NH a1 c1 NH a1 c1

25 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny25 NHR-a0-c0 Protokół d-w stan I U YZ VX ab c e f d NHR-a0-b0-d0NHR-b0-e0NHR-c0-f0NHR-d0-e0-f0NHa1c1NHa1c1Uc1Ua1

26 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny26 NHR-a0-c0 Protokół d-w stan I U YZ VX ab c e f d NHR-a0-b0-d0NHR-b0-e0NHR-c0-f0NHR-d0-e0-f0NHa1b1Uc1Ua1c2d1NHa1b1c2d1NHa1b1c2d1NHa2c1f1NHa2c1f1

27 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny27 NHR-a0-c0 Protokół d-w stan II U YZ VX ab c e f d NHR-a0-b0-d0NHR-b0-e0NHR-c0-f0NHR-d0-e0-f0NHa1b1Uc1Ua1c2d1NHa1b1c2d1NHa1b1c2d1NHa2c1f1NHa2c1f1Vb1Vd1Yf1Va1Vb1Yc1Va1Vc2Vd1

28 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny28 NHR-a0-c0 Protokół d-w stan II U YZ VX ab c e f d NHR-a0-b0-d0NHR-b0-e0NHR-c0-f0NHR-d0-e0-f0Uc1Ua1NHa2b1c3d2NHa2b2c2d1Vb1Vd1Yf1Va1Vb1Yc1Va1Vc2NHa2b1c3e1f1NHa2b2c2d1e1f1NHa2b2c2d1e1f1Vd1e1d2e1

29 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny29 NHR-a0-c0 Protokół d-w stan III U YZ VX ab c e f d NHR-a0-b0-d0NHR-b0-e0NHR-c0-f0NHR-d0-e0-f0Uc1Ua1NHa2b1c3e1NHa2b2c2d1Vb1Vd1Yf1Va1Vb1Yc1Va1Vc2NHa2b1c3e1e1f1NHa2b2c2d1e1f1NHa2b2c2d1e1f1Xe1Zf1Vd1Zf1Zb2Zd1Ze1

30 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny30 NHR-a0-c0 Protokół d-w stan III U YZ VX ab c e f d NHR-a0-b0-d0NHR-b0-e0NHR-c0-f0NHR-d0-e0-f0Uc1Ua1NHa1b1c2d1Vb1Vd1Yf1Va1Vb1Yc1Va1Vc2NHa2b3c1d2e2f1Xe1Zf1Vd1Zf1Zb2Zd1Ze1e2f2NHa1b1c2d1e2f2NHa1b1c2d1e2f2NHa2b3c1d2e2f1

31 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny31 NHR-a0-c0 Protokół d-w stan IV U YZ VX ab c e f d NHR-a0-b0-d0NHR-b0-e0NHR-c0-f0NHR-d0-e0-f0Uc1Ua1NHa1b1c2d1Vb1Vd1Yf1Va1Vb1Yc1Va1Vc2NHa2b3c1d2e2f1Xe1Zf1Vd1Zf1Zb2Zd1Ze1e2f2NHa1b1c2d1e2f2NHa1b1c2d1e2f2NHa2b3c1d2e2f1Ye2

32 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny32 NHR-a0-c0 Protokół d-w stan ustalony U YZ VX ab c e f d NHR-a0-b0-d0NHR-b0-e0NHR-c0-f0NHR-d0-e0-f0Uc1Ua1Vb1Vd1Yf1Va1Vb1Yc1Va1Vc2Xe1Zf1Vd1Zf1Zb2Zd1Ze1Ye2 Sieć znajduje się w stanie ustalonym Kolejność wysyłania danych przez routery była przypadkowa

33 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny33 Routing Information Protocol (RIP) Router wysyła informacje co 30s do wszystkich swoich sąsiadów pakiety typu broadcast o znanych sobie sieciach i odległości do nich Miarą odległości jest liczba routerów jaką należy przejść, żeby dostać się do danej sieci Po 180s nie odświeżona droga jest usuwana z tablicy routingu

34 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny34 Pakiet RIP enkapsulacja Pakiet RIP Nagłówek IPPole danych Nagłówek UDPPole danych Port 520 To Send/Rcv

35 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny35 Pakiet RIP musi być wypełnione zerami metryka musi być wypełnione zerami adres IP identyfikator rodziny adresów musi być wypełnione zeramiwersja polecenie (zapytanie/odpowiedź) N

36 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny36 Wady RIP liczenie do nieskończoności Sieć 1 R1R2R3 Router R2 wysyła informacje o dostępności sieci 1 co 30 sekund Po 180 sekundach R1 wpisuje do swojej tablicy nową drogę do sieci 1 NH Sieć 12 NH 3 NH 4 NH 5 NH 6 NH 7 NH 8 NH 9 NH 10 NH Sieć 111 NH Sieć 112 NH Sieć 113 NH Sieć 114 R0 NH Sieć 115 NH Sieć 116

37 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny37 RIP zmniejszanie prawdopodobieństwa wystąpienia liczenia do nieskończoności Uaktualnianie z podzielonym horyzontem –router nie propaguje informacji o dostępności sieci na interfejs, przez który prowadzi najlepsza trasa Wstrzymanie –router wstrzymuje się z akceptacją komunikatów o dostępności sieci, o której awarii otrzymał informację (zazwyczaj na 60 sek.) Odświeżanie wymuszone –w wypadku zmiany w tablicy router nie czeka 30s tylko rozgłasza nową informację natychmiast

38 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny38 RIP dzielony horyzont Zmniejsza prawdopodobieństwo wystąpienia zjawiska zliczania do nieskończoności Sieć 1 R1R2R3 NH Sieć 13 NH 3 Najkrótsza trasa do 1 jest dostępna przez R1 R0 R2 nie wysyła informacji o dostępności Sieci 1 do R1 bo przez ten router prowadzi najkrótsza trasa tej sieci

39 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny39 RIP dzielony horyzont Reverse-Poison A E D CB Es distance table 1, A 8, B 4, D 2, D distance table E sends to its neighbors To A A: B: 8 C: 4 D: 2 E: 0 To B A: 1 B: C: 4 D: 2 E: 0 ToD,C A: 1 B: 8 C: D: E: 0 distancethrough neighbor

40 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny40 Nie zawsze zapobiega zliczaniu do nieskończoności RIP dzielony horyzont Reverse-Poison r When the link between C and D fails, C will set its distance to D as r However, A will then use B to go to D, and B will use A to go to D because there is no reverse-poison between them r After such updates, A (and B) will then report new path to C for D, and C will use the path; we thus have the count-to-infinity problem again

41 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny41 RIP wstrzymanie Po otrzymaniu komunikatu od routera, że poprzednio dostępna sieć jest niedostępna włącza licznik (hold-down timer) Jeśli otrzyma komunikat od tego samego routera, że sieć jest dostępna wyłącza licznik Jeśli otrzyma komunikat od innego routera ogłaszający lepszą trasę wyłącza licznik Jeśli otrzyma gorsze trasy ignoruje je Po upłynięciu licznika kasuje wpis

42 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny42 RIP odświeżanie wymuszone Pakiet RIP wysyłany jest natychmiast po zaobserwowaniu zmiany –czas zwykle jest opóźniony o kilka sekund, żeby nie spowodować zalewania sieci Nie wysyłana jest cała tablica routingu a tylko informacja o zmianach

43 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny43 RIP i podsieci / / /24 Potrafi przekazywać informacje jedynie o sieciach i pojedynczych komputerach –W polu hosta są same zera sieć –W przeciwnym przypadku host Potrafi obsłużyć sytuację, w której istnieją jednakowo długie podsieci na podstawie adresów swoich interfejsów. –Wszystkie routery zakładają, że w sieci istnieje jedna długość maski

44 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny44 Wady RIP synchronizacja Co 30 sekund w sieci opartej na protokole RIP następuje znaczny spadek wydajności (synchronizacja komunikatów o tablicach routingu) –mniejsza przepustowość lub większy procent zagubionych pakietów Rozwiązania: –inicjowanie routerów w różnych momentach –modyfikacja interwału (15s – 45s; średnio 30s) pomiędzy wysyłaniem kolejnych informacji o zawartości tablicy routingu (losowo)

45 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny45 Wady RIP rozgłaszanie W przypadku Ethernetu lub FDDI naturalna metoda przesyłania informacji dotyczących routingu W ISDN lub X.25 milczenie jest złotem –Transmisja wymaga zestawienia kanału transmisyjnego –ISDN B 64 kbps –kanał wirtualny X.25 9,6 kbps przesłanie 2 pakietów RIP zajmuje około 1 sekundy (!)

46 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny46 Wady RIP rozgłaszanie Remedium: tablice routingu rozgłaszane są tylko wtedy, gdy zachodzi taka konieczność –transmisja z potwierdzeniem –problem: jak stwierdzić, że połączenie z sąsiednim routerem działa? –założenie osiągalności –jeśli próba przesłania pakietu zawiedzie to przerwane zapominanie informacji o gorszych drogach –po 30 sekundach się nie pojawią (!!!) –rozwiązanie: przechowywanie listy tras wewnątrz routera »stosowane nie tylko w przypadku łącz typu X.25

47 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny47 Wady RIP Zbyt prosta metryka –łącze X.25 i FDDI tyle samo warte X.25 drogie i wolne FDDI tanie i szybkie Sieć 1 Sieć 2 A C B X.25 (9600 bps) bps Dobry do sieci jednorodnych

48 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny48 RIP i podsieci R / / /8 R1 nie może przekazać informacji o podsieci, bo na tym interfejsie nie ma podsieci inne routery zinterpretowały by jego komunikat jako drogę do hosta R2 może nie znać poprawnej drogi do hosta R R /24

49 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny49 RIP i podsieci / / / sumaryzacja Pakiet zostanie utracony

50 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny50 RIP-2 W ramce zawarta jest również maska podsieci Propaguje numer domeny routingu Propaguje adres następnego routera (next-hop)

51 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny51 Pakiet RIP-2 znacznik trasy metryka next hop maska podsieci adres IP identyfikator rodziny adresów numer domeny routinguwersja polecenie (zapytanie/odpowiedź) N

52 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny52 RIP-2 przykład A BC D E F Na podstawie numeru domeny routingu wiadomo które pakiety odbierać W protokole RIP w drodze od A do F przez D pakiet dwa razy przesyłany jest przez ten sam Ethernet W RIP-2 router D może rozgłosić w domenie X adres E jako next- hop w drodze do F Wybrany do komunikacji ze światem zewnętrznym System autonomiczny XSystem autonomiczny Y

53 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny53 RIP-2 bezpieczeństwo Wada RIP-1 –w RIP-1 każdy komputer nadający z portu 520 jest uznawany za router –konieczna ręczna konfiguracja routingu: lista autoryzowanych sąsiadów Mechanizm autentykacji RIP-2 –w ramce RIP-2 można umieścić pole zawierające hasło (rodzina adresów FFFF) –nie powoduje to utraty kompatybilności z RIP-1

54 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny54 RIP-2 rozgłaszanie Wada RIP-1 –używa broadcastowego adresu MAC do rozsyłania informacji o dostępności do sieci RIP-2 używa do tego celu multicastowego adresu IP klasy D ( ) –nie są konieczne mechanizmy rutowania pakietów klasy D, bo informacje dotyczą tylko lokalnej sieci

55 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny55 RIP-2 podsumowanie Oferuje znaczące rozszerzenia względem RIP-1 –routing bazujący na CIDR i podsieciach –autoryzacja pakietów –kompatybilność z RIP-1 Nie eliminuje wszystkich wad RIP-1 –np. konieczność liczenia do nieskończoności w razie awarii sieci –bardzo prosta metryka

56 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny56 Interior Gateway Routing Protocol (IGRP) Jeden z częściej używanych obecnie protokołów routingu –przedstawiciel rodziny dystans-wektor –periodyczne komunikaty o zawartości tablic routingu (co 90 sekund) –złożone metryki Właścicielem praw autorskich jest CISCO Zaprojektowany w roku 1986

57 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny57 Interior Gateway Routing Protocol (IGRP) Metryki elementarnezłożone dynamiczne niezawodność łącza obciążenie łącza liczba hopów MTU T - opóźnienie transmisji M – pełna metryka przepustowość opóźnienie statyczne

58 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny58 Interior Gateway Routing Protocol (IGRP) Metryki elementarne –statyczne opóźnienie (ang. delay, ozn. D) –mierzone w dziesiątkach mikrosekund –suma opóźnień pomiędzy routerem a adresem docelowym przepustowość (ang. bandwidth, ozn. B) –najmniejsza z przepustowości pomiędzy routerem a adresem docelowym –jednostka: / przepustowość w kbps –liczba sekund potrzebna na przesłanie 10 mld. bitów –24 bity => zakres przepustowości od 1200 bps do 10 Gbps

59 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny59 Interior Gateway Routing Protocol (IGRP) Metryki elementarne - c.d. –dynamiczne niezawodność łącza (ang. reliability, ozn. R) –stopień pewności, że pakiet dotrze do celu 8 bitów: 1 odpowiada 0% 255 odpowiada 100% (keep-alive 10 s mierzone w okresie 5 min) obciążenie łącza (ang. load, ozn. L) –dotyczy najbardziej obciążonego łącza na ścieżce 8 bitów: 1 odpowiada 0% 255 odpowiada 100% liczba routerów na ścieżce (ang. hops, ozn. H) path MTU

60 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny60 Przepustowość Bandwith Satelite (500 Mbps) Ethernet (10 Mbps) Token Ring (4 Mbps) Token Ring (16 Mbps) FDDI (18 Mbps) Serial links: Mbps 64 kbps 56 kbps 10 kbps 1 kbps B IGRP parameter value

61 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny61 Delay Satelite (2 sec) Ethernet (1 ms) Token Ring (2.5 ms) Token Ring (0.6 ms) FDDI (0.1 ms) Serial links: (20 ms) 64 (20 ms) 56 (20 ms) 10 (20 ms) 1 (20 ms) D IGRP parameter value

62 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny62 Interior Gateway Routing Protocol (IGRP) Metryka złożona –T - opóźnienie transmisji dla pakietów o długości bitów T = B+D dla pakietów o innej długości P przy uwzględnieniu obciążenia łącza –dostępna jest tylko część przepustowości

63 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny63 Interior Gateway Routing Protocol (IGRP) Metryka złożona - c.d. –T - opóźnienie transmisji po uwzględnieniu współczynnika niezawodności wada tego podejścia: –krótkie okresy pomiaru obciążenia łącza powodują destabilizację

64 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny64 Interior Gateway Routing Protocol (IGRP) Rzeczywista (pełna) metryka Współczynniki K1 - K5 są ustalane przez administratora –np. ustalenie K5=0 powoduje, że współczynnik niezawodności nie jest brany pod uwagę –ustawienie domyślne (por. z opóźnieniem dla pakietu b): K1 = K3 =1 K2 = K4 = K5 = 0 dla K5=0

65 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny65 IGRP rozważania Pakiety IGRP nie przekazują obliczonych metryk tylko składowe wymagane do obliczenia metryki każdy router stosuje swoje współczynniki Dobrze jest ustalić takie same współczynniki we wszystkich routerach w danej domenie routingu. Nieskończoność jest zakodowana jako D=MAX

66 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny66 Interior Gateway Routing Protocol (IGRP) Sposoby zapobiegania pętlom reakcja na zmianę topologii –podzielony horyzont –wstrzymanie (ang. path holddown) –odświeżanie wymuszone Routing wielościeżkowy –dzielenie obciążenia między kilka możliwych ścieżek –pozytywny efekt uboczny: zapasowa ścieżka w razie awarii na najlepszym łączu

67 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny67 Mechanizmy IGRP Stabilność: path holddown – przez pewien czas po stwierdzeniu zmiany w topologii (np. wyłączenie routera) nie jest przyjmowana żadna informacja dot. ścieżek, które w wyniku tej zmiany stały się nieosiągalne split horizon – informacja o ścieżce nie jest wysyłana w kierunku w którym prowadzi ta scieżka (dodatkowe zabezpieczenie) poisonous routing – jeśli router otrzyma informację od routera przez który prowadzi droga do danej sieci, że odległość wzrosła to odrzuca tą drogę. Zegary: update timer – jak często rozsyłane są wiadomości (standardowo: 90 sek.) invalid timer – jaki czas odczekać przed uznaniem ścieżki za nieważną (3*update timer = 270 sek.) hold-time – czas przetrzymywania ścieżki w stanie holddown (280 sek.) flush timer – czas, jaki ma upłynąć przed usunięciem ścieżki z tablicy routingu (630s.)

68 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny68 Enhanced IGRP (EIGRP) Wady IGRP –synchronizacja –nieefektywne algorytmy zapobiegania pętlom Algorytm DUAL (J.J. Garcia-Luna-Aceves) (Diffusing Update ALgorithm) –usuwanie pętli –zastosowanie zarówno w protokołach dystans- wektor, jak i w prot. stanu łącza

69 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny69 EIGRP Topology Table Neighbor Table Tabela zawiera wszystkich sąsiadów danego routera. Brak wiadomości HELLO powoduje modyfikacje tej tablicy. Wiadomość HELLO zawiera HoldTime – czas po którym Musi przyjść nowe HELLO. Brak HELLO oznacza zmianę topologii Zawiera wszystkie sieci docelowe rozgłaszane przez routery sąsiednie. Rekord tej tablicy zawiera: - adres celu - lista (sąsiad, jego metryka do celu), węzłów które rozgłaszały ten adres metryka do celu.

70 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny70 EIGRP Typy pakietów EIGRP: Hello/Acks · Updates · Queries · Replies · Requests

71 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny71 Enhanced IGRP (EIGRP) Niech d(k,j) - odległość między k oraz j, l(i,k) - koszt łącza między i oraz jego sąsiadem k –w przypadku protokołów d-w d(k,j) uzyskiwana od sąsiadów, l(i,k) jest parametrem lokalnym ikj l(i,k)d(k,j)

72 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny72 Enhanced IGRP (EIGRP) Algorytm DUAL - c.d. –Router wybiera następny router x na ścieżce do sieci j tak, by zminimalizować sumę d(i, j) = l(i, x)+d(x, j) –Przypuśćmy, że router otrzymuje uaktualnienie (update) jednej z rozważanych wielkości (np. l(i,k) lub d(k,j)) jeśli suma l(i,k)+d(k,j)

73 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny73 Enhanced IGRP (EIGRP) d(i,j) = l(i,k)+d(k,j) przyjmuje najmniejszą wartość. Informację o nowym next hop czyli k rozsyła się sąsiadom. Gdy nie ma akceptowalnych sąsiadów to rozpoczyna się proces dyfuzji 1.i wysyła zapytania o d(k,j) do wszystkich swoich sąsiadów k za wyjątkiem x od którego otrzymał update. Zapytanie to zawiera nowe l(i,k)+d(k,j), 2. Jeśli k nie przesyła informacji przez i to odpowiada wysyłając swoją tablicę routingu, jeśli tak to węzeł k rozpoczyna proces dyfuzji. Akceptacja krótszej drogi nie może prowadzić do powstania pętli

74 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny74 DUAL cd. B stracił akceptowalnego sąsiada Informuje o tym sąsiadów D ma akceptowalnego sąsiada Metryki Dotyczą Celu N Nie rozpoczna dyfuzji !

75 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny75 DUAL cd. C nie ma akceptowalnego sąsiada Rozpoczyna się proces dyfuzji ! Metryki Dotyczą Celu N

76 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny76 Enhanced IGRP (EIGRP) Wady IGRP –synchronizacja –Nieefektywna technika zapobiegania pętlom Zalety EIGRP –Rozszerzenia względem protokołu IGRP: Komunikaty hello - poznawanie sąsiadów –periodycznie wysyłane na adres multicastowy –odpowiedzią jest pakiet hello sąsiada Algorytm usuwania pętli (DUAL)

77 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny77 Protokoły stanu łącza

78 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny78 Protokoły stanu łącza Router wysyła informację do wszystkich routerów o stanie swoich łączy Router przechowuje w pamięci mapę sieci –mapa jest regularnie uaktualniana –możliwe centralne wyznaczanie ścieżki do celu Szybka reakcja na zmiany topologii –relatywnie (w stosunku do protokołów dystans-wektor) małe pakiety informacyjne Brak pętli –brak konieczności liczenia do nieskończoności Możliwość stosowania wielu metryk

79 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny79 Tworzenie tablic routingu Wykrywanie sąsiadów Współdzielenie informacji o sąsiadach ze wszystkimi routerami Tworzenie tablic zawierających pełną informację o sieci (mapa sieci) oraz na ich podstawie tablicy routingu

80 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny80 Open Shortest Path First (OSPF) Wybrane cechy OSPF: zalewanie z potwierdzeniami zabezpieczanie pakietów z opisami sieci każdy rekord opisu łącza jest przechowywany tylko przez określony czas –jeśli do tego czasu nie zostanie odebrany komunikat odświeżający, to rekord jest usuwany wszystkie rekordy zabezpieczone sumą kontrolną komunikaty mogą być autoryzowane (np. przez podanie hasła)

81 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny81 Open Shortest Path First (OSPF) Założenia projektantów protokołu (IETF): separacja routerów od innych komputerów obsługa sieci rozgłoszeniowych (Ethernet, FDDI) obsługa sieci bez rozgłoszeń (X.25, ATM) podział wielkich sieci na mniejsze Separacja routerów i innych komputerów –łącze z sąsiednim routerem identyfikowane przez adres tego routera, inne komputery adresowane przez numer sieci

82 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny82 Open Shortest Path First (OSPF) Obsługa sieci rozgłoszeniowych –wybór jednego routera do pełnienia roli reprezentanta zmniejsza liczbę rozgłaszanych ścieżek oraz liczbę wpisów w bazie topologii sieci A DE B A DE B Designated Router

83 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny83 Open Shortest Path First (OSPF) Obsługa sieci rozgłoszeniowych –pakiety LSA (link state advertisement) rozsyłane są na adres multicastowy przeznaczony dla wybranych routerów (all-designated-routers) –jeśli pakiet zawiera nowe informacje, wybrany router rozsyła je do innych tego typu urządzeń dołączonych do tej samej sieci (używając adresu ) Obsługa sieci bez rozgłoszeń (X.25, ATM) –w przypadku łącz stosunkowo drogich za redukcją wykorzystania łącz przemawiają nie tylko względy efektywności obliczeniowej, ale również względy finansowe –różnica polega na niewykorzystywaniu adresów rozgłoszeniowych, w zamian wiele połączeń punkt-punkt

84 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny84 OSPF sieci rozgłoszeniowe Token Ring Designated router Designated router traktuje routery jako sąsiadów Inne routery widzą jako sąsiada tylko designated router

85 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny85 OSPF designated router Jeden z routerów uruchamia funkcjonalność designated router –Wybór przy wymianie pakietów HELLO –Zwiększenie niezawodności poprzez wybranie zapasowego designated router aktywuje się po awarii routera podstawowego Metryka –Od designated do normalnego == 0 –Od normalnego do designated wynika z sieci –Suma jest poprawna

86 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny86 Open Shortest Path First (OSPF) Podział wielkich sieci na mniejsze –liczba połączeń może rosnąć nawet z kwadratem liczby routerów –czas obliczeń ścieżki jest jednym z newralgicznych wskaźników dla efektywności sieci –wielkość pamięci routera jest ograniczona Kryteria wyboru ścieżki –OSPF pozwala wybrać ścieżkę według określonego kryterium, bądź zbioru kryteriów spośród następujących: minimalny koszt, stopień pewności dotarcia pakietu do celu, maksymalna przepustowość ścieżki, minimalne opóźnienie

87 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny87 Wykrywanie sąsiadów R3 wysyła przez wszystkie swoje interfejsy pakiet HELLO (Hello, to ja R3) R3 otrzymuje od swoich sąsiadów pakiety HELLO Pakiety HELLO muszą być potwierdzone R1R2R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11)

88 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny88 Potwierdzenie pakietów HELLO R1 może wysyłać pakiety, ale nie może ich otrzymywać (np. uszkodzona karta sieciowa) R1 wysyła HELLO do R2 R2 wysyła HELLO do R1 R1 nie potwierdza HELLO od R2 dla R2 trasa jest bezużyteczna Pakiet HELLO zawiera listę sąsiadów R1 R2

89 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny89 Pakiety LSA Budowa pakietów LSA (Link State Advertisment) –Przykład dla routera R3 Zalewanie sieci pakietami –Nowy pakiet Zapamiętany Przesłany na wszystkie łącza oprócz tego, które otrzymało pakiet –Stary pakiet Odrzucony R2f33 DokądSiećMetryka R5g21 R6i8 R1R2R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11)

90 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny90 Tablica LSD Budowa tablic LSD (Link State Database) R1R2R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) SrcDestNetDist R1R2b13 R1R4a13 R2R1b13 R2R4c12 R2R5e11 R2R3f33 R3R2f33 R3R5g21 R3R6i8 R4R1a13 R4R2c12 R4R5d11 C.d. R5R2e11 R5R3g21 R5R4d11 R5R6h17 R6R3i8 R6R5h17 C.d.

91 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny91 Tworzenie tablicy routingu R3R2f33 R3R5g21 R3R6i8 R4R1a13 R4R2c12 R4R5d11 C.d. SrcDestNetDist R1R2b13 R1R4a13 R2R1b13 R2R4c12 R2R5e11 R2R3f33 R5R2e11 R5R3g21 R5R4d11 R5R6h17 R6R3i8 R6R5h17 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) Algorytm Dijkstry –Tworzenie drzewa Korzeń system tworzący drzewo Gałęzie połączenia do innych systemów Analizujemy budowę drzewa z punktu widzenia routera R3

92 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny92 OSPF - algorytm Dijkstry Oznaczenia: –E - zbiór węzłów, dla których najkrótsza ścieżka jest znana –R - zbiór pozostałych węzłów –O - uporządkowana lista ścieżek Algorytm: –(1) Niech E zawiera tylko węzeł początkowy - S, zaś R wszystkie pozostałe –(2) Niech O zawiera wszystkie jednosegmentowe ścieżki rozpoczynające się w S, uporządkowane według metryki łącza –(3) Jeśli O jest zbiorem pustym lub metryka pierwszej ścieżki w O ma wartość nieskończoną, to wszystkie węzły w R są nieosiągalne. STOP

93 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny93 OSPF - algorytm Dijkstry (c.d.) Algorytm - c.d.: –(4) Dla ścieżki P - najkrótszej w O: usuń P z O Niech V będzie końcem ścieżki P: –jeśli V należy do E, skocz do (3) –w przeciwnym wypadku, P jest najkrótszą ścieżką do V, - przenieś V z R do E –(5) Zbuduj zbiór nowych ścieżek przez połączenie P ze ścieżkami wychodzącymi z V. Dodaj utworzone ścieżki do zbioru O. Kontynuuj od kroku (3). koszt ścieżki: suma kosztów licząc od S Teoretyczna złożoność obliczeniowa algorytmu: O(N log(N)) N - liczba połączeń Praktyczna złożoność obliczeniowa algorytmu zależy przede wszystkim od implementacji operacji wstawiania

94 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny94 R3R2f33 R3R5g21 R3R6i8 R4R1a13 R4R2c12 R4R5d11 C.d. R3R2f33 R3R5g21 R3R6i8 Algorytm Dijkstry SrcDestNetDist R1R2b13 R1R4a13 R2R1b13 R2R4c12 R2R5e11 R2R3f33 R5R2e11 R5R3g21 R5R4d11 R5R6h17 R6R3i8 R6R5h17 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R2 33 R5 21 R6 8 Tworzy drzewo tymczasowe i ostateczne –Tymczasowe elementy, do których jeszcze nie zna lepszej (koszt) drogi –Ostateczne elementy do których zna najkrótszą drogę Koszt suma kosztów od elementu do korzenia R3 0

95 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny95 Algorytm Dijkstry R4R1a13 R4R2c12 R4R5d11 C.d. SrcDestNetDist R1R2b13 R1R4a13 R2R1b13 R2R4c12 R2R5e11 R2R3f33 R5R2e11 R5R3g21 R5R4d11 R5R6h17 R6R3i8 R6R5h17 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R2 33 R5 21 R6 8 R3 0 R6R3i8 R6R5h17 R3 16 O ={R3R6R3:16, R3R5:21, R3R6R5:25, R3R2:33} E ={R3, R6}

96 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny96 Algorytm Dijkstry R4R1a13 R4R2c12 R4R5d11 C.d. SrcDestNetDist R1R2b13 R1R4a13 R2R1b13 R2R4c12 R2R5e11 R2R3f33 R5R2e11 R5R3g21 R5R4d11 R5R6h17 R6R3i8 R6R5h17 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R2 33 R5 21 R6 8 R3 0 R6R3i8 R6R5h17 R5 25 O ={R3R5:21, R3R6R5:25, R3R2:33} E ={R3, R6}

97 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny97 Algorytm Dijkstry R4R1a13 R4R2c12 R4R5d11 C.d. SrcDestNetDist R1R2b13 R1R4a13 R2R1b13 R2R4c12 R2R5e11 R2R3f33 R5R2e11 R5R3g21 R5R4d11 R5R6h17 R6R3i8 R6R5h17 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R2 33 R5 21 R6 8 R3 0 R6R3i8 R6R5h17 O ={R3R5R2:32, R3R5R4:32, R3R2:33, R3R5R6:38, R3R5R3:42} E ={R3, R6, R5}

98 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny98 Algorytm Dijkstry R4R1a13 R4R2c12 R4R5d11 C.d. SrcDestNetDist R1R2b13 R1R4a13 R2R1b13 R2R4c12 R2R5e11 R2R3f33 R5R2e11 R5R3g21 R5R4d11 R5R6h17 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R2 33 R5 21 R6 8 R3 0 R5R2e11 R5R3g21 R5R4d11 R5R6h17 R2 32 O ={ R3R5R4:32, R3R5R6:38, R3R5R3:42} E ={R3, R6, R5, R2}

99 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny99 Algorytm Dijkstry R4R1a13 R4R2c12 R4R5d11 C.d. SrcDestNetDist R1R2b13 R1R4a13 R2R1b13 R2R4c12 R2R5e11 R2R3f33 R5R2e11 R5R3g21 R5R4d11 R5R6h17 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R5 21 R6 8 R3 0 R5R2e11 R5R3g21 R5R4d11 R5R6h17 R2 32 R4 32 O ={ R3R5R4:32, R3R5R6:38, R3R5R3:42} E ={R3, R6, R5, R2}

100 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny100 Algorytm Dijkstry R4R1a13 R4R2c12 R4R5d11 C.d. SrcDestNetDist R1R2b13 R1R4a13 R2R1b13 R2R4c12 R2R5e11 R2R3f33 R5R2e11 R5R3g21 R5R4d11 R5R6h17 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R5 21 R6 8 R3 0 R5R2e11 R5R3g21 R5R4d11 R5R6h17 R2 32 R4 32 R O ={ R3R5R4:32, R3R5R3:42} E ={R3, R6, R5, R2}

101 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny101 Algorytm Dijkstry R4R1a13 R4R2c12 R4R5d11 C.d. SrcDestNetDist R1R2b13 R1R4a13 R2R1b13 R2R4c12 R2R5e11 R2R3f33 R5R2e11 R5R3g21 R5R4d11 R5R6h17 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R5 21 R6 8 R3 0 R5R2e11 R5R3g21 R5R4d11 R5R6h17 R2 32 R4 32 R3 42 O ={ R3R5R4:32} E ={R3, R6, R5, R2}

102 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny102 Algorytm Dijkstry R4R1a13 R4R2c12 R4R5d11 C.d. SrcDestNetDist R1R2b13 R1R4a13 R2R1b13 R2R4c12 R2R5e11 R2R3f33 R5R2e11 R5R3g21 R5R4d11 R5R6h17 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R5 21 R6 8 R3 0 R5R2e11 R5R3g21 R5R4d11 R5R6h17 R2 32 R4 32 O ={ R3R5R4:32} E ={R3, R6, R5, R2}

103 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny103 Algorytm Dijkstry R4R1a13 R4R2c12 R4R5d11 C.d. SrcDestNetDist R1R2b13 R1R4a13 R2R1b13 R2R4c12 R2R5e11 R2R3f33 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R5 21 R6 8 R3 0 R2 32 R4 32 R1 45 R2R1b13 R2R4c12 R2R5e11 R2R3f33 O ={R3R5R4:32, R3R5R2R4:44, R3R5R2R1:45, R3R5R2R5:43, R3R5R2R3:65} E ={R3, R6, R5, R2}

104 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny104 Algorytm Dijkstry R4R1a13 R4R2c12 R4R5d11 C.d. SrcDestNetDist R1R2b13 R1R4a13 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R5 21 R6 8 R3 0 R2 32 R4 32 R1 45 R4R1a13 R4R2c12 R4R5d11 O ={R3R5R2R4:44, R3R5R2R1:45, R3R5R2R5:43, R3R5R2R3:65} E ={R3, R6, R5, R2, R4}

105 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny105 Algorytm Dijkstry C.d. SrcDestNetDist R1R2b13 R1R4a13 C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R5 21 R6 8 R3 0 R2 32 R4 32 R1 45 R1R2b13 R1R4a13 O ={} E ={R3, R6, R5, R2, R4, R1}

106 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny106 Algorytm Dijkstry C.d. SrcDestNetDist C.d. R1R2 R3 R6R5R4 a b c d e f g h i(8)(13) (12) (13)(33) (21) (17) (11) R5 21 R6 8 R3 0 R2 32 R4 32 R1 45 Zostało stworzone pełne drzewo na jego podstawie budujemy tablicę routingu Zawartość tablicy LSD nie jest usuwana!

107 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny107 Open Shortest Path First (OSPF) Protokoły wewnętrzne OSPF –Hello Protocol sprawdzenie, czy łącze funkcjonuje wybór reprezentanta spośród routerów przyłączonych do jednej sieci (priorytet, identyfikator) –Exchange Protocol synchronizacja zawartości baz danych opisujących topologię sieci asymetryczny (master-slave) –Flooding Protocol powiadamianie o zmianach w topologii sieci

108 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny108 Protokoły stanu łącza Podstawowy problem: zapewnienie koherencji routingu –warunek konieczny: identyczność opisów topologii sieci w każdym routerze –przykłady zagrożeń: zagubiony pakiet informacji o sieci błędy pamięci rozmyślne działanie człowieka –po podniesieniu łącza wymieniają między sobą pakiety database description jeśli istniały rozdzielone segmenty nie wystarczy wysłać informacji o podniesionym połączeniu – trzeba zsynchronizować bazy

109 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny109 Protokoły stanu łącza Możliwość wprowadzenia wielu metryk Ścieżka D - C - A - B ma większą przepustowość, ale nie można jednoznacznie stwierdzić, że jest lepsza od D - E - B Ścieżka D - E - B ma mniejsze opóźnienie Problem: router C może mieć inne preferencje, niż D; potrzebny znacznik w pakiecie, którą strategię wybrać Kryteria wyboru ścieżki –OSPF pozwala wybrać ścieżkę według określonego kryterium, bądź zbioru kryteriów spośród następujących: minimalny koszt, stopień pewności dotarcia pakietu do celu, maksymalna przepustowość ścieżki, minimalne opóźnienie AB CDE D - C - A - B: 1,5 Mbps; 295 ms opóźnienia D - E - B: 64 kbps; 20 ms opóźnienia

110 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny110 Protokoły stanu łącza Możliwość dzielenia obciążenia między różne ścieżki –ścieżki o zbliżonych metrykach mogą równocześnie służyć do przesyłania pakietów pakiety nie zawsze dojdą w kolejności wysłania szybszy transfer informacji –problem: wyznaczenie, jakie części ruchu powinny być kierowane poszczególnymi ścieżkami rozwiązanie zagadnienia wymaga analizy grafu (problem maksymalnego przepływu)

111 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny111 OSPF i organizacja sieci Sieć Internet można traktować jako jedną całość –Każdy router wymienia informacje z każdym innym Setki tysięcy systemów Obciążenie sieci Olbrzymi rozmiar tablic LSD Bardzo długi czas obliczania algorytmu Dijkstry Wprowadzenie hierarchii –Systemy autonomiczne Obszary

112 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny112 Systemy autonomiczne OSPF Token Ring AS 1 AS 2 OSPF AS 3 OSPF AS definiuje granice działania OSPF AS boundary router router brzegowy znajdujący się na granicy obszaru autonomicznego ATM

113 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny113 Routery brzegowe dla AS Uzyskują informacje spoza AS –Konfigurowane statycznie przez administratora –Zewnętrzne protokoły routingu dynamicznego Router brzegowy rozgłasza informacje o świecie zewnętrznym wewnątrz AS –External LSA specjalne pakiety LSA

114 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny114 Hierarchical OSPF

115 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny115 Hierarchical OSPF Two-level hierarchy: local area, backbone. –Link-state advertisements only in area –each nodes has detailed area topology; only know direction (shortest path) to nets in other areas. Area border routers: summarize distances to nets in own area, advertise to other Area Border routers. Backbone routers: run OSPF routing limited to backbone. Boundary routers: connect to other ASs.

116 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny116 Obszary OSPF AS może być zbyt duży FDDI FR Backbone Obszar 1 Obszar 2 Obszar 3 System autonomiczny Podział dowolny –Elementy obszaru muszą być połączone Wewnątrz obszaru OSPF działa normalnie Area border router router brzegowy dla obszaru OSPF –Rozgłasza summary LSA o innych obszarach

117 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny117 Backbone Obszar o specjalnym znaczeniu Koncentrator dla wszystkich obszarów Wszystkie obszary są połączone z backbone W przypadku straty połączenia pomiędzy elementami istnieje możliwość skonfigurowania wirtualnego połączenia pomiędzy backbone router

118 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny118 Awaria backbone FDDI FR Backbone Obszar 1 Obszar 2 Obszar 3 System autonomiczny Tworzenie połączenia backupowego nie jest realizowane automatycznie jest to rozwiązanie tymczasowe

119 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny119 Obszary końcowe Tworzenie AS i obszarów zmniejsza ilość rozgłaszanych LSA –Jest ich dużo Stub area (obszar końcowy) obszar posiadający tylko jeden router brzegowy –Brak external LSA –Brak summary LSA

120 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny120 Inter-AS routing

121 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny121 Internet inter-AS routing: BGP BGP (Border Gateway Protocol): the de facto standard Path Vector protocol: –similar to Distance Vector protocol –each Border Gateway broadcast to neighbors (peers) entire path (I.e, sequence of ASs) to destination –E.g., Gateway X may send its path to dest. Z: Path (X,Z) = X,Y1,Y2,Y3,…,Z

122 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny122 Internet inter-AS routing: BGP Suppose: gateway X send its path to peer gateway W W may or may not select path offered by X –cost, policy (dont route via competitors AS), loop prevention reasons. If W selects path advertised by X, then: Path (W,Z) = w, Path (X,Z) Note: X can control incoming traffic by controling it route advertisements to peers: –e.g., dont want to route traffic to Z -> dont advertise any routes to Z

123 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny123 Internet inter-AS routing: BGP BGP messages exchanged using TCP. BGP messages: –OPEN: opens TCP connection to peer and authenticates sender –UPDATE: advertises new path (or withdraws old) –KEEPALIVE keeps connection alive in absence of UPDATES; also ACKs OPEN request –NOTIFICATION: reports errors in previous msg; also used to close connection

124 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny124 Why different Intra- and Inter-AS routing ? Policy: Inter-AS: admin wants control over how its traffic routed, who routes through its net. Intra-AS: single admin, so no policy decisions needed Scale: hierarchical routing saves table size, reduced update traffic Performance: Intra-AS: can focus on performance Inter-AS: policy may dominate over performance

125 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny125 Router Architecture Overview Two key router functions: run routing algorithms/protocol (RIP, OSPF, BGP) switching datagrams from incoming to outgoing link

126 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny126 Input Port Functions Decentralized switching: given datagram dest., lookup output port using routing table in input port memory goal: complete input port processing at line speed queuing: if datagrams arrive faster than forwarding rate into switch fabric Physical layer: bit-level reception Data link layer: e.g., Ethernet

127 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny127 Input Port Queuing Fabric slower that input ports combined -> queueing may occur at input queues Head-of-the-Line (HOL) blocking: queued datagram at front of queue prevents others in queue from moving forward queueing delay and loss due to input buffer overflow!

128 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny128 Three types of switching fabrics

129 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny129 Switching Via Memory First generation routers: packet copied by systems (single) CPU speed limited by memory bandwidth (2 bus crossings per datagram) Input Port Output Port Memory System Bus Modern routers: input port processor performs lookup, copy into memory Cisco Catalyst 8500

130 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny130 Switching Via Bus datagram from input port memory to output port memory via a shared bus bus contention: switching speed limited by bus bandwidth 1 Gbps bus, Cisco 1900: sufficient speed for access and enterprise routers (not regional or backbone)

131 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny131 Switching Via An Interconnection Network overcome bus bandwidth limitations Banyan networks, other interconnection nets initially developed to connect processors in multiprocessor Advanced design: fragmenting datagram into fixed length cells, switch cells through the fabric. Cisco 12000: switches Gbps through the interconnection network

132 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny132 Output Ports Buffering required when datagrams arrive from fabric faster than the transmission rate Scheduling discipline chooses among queued datagrams for transmission

133 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny133 Output port queueing buffering when arrival rate via switch exceeeds ouput line speed queueing (delay) and loss due to output port buffer overflow!

134 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny134 Podsumowanie Protokoły stanu połączeń –Skomplikowane –Bardziej wydajne, skalowalne –Brak pętli –Dobra zbieżność

135 © DSRG , Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny135 Literatura Routing in the Internet, Christian Huitema, Prentice Hall PTR IPng and the TCP/IP Protocols Stephen A. Thomas Zarządzanie sieciami IP za pomocą routerów Cisco, Scott M. Ballew, OReilly Sieci komputerowe TCP/IP, t.1, Douglas E. Comer, Wydawnictwa Naukowo-Techniczne RFC 1058 (RIP), RFC 2453 (RIP-2), RFC 1131 (OSPF-1), RFC 2178 (OSPF-2)


Pobierz ppt "© DSRG 2001-2003, Paweł Rzepawww.cs.agh.edu.pl Routing dynamiczny1 Routing dynamiczny."

Podobne prezentacje


Reklamy Google