SK Moduł 10: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 8: | Linia 8: | ||
|valign="top" width="500px"|[[Grafika:SK_M10_Slajd2.png|thumb|500px]] | |valign="top" width="500px"|[[Grafika:SK_M10_Slajd2.png|thumb|500px]] | ||
|valign="top"|W module tym zostaną omówione podstawowe informacje na temat routingu. | |valign="top"|W module tym zostaną omówione podstawowe informacje na temat routingu. | ||
Routing jest spisanym zestawem sposobów jak przejść (przesłać pakiety) z jednej sieci do drugiej. Jest to | Routing jest spisanym zestawem sposobów jak przejść (przesłać pakiety) z jednej sieci do drugiej. Jest to jedna z podstawowych własności routerów umożliwiających przesyłanie danych w Internecie. | ||
Zostaną omówione podstawowe informacje dotyczące klasyfikacji protokołów routingu jak i wymienione te najczęściej używane. | Zostaną omówione podstawowe informacje dotyczące klasyfikacji protokołów routingu jak i wymienione te najczęściej używane. | ||
Linia 23: | Linia 23: | ||
|valign="top"|Router jest specjalistycznym komputerem, którego podstawowym zadaniem jest właściwe przesyłanie pakietów, które przychodzą na jeden z jego interfejsów na inny. Dzięki temu możliwa jest niezawodna komunikacja pomiędzy poszczególnymi sieciami komputerowymi. | |valign="top"|Router jest specjalistycznym komputerem, którego podstawowym zadaniem jest właściwe przesyłanie pakietów, które przychodzą na jeden z jego interfejsów na inny. Dzięki temu możliwa jest niezawodna komunikacja pomiędzy poszczególnymi sieciami komputerowymi. | ||
Właściwie każdy komputer wyposażony w system operacyjny może pełnić rolę routera. Ze względów bezpieczeństwa funkcja ta jest wyłączana w przypadku zwykłych hostów. W praktyce najczęściej stosuje się do celu przesyłania pakietów specjalistyczne urządzenia, które mają zbliżoną budowę do standardowych jednostek obliczeniowych. Ze względu na specjalistyczne funkcje, które muszą pełnić są | Właściwie każdy komputer wyposażony w system operacyjny może pełnić rolę routera. Ze względów bezpieczeństwa funkcja ta jest wyłączana w przypadku zwykłych hostów. W praktyce najczęściej stosuje się do celu przesyłania pakietów specjalistyczne urządzenia, które mają zbliżoną budowę do standardowych jednostek obliczeniowych. Ze względu na specjalistyczne funkcje, które muszą pełnić są też wyposażone w odpowiedni system operacyjny typowy dla producenta tych urządzeń. | ||
Router dzięki wpisom w tablicy routingu obsługuje ruch pakietów w warstwie L3 modelu ISO/OSI. | Router dzięki wpisom w tablicy routingu obsługuje ruch pakietów w warstwie L3 modelu ISO/OSI. | ||
Linia 41: | Linia 41: | ||
Najłatwiej prześledzić różnice przepływu danych przez poszczególne urządzenia na przykładzie. Załóżmy, że komputer X chce wysłać dane do położonego w odległej lokalizacji (innej podsieci) komputera Y. | Najłatwiej prześledzić różnice przepływu danych przez poszczególne urządzenia na przykładzie. Załóżmy, że komputer X chce wysłać dane do położonego w odległej lokalizacji (innej podsieci) komputera Y. | ||
Dane przechodzą przez kolejne warstwy: Aplikacji, Prezentacji, Sesji, Transportową, Sieci, Łącza Danych, Fizyczną. W trakcie przechodzenia przez poszczególne warstwy są one kolejno enkapsulowane w porcje informacji typowe dla poszczególnych warstw. Po dotarciu do warstwy Fizycznej ramka wysyłana jest do urządzenia sieciowego, które pełni role bramy wyjściowej (getaway). W przypadku sieci lokalnych rolę | Dane przechodzą przez kolejne warstwy: Aplikacji, Prezentacji, Sesji, Transportową, Sieci, Łącza Danych, Fizyczną. W trakcie przechodzenia przez poszczególne warstwy są one kolejno enkapsulowane w porcje informacji typowe dla poszczególnych warstw. Po dotarciu do warstwy Fizycznej ramka wysyłana jest do urządzenia sieciowego, które pełni role bramy wyjściowej (getaway). W przypadku sieci lokalnych rolę tą pełni router (A) obsługujący daną sieć. Router ten rozpakowuje ramkę i sprawdza adres docelowy i źródłowy. Następnie na podstawie wpisów w tablicy routingu decyduje, którędy (poprzez które sąsiednie routery) przesłać pakiet do miejsca przeznaczenia. | ||
Sytuacja taka powtarza się na kolejnych routerach (B,C) w trakcie | Sytuacja taka powtarza się na kolejnych routerach (B,C) w trakcie przesyłania pakietów do celu. W przypadku ostatniego routera na trasie urządzenie to przesyła ramkę bezpośrednio na MAC adres urządzenia, do którego jest adresowany pakiet. | ||
W urządzeniu tym (Y) następuje proces odwrotny, tzn. dane przechodząc kolejno przez poszczególne warstwy są składane do postaci pierwotnej. | W urządzeniu tym (Y) następuje proces odwrotny, tzn. dane przechodząc kolejno przez poszczególne warstwy są składane do postaci pierwotnej. | ||
Linia 62: | Linia 62: | ||
|valign="top" width="500px"|[[Grafika:SK_M10_Slajd6.png|thumb|500px]] | |valign="top" width="500px"|[[Grafika:SK_M10_Slajd6.png|thumb|500px]] | ||
|valign="top"|Protokół IP jest przykładem protokołu routowalnego. Szczegółowo został omówiony w poprzednich modułach. | |valign="top"|Protokół IP jest przykładem protokołu routowalnego. Szczegółowo został omówiony w poprzednich modułach. | ||
Protokół ten jest bezpołączeniowy, co oznacza, że do przesłania danych nie potrzebne jest zestawienie | Protokół ten jest bezpołączeniowy, co oznacza, że do przesłania danych nie potrzebne jest zestawienie połączenia pomiędzy nadawcą i odbiorcą. Jest to protokół, który został opracowany do działania również w sytuacjach ekstremalnych, np. w czasie wojny. W związku z tym, używa wszelkich dostępnych ścieżek, aby dostarczyć pakiety do celu. | ||
Protokół IP wykorzystuje wszystkie posiadane mechanizmy aby dostarczyć pakiet do celu. Protokół ten nie dba o potwierdzenie, czy dane dotarły do adresata, stąd też często jest określany jako zawodny. Określenie „zawodny” jest trochę nieprecyzyjne, | Protokół IP wykorzystuje wszystkie posiadane mechanizmy, aby dostarczyć pakiet do celu. Protokół ten nie dba o potwierdzenie, czy dane dotarły do adresata, stąd też często jest określany jako zawodny. Określenie „zawodny” jest trochę nieprecyzyjne, ponieważ pakiety wysyłane są wszelkimi możliwymi trasami. Za potwierdzenie właściwego przesłania odpowiadają protokoły wyższych warstw. | ||
|} | |} | ||
<hr width="100%"> | <hr width="100%"> | ||
Linia 72: | Linia 72: | ||
|valign="top"|W zależności od sposobu zdobywania informacji na temat dróg przesyłania poszczególnych pakietów dzieli się routing na statyczny i dynamiczny. | |valign="top"|W zależności od sposobu zdobywania informacji na temat dróg przesyłania poszczególnych pakietów dzieli się routing na statyczny i dynamiczny. | ||
W przypadku tego pierwszego wpisy dokonywane są ręcznie przez administratora systemu. To administrator musi znać topologię sieci i na | W przypadku tego pierwszego wpisy dokonywane są ręcznie przez administratora systemu. To administrator musi znać topologię sieci i na jej podstawie dokonuje wyznaczenia optymalnych tras przesyłania pakietów. | ||
W przypadku routingu dynamicznego za wymianę informacji na temat topologii sieci i zachodzących zamianach w połączeniu routerów odpowiadają protokoły routingu. | W przypadku routingu dynamicznego za wymianę informacji na temat topologii sieci i zachodzących zamianach w połączeniu routerów odpowiadają protokoły routingu. | ||
Szczegółowo routing statyczny i dynamiczny zostaną omówione na kolejnych slajdach. | |||
|} | |} | ||
<hr width="100%"> | <hr width="100%"> | ||
Linia 95: | Linia 95: | ||
|valign="top"|Wśród danych, które mogą występować w tablicach routingu są następujące elementy: | |valign="top"|Wśród danych, które mogą występować w tablicach routingu są następujące elementy: | ||
typ protokołu - wpis, który z protokołów routingu dostarczył informacji na temat danej trasy | typ protokołu - wpis, który z protokołów routingu dostarczył informacji na temat danej trasy | ||
odniesienie do punktu docelowego/następnego przeskoku - informacja o tym, gdzie znajduje się punkt docelowy lub jak (przez | odniesienie do punktu docelowego/następnego przeskoku - informacja o tym, gdzie znajduje się punkt docelowy lub jak (przez który router) do niego dotrzeć. | ||
metryka routingu - informacja o metryce | metryka routingu - informacja o metryce routingu dla danego protokołu | ||
interfejs wyjściowy - interfejs, przez który należy wysłać pakiet, aby trafił do sieci docelowej. | interfejs wyjściowy - interfejs, przez który należy wysłać pakiet, aby trafił do sieci docelowej. | ||
|} | |} | ||
Linia 143: | Linia 143: | ||
|valign="top"|Jednym z kryteriów podziału protokołów routingu jest zasięg ich działania. Systemy, które działają w ramach jednej organizacji określane są jako systemy autonomiczne (ang. Autonomous Systems). Systemom takim nadawane są unikalne numery systemów autonomicznych. Systemy autonomiczne uzyskują numery IP z puli niezależnej od dostawców Internetu PI (ang. Provider Independent). Same numery systemów zawierają się w przedziale od 1 do 65535. Numery od 65412 do 65535 są wyłączone z użytkowania w sieciach publicznych. Są to numery prywatne. Przydziałem numerów publicznych zajmuje się międzynarodowa organizacja ICANN (ang. Internet Corporation for Assigned Names and Numbers). Lokalnie nadawaniem tych numerów zajmują się regionalne przedstawicielstwa tej organizacji. | |valign="top"|Jednym z kryteriów podziału protokołów routingu jest zasięg ich działania. Systemy, które działają w ramach jednej organizacji określane są jako systemy autonomiczne (ang. Autonomous Systems). Systemom takim nadawane są unikalne numery systemów autonomicznych. Systemy autonomiczne uzyskują numery IP z puli niezależnej od dostawców Internetu PI (ang. Provider Independent). Same numery systemów zawierają się w przedziale od 1 do 65535. Numery od 65412 do 65535 są wyłączone z użytkowania w sieciach publicznych. Są to numery prywatne. Przydziałem numerów publicznych zajmuje się międzynarodowa organizacja ICANN (ang. Internet Corporation for Assigned Names and Numbers). Lokalnie nadawaniem tych numerów zajmują się regionalne przedstawicielstwa tej organizacji. | ||
W ramach systemów autonomicznych wykorzystuje się protokoły wewnętrzne (ang. Interior Gateway Protocol). Jak sugeruje nazwa są to protokoły, które umożliwiają komunikację wewnątrz jakiejś większej organizacji. Przykładem takich protokołów są: RIP (wersja 1 i 2), OSPF, EIGRP | W ramach systemów autonomicznych wykorzystuje się protokoły wewnętrzne (ang. Interior Gateway Protocol). Jak sugeruje nazwa są to protokoły, które umożliwiają komunikację wewnątrz jakiejś większej organizacji. Przykładem takich protokołów są: RIP (wersja 1 i 2), OSPF, EIGRP. | ||
Same systemy autonomiczne są również połączone z innymi systemami. W komunikacji pomiędzy systemami autonomicznymi potrzeba użyć protokołu routingu, który będzie w stanie obsłużyć możliwe różne standardy protokołów. Protokoły routingu, które są w stanie przenosić informacje pomiędzy systemami autonomicznymi nazywamy protokołami zewnętrznymi (ang. Exterior Gateway Protocol). Przykładem takiego protokołu jest BGP. | Same systemy autonomiczne są również połączone z innymi systemami. W komunikacji pomiędzy systemami autonomicznymi potrzeba użyć protokołu routingu, który będzie w stanie obsłużyć możliwe różne standardy protokołów. Protokoły routingu, które są w stanie przenosić informacje pomiędzy systemami autonomicznymi nazywamy protokołami zewnętrznymi (ang. Exterior Gateway Protocol). Przykładem takiego protokołu jest BGP. | ||
Linia 175: | Linia 175: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|valign="top" width="500px"|[[Grafika:SK_M10_Slajd16.png|thumb|500px]] | |valign="top" width="500px"|[[Grafika:SK_M10_Slajd16.png|thumb|500px]] | ||
|valign="top"|Protokoły routingu były oraz są projektowane z myślą o zapewnieniu skutecznego i szybkiego rouingu. Istnieją pewne ogólne cechy, | |valign="top"|Protokoły routingu były oraz są projektowane z myślą o zapewnieniu skutecznego i szybkiego rouingu. Istnieją pewne ogólne cechy, które (część lub wszystkie) każdy z zaimplementowanych protokołów powinien spełniać: | ||
Optymalizacja - pod tym wymaganiem kryje się zdolność algorytmu do wyboru ścieżek o najlepszych metrykach. | |||
Odporność na błędy i stabilność - zdolność protokołu do radzenia sobie w przypadku nieprzewidzianych awarii | Odporność na błędy i stabilność - zdolność protokołu do radzenia sobie w przypadku nieprzewidzianych awarii. | ||
Szybka zbieżność - w przypadku zmiany dostępnych tras następuje przesyłanie informacji na temat zmian do wszystkich routerów, które obsługują routing dynamiczny. Szybka zbieżność gwarantuje, że po zmianie topologii połączeń informacja na temat zmian zostanie możliwie szybko rozpropagowana wśród pozostałych routerów. | |||
Elastyczność - cecha, która pozwala na zastosowanie w sieci urządzeń o różnych parametrach. Dotyczy ona również zmiennych warunków pracy w sieci, np. zmiana szerokości pasma, zmiany opóźnień występujących w sieci. | |||
Prostota i niski narzut - protokół routingu jest implementowany jako program komputerowy na poszczególnych routerach. Proste algorytmy routingu, które nie wymagają dużych narzutów obliczeniowych w niewielkim stopniu obciążają zasoby sprzętowe urządzenia. Ma to szczególnie istotne znaczenie przy dużych tablicach routingu i rozbudowaniu sieci komputerowych. | |||
|} | |} | ||
<hr width="100%"> | <hr width="100%"> | ||
Linia 194: | Linia 194: | ||
|valign="top"|Do porównania kilku różnych alternatywnych tras przesyłania pakietów potrzebna jest jakaś miara. Podobnie jak w przypadku porównywania cech różnych obiektów, dystansu pomiędzy miastami, podobieństwa twarzy, itd. w przypadku określania optymalności danej trasy należy posłużyć się jakimiś wartościami poprzez zdefiniowanie metryki routingu. Różne protokoły routingu mogą wykorzystywać odrębne wartości. W skład wartości, które mogą być wykorzystywane przy definiowaniu metryki mogą wchodzić następujące parametry: | |valign="top"|Do porównania kilku różnych alternatywnych tras przesyłania pakietów potrzebna jest jakaś miara. Podobnie jak w przypadku porównywania cech różnych obiektów, dystansu pomiędzy miastami, podobieństwa twarzy, itd. w przypadku określania optymalności danej trasy należy posłużyć się jakimiś wartościami poprzez zdefiniowanie metryki routingu. Różne protokoły routingu mogą wykorzystywać odrębne wartości. W skład wartości, które mogą być wykorzystywane przy definiowaniu metryki mogą wchodzić następujące parametry: | ||
szerokość pasma - zwykle im szybsze łącze, tym bardziej preferowane, np. łącze 1Gb/s będzie bardziej preferowane niż łącze modemowe o prędkości 56kb/s | szerokość pasma - zwykle im szybsze łącze, tym bardziej preferowane, np. łącze 1Gb/s będzie bardziej preferowane niż łącze modemowe o prędkości 56kb/s | ||
Opóźnienie - jest czasem potrzebnym do przesłanie pakietów w pojedynczym łączu danych. Im czas opóźnienia mniejszy tym lepsze własności łącza | |||
Obciążenie - intensywność wykorzystanie danego łącza przez innych użytkowników. Im mniejsza tym więcej zasobów może być przeznaczone na przesyłane dane. | |||
niezawodność - liczba awarii w danym łączu. Im mniejsza tym łącze bardziej niezawodne. | niezawodność - liczba awarii w danym łączu. Im mniejsza tym łącze bardziej niezawodne. | ||
Liczba przeskoków [ang. hoop count] - określa liczbę pośrednich routerów przez, które będzie przesyłany pakiet. W niektórych protokołach, np. w RIP, jest to jedyna miara. Im mniejsza liczba przeskoków (pośrednich routerów), przez które musi być przesłany pakiet do miejsca przeznaczenia, tym lepiej. | |||
Impulsy zegarowe - czas opóźnienia łącza jest liczony impulsami zegara komputera IBM PC (ok. 1/18 s) | |||
Koszt - wartość oszacowania opłat przypadających na koszt przesłania danych przez łącze. | |||
Wymienione cechy są użyteczne przy definiowaniu metryki routingu jednak w praktyce stosowane protokoły wykorzystują tylko wybrane z nich. Warto zauważyć, że wymienione parametry w sposób naturalny opisują właściwości sieci komputerowych. | Wymienione cechy są użyteczne przy definiowaniu metryki routingu jednak w praktyce stosowane protokoły wykorzystują tylko wybrane z nich. Warto zauważyć, że wymienione parametry w sposób naturalny opisują właściwości sieci komputerowych. | ||
Linia 210: | Linia 210: | ||
Protokół ten obsługuje tylko adresację z podziałem na klasy, stąd nie nadaje się do obsługi sieci z zastosowaną adresacją VLSM. | Protokół ten obsługuje tylko adresację z podziałem na klasy, stąd nie nadaje się do obsługi sieci z zastosowaną adresacją VLSM. | ||
Protokół ten wysyła aktualizację w formie rozgłaszania na adres broadcastowy 255.255.255.255. | Protokół ten wysyła aktualizację w formie rozgłaszania na adres broadcastowy 255.255.255.255. Aktualizacja tras wysyłana jest co 30 s. | ||
Metryka stosowana w tym protokole to liczba przeskoków. Maksymalna liczba przeskoków w danej trasie to 15. Zatem jeśli licznik przeskoków osiągnie wartość 16 to dany adres docelowy zaznaczany jest jako nieosiągalny. | Metryka stosowana w tym protokole to liczba przeskoków. Maksymalna liczba przeskoków w danej trasie to 15. Zatem jeśli licznik przeskoków osiągnie wartość 16 to dany adres docelowy zaznaczany jest jako nieosiągalny. | ||
Linia 241: | Linia 241: | ||
Cechami charakteryzującymi ten protokół są: | Cechami charakteryzującymi ten protokół są: | ||
Wysyłanie razem z informacją o trasie również maski podsieci - możliwe jest dzięki temu stosowanie metody VLSM. | |||
Wprowadza uwierzytelnienie - możliwe jest przesyłanie informacji uwierzytelniających zarówno tekstem jawnym jak i szyfrowanych. Format pakietu uwierzytelniającego zostanie podany na kolejnych slajdach. | |||
Umieszcza adres IP routera następnego przeskoku w wysyłanych przez siebie aktualizacjach tras - dzięki temu inne routery, wiedzą przez który router prowadzi lepsza trasa. | |||
Korzysta ze znaczników tras zewnętrznych - przenosi informacje uzyskane przy pomocy innych protokołów do sieci wewnętrznej, zaznaczając jednocześnie, że jest to informacja ze źródła zewnętrzenego | |||
Wysyła aktualizacje tras na adres multicastowy - korzysta z rozsyłania grupowego na adres z klasy D o numerze IP 224.0.0.9 | |||
|} | |} | ||
<hr width="100%"> | <hr width="100%"> | ||
Linia 265: | Linia 265: | ||
|valign="top"|Wygląd pakietu dla protokołu RIPv2 został przedstawiony na rysunku. Poszczególne pola mają następujące znaczenie: | |valign="top"|Wygląd pakietu dla protokołu RIPv2 został przedstawiony na rysunku. Poszczególne pola mają następujące znaczenie: | ||
command - (1B) pole komendy | command - (1B) pole komendy | ||
version - (1B) | version - (1B) wersja protokołu RIP | ||
AFI (ang. address family identyfier) - (2B) pole identyfikujące jaki protokół będzie przesyłany. W przypadku IP wpisana jest tam wartość 2. Gdy pole ma ustawioną wartość 0xFFFF, to pakiet niesie informację o autoryzacji. | AFI (ang. address family identyfier) - (2B) pole identyfikujące jaki protokół będzie przesyłany. W przypadku IP wpisana jest tam wartość 2. Gdy pole ma ustawioną wartość 0xFFFF, to pakiet niesie informację o autoryzacji. | ||
route tag (2B) - określa czy trasa jest wysłana z lokalnego routera obsługującego protokół RIP (trasa wewnętrzna) czy też innego routera obsługującego inne protokoły (trasa zewnętrzna). | route tag (2B) - określa czy trasa jest wysłana z lokalnego routera obsługującego protokół RIP (trasa wewnętrzna) czy też innego routera obsługującego inne protokoły (trasa zewnętrzna). | ||
Linia 316: | Linia 316: | ||
Wszystkie routery w danym segmencie wysyłają informacje o stanie łącz do routera DR (lub w momencie uszkodzenia DR do BDR). Router desygnowany rozsyła potem te komunikaty do wszystkich routerów w segmencie. Dzięki temu ilość wysyłanych komunikatów wynosi 2xN. | Wszystkie routery w danym segmencie wysyłają informacje o stanie łącz do routera DR (lub w momencie uszkodzenia DR do BDR). Router desygnowany rozsyła potem te komunikaty do wszystkich routerów w segmencie. Dzięki temu ilość wysyłanych komunikatów wynosi 2xN. | ||
Informacje dotyczące routerów desygnowanych oraz identyfikatory są przesyłane w pakiecie „Hello”, który został | Informacje dotyczące routerów desygnowanych oraz identyfikatory są przesyłane w pakiecie „Hello”, który został przedstawiony na następnym slajdzie. | ||
|} | |} | ||
<hr width="100%"> | <hr width="100%"> | ||
Linia 357: | Linia 357: | ||
W celu otwarcia sesji routery wysyłają komunikat OPEN, w którym określają parametry sesji. | W celu otwarcia sesji routery wysyłają komunikat OPEN, w którym określają parametry sesji. | ||
Komunikat UPDATE umożliwia wymianę informacji na temat tablic routingu. Przy pierwszym połączeniu wysyłane są pełne tablice | Komunikat UPDATE umożliwia wymianę informacji na temat tablic routingu. Przy pierwszym połączeniu wysyłane są pełne tablice routingu, przy kolejnych tylko te które uległy zmianom. | ||
Gdy nie ma zmian, to wysyłany jest komunikat KEEPALIVE sygnalizujący poprawne działanie obu routerów i łącza. | Gdy nie ma zmian, to wysyłany jest komunikat KEEPALIVE sygnalizujący poprawne działanie obu routerów i łącza. |
Aktualna wersja na dzień 08:43, 15 gru 2006
![]() |