Sieci komputerowe - Maciej Piechowiak
Transkrypt
Sieci komputerowe - Maciej Piechowiak
Sieci komputerowe Sieci komputerowe – Protokoły routingu 2012-05-24 Protokoły routingu dr inż. Maciej Piechowiak 1 Protokoły routingu 2 Protokoły routingu • Wykorzystywane do wymiany informacji o routingu między routerami, • Pozwalają routerom na dynamiczną wymianę informacji o zdalnych (dostępnych) sieciach i umieszczają te informacje w tablicach routingu, • Wyznaczają najlepsze ścieżki do każdej sieci i umieszczają te informacje w tablicach routingu, 3 1 2012-05-24 Protokoły routingu • Routery wymieniają informacje, gdy topologia sieci ulegnie zmianie (aktualny obraz sieci), • Routery rejestrują zmiany w sieci – znajdują trasy do nowych sieci oraz wyznaczają trasy alternatywne, gdy łącza w sieci ulegną uszkodzeniu, 4 Protokoły routingu 5 Protokoły routingu 6 2 2012-05-24 Protokoły routingu 7 Protokoły wektora odległości • Używają metryki skoku jednostkowego i kierunku, • Używają algorytmu Bellmana-Forda do wyznaczenia najlepszej ścieżki, • Nie posiadają pełnej informacji o topologii sieci, • Routery wysyłają okresowo uaktualnienia, • Mają zastosowanie w sieciach o płaskiej strukturze (niehierarchicznej), • Długi czas zbieżności sieci, • Administrator nie musi posiadać rozległej wiedzy dotyczącej konfiguracji i rozwiązywania problemów. 8 Protokoły stanu łącza • Routery posiadają kompletną mapę topologii sieci poprzez wymianę informacji z pozostałymi routerami, • Mapa topologii służy wyznaczeniu najlepszej ścieżki w sieci, • Do tego celu służy algorytm Dijkstry, • Routery nie wysyłają okresowych uaktualnień – tylko uaktualnienia wyzwalane (gdy nastąpią zmiany w topologii sieci), • Hierarchiczny model sieci, • Szybka zbieżność, • Wymagana większa wiedza od administratora. 9 3 2012-05-24 Algorytm Dijkstry 2 5 s 9 1 4 2 4 7 3 t 6 5 15 2 35 16 3 1 2 3 4 5 6 init 0 ∞ ∞ ∞ ∞ ∞ 1 0 0 15 ∞ ∞ ∞ ∞ ∞ 9 9 ∞ ∞ 2 0 0 13 13 ∞ ∞ 11 11 9 9 ∞ ∞ 3 0 0 13 13 ∞ ∞ 11 11 9 9 18 18 4 0 0 13 13 48 48 11 11 9 9 18 18 21 10 Protokoły klasowe i bezklasowe Nie przesyłają maski podsieci w uaktualnieniach. Przesyłają maskę podsieci w uaktualnieniach. 11 Metryki Metryki używane przez protokoły routingu: • RIP – skok jednostkowy (hop), • IGRP & EIGRP – szerokość pasma (bandwidth), opóźnienie (delay), obciążenie, niezawodność, • IS-IS & OSPF – koszt, szerokość pasma (implementacja Cisco). 12 4 2012-05-24 Metryki 13 Odległość administracyjna Metryka – obliczana wartość liczbowa używana do wyznaczenia najlepszej ścieżki w sieci Odległość administracyjna – wartość liczbowa określająca preferencyjność trasy 14 Odległość administracyjna 15 5 2012-05-24 Protokoły wektora odległości • • • • Okresowe uaktualnienia, Sąsiedztwo, Uaktualnienia rozgłoszeniowe (broadcast), Cała tablica routingu przekazywana w komunikatach routingu. 16 Protokoły wektora odległości • Odkrywanie topologii sieci (cold start) – dodanie sieci podłączonych bezpośrednio (directly connected), 17 Protokoły wektora odległości • Odkrywanie topologii sieci (initial exchange) – jeżeli router otrzyma nową informację w pakiecie uaktualniającym (update) – aktualizuje tablicę routingu 18 6 2012-05-24 Protokoły wektora odległości • Odkrywanie topologii sieci (exchange) – wymiana kolejnych komunikatów przez routery, • Konwergencja – gdy wszystkie tablice routingu wypełnione. 19 Pętle routingu • Niepoprawnie skonfigurowane trasy statyczne, • Niepoprawnie skonfigurowana redystrybucja tras, • Niespójne tablice routingu (powolna konwergencja zmian w sieci), SKUTKI: • Nadmierne zużycie pasma poprzez przekazywanie pakietów w pętli, • Pochłanianie zasobów procesora (CPU) routera, • Naruszenie procedur czasowych związanych z regularnym przesyłaniem wiadomości uaktualniających, • Tracenie pakietów. 20 Pętle routingu • zdefiniowanie maksymalnej wartości metryki zapobiegające liczeniu do nieskończoności (count to infinity), • liczniki wstrzymania (holddown timers), • technika split horizon, • route poisoning i poison reverse, • wyzwalane uaktualnienia. 21 7 2012-05-24 Liczniki • invalid – jeżeli przed 180 sekund nie pojawi się aktualizacja odświeżająca istniejącą trasę, trasa zostaje oznakowana jako nieprawidłowa przez ustawienie metryki na wartość 16 (trasa pozostaje w tablicy routingu do wygaśnięcia licznika flush, • flush – licznik oczyszczania ustawiony na 240 sekund (o 60 sekund dłużej niż invalid), po tym czasie trasa zostaje usunięta z tablicy routingu, • hold-down – licznik wstrzymania ustawiony na 180 sekund zapobiega pętlom routingu, gdy uzgadniana jest nowa topologia; kiedy trasa zostaje oznakowana jako nieosiągalna musi pozostać w stanie wstrzymania na tyle długo, aby wszystkie routery dowiedziały się o nieosiągalnej sieci. 22 Liczenie do nieskończoności • Kiedy routery „odliczą do nieskończoności” znakują trasę jako nieosiągalną. • Każdy protokół ma inną definicję nieskończoności 23 Liczniki wstrzymania • Trasa niestabilna – wyzwalane aktualizacje zbyt często, • Może to doprowadzić do powstania pętli routingu, • Liczniki wstrzymania nakazują routerom powstrzymać się przez określony czas z wprowadzeniem zmian, • Routery znakują trasę jako nieosiągalną na taki czas, w którym aktualizacje z tablicami routingu z najbardziej aktualnymi informacjami zdążą dotrzeć do wszystkich routerów. 24 8 2012-05-24 Split horizon • Router nie ogłasza sieci przez interfejs, z którego otrzymał uaktualnienie o tej sieci od innego routera. 25 2 Route poisoning • Zatrucie trasy polega na oznaczeniu trasy jako nieosiągalnej w aktualizacji wysyłanej do innych routerów, • Zatruwanie przyspiesza proces zbieżności (brak oczekiwania aż liczba skoków osiągnie nieskończoność). 26 Poison reverse + split horizon • Wysyłając aktualizacje z określonego interfejsu wszystkie sieci, o których router dowiedział się przez ten interfejs, należy oznaczyć jako nieosiągalne, • R3 wysyła do R2 okresową aktualizację o sieci 10.4.0.0 i metryką 1, • Kiedy R2 wyśle swoją aktualizację okresową, trasa 10.4.0.0 do R3 zostanie oznaczona jako 16, • Ta aktualizacja to informacja dla R3, że nie będzie mógł dotrzeć do sieci 10.4.0.0 przez R2, • R3 przetwarza aktualizację z zatruciem wstecz od R2, zachowując lepszy wpis trasy do sieci 10.4.0.0 z metryką 0, • R3 jest dzięki temu odporny na nieprawidłowe aktualizacje o sieci 10.4.0.0. • Podzielony horyzont jest domyślnie włączony. • Podzielony horyzont z zatruciem wstecz nie jest domyślną konfiguracją IOS. 27 9 2012-05-24 Protokół RIP • Jest protokołem routingu wektora odległości, • Jako jedynej metryki przy wyborze drogi używa liczby skoków, • Trasy ogłaszane z licznikiem skoków powyżej 15 są uznawane za nieosiągalne, • Aktualizacje tablicy routingu są wysyłane jako rozgłoszeniowe co 30 sekund, • Część z danymi komunikatu RIP jest enkapsulowana w segmencie UDP, • Źródłowy i docelowy numer portu to 520, • Nagłówek IP i nagłówki łącza danych dodają rozgłoszeniowe adresy docelowe, zanim komunikat zostanie wysłany ze wszystkich interfejsów, na których skonfigurowano RIP. 28 Komunikat RIP 29 Komunikat RIP 30 10 2012-05-24 Żądanie i odpowiedź RIP RIPv1 w aktualizacjach nie wysyła informacji o masce podsieci. 1 2 • Każdy router wysyła komunikat Request przy starcie, żądając kompletnych tablic routingu od sąsiadujących routerów, • Odpowiadają routery z aktywnym procesem RIP (komunikat Response). 31 Odległość administracyjna • Domyślna odległość administracyjna protokołu RIP wynosi 120, • W porównaniu z innymi protokołami to protokół routingu z najniższym priorytetem. 32 Odległość administracyjna 33 11 2012-05-24 Odległość administracyjna 34 Włączenie RIP 35 Włączenie RIP R3(config)#router rip R3(config-router)#network 192.168.4.0 R3(config-router)#network 192.168.5.1 R3#show running-config router rip network 192.168.4.0 network 192.168.5.0 36 System IOS poprawia błędy konfiguracji! 12 2012-05-24 Weryfikacja RIP 37 Weryfikacja RIP 38 Weryfikacja RIP 39 13 2012-05-24 Weryfikacja RIP Router wysyła i odbiera tylko komunikaty RIP (redistributing: rip), Maksymalna liczba tras równego kosztu do węzła docelowego (max. path: 4). 40 Weryfikacja RIP R2 wysyła komunikat update przez S0/0/0 do R1, Nie ogłasza sieci LAN za R1 w kierunku R1 (włączony podzielony horyzont). 41 Pasywne interfejsy 42 14 2012-05-24 Automatyczna sumaryzacja • • RIP automatycznie podsumowuje sieci klasowe na granicach większych sieci, Router brzegowy ma interfejsy w więcej niż jednej dużej sieci klasowej, • Jeżeli aktualizacja routingu i interfejs, na którym została odebrana należą do tej samej sieci, stosowana jest maska podsieci interfejsu, Jeżeli należą do różnych sieci, stosowana jest domyślna maska podsieci dla klasy. • 43 Routery brzegowe 44 Automatyczna sumaryzacja R2 wie, że maską jest /24, bo odebrał na interfejsie, który należy do tej samej sieci klasowej (172.30.0.0) co aktualizacja 172.30.1.0, 45 15 2012-05-24 Protokoły stanu łącza • Routery posiadają kompletną mapę topologii sieci poprzez wymianę informacji z pozostałymi routerami, • Mapa topologii służy wyznaczeniu najlepszej ścieżki w sieci, • Do tego celu służy algorytm Dijkstry, • Routery nie wysyłają okresowych uaktualnień – tylko uaktualnienia wyzwalane (gdy nastąpią zmiany w topologii sieci), • Hierarchiczny model sieci, • Szybka zbieżność, • Wymagana większa wiedza od administratora. 46 Algorytm Dijkstry 2 5 s 9 1 4 2 4 7 3 t 6 5 15 2 35 16 3 1 2 3 4 5 6 init 0 ∞ ∞ ∞ ∞ ∞ 1 0 0 15 ∞ ∞ ∞ ∞ ∞ 9 9 ∞ ∞ 2 0 0 13 13 ∞ ∞ 11 11 9 9 ∞ ∞ 3 0 0 13 13 ∞ ∞ 11 11 9 9 18 18 4 0 0 13 13 48 48 11 11 9 9 18 18 21 47 Protokół stanu łącza • Każdy router dowiaduje się o własnych łączach i sieciach bezpośrednio połączonych, • Każdy router jest odpowiedzialny za wykrycie sąsiadów w sieciach połączonych bezpośrednio (pakiety hello), • Każdy router konstruuje pakiet LSP (link-state packet) zawierający stan każdego, bezpośrednio połączonego łącza (ID sąsiada, typ łącza, szerokość pasma), • Każdy router zalewowo wysyła LSP do sąsiadów, • Sąsiedzi rozsyłają LSP do swoich sąsiadów, • Każdy router składuje kopię każdego pakietu LSP od sąsiadów w lokalnej bazie danych, • Algorytm SPF (algorytm Dijkstry) służy do budowania topologicznej mapy i wyznaczania najlepszej drogi do każdej sieci. 48 16 2012-05-24 Hello 49 Budowanie pakietu LSP • Każdy router konstruuje pakiet LSP zawierający stan każdego bezpośrednio połączonego łącza, • Router wysyła pakiety LSP tylko z tych interfejsów, na których są ustanowione przyległości z innymi routerami. 50 Zalewanie pakietami LSP 1 2 51 17 2012-05-24 Lokalna baza danych 52 Odkrywanie topologii od R2: bezpośrednio: od R4: od R3: od R5: 53 Najkrótsza ścieżka 54 18 2012-05-24 Obszary 55 Pakiet OSPF 56 OSPF (Open Shortest Path First) Typy pakietów OSPF • Hello – tworzenie i podtrzymywanie przyległości z innymi routerami OSPF, • DBD (DataBase Description) – skrócona lista bazy danych stanu łącza routera wysyłającego, • LSR – routery odbierające mogą zażądać dodatkowych informacji o dowolnym wpisie z opisu DBD, wysyłając żądanie LSR, • LSU – pakiety aktualizacji używane do odpowiadania na LSR i ogłaszania nowych informacji, zawierają 7 typów ogłoszeń LSA, • LSAck – potwierdzenie odbioru LSU. 57 19 2012-05-24 Komunikat OSPF 58 Hello OSPF multicast: 224.0.0.5 Jeżeli licznik dead interval wygaśnie zanim dotrze komunikat Hello, router usunie sąsiada. 59 LSU i LSA 60 20 2012-05-24 Algorytm OSPF Gdy router odbierze wszystkie ogłoszenia LSA i zbuduje swoją lokalną bazę danych stanu łącza, OSPF używa algorytmu SPF Dijkstry, aby utworzyć drzewo SPF. 61 Drzewo OSPF zostaje wykorzystane do wypełnienia tablicy routingu najlepszymi drogami do każdej sieci. Konfiguracja OSPF 62 Konfiguracja OSPF subnet mask: wildcard mask: 172.16.1.16/28 -> 255.255.255.240 255.255.255.255 - 255.255.255.240 0. 0. 63 0. 15 21 2012-05-24 Router ID • OSPF wyznacza ID routera w celu jednoznacznego zidentyfikowania go w sieci, • Używa adresu IP skonfigurowanego za pomocą komendy router-id, • Jeżeli polecenie router-id nie było użyte, router wybiera najwyższy adres IP spośród adresów skonfigurowanych na swoich interfejsach lokalnych (loopback), • Jeżeli router nie ma skonfigurowanych interfejsów lokalnych, wybierany jest najwyższy adres IP skonfigurowany na dowolnym aktywnym interfejsie routera. Router(config)#router ospf process-id Router(config-router)#router-id ip-address 64 Konfiguracja OSPF 65 show ip protocols show ip ospf show ip ospf interface Interfejsy lokalne 66 22 2012-05-24 Weryfikacja sąsiedztwa Brak sąsiedztwa: • Różne maski, • Różne wartości liczników OSPF Hello i Dead Time, • Różne typy sieci OSPF Network Type. 67 Analiza konfiguracji 68 Analiza konfiguracji • • • Każda informacja o zmianie topologii wymaga uruchomienia algorytmu SPF, budowy drzewa SPF i aktualizacji tablicy routingu, Router czeka 5 sekund po odebraniu LSU i przed uruchomieniem SPF (migające łącza) – SPF Schedule Delay, Router odlicza 1 sekundę przed ponownym uruchomieniem algorytmu SPF. 69 23 2012-05-24 Tablica routingu 70 Metryki OSPF • Metryka OSPF nazywana jest kosztem, • RFC 2328: "A cost is associated with the output side of each router interface. This cost is configurable by the system administrator. The lower the cost, the more likely the interface is to be used to forward data traffic." 71 Koszt zagregowany 72 24 2012-05-24 Pasmo – domyślne i aktualne 73 Pasmo – domyślne i aktualne 74 Pasmo – domyślne i aktualne 75 25 2012-05-24 Modyfikowanie kosztu łącza 76 Modyfikowanie kosztu łącza 77 Sieć wielodostępowa 78 26 2012-05-24 Sieć wielodostępowa 79 DR i BDR • W celu zredukowania ruchu w sieciach wielodostępowych (zalewanie pakietami LSA), OSPF wybiera router desygnowany (designated router, DR) i zapasowy router desygnowany (backup designated router, BDR), • DR jest odpowiedzialny za aktualizowanie pozostałych routerów OSPF (DROthers), gdy w sieci wielodostępowej zajdzie zmiana, • BDR monitoruje DR i przejmuje jego rolę, gdy ten ulegnie awarii, 80 DR i BDR 81 27 2012-05-24 DR i BDR 82 DR i BDR 83 DR i BDR 84 28 2012-05-24 DR i BDR 85 DR i BDR 86 DR i BDR 87 29 2012-05-24 DR i BDR 88 30