Multihoming - Multihoming

Multihoming to praktyka polegająca na łączeniu hosta lub sieci komputerowej z więcej niż jedną siecią. Można to zrobić w celu zwiększenia niezawodności lub wydajności.

Typowa sieć hosta lub użytkownika końcowego jest podłączona tylko do jednej sieci. Łączenie się z wieloma sieciami może zwiększyć niezawodność, ponieważ w przypadku awarii jednego połączenia pakiety mogą być nadal kierowane przez pozostałe połączenie. Łączenie się z wieloma sieciami może również poprawić wydajność, ponieważ dane mogą być przesyłane i odbierane przez wiele połączeń jednocześnie , zwiększając przepustowość i, w zależności od miejsca docelowego, bardziej wydajne może być kierowanie przez jedną lub drugą sieć.

Warianty

Istnieje kilka różnych sposobów wykonywania połączeń wieloosobowych.

Host multihoming

Pojedynczy host może być podłączony do wielu sieci. Na przykład telefon komórkowy może być jednocześnie podłączony do sieci Wi-Fi i sieci 3G , a komputer stacjonarny może być podłączony zarówno do sieci domowej, jak i do sieci VPN . Hostowi wieloadresowemu jest zwykle przypisanych wiele adresów, po jednym na podłączoną sieć.

Klasyczny multihoming

W klasycznym multihoming sieć jest połączona z wieloma dostawcami i używa własnego zakresu adresów (zwykle z zakresu Provider Independent (PI)). Routery brzegowe sieci komunikują się z dostawcami za pomocą protokołu routingu dynamicznego , zwykle BGP , który informuje wszystkich dostawców o zakresie adresów sieci. Jeśli jedno z łączy ulegnie awarii, protokół routingu dynamicznego rozpoznaje awarię w ciągu kilku sekund lub minut i ponownie konfiguruje swoje tablice routingu, aby w sposób niewidoczny dla hostów korzystały z pozostałych łączy.

Klasyczny multihoming jest kosztowny, ponieważ wymaga użycia przestrzeni adresowej akceptowanej przez wszystkich dostawców, publicznego numeru systemu autonomicznego (AS) oraz protokołu routingu dynamicznego. Ponieważ wieloadresowej przestrzeni adresowej nie można agregować, powoduje to wzrost globalnej tablicy routingu.

Multihoming z wieloma adresami

W tym podejściu sieć jest połączona z wieloma dostawcami i ma przypisanych wiele zakresów adresów, po jednym dla każdego dostawcy. Hostom przypisuje się wiele adresów, po jednym dla każdego dostawcy.

Multihoming z wieloma adresami jest tańszy niż klasyczny multihoming i może być używany bez współpracy ze strony dostawców (np. W sieci domowej), ale wymaga dodatkowej technologii w celu wykonania routingu:

  • w przypadku ruchu przychodzącego hosty muszą być powiązane z wieloma rekordami DNS A lub AAAA , aby były osiągalne przez wszystkich dostawców;
  • w przypadku ruchu wychodzącego do kierowania pakietów przez właściwego dostawcę należy zastosować technikę, taką jak routing zależny od źródła , a hosty muszą wdrożyć rozsądne zasady wyboru adresu źródłowego.

Ostrzeżenia

W przypadku korzystania z połączenia wieloadresowego w celu zwiększenia niezawodności należy dołożyć starań, aby wyeliminować pojedynczy punkt awarii (SPOF):

  • Łączność upstream : dane centrum operacyjne sieci musi mieć wiele łączy upstream do niezależnych dostawców. Ponadto, aby zmniejszyć możliwość jednoczesnego uszkodzenia wszystkich łączy upstream, fizyczna lokalizacja każdego z tych łączy upstream powinna być fizycznie zróżnicowana: na tyle daleko od siebie, aby część maszyny (taka jak koparka ) nie rozłączyła przypadkowo wszystkich połączeń na o tym samym czasie.
  • Routery : Routery i przełączniki muszą być umieszczone w taki sposób, aby żaden pojedynczy sprzęt sieciowy nie kontrolował całego dostępu sieciowego do danego hosta. W szczególności nierzadko zdarza się, że wiele łączy internetowych łączy się w jednym routerze brzegowym. W takiej konfiguracji utrata pojedynczego routera powoduje odłączenie łącza internetowego, pomimo faktu, że w innych przypadkach jest używanych wielu dostawców usług internetowych.
  • Łączność hosta : „niezawodny” host musi być podłączony do sieci za pośrednictwem wielu interfejsów sieciowych , z których każdy jest podłączony do oddzielnego routera lub przełącznika. Alternatywnie, i najlepiej, funkcja danego hosta może być zduplikowana na wielu komputerach, z których każdy jest podłączony do innego routera lub przełącznika.
  • Odwołania do jednostek : host musi być nie tylko dostępny, ale w wielu przypadkach musi być również „przywoływany”, aby był użyteczny. W przypadku większości serwerów oznacza to w szczególności, że rozpoznawanie nazw na ten serwer działa. Na przykład, jeśli awaria pojedynczego elementu uniemożliwia użytkownikom prawidłowe rozpoznanie nazwy DNS tego serwera, to serwer jest faktycznie niedostępny, pomimo swojego innego stanu połączenia.

Zwiększenie liczby używanych interfejsów i łączy oraz zmniejszenie deterministycznego routingu utrudnia administrowanie siecią.

IPv4

Klasyczny multihoming jest dominującą techniką w IPv4. Wymaga to, aby sieć miała własny zakres publicznych adresów IP i publiczny numer AS.

Chociaż dla IPv4 zaimplementowano multihoming z wieloma adresami, nie jest on generalnie używany, ponieważ implementacje hostów nie radzą sobie dobrze z wieloma adresami na interfejs, co wymaga użycia „wirtualnych interfejsów”.

Możliwe jest również zaimplementowanie multihoming dla IPv4 przy użyciu wielu bram NAT .

IPv6

W IPv6 można używać zarówno klasycznego połączenia typu multihoming, jak i multihoming z wieloma adresami.

Klasyczny multihoming

Niezależna przestrzeń adresowa dostawcy (PI) jest dostępna w protokole IPv6. Ta technika ma tę zaletę, że działa jak IPv4, obsługując równoważenie ruchu między wieloma dostawcami i utrzymując istniejące sesje TCP i UDP poprzez cięcia. Krytycy twierdzą, że zwiększony rozmiar tablic routingu potrzebnych do obsługi multi-homingu w ten sposób przytłoczy obecny sprzęt routera. Zwolennicy twierdzą, że nowy sprzęt poradzi sobie ze wzrostem dzięki tańszej pamięci, której cena spada zgodnie z prawem Moore'a . Zwolennicy twierdzą również, że jest to jedyne realne rozwiązanie w tej chwili, a gorsza jest lepsza filozofia wspiera pogląd, że lepiej jest teraz wdrożyć niedoskonałe rozwiązanie niż idealne rozwiązanie, gdy jest już za późno.

Ponieważ wielu dostawców usług internetowych odfiltrowuje ogłoszenia o trasach z małymi prefiksami, będzie to zazwyczaj wymagało alokacji dużych adresów IP o rozmiarze „ISP”, takich jak / 32, aby zapewnić globalną dostępność. Używanie tak dużych prefiksów jest nieefektywnym wykorzystaniem przestrzeni adresowej IPv6; istnieje tylko około 4 miliardy / 32 prefiksy. Jednak z pragmatycznego punktu widzenia przydzielenie / 32 w globalnym koszcie przestrzeni adresowej jest równoważne przydzieleniu pojedynczego adresu IPv4 i może to być akceptowalne, jeśli, co wydaje się prawdopodobne w dającej się przewidzieć przyszłości, liczbę wieloadresowych witryn można policzyć. tylko w milionach, w przeciwieństwie do wielu miliardów punktów końcowych, które nie są wieloadresowe, a które według przewidywań będą stanowiły zdecydowaną większość punktów końcowych IPv6. Niektóre regionalne rejestry internetowe (RIR), takie jak RIPE, zaczęły w tym celu przydzielać / 48 z określonego prefiksu. RIPE przydziela niezależne od dostawcy przestrzenie adresowe IPv6 / 48 lub krótsze od 2001: 0678 :: / 29.

Multihoming z wieloma adresami

W IPv6 zaimplementowano multihoming z wieloma adresami. W przypadku ruchu wychodzącego wymaga to obsługi na hoście, niezależnej od protokołu ( wielościeżkowe TCP , SCTP itp.) Lub specyficznej dla IPv6 (np. SHIM6 ).

Inne rozwiązania

  • Automatyczna renumeracja. Jeśli jedno łącze uplink ulegnie awarii, wszystkie adresy w sieci zostaną przeniesione do nowej podsieci / 48. Rekordy DNS i zapory muszą zostać zaktualizowane, aby przekierować ruch do innej podsieci / 48. Ta zmiana numeracji spowoduje przerwanie bieżących sesji TCP i UDP.
  • Protokół separacji lokalizatorów / identyfikatorów (LISP)

Zobacz też

Bibliografia

Dalsza lektura