Вспоминаем VPLS

Думаю, что все уже прочитали выпуск про L2VPN и представляют себе, что такое VPLS и с чем его едят. Немного освежим в памяти какие виды VPLS существуют на сегодняшний день и чем же они существенно отличаются:

  • VPLS LDP-signaling (Martini)

  • VPLS LDP-signaling with BGP-Autodiscovery

  • VPLS BGP-signaling (Kompella)

VPLS LDP-signaling (Martini) — наиболее простая технология, реализующая функционал VPLS, и в плане конфигурирования и в плане траблшутинга, но сложна в администрировании, так как данная не наделена функцией автоматического поиска РЕ-маршрутизаторов, входящих в один VPLS домен. Поэтому, все РЕ-маршрутизаторы, участвующие в одном VPLS домене, явно прописываются на каждом РЕ-маршрутизаторе вручную. В итоге, добавление нового сайта в существующий VPLS домен подразумевает изменение конфигурации на всех РЕ-маршрутизаторах данного VPLS домена, что, на мой взгляд, не очень удобно, особенно если у клиента 5-6 сайтов и более. К плюсам данной технологии можно отнести ее простоту и отсутствие необходимости в добавлении нового семейства адресов в протокол BGP (для части старого оборудования в тот момент, когда родилась технология, понадобилось бы обновить софт). Tак как вся сигнализация работает исключительно по LDP, то работа данной технологии была понятна инженерами без необходимости что-то заново изучать (всё-таки мы, люди, в основной своей массе существа ленивые). Но в современных реалиях, думаю, что удобнее один раз добавить новое семейство адресов в BGP (пусть даже придется обновиться софт на паре железок), а не бегать постоянно по всем PE-кам при добавлении нейбора в VPLS-домен.

VPLS LDP-signaling with BGP-Autodiscovery. В конечном счете разработчики технологии VPLS LDP-signaling все же поняли свою ошибку — отсутствие автоматического поиска других РЕ-шек сильно ограничивало масштабируемость данного решения в сравнении с VPLS BGP-signaling, поэтому было решено добавить в данную технологию автоматический поиск РЕ-маршрутизаторов. Естественно, средствами LDP это реализовать у них не получилось, поэтому был использован великий и могучий BGP, в который было добавлено еще одно семейство адресов (причем отличное от семейства адресов, использующихся в VPLS Kompella), зарезервировано новое расширенное комьюнити l2vpn-id и добавлен новый FEC — FEC129 (в VPLS LDP используется FEC128). В итоге, при использовании данной технологии, поиск PE маршрутизаторов производится по протоколу BGP, а L2 каналы уже сигнализируются по LDP. На мой взгляд, данными действиями разработчики перечеркнули все, чем они гордились до этого и, если ваше оборудование поддерживает и Martini+BGP AD и Kompella, то лично я бы предпочел второе.

VPLS BGP-signaling (Kompella). Данная технология сильно отличается от двух предыдущих — общая у них только цель — организация виртуальной L2 сети поверх сети провайдера. Данный вид VPLS использует для сигнализации протокол BGP, который обеспечивает и автоматический поиск соседей и сигнализирование виртуальных L2 каналов. В итоге мы имеем хорошо масштабируемое решение, а меньшая распространенность VPLS BGP-signaling в сетях провайдеров обусловлена скорее всего тем, что данная разработка продвигалась Juniper и до определенного времени просто не поддерживалась другими вендорами, а также кажущаяся на первый взгляд сложность самой технологии — чего стоит одна модель распределения меток.

Все перечисленные технологии обеспечивают один и тот же результат — организацию виртуальной L2 сети поверх сети провайдера, разнятся только средства реализации и возможности данных технологий, о которых вы можете почитать в предыдущем выпуске СДСМ. Но у данных технологий есть несколько общих проблем, которые накладывают определенные неудобства при эксплуатации и не дают покоя разработчикам. Таких проблем как минимум три:

  1. Нет возможности для multihomed сайтов (сайтов, подключенных к 2-м и более PE маршрутизаторам одновременно) использовать все линки для передачи трафика (работать в Active-Active mode);

  2. Эти технологии не предоставляют расширенных функций L3, за исключением банального добавления BVI/IRB (Bridge Virtual Interface/Integrated Routing and Bridging) интерфейса в VPLS домен для выхода во внешнюю сеть;

  3. MAC-адреса изучаются исключительно на уровне data plane, что приводит к увеличению флуда BUM (Broadcast, Unknown Unicast, Multicast) трафика в сети провайдера.

Бороться с этими недостатками в VPLS уже бесполезно — это сильно усложнит и так не простые технологии (к примеру есть технология NG-VPLS (Next-Generation VPLS), которая используется P2MP LSP, но о ее реальном использовании я не слышал). Поэтому была изобретена новая технология, в которой данные недостатки были устранены. Сегодня мы поговорим об Ethernet VPN (EVPN). Бытует мнение, что данная технология является развитием VPLS BGP-signaling, думаю, что для простоты восприятия, не будет лишним в данной статье сравнивать EVPN c VPLS BGP-signaling (далее буду писать просто VPLS, что подразумевает именно VPLS BGP-signaling).

Лично мое мнение, что данная технология является гибридом L3VPN и VPLS BGP-signaling. А почему, думаю, вы поймете, дочитав статью до конца. Итак, поехали…