Кратко

  • Downstream-LSR хранит отдельное пространство upstream labels для каждого уникального head-end IP. Два адреса одного маршрутизатора не обязаны означать одну таблицу.
  • Протокол распределения label должен назвать assigner тем же IP, которым протокол туннеля назвал root. Совпадение шасси не исправляет несовпадение протокольных координат.

Нормализация устройства уничтожила идентичность корня

Туннели A и B начинаются на одном маршрутизаторе, но signaling указывает разные head-end IP. Оба несут upstream-assigned labels. База активов заменяет адреса единым device ID и объединяет таблицы.

RFC 5331 требует отдельный Upstream Neighbor Label Space для каждого уникального root IP. Число может повторяться в этих пространствах и означать разные FEC. После слияния один корректный binding вытесняет другой.

Два туннеля используют одно пространство лишь при полном наборе условий, включая один и тот же root IP и assigner. Условие «один chassis» в список не входит.

Храните исходные адреса, протоколы, время, alias-отношение и решение о join. CMDB может подсказать связь, но не должна переписывать ключ до проверки правил.

Assigner и root должны совпасть буквально

Label-distribution protocol обязан назвать assigner тем же IP, которым tunnel-setup protocol обозначил root. Это особенно важно, когда протоколы разные.

Каждое сообщение может быть валидным отдельно: X — реальный head-end, Y — реальный адрес того же роутера. Их несовпадение всё равно не доказывает общий label space.

Для туннелей без signaling root настраивается. В GRE, возникающем простой инкапсуляцией, root считается source IP. Внешний адрес становится входом для выбора внутренней таблицы.

Это не аутентификация владельца адреса. Защита signaling и label distribution остаётся отдельным доказательством.

PHP может удалить адресуемый контекст

В MPLS-туннеле labels выше upstream label идентифицируют tunnel. Если PHP удаляет внешний label до egress, внутреннее число остаётся, но root context исчезает.

RFC 5331 требует выключить PHP, если контекст зависит от туннеля. Поиск в platform table или объединённой device table не восстанавливает намерение; он выбирает другую семантику.

Логируйте stack до/после pop, tunnel, root, PHP policy и выбранную таблицу. Постфактум inner label не раскрывает удалённый root.

LAN добавляет интерфейс к ключу

EtherType определяет upstream assignment, но не конкретного соседа. Context label сверху и ingress LAN interface выбирают пространство; label ниже интерпретируется уже там.

Context label должен быть уникальным на одном LAN. Одинаковые значения на разных интерфейсах допустимы. IPv4-генерация зависит от уникальных младших 20 bits; совпадение на одном LAN вероятно ведёт к misroute.

Глобальная дедупликация без интерфейса одновременно создаёт ложные конфликты и теряет настоящие локальные.

Наличие функции не доказывает поддержку peer

Upstream assignment опционален и запрещён без знания о поддержке downstream. Метод доказательства находится вне RFC. Локальный код, конфигурация и IANA number не являются peer receipt.

Источники и граница доказательства

Источники устанавливают правила, историю и реестры, но не текущую реализацию, туннель, PHP, root, таблицу, collision, misroute, multicast, forwarding или delivery.