Кратко

  • RFC 5287 не считает TDM control word и PW Status TLV равноправными голосами. Пока IWF исправна, TLV не рекомендуется, чтобы отчёты data plane и control plane не конкурировали.
  • При отказе IWF и живом PWE3 control plane TLV поднимает все соответствующие биты как консервативный fallback. Это доказательство сообщения об отказе, а не пяти независимых физических измерений и не результат восстановления.

Живой канал управления отвечал только за себя

RFC 5287 расширяет LDP-процедуры PWE3 для настройки TDM pseudowire. Концы согласуют тип PW и всегда используют control word. В зависимости от режима сверяются payload size, условный bit-rate, AAL mode, RTP, частота timestamp, CAS, сигнализация и fragmentation. Нулевой C-bit даёт Illegal C-Bit.

Такое согласование подтверждает совместимость настройки. Оно не подтверждает состояние attachment circuit, доставку пакетов, стабильность jitter buffer, восстановление такта или принятие сигнала клиентом. LDP-сессия может быть исправной в тот момент, когда data plane уже сообщает дефект.

SAToP, CESoPSN и TDMoIP несут status в control word. Отдельно PWE3 может передать PW Status TLV. Значения частично описывают похожие условия, но приходят по разным путям и имеют разные поколения и зависимости от отказа. Один Boolean не сохраняет эти различия.

Полномочие меняется вместе с отказом

RFC 5287 не рекомендует Status TLV, пока TDM IWF работает. Причина указана прямо: избежать contention между статусами data plane и control plane. В обычном режиме in-band источник связан с функцией, которая обрабатывает эмулируемый поток.

Если сама IWF отказывает, но PWE3 control plane продолжает работать, PE должен послать TLV с пятью установленными состояниями: PW не пересылает; receive и transmit fault локального attachment circuit; receive и transmit fault локальной PSN-facing стороны.

Набор всех битов — консервативная граница. Он не означает, что пять датчиков отдельно подтвердили пять поломок. Источник подробного in-band состояния исчез, поэтому выжившее управление предупреждает: сервису нельзя доверять. Разделять это сообщение на пять подтверждённых причин нельзя.

Обратная ошибка — дать старому TLV перекрыть актуальный control word только потому, что LDP проще подключить к платформе. Удобство collection не создаёт авторитет.

Проверяемая цепочка выглядит так:

поколение -> источник -> здоровье источника -> сырые биты -> правило -> действие -> результат

Без здоровья источника условная схема превращается в постоянный приоритет. Без сырых битов невозможно проверить, был ли alarm подавлен, расширен или перезаписан.

Молчание может означать смерть источника

In-band сообщение может исчезнуть после очистки дефекта или после исчезновения потока. TLV может запоздать и относиться к прежней FEC/label generation. После перезапуска collector старое значение получает новое receive time. LDP может восстановиться раньше buffer и clock recovery.

Запись должна содержать local/remote PE, attachment circuit, FEC, label и поколение, PW type, направление, источник, raw bits, source/receive time, здоровье IWF, срок и причину suppression. Итоговую цветную проекцию допустимо строить только так, чтобы можно было вернуться к исходным наблюдениям.

NOT RECOMMENDED не запрещает два канала. Но реализация обязана ответить: какой event доказывает отказ IWF; когда TLV устаревает; может ли другой источник снять alarm; что происходит при смене label; как хранится направление. Гибкость требует локального контракта.

Два объекта образуют одно обязательство

RFC 5287 также описывает пару CESoPSN NxDS0: отдельные PW для TDM data и CE application signaling. Тип, setup method и параметры совпадают, кроме взаимодополняющих role bits.

В PWId FEC data PW получает чётный ID, signaling PW — следующий нечётный. В Generalized PW FEC проверка пары зависит от реализации. Inventory должен хранить связь явно.

Если одна PW установилась, а вторая нет, установленную нужно удалить. Если одна отказала позже, выжившую тоже нужно снять. Зелёная половина не представляет составной сервис.

Teardown подтверждает команду. Readback подтверждает локальное применение. Remote state, новый data flow, CE signaling и timing требуют отдельных квитанций. Успешный вызов не доказывает все последующие ступени.

Состояния отвечают на разные вопросы

Полная последовательность:

configuration -> label -> compatible parameters -> complete pair -> valid reporter -> status -> action -> forwarding -> timing -> CE outcome

VCCV даёт verification channel, BFD — continuity detection, OAM mapping — перевод defect, preferential forwarding — сигнал выбора. Они полезны, но не превращают жизнь LDP в здоровье TDM и автоматически не заменяют control word.

Чистый in-band status не доказывает качество clock. Пакеты могут приходить при плохой delay variation. Эту границу рассматривает сохранённая статья RFC 5143. Здесь вопрос предшествует ей: имел ли источник право сообщать значение?

Forwarding требует counter или trace. Timing требует измерения buffer и clock. CE signaling требует application state. Service result требует наблюдения на стороне потребителя. TLV не должен подтверждать невидимые ему результаты.

Противоречие — не мусор

Простая база хранит Boolean и updated_at. Два collector пишут в одну колонку, последний побеждает. История выглядит согласованной, потому что один свидетель удалён.

Нужно хранить события отдельно. Reconciliation — новое событие с правилом, причиной, сроком, владельцем и опубликованным значением. Action, readback и independent outcome также разделяются. Тогда конфликт показывает dead IWF, stale TLV, wrong pair, generation mismatch или потерянное направление.

Источники не подтверждают инцидент у названного оператора или продукта и не дают универсальную частоту. Они определяют механизм. Выдумывать production case нельзя.