Основы коммутации: VLAN, LAG, spanning tree, маршрутизация
Проблема трансивера никогда не объявляет себя проблемой трансивера. Она выглядит как смена топологии spanning tree, приостановленный участник LAG, скачущий сосед OSPF, флапающий туннель VXLAN или «у половины пользователей всё медленно». Чтобы прочитать эти симптомы обратно к физическому уровню, нужен словарь коммутации: как коммутатор учит MAC-адреса, что такое VLAN и транки, как агрегация линков хеширует потоки, почему spanning tree блокирует порты и что делают протоколы маршрутизации, когда линк моргает. Эта страница — такой словарь, ограниченный тем, что важно, когда корневая причина может быть грязным разъёмом.
Уровень 2: изучение MAC и VLAN
| Понятие | Что происходит | Ракурс оптики |
|---|
| Изучение MAC | MAC источника каждого кадра записывается за входным портом; неизвестные получатели рассылаются всем | флапающий порт сбрасывает и переучивает записи — короткие рассылки после каждого флапа |
| Старение | записи истекают (300 с по умолчанию) | — |
| VLAN (802.1Q) | домен рассылки; кадры на транках несут 12-битный тег (1–4094) | — |
| Access-порт | один нетегированный VLAN | — |
| Trunk-порт | много тегированных VLAN, один native нетегированный | несовпадение native VLAN на аплинке выглядит как частичная связность, а не отказ линка |
| MTU / jumbo | 1 500 байт по умолчанию, 9 000–9 216 jumbo | несовпадение MTU на аплинке пропускает малые пакеты, теряет большие — похоже на перебои оптики |
| Storm control, BPDU guard, port security | защитные функции, выключающие порты | порт в errdisable от любой из них выглядит как мёртвый модуль (Индекс по симптомам) |
Spanning tree
| Вариант | Сходимость | Примечания |
|---|
| STP (802.1D) | 30–50 с | наследие |
| RSTP (802.1w) | < 1–3 с | умолчание у большинства |
| MSTP (802.1s) | как RSTP, по экземплярам | группы VLAN |
| PVST+/Rapid-PVST+ | по VLAN | Cisco |
Spanning tree блокирует избыточные пути L2. Что с ним делает плохая оптика:
- флапающий аплинк порождает уведомления о смене топологии (TCN); каждый TCN сбрасывает таблицы MAC по всей сети и вызывает секунды рассылок — пользователи видят замирания при каждом флапе (Флап линка);
- однонаправленный линк (одно волокно порвано, Tx работает, Rx нет) может создать петлю, если BPDU перестают приходить — UDLD, loop guard и bridge assurance существуют именно для этого (Нет линка);
- светодиоды заблокированного порта (жёлтые) нормальны на избыточных линках, это не отказ (Именование портов и светодиоды).
Фабрики leaf–spine избегают STP, маршрутизируя каждый линк.
Агрегация линков (LAG, port-channel, bond)
| Позиция | Правило |
|---|
| Протокол | LACP (802.1AX / 802.3ad): участники обмениваются PDU, согласуют членство; статический LAG без защиты |
| Участники | одна скорость, дуплекс, MTU; большинство NOS требуют один FEC и тип среды — 4 × 25G оптики или 4 × 25G DAC, не смесь |
| Хеширование | потоки распределяются по хешу полей MAC/IP/порт; один поток никогда не превышает скорость одного участника |
| Участник с ошибками | LACP держит его в пучке, пока проходят PDU; ошибки CRC на одном участнике портят захешированные на него потоки — «часть сессий медленные, другие в норме» — фирменный признак (VDM и метрики FEC) |
| Min-links | пучок падает, если поднято меньше N участников — защита от работы на одном деградировавшем линке |
| Имена | Port-channel, ae, Eth-Trunk, bond, PortChannel по NOS |
| Через два коммутатора | MLAG/vPC/VLT (Стекирование и MLAG) |
Практика: когда LAG «работает, но медленно», смотрите счётчики и DDM по участникам, а не по пучку.
Уровень 3: маршрутизация на коммутаторе
| Понятие | Что это | Ракурс оптики |
|---|
| SVI / маршрутизируемый порт | IP-интерфейс на VLAN или на физическом порту | у маршрутизируемых аплинков нет STP; флап — событие маршрутизации |
| Статика / OSPF / IS-IS / BGP | протоколы маршрутизации; ДЦ-фабрики используют BGP (eBGP на линк) или OSPF | логи up/down соседа точно указывают, какой линк и когда флапнул |
| ECMP | многопутёвость равной стоимости по N аплинкам; потоки хешируются как в LAG | один плохой аплинк портит 1/N потоков; BFD (50–300 мс) обнаруживает отказ быстрее таймеров протокола |
| Dampening | подавляет анонсы флапающего интерфейса | флапающая оптика оказывается подавленной — линк «up», но трафик не маршрутизируется |
| VRF | отдельные таблицы маршрутизации (VRF управления!) | пинг коммутатора через неверный VRF выглядит как отказ линка |
| Резервирование первого хопа (HSRP/VRRP) | виртуальный шлюз между двумя коммутаторами | флапы вызывают переключение шлюза |
Оверлеи
| Оверлей | Где | Ракурс оптики |
|---|
| VXLAN / EVPN | ДЦ-фабрики: L2 поверх L3 | туннели едут по ECMP; отказывающий линк spine портит туннели случайно, а не детерминированно |
| MPLS / SR | операторы | быстрый перемаршрут (< 50 мс) маскирует флапы — смотрите счётчики андерлея |
| EVPN multihoming (ESI-LAG) | заменяет MLAG | линки участников к разным leaf, те же правила, что для участников LAG |
Управление потоком и классы без потерь
| Механизм | Назначение | Ракурс оптики |
|---|
| Пауза 802.3x | остановить соседа | используется редко; глобальная пауза скрывает перегрузку |
| PFC (802.1Qbb) | пауза по приоритетам для RoCE/FCoE | линк с ошибками CRC вызывает повторы, а не паузу — но штормы пауз от флапающего порта могут остановить класс без потерь по всей фабрике (Lossless Ethernet) |
| ECN | пометка перегрузки | — |
Чтение симптомов коммутации обратно к физическому уровню
| Симптом коммутации | Физическая причина для проверки |
|---|
| TCN STP каждые несколько минут, флапы MAC в логах | один флапающий аплинк — мощность Rx по DDM около чувствительности, грязный разъём |
| Участник LACP «suspended» / «individual» | несовпадение FEC или скорости на этом участнике; модуль не распознан |
| Сбросы соседа OSPF/BGP на одном линке | флапающая оптика или модуль у предела температуры |
| ECMP: часть потоков медленные или с потерями | один аплинк с неисправимыми FEC / CRC |
| Jumbo-кадры не проходят, пинги работают | MTU — не оптика |
| Петля или шторм рассылок после ремонта волокна | однонаправленный линк, перепутанная полярность MPO, отсутствует UDLD |
| Трафик останавливается после обновления софта | сторонняя оптика отвергнута новым релизом (Матрицы совместимости и прошивки) |
| Сервер видит линк up, трафика нет | неверный VLAN/несовпадение native или LAG на коммутаторе и нет на сервере |
Физические проверки за каждой строкой: Индекс по симптомам, Проверка оптики на коммутаторе.
В CodingBox
Симптомы уровня коммутации указывают на порт; порт указывает на модуль; DDM, идентификация и пороги модуля — прочитанные на коммутаторе или на столе — закрывают дело. Запись по каждому модулю в базе кодов превращает «LAG снова тормозил» в «участник 3, серийник X, Rx −17 дБм, заменён».