Что такое Infiniband. История создания и как он работает
История InfiniBand.
- В 1999 году два конкурирующих проекта: Future I/O и Next Generation I/O (NGIO) — слились в один, в результате чего образовалась ассоциация InfiniBand Trade Association. В нее входили такие корпорации как Compaq, Dell, Hewlett-Packard, IBM, Intel, Microsoft, и Sun. Целью ассоциации являлась разработка и поддержка иновациооного протокола данных для кластеризируемых систем.
- В 2000 году была выпущена версия 1.0 спецификации InfiniBand — InfiniBand, которая должна была стать универсальной заменой для соединений PCI, сетей Ethernet, Fibre Channel и кластерных интерконнектов.
- Уже в 2001 году Mellanoх — компания, производящая InfiniBand наравне с Qlogic, Voltaire, Topspin — выпускает линейку продуктов InfiniBand под названием InfiniBridge, работающую со скоростью 10 Гбит/с, и продает более 10 тысяч устройств.
- В 2003 году технологию InfiniBand используют для постройки третьего в мире по размеру суперкомпьютера System X на базе Технологического института Вирджинии.
- В 2009 году среди топ-500 компьютеров мира InfiniBand используют в 181 кластере.
- К 2014 году InfiniBand становится самой популярной технологией внутреннего соединения суперкомпьютеров.
- В 2019 году Nvidia приобретает Mellanox, последнего независимого производителя продуктов InfiniBand.
Что такое Infiniband?

- Узлы (Node) — это конечные точки, такие как серверы, системы хранения данных или рабочие станции, которые подключаются к InfiniBand сети через адаптеры каналов узлов (Channel Adapters).
- Адаптеры каналов узлов (Channel Adapters, Host Channel) — это сетевые адаптеры InfiniBand, которые устанавливаются в узлы и обеспечивают их подключение к InfiniBand сети. Именно они реализуют технологию RDMA.
- Коммутаторы (Switches) — коммутаторы InfiniBand выполняют маршрутизацию пакетов данных между узлами и формируют топологию сети. Существуют как аппаратные, так и программные коммутаторы, однако Infiniband может существовать и без них, передавая данные напрямую по выделенному каналу между устройствами.
- Каналы связи (Links) — каналы InfiniBand соединяют адаптеры узлов с коммутаторами и коммутаторы между собой. Они используют медные или оптоволоконные кабели для физического подключения.



Одним из главных конкурентов IB на рынке является Ethernet. Однако шины IB имеют ряд преимуществ:
- Меньшая задержка: латентность IB составляет около 1 микросекунды, что намного меньше задержки Ethernet в 10-50 микросекунд для малых пакетов данных.
- Более эффективное использование процессора: IB использует технологию удаленного прямого доступа к памяти (RDMA), которая позволяет передавать данные напрямую между памятью узлов, минуя процессор и операционную систему — это снижает нагрузку на ЦП. Кроме того, Infiniband активно использует технологию Offloading, освобождающую процессор от лишних задач. В отличие от этого, в сетях Ethernet вся обработка данных ложится на процессор, что может привести к его перегрузке при обработке больших объемов данных.
- Более высокая масштабируемость: InfiniBand позволяет строить масштабируемые кластеры с тысячами узлов, в то время как масштабируемость Ethernet в кластеризации ограничена и низкоэффективна, так как он не создавался для решения подобных задач.
- Качество обслуживания (QoS): IB предоставляет функции гарантированного качества обслуживания и разделения трафика, чего нет в стандартном Ethernet.
- Отказоустойчивость: InfiniBand имеет встроенные механизмы переключения каналов связи на резервный в случае, если с основным каналом возникли неполадки, что обеспечивает более высокую отказоустойчивость, чем Ethernet.
Но у IB есть и недостатки — более высокая стоимость компонентов инфраструктры, сложность настройки и то, что это проприетарная технология, которая является частной собственностью правообладателей и не удовлетворяет критерии свободного ПО. Также технология InfiniBand не может быть использована для доставки данных из глобальной сети Интернет, на ее основе нельзя построить всемирную сеть — IB обычно применяется в рамках ЦОД. В свою очередь, Ethernet разрабатывали как глобальную сеть, которая легко масштабируется для доставки данных с помощью пользовательских протоколов (HTTP или др.). Поэтому в обычных офисных сетях Ethernet остается превалирующей технологией.
Стоит отметить, что стандарт Infiniband не задумывался как заменитель Ethernet, изначально он планировался в качестве высокоскоростного интерконнекта для передачи данных в высокопроизводительных средах, причем набор этих данных в большей степени отличен от Ethernet пакетов.
Основные стандарты Infiniband:
Краткая таблица стандартов IB на 2024 год:

FDR10 40Gb/s (Fourteen Data Rate)
Стандарт представлен в 2010 году — является одной из самых распространенных коммерчески доступных скоростей передачи данных на сегодняшний день для InfiniBand сетей от Mellanox (NVIDIA Networking). Это скоростной стандарт передачи данных, используемый в высокопроизводительных компьютерных сетях и системах хранения данных. Фактически, скорость передачи данных будет равна 40Gb/s.Для построения сетевой инфраструктуры потребуются следующие компоненты:


FDR 56Gb/s (Fourteen Data Rate)
Протокол представлен в 2011 году — как улучшение FDR10, с целью увеличения скорости передачи данных до 56 Гбит/с на порт. Решения FDR 56Gb/s обеспечивают высокую производительность и масштабируемость для ЦОД, HPC-кластеров, систем машинного обучения, финансовой аналитики и других специализированных сфер, требующих максимальной скорости кодирования и низкой задержки.

EDR 100Gb/s (Enhanced Data Rate)


HDR 200Gb/s (High Data Rate)

MCX654106A-HCAT - сетевая карта с двумя портами QSFP56 HDR 200Gb/s и отдельной платой расширителем линий PCI-E. Плата расширитель требуется для обеспечения полной пропускной способности интерфейсов SFP на платформах с устаревшим протоколом PCI-E. Источник:

Mellanox QM8700 применяет повышенную компоновку разъемов QSFP56, что позволило разместить 40 сетевых интерфейсов в 1U корпусе. Источник:
NDR 400Gb/s (Next Data Rate)
Представлен в 2023 году — это новейший стандарт InfiniBand со скоростью 400 Гбит/с. Предоставляет самую высокую скорость для суперкомпьютеров, систем AI/ML/DL, научных вычислений и приложений, требующих максимальной пропускной способности и производительности.

Mellanox Quantum MQM9790-NS2R — высокопроизводительный коммутатор NDR 400 Гбит/с с 32 портами OSFP. Источник:
XDR 800Gb/s (eXtended Data Rate)
Анонсирован в 2024 году — это новая спецификация для высокоскоростного соединения памяти и процессоров в современных вычислительных системах. Она была разработана совместными усилиями ведущих компаний, включая AMD, Samsung, Nvidia и других.XDR обеспечивает огромную пропускную способность до 800 Гбит/с на одно соединение.
- Ультравысокая пропускная способность 800 Гбит/с на одно соединение.
- Низкая задержка - менее 10 нс.
- Высокая плотность передачи данных благодаря использованию PAM4 кодирования.
- Энергоэффективность — более высокая производительность при меньшем энергопотреблении.
- Масштабируемая архитектура — возможность использовать несколько каналов XDR одновременно.
Первые микросхемы памяти XDR ожидаются уже в 2024 году от компаний Samsung и SK Hynix. А ведущие производители вычислительных систем, такие как Nvidia, AMD и другие, активно работают над интеграцией XDR в свои будущие продукты.

NVIDIA Quantum-X800 InfiniBand коммутатор. Источник:
Способы объединения InfiniBand и Ethernet
InfiniBand over Ethernet (IBoE)
InfiniBand over Ethernet (IBoE) — технология, позволяющая передавать трафик InfiniBand поверх стандартных Ethernet-сетей.Основная идея IBoE заключается в инкапсуляции пакетов InfiniBand в Ethernet-фреймы (формат данных, используемый в сетях Ethernet) для их транспортировки через обычные Ethernet коммутаторы и кабели.
Эту технологию используют в современных сетевых картах Intel (например, адаптеры Intel E810). Они позволяют легко переключить Ethernet-адаптер в режим работы InfiniBand over Ethernet.
- Расширение географической досягаемости InfiniBand через IP-сети.
- Возможность использования существующей Ethernet-инфраструктуры для построения кластеров IB.
- Упрощение миграции и интеграции с традиционными Ethernet-сетями.
IBoE может применяться в кластерных, облачных и гибридных средах для предоставления удаленного доступа к InfiniBand устройствам и ресурсам через IP-сети, но не заменяет полностью InfiniBand внутри кластеров.

RDMA over Converged Ethernet (RoCE) v2
RDMA over Converged Ethernet (RoCE) v2 — это протокол, позволяющий использовать технологию удаленного прямого доступа к памяти RDMA (remote direct memory) поверх стандартных Ethernet-сетей. Основная идея RoCE v2 заключается в передаче пакетов InfiniBand, содержащих инструкции RDMA, через традиционную Ethernet сеть с использованием протокола UDP ("соединение без соединения", когда отправитель просто отсылает пакеты данных получателю без предварительной связи и контроля). Данная технология также используется в современных сетевых картах Ethernet.- Использование UDP — RoCE v2 использует UDP для инкапсуляции и транспортировки пакетов RDMA, что уменьшает накладные расходы по сравнению с TCP(передача данных с полным контролем). Это позволяет достичь более низкой задержки.
- Приоритизация трафика с PFC — механизм Priority-based Flow Control (PFC) позволяет разделять трафик на отдельные классы сервиса с разными приоритетами и управлять потоком для каждого класса независимо.
- Конгрессные фреймы — поддерживаются большие конгрессные Ethernet-фреймы (пакеты данных) размером до 9000 байт вместо стандартных 1500 байт, увеличивая пропускную способность.
- Защита данных с CRC-32c — применяется улучшенный 32-битный циклический код CRC-32c для лучшей защиты целостности данных.
- Обработка на аппаратном уровне — большая часть обработки RoCE v2 происходит на уровне сетевого адаптера, минимизируя участие ядра ОС и процессора.
RoCE v2 полностью совместим со стандартной Ethernet инфраструктурой, что позволяет объединить традиционный LAN трафик и RDMA трафик в одной унифицированной сети на основе Ethernet.
