Теоретические основы и архитектура

Лабораторная работа объединяет весь модуль: CE-A подключается к PE1 и PE2 одним LACP-пучком, оба PE объявляют один Ethernet Segment (ESI) в режиме all-active, а клиентская подсеть 192.168.100.0/24 живёт в EVI 100 с anycast-шлюзом. Вторая подсеть 192.168.200.0/24 находится в EVI 200 на PE3. Между EVI маршрутизация выполняется симметричным IRB в общем IP-VRF TENANT-A: префиксы подсетей и хосты передаются маршрутами Type 5 и Type 2. Вы проверите маршруты Type 1/2/3/4/5, выбор Designated Forwarder, aliasing, затем выполните тест отказа: отключите линк или PE1 и измерите потерю пакетов. В конце сравните результат с устаревшим вариантом на PW redundancy (active/standby): он показан отдельным блоком только как сопоставление. Предполагается, что подложка IGP/LDP и RR 10.255.0.100 (AS 65000) из предыдущих лабораторных уже работают, а вы знакомы с ESI, Type 5 и IRB из уроков модуля.

Что именно вы строите

Схема объединяет три механизма модуля. Multihoming: CE-A подключён к PE1 и PE2 через один LACP-пучок, оба PE объявляют ES с ESI 00:11:22:33:44:55:66:77:88:10 в режиме all-active. Это даёт маршруты Type 4 (ES), Type 1 per-ES (ESI label, mass withdrawal) и Type 1 per-EVI (aliasing). L2-сервис: EVI 100 соединяет PE1, PE2 и (при необходимости) PE3 по маршрутам Type 2 и Type 3. L3: IP-VRF TENANT-A с симметричным IRB, где подсети 192.168.100.0/24 и 192.168.200.0/24 объявляются Type 5, а хосты - Type 2 с двумя метками. Трафик CE-A -> CE-B проходит L3-lookup на ingress PE (PE1 или PE2), доставляется по метке IP-VRF на PE3, затем L3-lookup на egress PE3 и L2-доставка в EVI 200.

Подготовка и порядок включения

Underlay (OSPF/IS-IS, LDP или SR) и iBGP с RR 10.255.0.100 уже работают, поэтому на RR нужно только активировать address-family l2vpn evpn и назначить route-reflector-client для PE1-PE3. Порядок включения: сначала LACP и ESI (без IRB), затем EVI, потом VRF и IRB, затем Type 5. После каждого шага проверяйте соответствующие маршруты: так вы локализуете ошибку. Одинаковый LACP system-id на PE1 и PE2 задаётся на Junos явно; на других платформах его формирование из настроек ES проверьте командой LACP-статуса. RD уникален на PE (10.255.0.X:100), RT общий; RD IP-VRF тоже уникален на PE, иначе RR выберет один из двух одинаковых маршрутов и потеряет второй путь.

Что показывает каждый тип маршрутов

Type 4 подтверждает, что PE1 и PE2 нашли друг друга по ES-Import RT. Type 1 per-ES c MAX-ET (0xFFFFFFFF) отвечает за mass withdrawal, per-EVI - за aliasing. Type 3 строит списки ingress replication для EVI. Type 2 на PE1 и PE2 содержит MAC и IP CE-A: сначала его объявляет PE, на который хэшем LACP попал трафик CE, но благодаря per-EVI A-D удалённый PE устанавливает оба next hop. Type 5 передаёт префикс подсети с меткой IP-VRF. Если оба PE объявляют одинаковый префикс (оба имеют интерфейс IRB), PE3 строит ECMP из двух next hop с равной стоимостью; именно это ожидается в таблице TENANT-A на PE3.

Тест отказа и сходимость

Рассмотрите три события. 1) Отключение порта на PE1 (shutdown интерфейса): PE1 обнаруживает потерю линка локально, отзывает per-ES A-D и Type 2, удалённые PE сразу исключают PE1 из next hop для MAC этого ES (mass withdrawal); CE-A по LACP перераспределяет поток на оставшийся линк. Потери определяются временем обнаружения LACP/линка и обработкой BGP и обычно измеряются долями секунды (зависит от платформы и нагрузки). 2) Отказ всего PE1 (перезагрузка или обрыв питания): PE1 не может отозвать маршруты; их удаляет RR после падения сессии BGP (hold timer), либо раньше - когда IGP и next hop tracking отмечают недоступность loopback PE1, либо BFD для BGP/IGP. Без BFD и без быстрого обнаружения сессии BGP потери могут длиться десятки секунд. 3) Возврат линка: PE1 заново объявляет ES, запускается DF wait timer (по умолчанию 3 с), DF для VLAN пересчитывается; из-за возврата роли DF возможен краткий разрыв BUM-пересылки.

Сравнение с PW redundancy

В устаревшем варианте (приведён отдельным блоком) PE3 держит основной PW до PE1 и резервный PW до PE2, а CE-A подключён к обоим PE активно/пассивно (например, STP или MC-LAG). Активен один путь, второй простаивает; при отказе PE1 PE3 переключается на резервный PW по PW status или после обнаружения отказа (BFD, LDP keepalive), а таблицы MAC сбрасываются MAC withdrawal. Нет aliasing, нет межподсетевой маршрутизации Type 5, каждый PW настраивается вручную, а число PW растёт с числом клиентов. EVPN даёт стандартное поведение одной общей конфигурацией ES и сервиса, но требует поддержки платформой всех типов маршрутов и согласованных настроек LACP/ESI.

Типичные ошибки и диагностика

Если ping не проходит, идите снизу вверх: (1) LACP и ESI; (2) Type 4 и DF; (3) EVI: Type 2 и Type 3; (4) VRF и IRB: интерфейс привязан к VRF, anycast MAC одинаков; (5) Type 5 и RT IP-VRF; (6) MTU и фильтры. Для теста потерь используйте длительный ping с интервалом 10 мс (rapid ping) и считайте число потерянных запросов: потеря одного запроса при интервале 10 мс примерно соответствует 10 мс простоя. Результат зависит от платформы, поэтому записывайте его в протокол лабораторной вместе с версией ПО.

Схема архитектуры и топология

text
                       RR 10.255.0.100 (AS 65000)
                                 |
           +---------------------+---------------------+
           |                     |                     |
     +-----+------+        +-----+-----+         +-----+------+
     | PE1        |--------|    P1     |---------| PE3        |
     | 10.255.0.1 |        | 10.255.0.11|        | 10.255.0.3 |
     +-----+------+        +-----+-----+         +-----+------+
           |                     |                     |
           |               +-----+-----+          EVI 200, VLAN 200
           |               | PE2       |          192.168.200.0/24
           |               | 10.255.0.2|                |
           |               +-----+-----+           +----+----+
           | ae10 / Po10         | ae10 / Po10     |  CE-B   |
           |   ESI ...88:10      |                 | .200.10 |
           +-------+   +---------+                 +---------+
                   |   |
                +--+---+--+
                |  CE-A   |  EVI 100, VLAN 100, 192.168.100.0/24
                | .100.10 |  anycast gateway 192.168.100.1
                +---------+
IP-VRF TENANT-A (RT 65000:1100): PE1, PE2, PE3 - symmetric IRB, Type 5

Схема прохождения трафика и стек меток

text
1. Bring up the LACP bundle: CE-A to PE1 and PE2 with the same LACP system-id
   on both PEs and the same ESI on ae10/Po10.
2. Check Type 4 (ES) and Type 1 (A-D per-ES and per-EVI) routes from PE1 and
   PE2; confirm one DF per VLAN and the all-active mode.
3. Verify Type 2 and Type 3 routes in EVI 100 and EVI 200 (MAC, IP, IM).
4. Check Type 5: PE3 receives 192.168.100.0/24 from PE1 and PE2 (two next
   hops, ECMP) and PE1/PE2 receive 192.168.200.0/24 from PE3.
5. Ping CE-A -> CE-B (192.168.100.10 -> 192.168.200.10) through the anycast
   gateway, then start a long ping with size 1400.
6. Failure test: shut the PE1 link; PE1 withdraws per-ES A-D, PE3 invalidates
   PE1 for the ES at once (mass withdrawal), the DF is recomputed.
7. Restore the link, repeat the test with a PE1 reload, and compare with the
   legacy active/standby PW redundancy block.

Таблица состояний и параметров

ЭлементЗначение в лабораторнойЧто проверить
Сегмент ESESI ...88:10, all-active, ae10/Po10 на PE1 и PE2Type 4 от обоих PE, один DF на VLAN
EVI 100VLAN 100, RT 65000:100, 192.168.100.0/24, anycast 192.168.100.1Type 2 с MAC и IP, Type 3 от PE1/PE2/PE3
EVI 200VLAN 200, RT 65000:200, 192.168.200.0/24 на PE3Type 2 хоста CE-B
IP-VRF TENANT-ART 65000:1100, симметричный IRBType 5 для обеих подсетей, ECMP на PE1/PE2
Тест отказаВыключение линка PE1 и перезагрузка PE1Потери пакетов, mass withdrawal, смена DF

Архитектурная модель и принцип работы

В реальных сетях оператора MPLS объединяет оборудование различных производителей. Ниже представлены практические примеры конфигурации и вывода команд Data Plane / Control Plane для четырёх платформ: Cisco IOS-XE/XR, Huawei VRP, Juniper Junos и MikroTik RouterOS v7. Обратите внимание на различия в синтаксисе и механизмах распределения меток.

Практическая конфигурация (Cisco, Huawei, Juniper, MikroTik)

Cisco (IOS-XE/XR)

text
vrf definition TENANT-A
 rd 10.255.0.3:1100
 address-family ipv4
  route-target export 65000:1100
  route-target import 65000:1100
 exit-address-family
l2vpn evpn instance 200 vlan-based
 encapsulation mpls
 rd 10.255.0.3:200
 route-target export 65000:200
 route-target import 65000:200
 default-gateway advertise enable
interface GigabitEthernet2
 no ip address
 service instance 200 ethernet
  encapsulation dot1q 200
  rewrite ingress tag pop 1 symmetric
bridge-domain 200
 member GigabitEthernet2 service-instance 200
 member evpn-instance 200
router bgp 65000
 neighbor 10.255.0.100 remote-as 65000
 neighbor 10.255.0.100 update-source Loopback0
 address-family l2vpn evpn
  neighbor 10.255.0.100 activate
  neighbor 10.255.0.100 send-community both
 address-family ipv4 vrf TENANT-A
  advertise l2vpn evpn
  redistribute connected
interface BDI200
 vrf forwarding TENANT-A
 ip address 192.168.200.1 255.255.255.0
 mac-address 0000.5e00.00c8

Это конфигурация PE3 (одиночный сайт CE-B). VRF TENANT-A с RD 10.255.0.3:1100 и RT 65000:1100 совпадает по RT с VRF на PE1/PE2, поэтому Type 5 подсети 192.168.100.0/24 импортируются сюда. EVI 200 с RT 65000:200 даёт L2-сервис для CE-B через bridge-domain 200, а BDI200 в VRF образует шлюз 192.168.200.1. Команда advertise l2vpn evpn в address-family ipv4 vrf превращает подключённые маршруты VRF в Type 5; последние строки задают IP и MAC шлюза.

Huawei (VRP)