Компания OpenAI совместно с AMD, Broadcom, Intel, Microsoft и NVIDIA представила протокол Multipath Reliable Connection (MRC) — сетевое решение, направленное на увеличение производительности и надёжности крупных GPU-кластеров, используемых для интенсивных задач искусственного интеллекта. MRC в настоящее время применяется во всех значительных кластерах OpenAI с NVIDIA GB200, включая первый дата-центр Stargate, а также в ЦОД Microsoft в рамках проекта Fairwater.
Подчёркивается, что в процессе обучения больших языковых моделей (LLM) каждый этап требует передачи огромных объёмов данных между узлами кластера. При этом даже одна задержка при таких операциях способна нарушить весь ход работы, что может привести к простою тысяч ИИ-ускорителей. Подобные сбои снижают эффективность использования вычислительных ресурсов и увеличивают временные затраты. Основными источниками задержек и нестабильности при передаче данных служат перегрузка сети, неисправности каналов связи и коммутационного оборудования. Причём с ростом масштабов кластеров эти трудности усиливаются: сбои происходят чаще, а их исправление становится всё более сложным.
Заявляется, что протокол MRC решает ряд важных проблем сетей Ethernet в контексте ИИ-инфраструктур. В частности, внедряются такие функции, как адаптивная многопутевая передача данных, многоканальные перекрёстные Ethernet-фабрики, распределение пакетов, быстрое восстановление после ошибок и другие. MRC принципиально изменяет подход к передаче трафика по сети.
Источник изображений: OpenAI
Обычные платформы RoCE, как правило, привязывают поток данных к одному сетевому маршруту, что может ухудшать эффективность при возникновении проблем. MRC, напротив, распределяет пакеты из одной серии одновременно по сотням маршрутов и нескольким физическим сетевым каналам. Пакеты содержат информацию о конечном пункте назначения, что позволяет ускорителям упорядочивать данные в нужной последовательности, даже если они поступают не по порядку. MRC отслеживает состояние множества используемых маршрутов: при обнаружении перегрузки на каком-либо из них выбирается альтернативный путь, что даёт возможность быстро перераспределить нагрузку по всей сети.
Ещё одна ключевая характеристика MRC — это многослойная структура, которая преобразует саму физическую логику построения интерконнекта. К примеру, сетевой интерфейс 800GbE можно разбить на каналы по 100GbE, каждый из которых соединяется с восемью различными коммутаторами отдельными линиями. Это позволяет сформировать восемь независимых параллельных сетей. Данный подход существенно влияет на архитектуру кластера. В частности, коммутатор, оснащённый 64 портами 800GbE, можно задействовать в конфигурации 512 × 100GbE. Это даёт возможность построить сеть, объединяющую порядка 131 тыс. GPU, используя лишь два уровня коммутации, в отличие от традиционных трёх- или четырёхуровневых топологий.
В протоколе MRC применяется инновационный метод управления перегрузками и потерями пакетов в сетях Ethernet. Обычно для этого используется технология PFC (Priority Flow Control), которая приостанавливает передачу данных для определённых классов трафика, а не для всего порта целиком. В MRC же реализован другой подход, опирающийся на выборочные подтверждения, явные запросы на повторную отправку и обрезку пакетов. Например, когда коммутатор сталкивается с перегрузкой, он может отсечь полезную нагрузку и отправить к месту назначения только заголовок пакета. Это позволяет получателю быстро определить отсутствующие данные и запросить их повторную передачу. Утверждается, что такая схема обеспечивает восстановление после сбоев и перегрузок за микросекунды, что на порядки быстрее, чем в традиционных архитектурах.
С использованием MRC отпадает необходимость в динамической маршрутизации. Если на каком-то пути происходят потери пакетов, система, основанная на MRC, просто прекращает его использование. Вместо динамической маршрутизации применяется так называемая сегментная маршрутизация IPv6 (IPv6 Segment Routing, SRv6), которая даёт отправителю возможность напрямую указать маршрут пакета, перечислив последовательность идентификаторов коммутаторов. При передаче данных коммутатор проверяет, присутствует ли его собственный идентификатор. Если он есть, устройство удаляет его из пакета и ищет следующий идентификатор в статической таблице маршрутизации, которая определяет, куда следует направить пакет.
В отличие от динамической маршрутизации, такая статическая таблица создаётся при первоначальной настройке коммутатора и в дальнейшем остаётся неизменной. MRC использует SRv6 для отправки пакетов по всем физическим каналам и уровням, а также по множеству маршрутов внутри каждого из них. Если какой-либо путь становится недоступным, система его игнорирует. При этом коммутаторам не нужно пересчитывать маршруты или выполнять какие-либо другие действия — достаточно строго следовать статическим маршрутам, заложенным в таблице.
Протокол MRC был выпущен в рамках проекта OCP. В целом, как отмечается, MRC предоставляет три ключевых преимущества перед стандартными Ethernet-сетями для кластеров ИИ. Во-первых, MRC позволяет создавать многоуровневые высокоскоростные инфраструктуры для платформ с более чем 131 072 конечными точками, используя всего два уровня коммутаторов. Во-вторых, адаптивное распределение пакетов обеспечивает эффективную балансировку нагрузки, благодаря чему перегрузки в ядре сети практически отсутствуют. В-третьих, применение SRv6 обеспечивает быстрый обход сбоев и отправку пакетов только по работающим маршрутам.
Корпорация Broadcom сообщила, что её сетевые контроллеры Thor Ultra, а также переключатели Tomahawk 5 и Tomahawk 6 с самого начала поддерживают технологию MRC. В частности, Thor Ultra даёт возможность задействовать 2, 4 или 8 параллельных сетей на одном порту и направлять трафик одновременно по 128 каналам. При этом Tomahawk 5 обладает коммутационной производительностью до 51,2 Тбит/с, а Tomahawk 6 — до 102,4 Тбит/с. Со своей стороны, NVIDIA указывает, что протокол MRC, являясь расширением RoCE, совместим с решениями Spectrum-X Ethernet. OpenAI уже применяла MRC при обучении нескольких моделей искусственного интеллекта, используя коммутаторы от Broadcom и NVIDIA. Конкурентом MRC выступает во многом аналогичный Ultra Ethernet.
Источники:
- OpenAI
- Converge Digest