header image
Home arrow Technologia MPLS arrow Technologia MPLS arrow MPLS VPN - Virtual Private Networks
MPLS VPN - Virtual Private Networks E-mail
Oceny: / 23
KiepskiBardzo dobry 

W artykule poruszam aspekty budowania sieci VPN w oparciu o MPLS (Multiprotocol Label Switching) i BGP (Border Gateway Protocol). BGP/MPLS IP VPN jest jednym z popularniejszych sposobów budowania VPN opartych o routery brzegowe dostawcy usług - PE (Provider Edge) VPN. Sposób ten jest opisany w standardach IETF i obsługiwany przez większość dostawców routerów IP. Metoda BGP/MPLS, wykorzystywana jest przez dostawców usług do dystrybucji poprzez BGP informacji o osiągalności adresów IP pomiędzy oddziałami należącymi do tej samej sieci VPN.


Łączenie dwóch oddziałów może napotkać pewne problemy, jeśli w danej lokalizacji mamy dwa różne VPN stosujące tą samą przestrzeń adresową (np. ten sam zakres adresów z prywatnej puli IP). Jest to bardzo częsta sytuacja, gdyż firmy stosują w swych sieciach prywatną adresację IP. Oczywiście z punktu widzenia każdego z VPN, adresy te są unikalne i nie powtarzające się. By temu przeciwdziałać, każdy router PE zarządza pewną liczbą oddzielnych tablic przekazywania pakietów. Jedna z tych tablic jest domyślną tablicą przekazywania (routingu) stosowaną w sieciach publicznych, natomiast pozostałe tablice są przeznaczone dla sieci VPN, w których odbywa się także routing, ale odseparowany od pozostałych sieci VPN i sieci Internet. W każdym routerze PE operator musi skonfigurować jedną tabelę VRF (VPN Routing and Forwarding – routing i przekazywanie dla VPN) dla każdego VPN, do którego PE jest przyłączony.

 Każdy interfejs łączący klienta z dostawcą, czyli PE z CE, jest skojarzony z jedną tabelą VRF. Jeśli jakikolwiek pakiet przyjdzie od urządzenia klienta (nazywanego tu brzegiem klienta CE - Customer Edge), to jego adres przeznaczenia jest wyszukiwany w skojarzonej tabeli VRF, by określić jak routować pakiet przez szkielet dostawcy. Tabela VRF w routerze PE jest budowana na podstawie informacji o trasach nauczonych od urządzeń brzegu klienta CE. Metoda BGP/MPLS nie standaryzuje żadnej konkretnej metody nauki tras, PE może nauczyć się tras stosując zarówno protokół dynamiczny routingu, jakim jest np., BGP lub OSPF (Open Shortest Path First) albo przez konfigurację tras statycznych. PE muszą także nauczyć się tras od innych routerów PE w tym samym VPN.

Routery PE wykorzystują pojedynczy proces BGP do dystrybucji tras od różnych VPN, dlatego też protokół BGP należy rozszerzyć o możliwość przekazywania nakłądających się, tych samych adresów IP w sieciach VPN. W przeciwnym przypadku BGP zainstaluje w swojej tabeli tylko jeden adres czyniąc pozostałe nieosiągalne, a tym samych uniemożliwiając komunikację w VPN o tych samych przestrzeniach adresowych. Aby temu przeciwdziałać zastosowano nową rodzinę adresacji i kontroli dystrybucji tras.

Istniejące rozszerzenia wieloprotokołowe MP-BGP (MultiProtocol BGP) umożliwiają BGP przenoszenie tras z wielu rodzin adresacji. Techniki BGP/MPLS wprowadzają rodzinę adresów VPN-IPv4. Adres VPN-IPv4 składa się 12-bajtowego pola, zaczynającego się 8-bajtami RD (Route Distinguisher) i kończącego się 4-bajtowym klasycznym adresem IPv4. Jeśli kilka sieci VPN stosuje te same prefiksy IPv4, to router PE może translować je na kilka unikalnych prefiksów adresu VPN-IPv4.

Jeśli router PE nauczy się klasycznej trasy IPv4 od routera CE, to konwertuje tą trasę na unikalną trasę VPN, która jest eksportowana do BGP. BGP następnie rozgłasza tą trasę do innych routerów PE, które potrzebują ją znać. Jeśli trasa VPN zostanie wybrana przez proces decyzyjny BGP, to jest ona konwertowana znowu na postaci trasy IPv4 i importowana do właściwej tabeli VRF w odległym routerze PE. Ostatecznie nauczona w ten sposób trasa przez VRF w zdalnym PE, zostanie rozgłoszona do przyłączonych do niego routerów CE.

Adresy VPN-IPv6 są obsługiwane w tan sam sposób.

Oczywiście w każdym routerze PE należy skonfigurować dwa zbiory tras przeznaczeń dla każdego VRF, tzw. export route targets dla tras, które należy rozgłaszać przez BGP i import route targets, by określić, do którego VRF otrzymana trasa VPN ma zostać zainstalowana.

Kiedy router PE rozgłasza trasy VPN poprzez BGP do innych routerów PE, to także przypisuje do niej i również rozgłasza etykietę MPLS (MPLS label), która nazywana jest etykietą VPN. Jeśli inne routery PE wysyłają pakiety z danymi klienta do przeznaczenia identyfikowanego przez otrzymaną trasę BGP, to dodają one tą etykietę MPLS VPN do nagłówka enkapsulowanego pakietu i tunelują go do routera PE następnego skoku, który zapoczątkował trasę BGP. W tym routerze PE, etykieta lokalnie identyfikuje kontekst IP VPN (VRF), przez który etykietowany pakiet musi zostać obsłużony.

Jak więc ostatecznie odbywa się przekazywanie? Po pierwsze, kiedy router PE otrzyma pakiet IP od urządzenia CE, to wybiera odpowiednią tablicę VRF, w której przepatruje adres przeznaczenia pakietu, w zależności od wejściowego interfejsu pakietu (skojarzenie PE-CE-VRF). Po drugie, pakiet musi przejść przez szkielet dostawcy do oddalonego PE, który jest następnym skokiem BGP, tak jak to zostało wyznaczone w odpowiedniej tabeli VRF. By to wykonać, pakiet jest formowany do postaci pakietu MPLS z etykietą VPN dodaną do stosu etykiet. Pakiet jest tunelowany do routera następnego skoku BGP. Ostatecznie, w oddalonym PE, kiedy pakiet opuści tunel, przeglądana jest etykieta MPLS VPN. Zdalny PE określa na podstawie tej etykiety instancję VRF, w której następnie powinien zostać przetworzony pakiet lub określa interfejs, przez który powinien być transmitowany pakiet do prawidłowego urządzenia CE.

Tunelowanie etykietowanych pakietów IP VPN umożliwia utrzymywanie wszystkich tras VPN poza routerami rdzeniowymi dostawcy. Jest to niezbędne by zapewnienia skalowalności tego mechanizmu. Szkielet dostawcy nie musi znać tras do urządzeń CE, tylko zna do PE. Jeśli szkielet obsługuje MPLS jako technologię tunelującą, to router PE dodaje tylko następną etykietę MPLS (skojarzona z adresem zdalnego PE) do stosu etykiet pakietu, a następnie pakiet jest przełączany przez szkielet sieci do zdalnego PE.

< Poprzedni   Następny >