Rozdz_10.doc

(2309 KB) Pobierz

Rozdział 10

 

Interior Gateway Routing Protocol (IGRP)

 

Protokół RIP okazał się zdolny do wykorzystywania wektorów odległości w oblicza­niu tras w obrębie systemów autonomicznych. Niestety, w obliczu coraz powszechniejsze­go wykorzystywania routingu i protokołu IP przez coraz większe organizacje, pewne wro­dzone ograniczenia protokołu RIP stawały się coraz bardziej widoczne.

Dlatego w reakcji na ten proces firma Cisco opracowała protokół IGRP (Interior Ga­teway Routing Protocol), który zachowywał prostotę użycia RIP przy jednoczesnej elimi­nacji ograniczeń działania. Protokół IGRP okazał się tak dużym sukcesem, że zapewnił firmie Cisco pozycję dostawcy rozwiązań technologii routingu.

 

Źródła IGRP

 

Aż do lat osiemdziesiątych nie było dużego zapotrzebowania organizacji komercyj­nych na sieci złożone, gdyż organizacje te opierały swoje działanie na infrastrukturze składającej się z terminali, sterowników klasterów i komputerów typu mainframe. Jedynie grupy badawcze i uniwersytety odczuwały konieczność stosowania sieci złożonej. Tak ograniczone wymagania rynku co do technologii sieci złożonej oznaczały, że istniała zde­cydowana większość małych sieci komputerowych. Były to sprzyjające warunki do uzy­skania przez RIP ogromnej popularności.

Jednak w latach osiemdziesiątych dokonał się znaczny postęp technologiczny. Najważ­niejszymi jego elementami było opracowanie ujednoliconej platformy dla komputerów typu desktop (PC) oraz pojawienie się sieci LAN. Razem, PC i LAN, stworzyły nową wizję nie­drogiej sieci komputerowej. Co za tym idzie, wzrosło zapotrzebowanie na sieci złożone. W tych nowych warunkach RIP zaczął zdradzać oznaki swojego zaawansowanego wieku.

Prawdopodobnie największym ograniczeniem protokołu RIP było to, że zaprojektowany został do zastosowania tylko w małych systemach autonomicznych. Jakkolwiek w początkowych dniach istnienia sieci złożonej nie było to uznawane za wadę, w połowie lat osiemdziesiątych systemy autonomiczne uchodziły już za przeżytek. Dodatkowo jednak sieci złożone zaczęły być coraz większe i coraz bardziej skomplikowane. Wszystko to powodo­wało pojawianie się nieprzelicznych trudności w działaniu sieci RIP. Jako rozwiązanie tego problemu firma Cisco zaproponowała wprowadzenie silnego protokołu routingu, który pora­dziłby sobie ze znacznie większym stopniem komplikacji struktury sieci złożonej.

 

Niezbędne wymagania

 

Opracowanie nowego protokołu nie jest sprawą łatwą. Aby to uczynić, należy szcze­gólnie starannie określić wymagania jemu stawiane i według tego opracować mechanizmy nowego protokołu. Wymaganiem Cisco co do nowego protokołu było przełamanie funk­cjonalnych ograniczeń protokołu RIP.

RIP, oprócz stosunkowo dużego ograniczenia licznika skoków (maksymalna ilość skoków to 15, skok 16 oznaczał nieskończoność), nie był także w stanie równoważyć obciążenia ruchu poprzez wiele nadmiarowych łączy, ponieważ mógł zapamiętać jedynie "' pojedynczą trasę. Co gorsze trasa ta była wyznaczana przy użyciu pojedynczej statycznej metryki. Dyskwalifikowało to protokół RIP w sieciach, w których wymagane było rozróż­nianie typów łączy oraz podejmowanie decyzji co do wyboru trasy na podstawie aktualnych charakterystyk działania poszczególnych łączy.

Przełożenie tych ograniczeń na wymagania dotyczące nowego protokołu było stosun­kowo łatwe. Oto niektóre z określonych atrybutów sieci złożonej, które musiały być ob­sługiwane przez nowy protokół:

·         złożone topologie

·         dynamiczne równoważenie obciążenia (co implikuje śledzenie wielu tras do punktu ' docelowego)

·         obliczanie tras przy użyciu dynamicznych metryk

·         szybki proces zbieżności po zmianie w topologii sieci

·         zdolność wyboru optymalnych tras, bez względu na zawartość w sieci złożonej różno­rodnych technologii transmisyjnych, takich jak Ethernet, FDDI, ATM, Frame Relay, T1 i T3.

 

Rozwiązanie Cisco

 

Rozwiązaniem firmy Cisco dla sieci złożonej był protokół routingu distance-vector nazywany IGRP. IGRP został zaprojektowany tak, aby był łatwy do konfigurowania i uży­cia, ponadto odziedziczył po protokole RIP wiele cech, które uczyniły go również bardzo użytecznym. Umożliwiało to stosunkowo bezproblemową migrację do nowego protokołu, ponieważ większość administratorów sieci była całkiem dobrze zaznajomiona z protoko­łem RIP. Pomimo zachowania wielu zalet protokołu RIP, IGRP uniknął jego funkcjonal­nych ograniczeń.

 

Ogólne spojrzenie na protokół IGRP

 

IGRP jest protokołem distance-vector zaprojektowanym do użycia w wewnętrznych routerach bramowych w obrębie systemu autonomicznego. Jak wyjaśniono to w rozdziale 7, routery, które wykorzystują protokoły routingu distance-vector, regularnie przesyłają całą lub część swojej tablicy routingu do najbliższych sąsiadów. Proces ten powtarza się okresowo w systemie autonomicznym, aż do momentu gdy wszystkie jego węzły „osiągną porozumienie", co do jego topologii i odległości do znanych punktów docelowych.

IGRP otrzymał rozszerzone właściwości w stosunku do protokołu RIP i innych proto­kołów distance-vector. Jedną z najbardziej rewolucyjnych nowych cech był sposób, w jaki obliczał wektory odległości. W odróżnieniu od poprzednich protokołów, korzystających z pojedynczej metryki do obliczania tras, IGRP dysonuje serią metryk, z których każda ma szeroki zakres możliwych do przyjęcia wartości. Każda taka metryka może być połączona z wartością matematyczną i wagą. Umożliwia to administratorom sieci dopasowanie algo­rytmu obliczania trasy do określonych potrzeb. Metryki te i ich wagi używane są do obli­czania pojedynczej, łącznej metryki routingu, która wykorzystywana jest do matematycz­nego porównania potencjalnych tras do punktów docelowych.

Dodatkowo, IGRP może obsługiwać routing wielościeżkowy. RIP, jak i inne podobne do niego protokoły, zdolne były do zapamiętania tylko jednej trasy do danego punktu. Dlatego też protokoły te z natury były niezdolne do przeprowadzania routingu wieloścież­kowego. Natomiast IGRP może zapamiętać do czterech tras do każdego punktu docelowe­go, co umożliwia mu obsługę routingu wielościeżkowego w sieci distance-vector. Prak­tycznym skutkiem takiego typu routingu są dwie nowe możliwości protokołu:

·         równoważenie obciążenia pomiędzy dwoma, trzema i czterema łączami

·         automatyczne odzyskiwanie uszkodzonego połączenia.

 

Pomimo swojego ogromnego sukcesu na rynku, IGRP pozostaje zastrzeżonym proto­kołem routingu. Dlatego jedynym producentem routerów, który stosuje IGRP, jest Cisco Systems. Firma Cisco nie opublikowała szczegółów dotyczących wewnętrznych mechani­zmów IGRP. W związku z tym szczegółowe i wyczerpujące omówienie protokołu IGRP nie jest możliwe.

 

Metryki

IGRP odznacza się wysokim stopniem elastyczności, który uzyskiwany jest poprzez I jego metryki routingu. W przeciwieństwie do RIP, który posiada jedną, statyczną metrykę, IGRP wykorzystuje sześć metryk:

·         liczba skoków

·         rozmiar pakietu (opisany jako MTU - Maximum Transmission Unit)

·         przepustowość łącza

·         opóźnienie

·         obciążenie

·         niezawodność.

 

Węzły IGRP w czasie uaktualniania tablic routingu dzielą się pomiędzy sobą informa­cjami dotyczącymi wszystkich sześciu metryk, z których nie wszystkie wykorzystywane są do obliczania tras. W rzeczywistości tylko cztery ostatnie metryki mogą być użyte do obliczania tras. Natomiast liczba skoków i MTU w inny sposób ułatwiają routing.

Elastyczność protokołu IGRP nie wynika tylko z większej liczby metryk, ale także wiąże się z zakresem wartości, które te metryki mogą przyjąć. IGRP umożliwia admini­stratorowi definiowanie każdej z metryk oraz ustanawianie dla nich domyślnych wag, które także brane są pod uwagę w procesie obliczania trasy.

 

Liczba skoków

 

IGRP traktuje przyrost wartości licznika skoków jako sposób do określenia odległości punktu docelowego. Każdy router w ścieżce liczony jest jako pojedynczy skok i w przeci­wieństwie do RIP, IGRP nie ogranicza tej wartości do 16. Domyślna maksymalna liczba skoków wynosi 100, aczkolwiek może zostać powiększona do 255. Umożliwia to wyko­rzystanie protokołu IGRP w znacznie większych sieciach niż miało to miejsce w przypad­ku protokołu RIP.

Należy przy tym zauważyć, że jakkolwiek IGRP obsługuje licznik skoków, jednak nie wykorzystuje jego wartości do wyznaczania optymalnych tras. Licznik natomiast używany jako zabezpieczenie przed powstawaniem pętli routingu. Trasy z liczbą skoków przewyż­szającą podaną maksymalną wartość są automatycznie unieważniane przez IGRP i nie są rozgłaszane do sąsiednich węzłów poprzez uaktualnienia tablic.

Protokół RIP jest prostym protokołem distance-vector, który odległości w sieci okre­ślał jedynie na podstawie zliczania ilości routerów oddzielających maszynę źródłową od docelowej. IGRP nie skupia w obliczaniu tras uwagi na ilości routerów, lecz na atrybutach infrastruktury transmisyjnej, która te routery łączy. Właściwie skonfigurowany protokół IGRP może rozróżniać atrybuty związane z osiągami różnych typów infrastruktury trans­misyjnej.

 

MTU

 

MTU określa, jaki maksymalny rozmiar datagramu zaakceptuje router IGRP. Wartość ta nie jest wykorzystywana do obliczania tras ani nie jest czynnikiem występującym w zbio­rowej metryce IGRP. Węzły IGRP przekazują innym węzłom maksymalny rozmiar data­gramu, który są w stanie przyjąć. Jeśli datagram jest większy niż rozmiar MTU routera musi być podzielony na dwa lub więcej datagramów, które nie przekroczą tego rozmiaru.

Bardzo duże wartości MTU prowadzą do pogorszenia działania sieci, ponieważ route­ry muszą buforować nadchodzące datagramy, aż będą w stanie określić, gdzie je dalej przesłać. Im większy datagram, tym więcej zajmuje miejsca w przestrzeni bufora. Także bardzo małe wartości MTU mogą powodować pogorszenie osiągów sieci, ponieważ nie­potrzebnie mogą zachwiać stosunkiem wielkości nagłówka do przestrzeni danych data­gramu (większy rozmiar nagłówka przy stosunkowo małej przestrzeni danych). Dlatego też MTU może być bardzo dobrym czynnikiem dostrajania sieci, prowadzącym do uzyskania jej jak najwydajniejszej pracę.

 

Przepustowość

 

Przepustowość określa prędkość łącza transmisyjnego, które podłączone jest do danego portu WE/WY routera. Wartość ta może wahać się od 1200 b/s aż do 10 Gb/s. Należy przy tym zauważyć, że jeżeli metryka przepustowości nie jest ustawiona na inną wartość Cisco IOS (Cisco Internetwork Operating System - przyp. tłum.) założy, że łączem jest Tl i wartość tej metryki domyślnie ustawi na poziomie 1.544 Mb/s.

Pomimo tego, że domyślną wartością przepustowości jest 1.544 Mb/s, porty interfejsu nie będą w stanie wykorzystać większej szerokości pasma niż ta, która jest w rzeczywisto­ści dostępna. Porty te połączone są z urządzeniem sterownika linii, takim jak CSU/DSU. Są to te urządzenia warstwy fizycznej, które w rzeczywistości umieszczają dane w łączach transmisyjnych.

Wykorzystywanie domyślnych wartości sprawia, że metryka przepustowości nie na­daje się do celów obliczania trasy. Dlatego zazwyczaj preferuje się definiowanie dla każ­dego portu interfejsu rzeczywistej dostępnej mu przepustowości, a nie akceptowanie z góry zadanych wartości domyślnych. Umożliwia to poprawę możliwości IGRP obliczenia i wybo­ru optymalnych tras.

Przepustowość może zostać celowo zaniżona w stosunku do rzeczywiście dostępnej aby zmniejszyć stopień wykorzystania określonego łącza. Pozwoli to zarezerwować łącze do wykorzystania w czasie nagłych wypadków lub okresów wzmożonego ruchu.

Aby obliczyć metrykę, IGRP przygląda się zdefiniowanej szerokości pasma we wszystkich portach interfejsu występujących w danej trasie a następnie wybiera najmniej­szą wartość, która określa górną granicę przepustowości dla tej trasy. Wartość ta dzielona jest przez 10 000 000 co powoduje, że szerokość pasma wyrażona jest w kilobitach na sekundę.

 

Opóźnienie

 

Opóźnienie mierzy przybliżony czas potrzebny na przejście przez całe łącze w sieci. Łączne opóźnienie trasy w sieci IGRP jest sumą opóźnień przypisanych każdemu interfej­sowi routera tworzącego tę trasę. Suma ta dzielona jest przez 10, aby można było uzyskać mikrosekundy. Metryka ta może osiągać wartość od 1 do 16 777 215.

Zamiast opracowywać algorytm obliczania rzeczywistego opóźnienia, IGRP wyko­rzystuje wartość średniego opóźnienia różną dla każdej technologii transmisji. Przykłado­wo dla prywatnej linii T1 wartość domyślna opóźnienia ustawiana jest na 21 000 ~,s. Takie uproszczone założenie znacznie redukuje obciążenie procesora IGRP, ale wciąż zapewnia elastyczność w obliczaniu tras w heterogenicznej sieci.

IGRP automatycznie wypełnia metrykę opóźnienia dla każdego łącza transmisyjnego według jego zdefiniowanej przepustowości i technologii transmisji. Przykładowo łącze 10 Mb/s Ethernet charakteryzuje się 10 razy większym średnim opóźnieniem niż łącze 100 Mb/s Ethernet. Również administratorzy sieci mogą zmieniać tę wartość na każdą inną z dozwolonego przedziału, tak aby odwzorowywać określone warunki w ich sieci. Umoż­liwia to routerom z protokołem IGRP odróżnianie naziemnego połączenia Tl od połącze­nia satelitarnego T1. Jakkolwiek oba te połączenia oferują identyczne szerokości pasma, połączenie naziemne cechować będzie znacznie mniejsze opóźnienie.

Oczywiście opóźnienie różni się także ze względu na długość łącza. Przykładowo, na­ziemne połączenie T1 pomiędzy Krakowem a Gdańskiem już z natury posiada większe opóźnienie w propagacji niż podobne połączenie o tej samej szerokości pasma pomiędzy Krakowem a Warszawą. Administrator sieci może manipulować obliczaniem trasy po­przez obniżanie współczynnika opóźnienia dla krótszych łączy lub jego podwyższanie dla łączy dłuższych. Modyfikowanie metryk musi być przeprowadzane z wielką ostrożnością, gdyż nie zawsze otrzymuje się oczekiwane efekty.

 

Obciążenie

 

Współczynnik obciążenia mierzy wielkość aktualnie dostępnej szerokości pasma przez dane łącze. Im łącze jest silniej eksploatowane, tym więcej czasu potrzeba do jego przemierzenia łącza. Taka metryka obciążenia IGRP bierze udział w obliczaniu optymal­nych tras w sieci.

Teoretycznie oparcie obliczania trasy na stopniu obciążenia poszczególnych łączy wydaje się być dobrym pomysłem. Umożliwia to protokołowi routingu omijanie wszelkich zatorów komunikacyjnych powstałych w sieci. Jednakże w praktyce obciążenia w sieci mogą zbyt szybko ulegać zmianie, aby było możliwe ponowne obliczanie tras lub jaka­kolwiek inna akcja podjęta przez protokół routingu. Przykładowo, użytkownik ze stabil­nym połączeniem LAN z routerem może łatwo zająć całą dostępną szerokość pasma w łączu szeregowym za pomocą prostej sesji FTP (File Transfer Protocol). W takim przy­padku sieć IGRP, która wykorzystuje metrykę obciążenia do obliczania swoich tras, nagle dostrzegłaby, że łącze to jest niemożliwe do wykorzystania. Spowodowałoby to podjęcie przez IGRP odpowiednich akcji korygujących włącznie z zawieszeniem tras wykorzystu­jących to łącze, a nawet zapoczątkowaniem procesu zbieżności co do nowej topologii sieci. Sesja FTP mogłaby z kolei się zakończyć, zanim sieć rozwiązałaby problem przez nią spowodowany.

W rezultacie domyślna wartość stałej używanej do wyważenia metryki skutecznie kompensuje ją w procesie obliczania łącznej metryki IGRP. Dlatego zanim metryka ob­ciążenia zostanie wykorzystana jako współczynnik w łącznej metryce IGRP, należy doko­nać wyraźnej modyfikacji wartości stałej tej metryki. Metryka może przyjmować wartości z zakresu od 1 do 255 i może być zmieniana przez administratora sieci, tak jak jej waga.

 

Niezawodność

 

Innym sposobem wpływania na wynik obliczania trasy w IGRP jest wykorzystanie metryki niezawodności. Metryka ta śledzi aktualny współczynnik błędu dla każdego łącza transmisyjnego. Współczynnik ten jest stosunkiem pakietów, które nadeszły nieuszkodzo­ne. Metryka ta może przyjmować wartości od 1 do 255, a domyślnie dla wszystkich typów łączy ustawiana jest na wartość równą 1.

 

Wykorzystywanie metryk

 

Klucz do elastyczności protokołu IGRP nie leży w żadnej z jego metryk, lecz w tym co IGRP z nimi robi. W przeciwieństwie do RIP i większości innych protokołów, IGRP nie porównuje wartości metryk potencjalnych tras. Zamiast tego, wykorzystuje wartości metryk do określenia pojedynczej łącznej metryki, która w sposób matematyczny opisuje potencjalne trasy. Metryka taka może być używana do porównywania potencjalnych tras przez sieć, nawet wtedy, gdy trasy te znacznie różnią się od siebie współczynnikami nie­zawodności, przepustowości, opóźnienia i wykorzystania.

 

 

 

 

Obliczanie wektorów

 

IGRP wykorzystuje łączną metrykę do obliczania optymalnej trasy. Metryka ta ma długość 24 bitów, co daje zakres możliwych wartości od 1 do 16 777 215. W gruncie rzeczy wartość łącznej metryki odzwierciedla ważoną sumę opóźnień i przepustowości wzdłuż danej trasy.

Oto ogólna formuła obliczania łącznych wektorów:

 

Metryka = K1 x Przepustowość+(K2 x Przepustowość)/(256-Obciążenie)+K3 x Opóźnienie

 

W powyższej formule K1, K2 i K3 są stałymi używanymi do wyważania wpływu poszczególnych metryk routingu na wartość łącznej metryki. Wartością domyślną K1 i K3 jest 1, natomiast K2 jest 0. Dodatkowo mogą być wykorzystane dwie inne stałe, K4 i K5, które domyślnie przyjmują wartość 0 i w takim przypadku nie występują w formule. Ad­ministrator sieci może modyfikować wszystkie stałe K.

Oryginalne równanie można podzielić na następujące pojedyncze operacje:

 

·         Pierwszą operacją jest pomnożenie Przepustowości przez 1, co nie zmienia jej wartości.

·         Następnie Przepustowość mnożona jest przez 0 i dzielona przez (256-Obciążenie). Obciążenie może osiągnąć maksymalną wartość 255, tak więc operacja odejmowania zawsze da wynik z przedziału od 1 do 255.

·         W poprzedniej operacji iloczyn K2 i Przepustowości wyniesie 0, gdy używana będzie domyślna wartość stałej K2. Dzielenie zera przez każdą liczbę zawsze da zero, dlatego przyjęcie domyślnych wartości stałych spowoduje wyeliminowanie wpływu Obciąże­nia na wynik obliczenia metryki IGRP.

·         Wynik drugiej operacji, który zawsze wynosi zero przy zaakceptowaniu domyślnych wartości stałych, dodawany jest do rezultatu pierwszej operacji.

·         Ostatnią operacją w podstawowym obliczeniu metryki jest pomnożenie Opóźnienia przez stałą K3, która domyślnie przyjmuje wartość 1. Przy zaakceptowaniu domyślnej wartości K3 wynik operacji jest zachowaniem oryginalnej wartości Opóźnienia. Na­stępnie wartość ta dodawana jest do rezultatu poprzednich operacji.

 

Dlatego też podstawowe wyliczenie metryki ulega skróceniu do:

 

Metryka = Przepustowość + Opóźnienie

 

W opisanych powyżej działaniach matematycznych da się zauważyć brak czwartej metryki routingu: Niezawodności. Metryka ta używana jest tylko w przypadku, gdy admi­nistrator sieci zmodyfikuje wartość stałej K5. Jeśli wartość ta będzie większa niż 0, wtedy wykonywana jest następująca dodatkowa operacja:

 

Metryka = Metryka x [KS/(Niezawodność + K4)]

 

Gdyby stała KS przyjęła domyślną wartość 0, wtedy powyższa formuła zawsze zwra­całaby zero dla całej łącznej metryki IGRP. Dlatego wykonywana jest jedynie dla KS>0. Jak można zauważyć, stałe K4 i KS używane są do wyważania wpływu metryki nieza­wodności na wartość łącznej metryki. Widząc złożoność tej formuły można dojść do wnio­sku, że beztroskie manipulowanie wartościami stałych tak bywa niebezpieczne.

Bez względu na to, czy używane są wartości domyślne, wynikiem obliczenia metryki IGRP jest łączna metryka, która może obiektywnie ocenić potencjalne trasy przez zróżni­cowaną sieć. Wartość takiej łącznej metryki często opisywana jest jako koszt trasy, a trasa z najniższym kosztem jest trasą najlepszą.

Mechanizmy IGRP

 

Oprócz łącznej metryki routingu, do poprawnego funkcjonowania i utrzymywania stabilnego środowiska sieci złożonej, IGRP opiera się również na szeregu innych mecha­nizmach. Dzielą się one na mechanizmy czasowe i mechanizmy zbieżności.

 

Mechanizmy czasowe

Podobnie jak inne protokoły distance-vector, IGRP utrzymuje integralność swoich ta­blic routingu poprzez wymaganie od routerów dzielenia się...

Zgłoś jeśli naruszono regulamin