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