Cisco Nexus: Процесс согласования линка (Auto-Negotiation) и проблемы FEC
Физический уровень (L1): Auto-Negotiation и FEC
На дата-центровых коммутаторах (Cisco Nexus 3000/9000, Arista, Mellanox) процесс поднятия линка (Link Training / Auto-Negotiation) для скоростей 10G, 25G и 100G значительно сложнее, чем в классическом Gigabit Ethernet. При подключении серверов, СХД или других коммутаторов через DAC-кабели (Twinax) или оптические трансиверы (SFP+/QSFP28), порты должны согласовать не только скорость и дуплекс, но и алгоритм Forward Error Correction (FEC). Если стороны не договорятся, линк останется в состоянии down/down, начнет 'флапать' (link flap) или уйдет в защитный режим err-disable. Бизнес-риски: недоступность вычислительных узлов, рассинхронизация кластеров хранения (vSAN, Ceph) из-за проблем L1.
Параметры согласования линков (25G / 100G)
| Параметр | Варианты настройки | Суть проблемы при несовпадении |
|---|---|---|
Auto-Negotiation (AN) | On / Off | Один порт жестко задан на 10G/Full (Off), другой стоит в Auto. Результат: Duplex Mismatch (полудуплекс и потери пакетов) или линк не поднимается (Link down). |
FEC (Forward Error Correction) | CL74 (Base-R/FC) / CL108 (RS-FEC) / Off | Оптика 25G/100G подвержена ошибкам бит (BER). FEC исправляет их на лету. Если на Nexus стоит RS-FEC, а на сетевой карте сервера FC-FEC — линк не поднимется. |
SFP/DAC Совместимость | Cisco Original / 3rd Party | Коммутатор не распознает EEPROM модуля (Unsupported Transceiver) и принудительно гасит порт. |
Диагностика L1 и принудительная настройка (NX-OS)
Сценарий 1: Проверка статуса трансивера и ошибок
Первым делом проверяем, видит ли Nexus оптический модуль и нет ли аппаратных ошибок (CRC/FCS).
1. Статус распознавания модуля
show interface Ethernet1/1 transceiver details
2. Проверка ошибок на физическом уровне
show interface Ethernet1/1 mac-counters
(Ищите растущие значения в счетчиках FCS-Errors или Alignment-Errors)Сценарий 2: Принудительное согласование скорости и FEC
Для DAC-кабелей 25G (SFP28) Auto-Negotiation (AN) и FEC часто являются камнем преткновения между чипами Broadcom (в Nexus) и Intel/Mellanox (в серверах). В дата-центрах часто отключают AN и жестко задают параметры.
Настройка порта в NX-OS
interface Ethernet1/1
Отключаем автосогласование (задаем жестко)
speed 25000
Настройка FEC (Зависит от длины DAC кабеля. Для коротких часто Off, для длинных >3м RS-FEC)
fec rs-fec ! (или 'fec off' / 'fec base-r')
no shutdownСценарий 3: Решение проблемы неподдерживаемых модулей (Unsupported Transceiver)
Если вы используете стороннюю оптику, Nexus заблокирует порт по умолчанию.
Глобальная команда (скрытая) для разрешения сторонней оптики
service unsupported-transceiver
(Система выдаст предупреждение о потере гарантии, подтвердите)Типовые ошибки администраторов
- Слепая вера в Auto-Negotiation на 10G+: На скоростях 10G/25G протокол AN работает нестабильно между разными вендорами сетевых карт. Best Practice в ЦОД — жесткое (Hardcode) задание скорости и FEC с обеих сторон линка (Top-of-Rack коммутатор и сервер).
- Игнорирование очистки оптики: 100G оптика (QSFP28) крайне чувствительна к пыли. Если линк поднимается, но счетчик CRC-ошибок стремительно растет, проблема не в настройках, а в грязных коннекторах (требуется чистка Click-cleaner'ом).
Траблшутинг Layer 1 в современных ЦОД требует аппаратных тестеров и понимания микрокода трансиверов. Инженеры ITSTM проведут диагностику физики (включая рефлектометрию ВОЛС), подберут правильные параметры FEC/Speed и обеспечат стабильную работу фабрики Spine-Leaf без потерь пакетов.
Частые вопросы (FAQ)
Почему 10G SFP+ модуль вставленный в 25G SFP28 порт не поднимается?
Порты 25G (SFP28) аппаратно обратно совместимы с 10G (SFP+). Однако коммутатор не всегда может автоматически понизить скорость порта (downshift). Вам необходимо зайти в настройки интерфейса и жестко прописать 'speed 10000'.
В чем разница между Base-R (FC) FEC и RS-FEC?
Base-R (Firecode) FEC — это старый алгоритм, используемый в основном для 10G и коротких DAC-кабелей. RS-FEC (Reed-Solomon) — более мощный математический алгоритм, обязательный для 100G оптики (SR4/LR4) и длинных 25G медных кабелей, так как он справляется с высокой частотой битовых ошибок на высоких скоростях, добавляя чуть бОльшую задержку (latency).
Что значит статус 'err-disable' с причиной 'link-flap'?
Коммутатор обнаружил, что линк падал и поднимался слишком часто (например, 5 раз за 10 секунд). Чтобы защитить сеть от перестроений протоколов маршрутизации (OSPF/BGP), Nexus программно выключает порт. Проверьте кабель/модуль и восстановите порт командами 'shutdown' и 'no shutdown'.
Можно ли использовать DAC кабель от коммутатора Arista в коммутаторе Cisco Nexus?
Активные или пассивные DAC-кабели (Twinax) имеют EEPROM-чипы на обоих концах. Если один конец кабеля прошит как Arista, Cisco может отказаться с ним работать без команды 'service unsupported-transceiver'. В идеале для связи разных вендоров использовать оптические трансиверы с нужными прошивками на каждом конце и обычный оптический патч-корд.