Кратко

  • RFC 9746 разрешает объявлять предпочтительный метод split horizon для инкапсуляций All-Active EVPN, поддерживающих оба способа. Объявление выражает административное намерение, а не обязательно рабочий метод.
  • Несовпадение SHT в одном ES для конкретной EVI обязывает NVEs вернуться к методу по умолчанию для инкапсуляции. Для обновлённого устройства достаточно одного объявления 00; правило большинства здесь не действует.
  • В примере MPLSoUDP возврат требует действительных ненулевых меток ESI, которые прежде можно было не выделять при local bias. Совместимость включает резерв ресурсов, группировку маршрутов и проверку реального BUM-трафика.

Запасное устройство меняет обязательства соседей

Замена оборудования кажется задачей для одного узла. В многосвязном сегменте её последствия могут затронуть ресурсы других устройств. RFC 9746, раздел 2.4, рассматривает два обновлённых NVE, использующих MPLSoUDP, local bias и нулевую метку ESI на одном Ethernet Segment. К ним присоединяется третий NVE без поддержки новой спецификации, объявляющий стандартный SHT. Первые два должны перейти к стандартной ESI-фильтрации и объявить действительные ненулевые метки.

Это условный пример стандарта, а не описание произошедшей аварии. В нём важно другое: административные предпочтения соседей не обязательно меняются, но их рабочие обязательства уже изменились. Экономия опиралась на прежний состав участников. Совместимость не просто допускает новое устройство; она может прекратить оптимизацию у существующих.

RFC 9746 опубликован в марте 2025 года в процессе стандартизации IETF и обновляет RFC 7432 и RFC 8365. Документ имеет статус Proposed Standard; официальный поиск исправлений на дату исследования не показывает совпадений. Это сведения о спецификации, а не о числе внедрений или надёжности продуктов. Изменены сигнализация и выбор метода, но не сами два алгоритма фильтрации.

Запрет касается возврата к источнику

Кадр, отправленный многосвязным клиентским устройством, не должен вернуться к этому же устройству через другой пограничный узел провайдера. Split horizon защищает именно эту границу для BUM: широковещательной передачи, одноадресной передачи с неизвестным получателем и многоадресной передачи. Отсутствие возврата необходимо, но не доказывает доставку законным адресатам. Проверять нужно обе стороны результата.

ESI-метод передаёт идентификатор исходного сегмента, позволяющий выходному NVE подавить отправку обратно в него. В MPLS используется метка ESI. Local bias узнаёт входной NVE по исходному IP внешнего туннеля и блокирует локальные выходы к сегментам, общим с этим NVE. Входной узел при этом обязан локально копировать BUM, поступивший со стороны доступа, на непосредственно подключённые сегменты независимо от состояния выборов DF.

Такая репликация — условие работы, а не необязательное ускорение. Local bias применяется только в All-Active и требует неизменного next hop между NVEs одного ES. Для Single-Active он не служит заменой. ESI подходит обоим режимам и разным сетевым доменам. Упомянутые RFC выгоды ресурсов, инкапсуляции и локальной доставки объясняют выбор, но не обещают универсального измеренного сокращения задержки.

Объявленная воля ограничена общим методом

SHT занимает биты 6 и 7 октета Flags в ESI Label Extended Community. Текущий реестр IANA сохраняет 00 для поведения по умолчанию, 01 для local bias и 10 для ESI; 11 не назначен. Другие биты Flags получили последующие назначения. Полная таблица незанятых полей из документа 2025 года не является сегодняшним инвентарём.

Выбор возможен только там, где поддерживаются оба метода. RFC перечисляет MPLSoGRE, MPLSoUDP, Geneve и SRv6. VXLAN, NVGRE и VXLAN-GPE поддерживают лишь local bias, а MPLS и SR-MPLS — только ESI. Значение в объявлении не добавляет отсутствующую возможность. При получении Single-Active вместе с ненулевым SHT требуется обработка treat-as-withdraw, а не попытка согласовать local bias.

Если значения для определённой EVI в одном ES расходятся, все соответствующие NVEs обязаны использовать стандарт инкапсуляции. Обновлённый NVE, получивший хотя бы один маршрут этого сегмента с 00, возвращает рабочий SHT к стандарту вне зависимости от административного значения. Два предпочтения 01 не побеждают третье объявление 00.

Но 00 само по себе не доказывает старую версию программы. Обновлённый участник также вправе выбрать стандарт. Версия устройства и полученное намерение должны подтверждаться отдельно. Описанное игнорирование остальных Flags старыми реализациями, кроме Single-Active, является явной предпосылкой совместимости, не результатом проверки всех продуктов.

Возврат надо расшифровать до уровня ресурсов

Стандарт MPLSoUDP и MPLSoGRE — ESI, а VXLAN — local bias. В Geneve он зависит от Ethernet option и идентификатора исходного ESI; явный 10 действителен только с ненулевым Source-ID в соответствующей опции. В SRv6 стандартная фильтрация исходного сегмента аналогична ESI. Это не утверждение, что каждый пакет SRv6 несёт обычную MPLS-метку.

При local bias неиспользуемая метка может быть нулевой. Но рабочая ESI-фильтрация требует действительного ненулевого объявления. В примере MPLSoUDP после появления стандартного участника обязательны обновления маршрутов A-D per ES. Общее правило перехода от нулевой метки предусматривает исключение, когда все необновлённые участники поддерживают только local bias. Не любой возврат всегда выделяет новую метку.

Для эксплуатации отсюда следует рекомендация проверять ресурсы и для возможного базового состояния, а не только для текущего оптимизированного. Это не нормативный размер запаса. Источники не дают лимита меток по платформам и измеренного времени от обновления до программирования оборудования. Наличие объявления — часть свидетельства, но не подтверждение завершённой фильтрации.

Агрегация не отменяет границы метода

Несколько инкапсуляций в одном маршруте A-D per ES должны использовать одинаковый метод split horizon. Если в группе есть инкапсуляция лишь с одним методом, SHT обязан быть 00. Если все поддерживают оба, допустимы 01 или 10. MPLS и VXLAN нельзя объединить в единственный маршрут, скрыв разницу ради удобства.

Подмножества EVI с разными методами требуют отдельных маршрутов или групп. Route Target каждой EVI входит в один и только один маршрут A-D per ES данного сегмента; у нескольких маршрутов разные Route Distinguisher. Пример разделяет VXLAN/стандарт, MPLSoUDP/local bias и Geneve/ESI. Последней группе необходимы ненулевая метка и Ethernet option, а не только правильные биты. Все NVEs внутри EVI должны иметь общую инкапсуляцию. Разделение объявлений не создаёт недостающую совместимость.

Поэтому одобрение «устройство готово» или «сегмент готов» слишком крупно. Связь ES, EVI, инкапсуляции и участников должна сохраняться в плане изменения.

Не объявлять штатный возврат аварией

Рабочий стандартный метод сам по себе не означает сбой. Раздел безопасности говорит, что изменение действительного SHT на одном захваченном устройстве при этих процедурах не должно прерывать трафик, хотя может менять пересылку. Это условное утверждение нельзя распространять на любые недействительные настройки, неизвестные реализации и исчерпанные ресурсы.

Полезный ограниченный тест сопровождает присоединение и уход стандартного участника. Наблюдаются маршруты, метки и записи фильтрации, затем BUM от входа доступа до ожидаемых получателей с проверкой отсутствия возврата исходному клиенту. Для потерь, повторных копий и петель указывается окно наблюдения. Если рабочий метод не виден, он неизвестен; административная настройка не позволяет заполнить пробел ни успехом, ни аварией. Это предложенная практика проверки, а не новые поля протокола или единый SLA с точностью до миллисекунд.

Источники и ограничения

Не установлены реальные аварии, число внедрений, ресурсные лимиты или измеренные сроки восстановления. Изображение — концептуальная фотография, созданная ИИ, а не свидетельство внедрения.