Кратко
- Свет на приёмнике доказывает наличие сигнала, но не правильность пары портов. Device-ID, Port-ID и Echo TLV создают отдельное, ограниченное по времени доказательство личности соседа.
- Обычный режим оставляет отсутствие данных как
undetermined. Aggressive mode может перейти к errdisable лишь после ранее подтверждённой двусторонности, истечения состояния и неудачи конечной серии попыток.
Неправильно собранная пара волокон способна выглядеть исправной. Передающее волокно ведёт к одному коммутатору, принимающее приходит от другого; каждый приёмник видит свет, хотя предполагаемого соединения второго уровня нет или оно замкнуло опасную петлю. Состояние up верно для локальной физики и ничего не говорит о личности партнёра.
UDLD добавляет квитанцию другого вида. Устройство сообщает Device-ID и Port-ID, а сосед возвращает в Echo TLV пары, которые действительно услышал на том же интерфейсе. Основанием для двустороннего отношения становится круговой путь ожидаемой идентичности, а не просто несущая.
Эта квитанция тоже не универсальна. Протокол исполняется в control plane и зависит от нагрузки CPU, планировщика, реализации, таймеров и кэша. Он не проверяет каждый VLAN, размер кадра, очередь, запись forwarding table или транзакцию приложения. Успешный обмен служебными пакетами не удостоверяет доставку целиком.
Строка соседа — наблюдение с истекающим сроком
Периодические hello сохраняют изученного соседа на объявленный holdtime. Новое корректное сообщение заменяет запись и заново запускает таймер. Отключение интерфейса или протокола, а также перезапуск устройства удаляют состояние и требуют очистки копии на другой стороне.
Поэтому show udld — не фотография кабеля. Это вывод автомата состояний, собранный из недавних сообщений, локальной конфигурации и часов. Строка подтверждает, что идентичность была принята внутри окна кэша. Она не доказывает тот же путь в момент просмотра и тем более не описывает судьбу пользовательского трафика.
Для нового соседа или ресинхронизации RFC задаёт последовательность сообщений. Инженерное предположение состоит в том, что из N отправок хотя бы одна пройдёт несмотря на потери. Если не проходит ни одна, причин всё ещё много: обрыв, повреждение обоих направлений, высокий BER, несовпадение duplex, перегрузка control plane, выключенный UDLD, неспособный сосед или потерянная команда очистки.
Обычный режим не дописывает диагноз в пустое место
Normal mode действует по событиям. Полученные данные могут подтвердить правильную пару или показать явное противоречие Echo. Когда полезной информации нет, в том числе после исчезновения прежней двусторонней связи, результат остаётся undetermined.
Это не слабость, а дисциплина доказательств. Современная документация Cisco отмечает: данные о соседе могут состариться из-за высокой частоты ошибок или duplex mismatch, и одна потеря пакетов не доказывает однонаправленность. Истечение кэша не даёт обычному режиму права выдумать физическую причину и выключить порт.
За сохранённую доступность платит эксплуатация. Неопределённость придётся разрешать с помощью счётчиков, оптической мощности, журналов другой стороны, событий spanning tree, проб data plane и сервиса. Режим не делает сильный автоматический вывод, но и не снимает необходимость расследования.
Aggressive выбирает последствие, а не причину
Агрессивному действию нужна история. Отношение прежде было подтверждено как двустороннее. Затем запись истекла, физический link остался up, а последние восстановительные запросы не вернули соседа. Для соответствующих современных реализаций Cisco описывает восемь попыток с интервалом в секунду перед errdisable.
Восьмое молчание знает о причине не больше первого. Оно лишь завершает заранее выбранное окно, после которого организация считает потерю связи с соседом недопустимой. На типичном point-to-point линке удаление ёмкости может быть безопаснее продолжения передачи в петлю или black hole.
Отключение — средство локализации, не заключение о волокне, трансивере, ASIC, процессе или удалённой настройке. Причина errdisable объясняет поступок автомата. Формулировка «UDLD доказал однонаправленную аварию» подменяет физическое измерение политикой риска.
На линии одновременно идут разные часы
Пока идут holdtime и повторы, STP или RSTP могут изменить forwarding topology. Cisco предупреждает, что фиксированный расчёт по классическому STP не гарантирует действие UDLD раньше перехода RSTP. Платформа, выпуск ПО, среда, топология, настройки и момент дефекта меняют реальный порядок.
В хронологии инцидента следует разнести несущую, последний принятый hello, истечение кэша, каждую попытку, выключение порта, смену роли STP/RSTP, включение резервного пути и восстановление приложения. «UDLD поймал» сжимает несколько квитанций. «Сервис восстановлен» — ещё более позднее утверждение с собственным доказательством.
Долговечный вопрос RFC 5171 не в том, какой режим вообще лучше. Вопрос в том, кто решил оставить отсутствие неопределённым и кто решил, что ограниченное молчание уже опаснее потери ёмкости и требует fail-closed.
Источники
- https://www.rfc-editor.org/rfc/rfc5171.html
- https://www.rfc-editor.org/rfc/rfc5171.txt
- https://www.rfc-editor.org/info/rfc5171
- https://datatracker.ietf.org/doc/rfc5171/
- https://datatracker.ietf.org/doc/rfc5171/history/
- https://datatracker.ietf.org/doc/rfc5171/references/
- https://www.rfc-editor.org/errata/rfc5171
- https://www.rfc-editor.org/rfc/rfc3932.html
- https://www.rfc-editor.org/rfc/rfc5880.html
- https://www.rfc-editor.org/rfc/rfc5881.html
- https://www.rfc-editor.org/rfc/rfc7419.html
- https://www.rfc-editor.org/rfc/rfc7880.html
- https://www.cisco.com/c/en/us/support/docs/lan-switching/spanning-tree-protocol/10591-77.html
- https://www.cisco.com/c/en/us/td/docs/switches/lan/c9000/lyr2-fwd/cdp-lldp-mac-udld/cdp-lldp-mac-udld-configuration-guide/configure-udld.html
- https://www.cisco.com/c/en/us/td/docs/routers/ncs4200/configuration/guide/lanswitch/lanswitch-ncs4200-book/lsw-udld.pdf
- https://www.cisco.com/c/en/us/support/docs/switches/catalyst-6500-series-switches/24330-185.html
- https://www.cisco.com/c/en/us/td/docs/switches/lan/csbms/CBS_250_350/CLI/cbs-250-cli/udld-commands.html
- https://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst6500/ios/15-4SY/config_guide/sup2T/15_4_sy_swcg_2T/udld.pdf
- https://heng.lu/minimum-initial-specification-localized-future-decision-voluntary-adoption-internet-coordination-system/
- https://heng.lu/on-reality-layers-symbolic-power-and-why-clarity-feels-so-hostile/
- https://heng.lu/running-code-primary-the-patch-needed-to-preserve-the-internet-original-design/
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров
