Принципы работы MPLS Traffic Engineering
Какие же функции по управлению трафиком предоставляет MPLS Traffic Engineering?
Расширяет возможности стандартных IGP, позволяя маршрутизировать трафик разных классов разными способами.
Передаёт трафик через сеть, используя коммутацию MPLS, что означает поддержку всяческих VPNов.
При построении маршрута учитывает заданные ограничения, например, какие ресурсы необходимы этому классу трафика и сколько их доступно на всех узлах и линиях по пути, или по каким линиям нельзя строить туннели.
Быстрое перестроение путей в соответствии с требованиями в случае аварии.
Периодическая оптимизация путей.
Базовые механизмы работы MPLS TE были рассмотрены в выпуске СДСМ 10, куда я вас и шлю за подробным рассмотрением. А здесь приведу лишь короткую сводку.
Data Plane
С точки зрения передачи данных TE несколько отличается от LDP. Жирным выделены отличия:
В TE-туннель трафик нужно поместить насильно, тогда как в LDP он попадает автоматически
Juniper здесь — исключение.
Первый маршрутизатор навешивает внешнюю MPLS-метку (PUSH LABEL)
Транзитные маршрутизаторы смотрят на какой интерфейс поступил пакет и значение метки и, поменяв её на новую согласно таблице меток, отправляют её в выходной интерфейс (SWAP LABEL)
Предпоследний маршрутизатор снимает транспортную метку (POP LABEL, PHP — зависит от реализации и настроек)
В случае обрыва на пути трафик можно спасти путём перенаправления пакетов в заранее подготовленный туннель.
Control Plane
А вот в плане управления отличия гораздо более значительные. C ними всю оставшуюся дорогу и будем разбираться.
Терминология
LSP — Label Switched Path — вообще говоря, любой путь через сеть MPLS, но порой подразумевают LDP LSP. Однако мы не будем столь категоричны — при необходимости я буду указывать, что имею в виду именно LDP LSP. RSVP LSP — соответственно LSP, построенный с помощью RSVP TE с учётом наложенных ограничений. Может также иногда называться CR-LSP — ConstRaint-based LSP. Туннелем мы будем называть один или несколько MPLS LSP, соединяющих два LSR-маршрутизатора. Метка MPLS — это по сути туннельная инкапсуляция. В случае LDP — каждый LSP — это отдельный туннель. В случае RSVP туннель может состоять из одного или нескольких LSP: основной, резервный, best-effort, временный. Говоря TE-туннель, мы будем подразумевать уже конкретно MPLS Traffic Engineering туннель, построенный RSVP-TE. TEDB — Traffic Engineering Data Base — тот же LSDB протоколов IS-IS/OSPF, но с учётом ресурсов сети, которые интересны модулю TE. CSPF — Constrained Shortest Path First — расширение алгоритма SPF, которое ищет кратчайший путь с учётом наложенных ограничений.
Итак, MPLS TE хочет строить LSP с учётом требуемых ресурсов и пожеланий оператора, поэтому столь простой LDP с его лучшим маршрутом тут не у дел. И его место занимает RSVP-TE — наследник отвергнутого стеком TCP/IP протокола RSVP. TE работает в тесном симбиозе с IGP. Хотя правильнее это называть паразитизмом. Он вынуждает их (OSPF или IS-IS) служить себе: переносить нужную ему информацию и тем самым наполнять TEDB.
Процесс выглядит следующим образом:
IGP собирает со всей сети информацию: — о линиях и сетях, — о метриках, — о доступных ресурсах, — о характеристиках линий. И заполняет TEDB, где всё это отражено.
Когда RSVP-TE хочет построить LSP до какого-то узла, он просто обращается к CSPF и говорит: «Хочу кратчайший маршрут до точки G с вот этими ограничениями». Ограничения могут быть следующими: — требуемая полоса пропускания, — определённый путь или линии, — характеристики линии.
Из запроса RSVP-TE CSPF берёт ограничения, а из TEDB — реальную информацию о сети. И выдаёт маршрут… или не выдаёт, если ограничения удовлетворить не удалось.
Когда маршрут получен, RSVP-TE отправляет RSVP PATH в эту точку G с запросом на резервирование ресурсов.
А точка G возвращает RSVP RESV — так резервируются ресурсы на всём пути. И если RESV вернулся с хорошими новостями, RSVP LSP/туннель поднимается.
Всё это подробно и в красках в статье СДСМ10. А ещё там же самый простой пример на практике.
Далее мы будем ходить вокруг да около вот этой схемы:
У нас есть L3VPN-клиент, офисы которого подключены к Linkmeup_R1 и Linkmeup_R4.
Last updated