Основы фабрики InfiniBand
Фабрика InfiniBand ведёт себя иначе, чем сеть Ethernet, — и это важно при диагностике линка. Здесь — понятия, с которыми сталкивается инженер по оптике: менеджер подсети, управление потоком без потерь, топологии и то, как проявляется плохой линк.
Менеджер подсети
В каждой подсети IB один активный Subnet Manager (SM). Он обнаруживает все порты и коммутаторы, назначает локальные идентификаторы (LID), вычисляет таблицы пересылки и программирует их в каждый коммутатор. Когда линк флапает, SM пересканирует фабрику — поэтому маргинальный модуль не просто теряет один линк, а вызывает события перемаршрутизации по всей фабрике, которые замечают все.
Без потерь на кредитах
Линки IB в штатном режиме не отбрасывают пакеты: отправитель передаёт, только когда получатель объявил буферные кредиты. Перегрузка создаёт обратное давление, а не потери, и деградировавший линк (растущие символьные ошибки, коррекции FEC) замедляет всю задачу, зависящую от него, — проблема «одного медленного линка» в коллективных операциях.
Топологии
- Fat-tree (Clos) — стандарт: leaf-коммутаторы подключают хосты, spine соединяют
leaf, аплинков достаточно для неблокируемости. Большинство линков — оптика leaf–spine.
- Dragonfly+ и торовые варианты встречаются в крупнейших системах ради экономии
коммутаторов и кабелей.
- Rail-optimized дизайны для ИИ размещают NIC каждого GPU на отдельном «рельсе»
фабрики, чтобы GPU с одним рангом на разных серверах были в одном хопе — см. Топологии GPU-фабрик.
RDMA и GPUDirect
Приложения используют RDMA-операции для переноса данных между памятью узлов без копий через ЦП; GPUDirect RDMA распространяет это на память GPU. В итоге сбой фабрики виден приложениям как зависание или таймаут в коллективной операции — часто задолго до того, как оператор увидит упавший порт.
Как выглядит плохой линк
| Симптом в фабрике | Причина физического уровня для проверки |
|---|---|
| Рост символьных ошибок / скорректированных FEC-блоков на одном порту | грязный MPO, маргинальная мощность Rx, деградирующий канал |
| Линк застрял на меньшей ширине или скорости | несовпадение FEC, модуль не объявляет ожидаемую скорость |
| Порт «Not supported», линка нет | неопознанная идентификация модуля — вендор-лок |
| Повторяющиеся сканирования SM | где-то флапает линк — ищите по счётчикам ошибок портов |
Следуйте обычной лестнице диагностики: уровни → чистка → подмена → кабель.
В CodingBox
Прочитайте подозрительный IB-модуль на столе: поканальные Rx/Tx и ток смещения на экране DDM покажут, умирает ли один канал модуля SR4/DR4, а поля идентификации — примет ли фабрика замену.