Почему по волокну продолжает идти сигнал, даже когда нет трафика?
В установленном соединении 1000BASE-X между кадрами передаются упорядоченные наборы Idle. Эти последовательности помогают поддерживать восстановление тактового сигнала и выравнивание кодовых групп.
Преобразование в последовательный поток
PCS кодирует байты, после чего модуль преобразует последовательный сигнал в оптический.
Выравнивание
Для установления синхронизации приёмник распознаёт шаблон comma, а затем проверяет последующие кодовые группы.
Наблюдение
На уровне PCS передаются наборы Idle, тогда как обычный захват трафика показывает только доставленные кадры.
Функциональные иллюстрации, а не принципиальная схема изделия или осциллограмма, полученная при измерении.
01 · Проверьте соответствие PHY
Убедитесь, что выбран режим 1000BASE-X и используются совместимые оптические модули.
02 · Разделяйте результаты наблюдений
Отдельно учитывайте оптическую мощность, состояние кодирования и показания счётчиков кадров.
03 · Воспроизведите испытание
Используйте нумерованные кадры и сопоставляйте данные за один и тот же интервал времени.
Контрольный список для стендовой проверки
- Запишите режимы работы обоих портов и идентификаторы модулей.
- Запишите исходное значение мощности и начальные показания доступных счётчиков ошибок.
- Отправьте нумерованные тестовые кадры и сравните приращения счётчиков.
- Используйте диагностику PCS для непосредственного определения упорядоченных наборов.
Два промышленных коммутатора сохраняют гигабитное оптическое соединение даже после отключения устройств, генерирующих трафик. В захвате трафика может не быть ни одного кадра, хотя по волокну по-прежнему идёт сигнал. В установленном соединении 1000BASE-X передатчик между кадрами посылает заданные упорядоченные наборы Idle. По входному сигналу приёмник на другом конце восстанавливает тактовую частоту, а по распознаваемым шаблонам определяет границы кодовых групп. Благодаря этому он может прочитать следующий кадр, как только тот поступит.
Проследим прохождение сигнала через три интерфейса
Управляемый промышленный коммутатор FCTEL с креплением на DIN-рейку служит примером устройства с гигабитным восходящим портом SFP. В его технических характеристиках указаны варианты физической среды 1000BASE-SX и 1000BASE-LX. В этой статье рассматривается штатный режим передачи данных для интерфейсов класса 1000BASE-X. Обозначение SFP относится к форм-фактору модуля. Перед заменой модуля проверьте режим работы и совместимость модулей на обоих концах линии.
Для передачи кадра MAC передаёт его байты на подуровень физического кодирования (PCS). PCS представляет данные и управляющую информацию в виде кодовых групп, пригодных для последовательной передачи. Модуль преобразует последовательный электрический сигнал в оптический. На другом конце линии сигнал снова преобразуется в электрический. Приёмная сторона восстанавливает тактовый сигнал для выборки, выравнивает и декодирует кодовые группы и передаёт принятый кадр своему MAC. Для наглядности на схеме эти функции показаны отдельно. В реальном оборудовании несколько из них могут быть реализованы в одной микросхеме.
Измеритель оптической мощности и средство захвата трафика наблюдают сигнал в разных точках. Измеритель определяет, сколько света поступает за определённый промежуток времени. Обычный сетевой адаптер, как правило, захватывает кадры, уже прошедшие через приёмник. Ни один из этих методов не показывает, правильно ли приёмник распознал промежуточные кодовые группы. Отсутствие кадров в захвате не исключает наличия оптического сигнала, а одно лишь показание мощности не подтверждает правильность декодирования.

Почему для передачи одного байта данных нужно десять битов в линии
Кодирование 8b/10b сопоставляет восьми битам данных десятибитную кодовую группу. Кодер выбирает группу по заданной таблице соответствий. Он ограничивает длину последовательностей одинаковых битов, чтобы в сигнале были переходы, по которым приёмник может восстановить тактовый сигнал для выборки. Кодер также ограничивает разность между количеством единиц и нулей на длинных интервалах, что помогает уменьшить дрейф базового уровня в приёмных цепях.
На каждые восемь битов данных по последовательной линии передаются десять битов. Поэтому без учёта служебных затрат на формирование кадров и передачу Idle скорости данных 1 Гбит/с соответствует скорость в последовательной линии 1.25 Гбит/с. Каждый двоичный символ в линии несёт один бит, поэтому символьная скорость составляет 1.25 Гбод. С учётом заголовков, межкадровых интервалов и служебных данных протоколов верхних уровней пропускная способность на уровне приложения ниже скорости передачи данных на уровне MAC.
Кодер отслеживает текущий дисбаланс (running disparity), который отражает накопленную разность между количеством уже переданных единиц и нулей. У некоторых символов есть положительная и отрицательная формы, и текущий дисбаланс определяет, какую из них допустимо выбрать. Даже сбалансированные кодовые группы должны соответствовать правилам кодирования. Приёмник может сообщить о недопустимой кодовой группе или о нарушении правил дисбаланса. Поскольку помеха может превратить одну допустимую группу в другую допустимую группу, для проверки принятого кадра по-прежнему нужна контрольная последовательность кадра (FCS).
Как приёмник распознаёт Idle и находит границы кодовых групп
В потоке из одних нулей не было бы переходов, которые мог бы отслеживать приёмник. Имея только необработанный поток битов, полученных при выборке, приёмник также должен определить, где начинается каждая десятка битов. Упорядоченный набор Idle в 1000BASE-X состоит из двух допустимых кодовых групп. В распространённом наборе Idle /I2/ за управляющим символом K28.5 следует символ данных D16.2. В наборе /I1/ за K28.5 следует D5.6, и этот набор иначе влияет на текущий дисбаланс.
В одной из форм символа K28.5, а именно 0011111010, начальная последовательность 0011111 образует шаблон comma. Этот распознаваемый шаблон служит приёмнику ориентиром для выравнивания. При синхронизации приёмник также проверяет следующие кодовые группы. Восстановление тактового сигнала определяет, когда брать отсчёты сигнала. Выравнивание по шаблону comma определяет, где делить эти отсчёты на группы. Восстановленный тактовый сигнал может быть стабильным, даже если граница группы определена неверно.
При поступлении следующего кадра PCS отмечает его начало управляющим символом. Конец кадра отмечается символом завершения, после чего PCS возвращается к соответствующей последовательности Idle. При обычном захвате трафика эти управляющие символы физического уровня не отображаются как кадры Ethernet. Этот пример относится к уже установленным соединениям. Во время согласования конфигурации по линии могут передаваться упорядоченные наборы конфигурации, даже если трафика приложений нет.

Проверка соединения в трёх точках наблюдения
Соберите изолированный стенд с согласованными оптическими модулями и проверьте режимы портов. Для установления стабильного соединения используйте короткий оптический патч-корд. Начните проверку, не генерируя тестовый трафик. Запишите состояние индикатора Link и принимаемую оптическую мощность. Используйте цифровую диагностику, если её поддерживают и модуль, и устройство, в которое он установлен. В противном случае воспользуйтесь подходящим измерителем оптической мощности, соблюдая установленный на объекте порядок работ. Счётчики кадров не учитывают наборы Idle уровня PCS как кадры. При этом оборудование может самостоятельно генерировать трафик управления.
Затем отправьте со стороны A короткую серию нумерованных кадров. Сравните приращения счётчиков передачи и приёма и сверьте порядковые номера кадров в захвате на стороне B. Если после серии счётчики трафика перестают расти, а соединение остаётся активным, это согласуется с тем, что PCS передаёт наборы Idle. Чтобы определить, какой именно упорядоченный набор передаётся, используйте стендовый прибор или средства диагностики PCS с поддержкой 1000BASE-X. Обычный адаптер для захвата трафика не позволяет этого увидеть.
Если потери повторяются, за один и тот же интервал запишите оптическую мощность, изменения состояния соединения и показания доступных счётчиков ошибок. Если падение мощности сопровождается потерей синхронизации или повторными изменениями состояния соединения, проверьте разъёмы, направление подключения волокон, модули и скорость портов. Если мощность стабильна, а число ошибок физического кодирования растёт, проверьте тип модулей, качество линии и конфигурацию портов. Если состояние соединения и показания счётчиков кодовых ошибок не меняются, а число ошибок кадров или отброшенных кадров растёт, отделите ошибки приёма от отбрасывания на выходе и проверьте, какой входной порт первым регистрирует ошибку. По документации устройства уточните назначение каждого счётчика и перечень учитываемых им событий. Если нужного счётчика нет, соответствующие события остаются вне наблюдения.

Как вести протокол, чтобы стендовую проверку можно было воспроизвести
Для тестового кадра 17 на иллюстрации запишите время передачи, порядковые номера при передаче и приёме, а также состояния обоих портов. Снимите исходные показания до отправки и сравните приращения счётчиков после неё, чтобы не включать в результаты испытания ранее зарегистрированные ошибки. Если приложение сообщает об отправке, а счётчик передачи оптического восходящего порта не изменяется ожидаемым образом, проверьте входной порт, через который подаётся тестовый трафик, и решение коммутатора о пересылке кадра. Если восходящий порт A передал кадр, но в захвате на стороне B его нет, проверьте счётчик входного порта B независимо от захвата. Кадр также может не попасть в захват из-за фильтрации после сетевого адаптера.
При замене модулей меняйте по одному параметру за раз. Не меняя режим порта и волокно, установите заведомо совместимый модуль и повторите то же испытание. Меняйте следующий элемент только при необходимости. Так можно установить, связано ли наблюдаемое различие с сочетанием модулей или с условиями на линии. Кадр 17 и временная диаграмма приведены только для иллюстрации и не являются результатами измерений или заявлениями о производительности конкретного изделия.
Учитывайте, к какому физическому уровню относятся выводы
1000BASE-T использует другой механизм физического уровня для передачи по медному кабелю. Модули одного форм-фактора и многоскоростные порты также могут работать в разных режимах. Наличие принимаемого света, состояние индикатора Link на панели, синхронизация PCS и корректная доставка кадра рабочего трафика — отдельные признаки. Записывайте их по отдельности вместе с идентификаторами модулей, режимом порта и последовательностью тестовых действий. Это позволяет определить, какая часть соединения восстановилась после замены модуля или смены волокна.
Источники и область применимости
AMD/Xilinx PG047 — 1000BASE-X (приложение C) · IEEE 802.3 — K28.5 · Технические характеристики гигабитного оптического коммутатора FCTEL (на китайском языке)
Переведено с китайской технической статьи: Прочитать оригинальную статью на китайском языке.
Частые вопросы
Перестаёт ли гигабитный оптический порт передавать сигнал между кадрами?
В установленном соединении 1000BASE-X продолжают передаваться упорядоченные наборы Idle.
Для чего нужен шаблон comma в символе K28.5?
Он даёт приёмнику распознаваемую последовательность битов, по которой можно определить границу кодовой группы.
Можно ли увидеть кодовые группы Idle при обычном захвате трафика?
Как правило, нет. Используйте прибор или средства диагностики PCS с поддержкой 1000BASE-X.
Дополнительные материалы
Кодирование 4B/5B в Fast Ethernet · Оптическая мощность и качество сигнала


