P-маршрутизаторы подключаются к другим P-маршрутизаторам и к PE-маршрутизаторам. P-маршрутизаторы выполняют функции коммутации по меткам. При этом пакеты передаются только по меткам MPLS. В сетях MPLS-VPN для Р-маршрутизаторов используется двухуровневый стек меток, с помощью которого пакеты передаются по магистрали из одного сайта VPN в другой. Обычно P-маршрутизаторы связываются друг с другом с помощью IGP-протокола маршрутизации (например, IS-IS или OSPF) и не имеют никакой информации о других маршрутах, кроме маршрутов, ведущих к PE-маршрутизаторам.

PE-маршрутизаторы вводят префиксы своих IP-адресов/32 в магистральные таблицы маршрутизации IGP. Это позволяет MPLS на каждом узле магистральной сети присваивать метки, указывающие на маршрут, ведущий к тому или иному PE-маршрутизатору.

Когда устройство PE получает пакет от устройства CE, оно выбирает определенную таблицу VRF для поиска адреса назначения для этого пакета. Если такой адрес найден и если пакет предназначен для устройства CE, подключенного к данному PE-маршрутизатору, пакет направляется прямо на устройство CE и не передается в магистраль.

Если же пакет не предназначен для устройства CE, подключенного к данному устройству PE, для него находится следующий узел (BGP Next Hop), а также метка, которую этот узел BGP next-hop присвоил адресу назначения. Эта метка записывается в стек меток данного пакета и становится его Внутренней меткой.

Если следующий узел IGP (IBGP или OSPF) отличается от следующего узла BGP, в стек записывается дополнительная метка. Эта метка, указывающая на следующий узел BGP, становится Внешней меткой. (Если следующий узел BGP совпадает со следующим узлом IGP, вторая метка может не присваиваться).

После этого MPLS доставляет пакет по магистрали до соответствующего устройства CE в соответствии с Внешней меткой MPLS. Это значит, что все решения P-маршрутизаторов и PE-маршрутизаторов принимаются на основе данных MPLS, а IP-заголовок пакета не рассматривается, пока пакет не поступит на оконечный PE-маршрутизатор.

P-маршрутизатор (или PE-маршрутизатор), находящийся перед оконечным PE-маршрутизатором, удаляет Внешнюю метку из стека MPLS и направляет пакет оконечному PE-маршрутизатору. Оконечный PE-маршрутизатор просматривает Внутреннюю метку и отправляет пакет соответствующему устройству CE. Таким образом, до устройства CE доходит обычный IP-пакет, который не несет на себе никаких следов MPLS.

Чтобы изолировать сети VPN друг от друга, нужно сделать так, чтобы ни один магистральный маршрутизатор не принимал никаких пакетов с метками от соседних немагистральных устройств, кроме следующих случаев:

• когда Внешняя метка в стеке меток была сообщена P-маршрутизатором (магистральным маршрутизатором) немагистральному устройству;

• когда P-маршрутизатор (магистральный маршрутизатор) определяет, что в результате использования данной метки пакет покинет магистраль до считывания Внутренней метки в сетке и до считывания заголовка IP.

Эти ограничения необходимы для того, чтобы исключить передачу в VPN пакетов, которые для нее не предназначены.

Таблицы vrf | Построение виртуальных частных сетей | Варианты топологии сетей mpls-vpn