Кратко
- BGP-LS выводит объекты узлов, каналов и префиксов из состояния IGP/TE, применяет политику и раскрывает физическое, абстрактное либо смешанное представление. Это не побайтовая копия LSDB и не перенос sequence number исходных LSA/LSP.
- Established-сессия и два производителя не доказывают свежесть. Решение нужно связывать с источником, Protocol-ID, Instance-ID, withdrawal, набором атрибутов, правилом слияния и фактическим состоянием FIB и пакетов.
В отчёте все компоненты выглядели исправными. BGP-сессии не падали, объекты продолжали поступать, вычисление пути завершилось успешно. Ошибка обнаружилась только в плоскости данных: пакет пришёл туда, где соединения больше не было.
После разделения сети производитель A всё ещё сообщал половину A–B, а производитель B — половину B–A. Каждый видел неполную историю удаления. Потребитель принял два фрагмента за согласующиеся копии и сформулировал более сильное утверждение, чем любой источник по отдельности: полный канал существует.
RFC 9552 разбирает такой риск для избыточных производителей и недоступных исходных узлов. Документ декабря 2023 года полностью заменяет RFC 7752 и включает изменения RFC 9029. Его важнейшая граница: BGP-LS распространяет контролируемое представление топологии, а не удостоверяет физическую истину.
Производное представление нельзя называть LSDB
Производитель обычно берёт сведения из OSPF/IS-IS LSDB и traffic engineering database, формирует Node, Link и Prefix NLRI и помещает свойства в BGP-LS Attribute. Один объект может объединять данные нескольких LSA или LSP; исходные sequence number в нём не сохраняются.
Устаревшие, удалённые, повреждённые или проигнорированные элементы обрабатываются по правилам исходного протокола. Не каждое поле должно экспортироваться. Политика определяет состав и может влиять на момент объявления.
Разница с инвентарём может быть намеренной. RFC 9552 разрешает физическую топологию, абстракцию из агрегированных узлов и виртуальных путей или смешанный вариант. ALTO может получать более грубую cost map, чем PCE. Оценивать точность можно только относительно договора раскрытия для конкретного потребителя.
В договоре нужны исходные домены, разрешённые объекты и атрибуты, степень абстракции, частота, предел свежести, конфиденциальность и цель. Без него невозможно отличить разрешённую абстракцию от потери или просрочки.
Три роли не образуют одну ответственность
RFC 9552 различает Producer, Propagator и Consumer. Producer создаёт BGP-LS-информацию обычно из IGP, но возможны Direct и Static источники. Propagator обрабатывает UPDATE, выполняет BGP Decision Process и передаёт выбранные данные. Consumer — приложение или процесс, использующий представление; он необязательно является BGP speaker.
Одна система может совмещать роли, однако журнал должен сохранять границы. Для объекта необходимо установить, кто его вывел, какая политика разрешила публикацию, какой BGP-путь был выбран, что получил сосед, как потребитель обработал дубликаты и какое действие последовало.
Интерфейс от BGP speaker к Consumer должен быть однонаправленным. Потребитель не может возвращать через него данные для BGP-LS origination. Чтение топологии и запись в сеть — разные полномочия; southbound-команда требует отдельной идентичности и авторизации.
Instance-ID задаёт пространство идентичности
Для non-VPN используется AFI 16388 / SAFI 71, для VPN Link-State — SAFI 72. RFC 4760 определяет multiprotocol capability, MP_REACH и MP_UNREACH. Capability доказывает канал обмена, но не актуальность объекта.
Protocol-ID различает IS-IS L1/L2, OSPFv2, OSPFv3, Direct и Static. Восьмиоктетный BGP-LS Instance-ID разделяет экземпляры IGP. Производители одного домена обязаны использовать одинаковый Instance-ID, а разные домены — уникальные значения. Ошибка раздваивает одну сеть или склеивает независимые сети.
ASN, area, router identity, topology ID и descriptor TLV дополняют ключ. Несогласованные optional TLV у избыточных производителей способны создать разные NLRI или частичные атрибуты.
Изменение descriptor означает изменение ключа. Старый NLRI следует отозвать через MP_UNREACH, а не только объявить новый. Завершённая миграция содержит положительное доказательство новой идентичности и отрицательное доказательство исчезновения старой из Producer, RIB, Adj-RIB-Out и графа Consumer.
Выбор BGP не выбирает самое свежее физическое наблюдение
Процесс RFC 4271 выбирает между BGP-путями. Он выражает предпочтение протокола, а не определяет, какой Producer последним видел исходный узел доступным.
В исходном инциденте не было двух полных независимых наблюдений. Были две старые половины. Именно слияние создало утверждение о целом канале. Поэтому число источников и свежесть — разные показатели.
Нужны доступность origin node с позиции каждого Producer, идентичность и возраст LSA/LSP, эпоха LSDB/TED, время origination, selected/alternate paths, ожидаемые withdrawals и состояние merge. Зелёная сессия ничего из этого не подтверждает.
RFC 9552 рекомендует отзывать объекты недоступных исходных узлов, если только явно заданный сценарий не требует сохранения полной LSDB-view. Исключение должно иметь владельца, назначение, максимальный возраст и видимую маркировку устаревания.
Сохранившийся NLRI может скрыть потерю свойств
Идентичность находится в NLRI, многие свойства — в BGP-LS Attribute. В контексте RFC 7606 повреждённый Attribute может быть отброшен, а NLRI сохранён.
Это состояние потери, а не осознанное сообщение «канал без метрики». Следует различать намеренное исключение политикой, неизвестный сохранённый TLV, Attribute Discard из-за ошибки и действительно неопределённое свойство.
Большие атрибуты могут требовать Extended Message из RFC 8654. Различия capability или исключаемых TLV приводят к разным наборам свойств при одинаковом NLRI. Сверять надо полный fingerprint атрибутов.
Реестр IANA подтверждает назначение codepoint, но не правильность сбора конкретным устройством и не физическую актуальность.
Получение feed не даёт права устанавливать путь
Архитектуре PCE нужны данные топологии/TED, ALTO использует network/cost map, а RFC 8571 переносит IGP TE performance metric. Транспортный стандарт не утверждает алгоритм потребителя.
В источнике сохраняются LSA/LSP identity, protocol, origin reachability и epoch. На Producer — версия, Protocol-ID, Instance-ID, descriptors, policy, origination/withdrawal. В propagation — capability, UPDATE, выбор, альтернативы, discard и задержка. На Consumer — object set, duplicate/merge rule, missing attributes, freshness и право доступа.
Вычисленный путь привязывают к точному snapshot, constraints, версии алгоритма и approval. Затем проверяют southbound request, принятие устройством, label/FIB, положительные и отрицательные packet canary. Ответ API — не установка, установка — не доставка пакета.
Изоляция нагрузки не отменяет секретность
Link-State UPDATE могут быть значительно чаще обычных prefix update. RFC 9552 рекомендует отдельные route reflector или равноценную изоляцию и ограничивает распространение одним административным доменом.
Топология и TE-метрики могут быть коммерчески и операционно чувствительны. Peering разрешается только доверенным speaker, а consumer-only peer не должен посылать UPDATE. Документация Cisco IOS XR, IOS XE и Juniper показывает реальные controls для instance, policy, queue, table и controller acquisition, но команды и defaults зависят от релиза.
Sources
- RFC 9552 — BGP-LS
- RFC 4271 — BGP-4
- RFC 4760 — Multiprotocol Extensions
- RFC 7606 — UPDATE Error Handling
- RFC 8654 — Extended Messages
- RFC 4655 — PCE Architecture
- RFC 7285 — ALTO
- RFC 8571 — TE Performance Metrics
- IANA — BGP-LS Parameters
- Cisco IOS XR — BGP Link-State
- Cisco IOS XE — Segment Routing BGP-LS
- Juniper — Link-State Distribution Using BGP
- Juniper Routing Director — BGP-LS Topology Acquisition
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров
