Border Gateway Protocol i skalowalność routingu

Autor: Roger Morrison
Data Utworzenia: 21 Wrzesień 2021
Data Aktualizacji: 21 Czerwiec 2024
Anonim
Routing BGP dla sieci końcowych - Szkolenie
Wideo: Routing BGP dla sieci końcowych - Szkolenie

Zawartość


Na wynos:

Skalowalność routingu może bardzo pomóc protokół Border Gateway, który pomaga efektywniej trasować pakiety.

Ważną koncepcją w informatyce jest skalowalnośćlub jak dobrze radzi sobie z pewnym zadaniem, gdy zwiększa się rozmiar zadania. Na przykład pisanie numerów telefonów na skrawkach papieru działa całkiem dobrze, gdy trzeba śledzić kilkanaście numerów telefonów: znalezienie danego zajmuje tylko dziesięć sekund. Ale w przypadku miasta z 100 000 mieszkańców znalezienie liczby zajmuje teraz sto tysięcy sekund (około jednego dnia). Korzystając z książki telefonicznej dla miasta o populacji 100 000, znalezienie numeru telefonu o danym nazwisku zajmuje około pół minuty. Dużą zaletą jest nie tyle to, że korzystanie z książki jest znacznie szybsze niż używanie pojedynczych skrawków papieru, ale raczej, że podwojenie rozmiaru problemu nie podwaja ilości pracy, aby go rozwiązać: przeszukiwanie telefonu książka, która jest dwa razy większa, zajmuje tylko kilka dodatkowych sekund: czy to imię, którego szukam w pierwszej połowie drugiej połowy? Nie trwa to dwa razy dłużej, dlatego książki telefoniczne są skalowalne, ale nie są to świstki. Skalowalność routingu polega na zastosowaniu pojęcia skalowalności do problemu dostarczania pakietów do właściwego miejsca docelowego przez Internet.


Skalowalność w routingu danych

Skalowalność routingu składa się z dwóch kwestii: płaszczyzny zarządzania i płaszczyzny danych.

Płaszczyzna danych jest centralnym lub rozproszonym modułem w routerze, który przyjmuje przychodzące pakiety i przekazuje je do następnego routera w drodze do miejsca docelowego. Ta funkcja musi dla każdego przekazanego pakietu znaleźć następny przeskok w tabeli przesyłania. Dwoma głównymi mechanizmami do tego celu jest TCAM, specjalistyczna pamięć z wbudowanym sprzętowym wsparciem do przeszukiwania go oraz regularna pamięć, która jest przeszukiwana za pomocą zaawansowanych algorytmów. Szybkość wyszukiwania nie spada wraz ze wzrostem wielkości tabeli. Jednak rozmiar TCAM lub pamięci rośnie liniowo (lub nieco szybciej niż w przypadku wyszukiwania wielopoziomowego), co zwiększa koszt i zużycie energii. Ponadto wraz ze wzrostem liczby wyszukiwań tabeli przekazywania na sekundę należy stosować droższe i energochłonne technologie. Takie wzrosty są nieuniknione w miarę wzrostu prędkości interfejsu, ale zależą również od średnich lub najgorszych wielkości pakietów i liczby interfejsów na urządzenie lub na moduł / moduł w niektórych architekturach routerów.


Podczas warsztatów poświęconych routingu i adresowaniu architektury internetowej, które odbyły się w Amsterdamie w 2006 r., Argumentowano, że wymagana prędkość pamięci przewyższa wzrost wydajności w gotowych komponentach, zwłaszcza teraz, gdy oddzielne pamięci SRAM nie są już szeroko stosowane. Wcześniej komputery używały szybkiej pamięci SRAM jako pamięci podręcznej, ale obecnie ta funkcja jest zawarta w samym procesorze, więc SRAM nie jest już łatwo dostępnym układem towarowym. Oznacza to, że koszty routerów z najwyższej półki będą rosły znacznie szybciej niż dotychczas. Jednak po warsztatach routingu i adresowania IAB pojawiło się kilku dostawców routerów, którzy stwierdzili w rozmowach i na listach mailowych, że problem ten nie jest natychmiastowy i że wzrost na obecnie przewidywanych poziomach nie będzie stwarzał problemów w przewidywalnej przyszłości.

Border Gateway Protocol

Płaszczyzna zarządzania składa się z procesora trasy, który wykonuje protokół routingu BGP i powiązanych zadań, które musi wykonać router, aby móc utworzyć tabelę przesyłania. BGP jest protokołem używanym przez dostawców usług internetowych i niektóre inne sieci do wzajemnego informowania się, które adresy IP są używane, więc pakiety przeznaczone dla tych adresów IP mogą być poprawnie przesyłane dalej. Na skalowalność BGP ma wpływ potrzeba komunikowania aktualizacji, przechowywania ich w routerze i ich przetwarzania. W tej chwili przepustowość do rozpowszechniania aktualizacji nie stanowi żadnego problemu. W praktyce wymagania dotyczące pamięci do przechowywania coraz większych tabel BGP mogą stanowić problem, zwykle wynika to z ograniczeń implementacji dostępnych w handlu routerów, a nie z powodu nieodłącznych problemów technologicznych. Procesor trasy to w zasadzie komputer ogólnego zastosowania, który można teraz łatwo zbudować z 16 GB lub więcej pamięci RAM. Obecnie serwer publicznych tras widoków działa z 1 GB pamięci RAM i ma około 40 pełnych kanałów BGP o około 560 000 prefiksów każdy (dane z grudnia 2015 r.).

To jednak pozostawia przetwarzanie. Ilość przetwarzania wymagana dla BGP zależy od liczby aktualizacji BGP i liczby prefiksów na. Ponieważ liczba prefiksów na aktualizację jest raczej niewielka, zignorujemy ten aspekt i po prostu spojrzymy na liczbę aktualizacji. Przypuszczalnie, poza jakimkolwiek autonomicznym wzrostem, liczba aktualizacji rośnie liniowo wraz z liczbą prefiksów. Rzeczywiste przetwarzanie aktualizacji BGP jest bardzo ograniczone, więc wąskim gardłem jest czas potrzebny na dostęp do pamięci w celu wykonania aktualizacji. Również podczas warsztatów routingu i adresowania IAB zaprezentowano informacje wskazujące, że wzrost prędkości pamięci DRAM jest dość ograniczony i nie będzie w stanie nadążyć za wzrostem tablicy routingu.

Synchronizacja tabeli przekazywania

Oprócz osobnych problemów z przekazywaniem i płaszczyzną danych, istnieje problem synchronizacji tabeli przekazywania z tabelą BGP / routingu po aktualizacjach. W zależności od architektury tabeli przesyłania, jej aktualizacja może być stosunkowo czasochłonna. BGP jest często opisywany jako protokół routingu „wektora ścieżki”, bardzo podobny do protokołów wektora odległości. Jako taki implementuje nieco zmodyfikowaną wersję algorytmu Bellmana-Forda, która przynajmniej teoretycznie wymaga liczby iteracji równych liczbie węzłów (w przypadku BGP: zewnętrzne systemy autonomiczne oraz wewnętrzne routery iBGP ) na wykresie minus jeden, aby uzyskać zbieżność. W praktyce konwergencja odbywa się znacznie szybciej, ponieważ nie można oprzeć się na jak najdłuższej ścieżce między dwiema lokalizacjami w sieci. Jednak znaczna liczba iteracji w postaci odrębnych aktualizacji, które muszą zostać przetworzone, może wystąpić po jednym zdarzeniu z powodu efektów zwielokrotnienia. Na przykład w przypadku, gdy dwa AS łączą się w dwóch lokalizacjach, jedna aktualizacja w pierwszym AS zostanie propagowana dwukrotnie do drugiego AS przez każde połączenie wzajemne. Prowadzi to do następujących możliwych opcji:

Bez błędów, bez stresu - Twój przewodnik krok po kroku do tworzenia oprogramowania zmieniającego życie bez niszczenia życia

Nie możesz poprawić swoich umiejętności programistycznych, gdy nikt nie dba o jakość oprogramowania.

Ten aspekt BGP nie jest wyraźnie rozpoznawany przez wiele osób, chociaż badania, takie jak tłumienie klap tras, pogarszają konwergencję routingu internetowego, które dotyczą wynikowego zachowania.

Mając powyższe na uwadze, możemy stwierdzić, że BGP ma pewne problemy ze skalowaniem: protokół i routery implementujące go nie są przygotowane na Internet, w którym BGP może zarządzać może 5 milionami, a na pewno 50 milionami indywidualnych prefiksów. Jednak obecny wzrost jest stosunkowo stabilny i wynosi około 16% rocznie w przypadku IPv4, więc nie ma powodu do natychmiastowego niepokoju. Jest to szczególnie prawdziwe w przypadku IPv6, który obecnie ma tylko 25 000 prefiksów w BGP.