Zwiększanie niezawodności ruterów

Niezawodność działania sieci jest jednym z jej najważniejszych parametrów funkcjonalnych. Można ją wyrazić jako miarę dostępności sieci w statystycznym odcinku czasu, np. przez stosunek czasu pracy bezawaryjnej do czasu całkowitego, liczbę awarii w 1 mln godzin, sumaryczny czas awarii w ciągu roku. Sieć ma wysoki poziom dostępności (high availability), gdy możemy zagwarantować współczynnik bezawaryjnego czasu pracy wynoszący 99,999% lub więcej.

Niezawodność działania sieci jest jednym z jej najważniejszych parametrów funkcjonalnych. Można ją wyrazić jako miarę dostępności sieci w statystycznym odcinku czasu, np. przez stosunek czasu pracy bezawaryjnej do czasu całkowitego, liczbę awarii w 1 mln godzin, sumaryczny czas awarii w ciągu roku. Sieć ma wysoki poziom dostępności (high availability), gdy możemy zagwarantować współczynnik bezawaryjnego czasu pracy wynoszący 99,999% lub więcej.

Najczęstszą metodą zwiększania niezawodności jest wykorzystanie nadmiarowości w sieci przez zwielokrotnianie liczby łączy i urządzeń (np. ruterów). Może się wydawać, że takie rozwiązanie gwarantuje wysoki poziom dostępności. Często jednak tak nie jest. Przykładowo, dla redundantnych sieci w warstwie 2., działających z wykorzystaniem protokołu Spanning Tree, wynikająca z awarii łącza lub przełącznika zmiana topologii sieci uruchamia proces rekonwergencji trwający nawet do 50 s. W tym czasie ruch sieciowy, generowany przez użytkowników, nie jest przesyłany. Również na zbudowanie obrazu nowej topologii przez działające w warstwie 3. protokoły rutingu potrzeba czasu, szczególnie w rozległych sieciach.

Z tego względu, a także z uwagi na koszt związany z instalacją nadmiarowych ruterów, istotnego znaczenia nabiera kwestia podwyższenia niezawodności działania pojedynczych urządzeń. W szczególności dotyczy to ruterów szkieletowych. Zazwyczaj osiąga się to poprzez podwojenie najważniejszych modułów rutera, takich jak centralny moduł sterująco-przełączający (RP, Route Processor). W razie awarii aktywnego modułu następuje przełączenie sterowania na moduł zapasowy (RP switchover). Problem polega na tym, jak zminimalizować czas, który upływa do momentu, gdy zapasowy moduł jest już w pełni gotów do obsługi ruchu, oraz jak zapewnić nieprzerwane przesyłanie pakietów w trakcie przełączenia.

Architektura rutera i przełączanie pakietów

Co to znaczy "wysoki poziom dostępności" ?

Co to znaczy "wysoki poziom dostępności" ?

Pierwszą z głównych funkcji, które pełni ruter szkieletowy, jest sterowanie całością systemu (control plane), drugą - przesyłanie pakietów (forwarding plane). Warunkiem koniecznym dla stabilnej i wydajnej pracy systemu jest ich rozdzielenie. Wśród zadań należących do control plane są implementacja dynamicznych protokołów rutingu i budowa centralnej tablicy rutingu IP. W tablicy tej, zwanej RIB (Routing Information Base), poszczególne wpisy są wypadkową działania wielu protokołów rutingu, takich jak BGP, OSPF, IS-IS i inne. Wpis w RIB, opisujący ścieżkę prowadzącą do danej sieci IP, zawiera informacje niezbędne do kierowania pakietów, takie jak interfejs wyjściowy i kolejny ruter na ścieżce do celu (next hop). Określa także, który z protokołów rutingu wygenerował tę ścieżkę, oraz podaje jej metrykę (cost).

Tablica rutingu

Tablica rutingu

Zadaniem należącym do forwarding plane jest budowa struktury umożliwiającej szybkie przełączanie pakietów (dzięki przechowywaniu prefiksów sieci i podsieci IP w postaci ułatwiającej poszukiwanie informacji o danej ścieżce). Jednym z przykładów takiego rozwiązania jest CEF (Cisco Express Forwarding*). Struktura CEF obejmuje drzewiasty zbiór prefiksów, zwany FIB (Forwarding Information Base), oraz tablicę złożoną z elementów opisujących parametry warstwy 2., tzw. Adjacency Table (AT). Drzewo FIB jest zorganizowane hierarchicznie, kolejne podsieci są odgałęzieniami sieci macierzystej. Kiedy na interfejsie wejściowym rutera pojawia się pakiet, drzewiasta organizacja FIB ułatwia szybkie odszukanie elementu opisującego właściwy prefiks IP. Element ten z kolei wskazuje na pozycję w tablicy AT, która zawiera takie informacje, jak interfejs wyjściowy oraz adres MAC następnego rutera (next hop). Dzięki temu pakiet zostaje błyskawicznie zaadresowany i skierowany do kolejnego rutera przez interfejs wyjściowy.

Oczywiście, główna tablica rutingu RIB stanowi źródło informacji dla struktur przełączania, takich jak FIB. Zmiana topologii sieciowej i tablicy RIB wymusza aktualizację FIB. Warto zauważyć, że ruter szkieletowy jest zwykle zbudowany w architekturze rozproszonej (distributed architecture). Każdy z modułów liniowych dysponuje lokalną tablicą FIB, umożliwiającą autonomiczne przełączenie pakietu bez konieczności kierowania go do RP. Moduł RP pełni główną rolę, kontrolując działanie protokołów rutingu i budując centralne tablice: RIB i FIB. Ta ostatnia jest kopiowana do wszystkich modułów liniowych, które powinny w każdej chwili dysponować tą samą, aktualną wersją FIB.

Zmniejszanie czasu awarii - proste techniki

W ruterach szkieletowych o architekturze rozproszonej są dostępne techniki izolujące problemy poszczególnych modułów od reszty systemu oraz ograniczające czas, który jest potrzebny do aktywacji zapasowego modułu RP i przywrócenia normalnego przełączania pakietów.

Technika Single Line Card Reload* umożliwia poprawną pracę systemu, gdy jedna z kart liniowych ulega awarii. W czasie, gdy karta jest restartowana, ruter nieprzerwanie przełącza pozostały ruch. Z kolei Route Processor Redundancy* (RPR) polega na odpowiednim przygotowaniu zapasowego modułu RP do przejęcia sterowania. Na module tym zostaje uruchomione oprogramowanie sterujące i przeprowadzona wstępna inicjalizacja struktur danych. W momencie przełączenia konieczne jest jednak załadowanie konfiguracji, włączenie odpowiednich procesów oraz restart wszystkich kart liniowych. Podobna technika, zwana Fast Software Upgrade*, pozwala na skrócenie czasu aktualizacji oprogramowania - przeprowadza się tę czynność na zapasowym module niezależnie od głównego, a następnie dokonuje wymuszonego przełączenia. Wymienione techniki pozwalają na skrócenie czasu awarii do kilku minut. Udoskonalona technika RPR, znana jako RPR Plus*, umożliwia uniknięcie restartu kart liniowych w trakcie przełączenia oraz przeprowadza w większym zakresie wstępną inicjalizację zapasowego modułu RP, dzięki czemu czas awarii jest ograniczony do ok. 2 min.

Wszystkie ze wspominanych technik są przydatne, ale nie zapewniają nieprzerwanego przesyłania pakietów w trakcie przekazywania sterowania do zapasowego modułu RP.


TOP 200