Кратко

  • ADD-PATH позволяет объявлять несколько путей к одному префиксу, не заменяя каждым новым обновлением предыдущее.
  • Path Identifier назначается локально и сам по себе ничего не означает; два значения не доказывают независимость двух сетевых путей.
  • Возможность согласуется отдельно по направлению и AFI/SAFI, а выбор, установка в FIB и физическое разнообразие остаются разными решениями.
  • Заявление об устойчивости требует привязать объявления к выходу, оператору, площадке, общему риску, FIB и измеренному переключению.

Представим панель route reflector с двумя строками для одного клиентского префикса. Path Identifier различаются, ADD-PATH отмечен зелёным, и в заявке записано: «два резервных пути доступны». Один транспортный сбой одновременно удаляет обе строки. Объявления были разными, но сходились на одном пограничном маршрутизаторе, одном стыке с оператором и одной городской линии.

Это условный эксплуатационный сценарий, а не сообщение об инциденте конкретной сети. Его вывод узок: число строк в таблице BGP не заменяет проверку топологии.

Что действительно сохраняет ADD-PATH

RFC 7911 расширяет BGP так, чтобы speaker мог объявлять несколько путей для одного префикса или NLRI без неявной замены предыдущего объявления. Перед NLRI добавляется четырёхоктетный Path Identifier, и ключом становится пара «префикс плюс идентификатор».

Значение локально для назначившего его speaker. При повторном объявлении маршрута другой speaker создаёт собственное значение, а получатель не должен приписывать числу какой-либо смысл. Поэтому 17 и 29 не означают «два оператора», «две площадки» или «два кабельных ввода». Они различают объявления в сессии, а не физические зависимости под ними.

Согласование имеет направление и область действия. Для каждого AFI/SAFI speaker указывает способность получать несколько путей, отправлять их или делать и то и другое. Многопутевой формат применяется только при совпадении ролей обоих соседей. Общая отметка «ADD-PATH включён» может скрывать семейство адресов, направление или сессию, где функция не работает.

RFC 7911 говорит, что дополнительные пути могут стать потенциальными альтернативами, улучшить сходимость или уменьшить некоторые колебания. Слово «потенциальными» задаёт границу: стандарт не определяет алгоритм выбора объявлений, не обещает установку всех путей в FIB и не доказывает возможность переноса трафика между ними.

Где исчезает видимое разнообразие

RFC 6774 связывает распространение нескольких BGP-путей со сходимостью, восстановлением доступности и балансировкой. Разнообразие, в том числе между соседями, рассматривается как свойство, которое нужно выбрать и распространить, а не как автоматическое следствие двух записей.

Два объявления могут иметь разные AS_PATH и общий маршрутизатор, линейную карту, оптическую систему или здание. Два адреса peering могут принадлежать одному оператору и проходить по одной арендованной линии. Два next hop могут рекурсивно разрешаться через одного IGP-соседа. Даже действительно разные внешние маршруты после политики и выбора лучшего пути могут попасть на один выход пересылки.

Частичное внедрение создаёт ещё одну границу: одна сессия сохраняет несколько маршрутов, а следующий reflector или edge экспортирует только один. После перезапуска идентификаторы могут измениться. Без данных об обмене capabilities анализатор может даже неверно разобрать UPDATE. Доказательство должно называть сессию, AFI/SAFI, направление и точку наблюдения.

Строка RIB не равна результату пересылки

Для каждого префикса нужно связать полученные маршруты, допустимость, лучший и резервный путь, разрешение next hop и состояния RIB/FIB. Затем каждый кандидат связывается с выходным маршрутизатором, ASN оператора, площадкой, линией и группой общего риска.

Наконец наблюдается трафик. Контролируемый withdraw или проверка отказа измеряет обнаружение, новый выбор, переход FIB, интервал потерь и путь после восстановления. Без этой записи ADD-PATH доказывает лишь способность протокола переносить больше вариантов, но не наличие независимого выхода.