Сучасні хмарні центри обробки даних та розподілені VPN-мережі високої доступності вимагають неблокувальної пропускної здатності та відновлення після збоїв за частки секунди. Історично мережеві інженери використовували агрегацію каналів між кількома шасі (MLAG) або закриті механізми стекування для резервованого підключення серверів до комутаторів leaf.
Проте технологія MLAG зв'язує площини керування двох комутаторів через закритий міжвузловий канал (ISL), що спричиняє розходження конфігурацій, стан розділеного мозку (split-brain) і жорсткі обмеження масштабування. Інженерна рада інтернету (IETF) усунула ці архітектурні бар'єри, стандартизувавши Ethernet Virtual Private Network (EVPN) multi-homing у специфікаціях RFC 7432 та RFC 8365.
Відокремлюючи надлишковість каналів від фізичних з'єднань між комутаторами, EVPN створює відкриту площину керування на базі Multiprotocol BGP (MP-BGP). Застосування ідентифікаторів сегментів Ethernet (ESI), режиму all-active, процедур вибору Designated Forwarder (DF) та симетричних anycast-шлюзів забезпечує надійне активне перенаправлення трафіку на рівнях 2 та 3 у сучасних фабриках.
Глухий кут пропрієтарного MLAG: чому надлишковість каналів рівня 2 не масштабується
Протягом понад двох десятиліть багатошасійна агрегація каналів була основним методом забезпечення подвійного підключення хостів без блокування портів протоколом Spanning Tree (STP). MLAG об'єднує два фізичні комутатори, створюючи для підключеного сервера єдиний агрегований транк LACP стандарту IEEE 802.1AX.
Попри широке використання, архітектура MLAG має фундаментальні недоліки:
- Пропрієтарна синхронізація площини керування: MLAG потребує закритих службових протоколів синхронізації через виділений міжвузловий канал (ISL). Оператори не можуть об'єднувати в одну пару комутатори різних виробників.
- Ризики розділеного мозку (Split-Brain): У разі аварії з'єднання ISL та втрати контрольних сигналів обидва комутатори одночасно активують однакові віртуальні адреси IP і MAC. Це породжує дублювання пакетів, пошкодження таблиць ARP на серверах і втрату трафіку.
- Обмеження двома шасі: Топології MLAG принципово не підтримують об'єднання понад двох комутаторів, що виключає одночасне підключення сервера до трьох або чотирьох вузлів leaf з різних стійок.
EVPN замінює цю закриту структуру, переносячи координацію між шасі у стандартні сигнальні повідомлення MP-BGP.
Архітектура BGP EVPN Multi-Homing: площина керування за стандартом RFC 7432
Специфікація RFC 7432 визначає EVPN як площину керування на базі протоколу BGP для служб Ethernet поверх фабрик IP і MPLS. В архітектурі EVPN multi-homing резервні комутатори leaf функціонують із повністю незалежними площинами керування, не потребуючи спеціальних міжвузлових ліній зв'язку.
Синхронізація відбувається виключно через маршрутні оголошення MP-BGP AFI 25 (L2VPN) та SAFI 70 (EVPN), які передаються поверх опорної IP-мережі.
Ідентифікатори сегментів Ethernet (ESI): відокремлення каналів від апаратних платформ
Сегмент Ethernet (Ethernet Segment, ES) становить сукупність резервних фізичних каналів, що сполучають підключений пристрій із кількома комутаторами leaf (вузлами Provider Edge, PE). Кожному сегменту присвоюється унікальний 10-байтний ідентифікатор Ethernet Segment Identifier (ESI).
У RFC 7432 стандартизовано різні типи ESI. В оверлейних мережах дата-центрів найчастіше використовуються Type 0 (ручна конфігурація) та Type 1 (автоматична генерація на основі MAC-адреси та ключа порту LACP IEEE 802.1AX):
+--------------------+---------------------------------------+
| Тип ESI (1 байт) | Значення (9 байтів) |
+--------------------+---------------------------------------+
| Type 0x00 | Довільний 9-байтний ідентифікатор |
| Type 0x01 | MAC-адреса (6B) + Port Key (2B) + 0 |
+--------------------+---------------------------------------+
Коли незалежні комутатори leaf виявляють однаковий ненульовий ESI на своїх низхідних портах, вони автоматично розпізнають спільне підключення до одного фізичного сегмента та активують процедури координації.
Маршрути EVPN на практиці: автовиявлення та атрибути сегментів Ethernet
Стандарт RFC 7432 впроваджує спеціалізовані типи маршрутів BGP NLRI для керування багатоканальним підключенням:
- Маршрут типу 1 (Ethernet Auto-Discovery Route): Оголошується для кожного ESI для підтвердження підтримки режиму all-active та передачі міток фільтрації split-horizon. Цей тип маршруту також забезпечує миттєве масове відкликання у разі обриву лінії.
- Маршрут типу 2 (MAC/IP Advertisement Route): Передає MAC-адреси хостів та зафіксовані прив'язки ARP/ND на сегменті ESI разом із мітками VNI рівня 2.
- Маршрут типу 4 (Ethernet Segment Route): Виявляє сусідні комутатори leaf, підключені до того самого сегмента ESI, обмінюючись IP-адресами для подальших виборів Designated Forwarder.
Пересилання All-Active: симетричне балансування навантаження між комутаторами
Технологія EVPN підтримує два режими резервування: Single-Active та All-Active. У режимі Single-Active трафік передає тільки один обраний комутатор, тоді як інші канали залишаються у резерві. У режимі All-Active усі підключені комутатори одночасно пересилають одноадресні кадри від сервера та до нього.
Оскільки сервер налаштовує стандартний транк LACP за всіма фізичними лініями, вихідний трафік симетрично розподіляється між комутаторами leaf. Комутатори інкапсулюють пакети в тунелі VXLAN та передають їх через фабрику без утворення мережевих петель.
Архітектура запобігання петлям: фільтрація Split-Horizon за допомогою міток ESI
У топології all-active, коли хост надсилає широкомовний, невідомий одноадресний або багатоадресний (BUM) пакет на комутатор Leaf-1, цей комутатор тиражує кадр через фабрику VXLAN на комутатор Leaf-2. Проте Leaf-2 також підключений безпосередньо до того самого сервера через спільний сегмент ESI.
Якби Leaf-2 спрямував цей пакет назад на сервер, виникло б зациклення трафіку рівня 2. EVPN запобігає такій ситуації за допомогою механізму фільтрації split-horizon:
- Комутатори leaf передають мітку ESI Label у маршрутах типу 1 (Route Type 1 per-ES).
- Під час інкапсуляції пакета BUM у заголовок VXLAN комутатор Leaf-1 додає вихідну мітку тунелю ESI.
- Отримуючи інкапсульований пакет із фабрики, Leaf-2 перевіряє внутрішню мітку ESI джерела. Якщо пакет надійшов із локального сегмента ESI, Leaf-2 скидає кадр на порту цього сегмента, продовжуючи пересилання на всі інші інтерфейси.
Апаратна фільтрація повністю виключає ехо-пакети без необхідності програмного блокування фізичних портів.
Вибори Designated Forwarder (DF): придушення дублювання широкомовного трафіку
Хоча режим all-active дозволяє всім підключеним комутаторам одночасно пересилати відомий одноадресний трафік, широкомовні дані BUM із ядра мережі мають надходити клієнту лише через один пристрій у межах кожного широкомовного домену. Якби обидва комутатори пересилали широкомовний трафік серверу, сегмент зазнав би перевантаження дублікатами.
EVPN розв'язує цю задачу за допомогою виборів призначеного пересильника (Designated Forwarder, DF) для кожного віртуального сегмента VLAN.
Алгоритм виборів за модулем: обчислювальний механізм і ризики нерівномірності
Специфікація RFC 7432 описує стандартний алгоритм виборів DF на основі ділення за модулем. Комутатори збирають оголошення маршрутів типу 4 для цільового ESI, формують упорядкований список IP-адрес кандидатів і присвоюють їм порядкові індекси i (від 0 до N - 1).
Комутатор, обраний як Designated Forwarder для сегмента V, визначається рівністю:
DF Index = V mod N
Тут V позначає ідентифікатор VLAN, а N — загальну кількість залучених комутаторів PE. Цей простий метод може призводити до дисбалансу розподілу навантаження, якщо діапазон номерів VLAN розподілений нерівномірно.
Вибори DF на основі пріоритетів: детерміноване керування за стандартом RFC 8584
Для усунення недоліків алгоритму за модулем стандарт RFC 8584 впроваджує розширювану процедуру виборів DF. У ній використовується розширене співтовариство BGP DF Election Extended Community:
+-----------------------------------------------------------+
| Пріоритет DF (2 байти) | Прапорці виборів DF (2 байти) |
+-----------------------------------------------------------+
Інженери призначають числовий пріоритет (від 0 до 65535) для кожного комутатора. Пристрій із найвищим пріоритетом стає основним DF. Стандарт RFC 8584 також підтримує плавні таймери випередження та біт Don't Preempt Me (DP), що виключає коливання трафіку під час перезавантаження та повторного введення вузла в дію.
Розподілені Anycast-шлюзи: симетрична маршрутизація IRB на комутаторах Leaf
Багатоканальне підключення EVPN безпосередньо взаємодіє зі службами інтегрованої маршрутизації та мостового з'єднання (IRB) для передачі даних між підмережами. Традиційні протоколи резервування шлюзу першого переходу (FHRP, як-от VRRP) неефективно спрямовують весь трафік через єдиний активний маршрутизатор.
На противагу цьому, EVPN розгортає розподілений Anycast-шлюз на всіх комутаторах leaf:
- Кожен комутатор налаштовується з ідентичною віртуальною IP-адресою та віртуальною MAC-адресою шлюзу за замовчуванням (наприклад, IP
10.100.1.1/24, MAC00:00:5E:00:01:01). - У разі надходження запиту ARP від сервера локальний комутатор leaf миттєво обробляє його на місці.
- Маршрутизація між підмережами виконується безпосередньо на першому комутаторі leaf за архітектурою Symmetric IRB (RFC 9135). Пакети передаються через фабрику з інкапсуляцією у VNI рівня 3 (наприклад, VNI 50000), оминаючи зайві транзитні петлі через центральні маршрутизатори.
Швидка збіжність і масове відкликання: усунення втрати пакетів під час аварій
У великих центрах обробки даних на одному сегменті Ethernet можуть розташовуватися десятки тисяч MAC-адрес. У разі обриву фізичного кабелю між Leaf-1 і сервером відкликання кожного окремого маршруту типу 2 (оголошення MAC) через протокол BGP тривало б кілька секунд, спричиняючи утворення чорних дір у передачі даних.
EVPN усуває цю затримку завдяки механізму псевдонімів і масового відкликання (Mass Withdrawal):
MAC-адреса (00:1A:2B:3C:4D:5E) ---> Оголошена з ESI-123 (Маршрут типу 2)
Leaf-1 та Leaf-2 ---> Оголошують доступ до ESI-123 (Маршрут типу 1)
Віддалені комутатори створюють записи ECMP для балансування навантаження в бік обох вузлів Leaf-1 і Leaf-2 для всіх адрес, пов'язаних з ESI-123. Після фіксації локального обриву лінії:
- Комутатор Leaf-1 негайно відкликає лише один маршрут типу 1 для сегмента ESI-123.
- Віддалені комутатори миттєво вилучають Leaf-1 зі списків наступного переходу ECMP для всіх MAC-адрес цього ESI, перемикаючи весь потік даних на Leaf-2 за лічені мілісекунди.
- Очищення окремих оголошень типу 2 вузол Leaf-1 виконує у фоновому режимі без збоїв активних сесій.
Для аналізу параметрів маршрутизації та перевірки характеристик зовнішніх каналів інженери можуть протестувати мережеві маршрути через інструмент перевірки IP.
Інфраструктура RiceGuard Edge Fabric: відмовостійкі мережі Anycast-шлюзів
В архітектурі VPNRice опорна мережа високої доступності RiceGuard використовує BGP EVPN all-active multi-homing за стандартом RFC 7432 на всіх регіональних периферійних вузлах присутності. Відмова від закритих кластерів MLAG забезпечує стабільність операторського рівня:
- Безперебійне обслуговування периферії: Периферійні шлюзи можуть оновлювати системне ядро без розриву з'єднань. Зміна пріоритету за RFC 8584 дозволяє плавно перенаправляти вхідний трафік на сусідні вузли перед початком регламентних робіт.
- Симетричне балансування ECMP на вході: Потоки даних від різних магістральних провайдерів рівномірно розподіляються між обчислювальними вузлами all-active, запобігаючи асиметричним перевантаженням. Користувачі, які завантажують збірки через клієнтський застосунок, отримують стабільну пропускну здатність.
- Інтеграція з телеметрією опорної мережі: Стани віртуальних оверлеїв рівнів 2 і 3 узгоджуються з даними мережевого моніторингу, розвиваючи підходи, розглянуті у статтях про програмування мереж SRv6 та хешування ECMP для GRE-in-UDP та GENEVE.
Практична реалізація: налаштування EVPN Multi-Homing у стеку Linux FRRouting
Відкриті мережеві стеки, такі як FRRouting (FRR), підтримують специфікацію EVPN multi-homing RFC 7432 у середовищі Linux. Нижче наведено приклад конфігурації сегмента Ethernet у режимі all-active та шлюзу Anycast у FRRouting:
! /etc/frr/frr.conf
router bgp 65001
bgp router-id 192.0.2.11
no bgp default ipv4-unicast
neighbor FABRIC peer-group
neighbor FABRIC remote-as 65000
neighbor 192.0.2.1 peer-group FABRIC
!
address-family l2vpn evpn
neighbor FABRIC activate
advertise-all-vni
advertise-default-gw
autort rfc8365-compatible
exit-address-family
!
interface bond0
description Dual-Homed CE Link
evpn multihoming es-id 00:11:22:33:44:55:66:77:88:99
evpn multihoming es-sys-mac 00:11:22:33:44:55
evpn multihoming df-preference 50000
!
interface vlan100
description Anycast Gateway Subnet
ip address 10.100.1.1/24
ip gateway-address 10.100.1.1
Перехід від пропрієтарних комплексів MLAG до відкритого стандарту BGP EVPN all-active multi-homing забезпечує інфраструктурним командам передбачувану ізоляцію збоїв, сумісність з обладнанням різних постачальників та лінійне горизонтальне масштабування.



