InfiniBand ( IB ) — это стандарт компьютерной сетевой связи, используемый в высокопроизводительных вычислениях и обеспечивающий очень высокую пропускную способность и очень низкую задержку . Он используется для передачи данных как между компьютерами, так и внутри них. InfiniBand также используется в качестве прямого или коммутируемого соединения между серверами и системами хранения, а также в качестве соединения между системами хранения. Он спроектирован с возможностью масштабирования и использует топологию коммутируемой коммутируемой сети . В период с 2014 по июнь 2016 года [1] это было наиболее часто используемое соединение в списке TOP500 суперкомпьютеров.
Mellanox (приобретенная Nvidia ) производит адаптеры главной шины InfiniBand и сетевые коммутаторы , которые используются крупными поставщиками компьютерных систем и баз данных в своих линейках продуктов. [2] В качестве межсоединения компьютерного кластера IB конкурирует с Ethernet , Fibre Channel и Intel Omni-Path . Технология продвигается торговой ассоциацией InfiniBand .
InfiniBand возникла в 1999 году в результате слияния двух конкурирующих разработок: Future I/O и Next Generation I/O (NGIO). NGIO возглавляла Intel со спецификацией, выпущенной в 1998 году [3] , к ней присоединились Sun Microsystems и Dell . Будущий ввод-вывод был поддержан Compaq , IBM и Hewlett-Packard . [4] Это привело к формированию Торговой ассоциации InfiniBand (IBTA), в которую вошли как поставщики оборудования, так и поставщики программного обеспечения, такие как Microsoft . В то время считалось, что некоторые из более мощных компьютеров приближаются к узкому месту шины PCI , несмотря на такие обновления, как PCI-X . [5] Версия 1.0 Спецификации архитектуры InfiniBand была выпущена в 2000 году. Первоначально концепция IBTA для IB была одновременно заменой PCI в вводе-выводе, Ethernet в машинном помещении , межкластерном соединении и Fibre Channel . IBTA также предусмотрела разложение серверного оборудования на структуру IB .
Компания Mellanox была основана в 1999 году для разработки технологии NGIO, но к 2001 году выпустила линейку продуктов InfiniBand под названием InfiniBridge со скоростью 10 Гбит/с. [6] После того, как лопнул пузырь доткомов, в отрасли возникли колебания относительно инвестирования в столь далеко идущий технологический скачок. [7] К 2002 году Intel объявила, что вместо поставок интегральных схем («чипов») IB она сосредоточится на разработке PCI Express , а Microsoft прекратила разработку IB в пользу расширения Ethernet. Sun Microsystems и Hitachi продолжали поддерживать IB. [8]
В 2003 году суперкомпьютер System X , построенный в Технологическом институте Вирджинии, использовал InfiniBand в том, что на тот момент считалось третьим по величине компьютером в мире. [9] Альянс OpenIB (позже переименованный в OpenFabrics Alliance) был основан в 2004 году для разработки открытого набора программного обеспечения для ядра Linux . К февралю 2005 г. поддержка была включена в ядро Linux 2.6.11. [10] [11] В ноябре 2005 года устройства хранения данных наконец-то были выпущены с использованием InfiniBand от таких поставщиков, как Engenio. [12]
Из 500 лучших суперкомпьютеров в 2009 году Gigabit Ethernet использовался в качестве технологии внутреннего соединения в 259 установках, по сравнению с 181, использующей InfiniBand. [13] В 2010 году лидеры рынка Mellanox и Voltaire объединились, в результате чего остался только один поставщик IB, QLogic , в основном поставщик Fibre Channel . [14] На Международной суперкомпьютерной конференции 2011 года были анонсированы и продемонстрированы на соединительных стендах на выставке каналы связи, работающие со скоростью около 56 гигабит в секунду (известные как FDR, см. ниже). [15] В 2012 году Intel приобрела технологию InfiniBand компании QLogic, оставив только одного независимого поставщика. [16]
К 2014 году InfiniBand стала самой популярной технологией внутреннего соединения суперкомпьютеров, хотя через два года ее начал вытеснять 10-гигабитный Ethernet . [1] В 2016 году сообщалось, что корпорация Oracle (инвестор Mellanox) может разработать собственное оборудование InfiniBand. [2] В 2019 году Nvidia приобрела Mellanox, последнего независимого поставщика продуктов InfiniBand. [17]
Технические характеристики опубликованы торговой ассоциацией InfiniBand.
Первоначальные названия скоростей были «одинарная скорость передачи данных» (SDR), «двойная скорость передачи данных» (DDR) и «четверенная скорость передачи данных» (QDR), как указано ниже. [12] Впоследствии были добавлены другие трехбуквенные аббревиатуры для еще более высоких скоростей передачи данных. [18]
Каждая ссылка является дуплексной. Каналы можно агрегировать: в большинстве систем используется разъем с 4 каналами/полосами (QSFP). HDR часто использует 2x канала (также известный как HDR100, канал 100 Гбит с использованием 2 линий HDR, но при этом используется разъем QSFP). 8x требуется для портов коммутатора NDR, использующих разъемы OSFP (восьмеричный подключаемый модуль малого форм-фактора) «Определения кабелей и разъемов».
InfiniBand обеспечивает возможности удаленного прямого доступа к памяти (RDMA) для снижения нагрузки на процессор.
InfiniBand использует топологию коммутируемой фабрики , в отличие от раннего Ethernet с разделяемой средой . Все передачи начинаются или заканчиваются на адаптере канала. Каждый процессор содержит адаптер главного канала (HCA), а каждое периферийное устройство имеет адаптер целевого канала (TCA). Эти адаптеры также могут обмениваться информацией о безопасности или качестве обслуживания (QoS).
InfiniBand передает данные пакетами размером до 4 КБ, которые вместе образуют сообщение. Сообщение может быть:
Помимо подключения форм-фактора платы, можно использовать как активный, так и пассивный медный (до 10 метров) и оптоволоконный кабель (до 10 км). [29] Используются разъемы QSFP .
Ассоциация InfiniBand также определила систему разъемов CXP для скоростей до 120 Гбит/с по медным, активным оптическим кабелям и оптическим трансиверам с использованием параллельных многомодовых оптоволоконных кабелей с 24-волоконными разъемами MPO. [ нужна цитата ]
Поддержка операционных систем Mellanox доступна для Solaris , FreeBSD , [30] [31] Red Hat Enterprise Linux , SUSE Linux Enterprise Server (SLES), Windows , HP-UX , VMware ESX , [32] и AIX . [33]
InfiniBand не имеет специального стандартного интерфейса прикладного программирования (API). Стандарт перечисляет только набор глаголов, таких как ibv_open_device
или ibv_post_send
, которые являются абстрактными представлениями функций или методов, которые должны существовать. Синтаксис этих функций оставлен на усмотрение поставщиков. Иногда для справки это называют API глаголов . Стандартное программное обеспечение де-факто разработано OpenFabrics Alliance и называется Open Fabrics Enterprise Distribution (OFED). Он выпускается под двумя лицензиями GPL2 или BSD для Linux и FreeBSD, а также под названием Mellanox OFED для Windows (названия продуктов: WinOF / WinOF-2; атрибутируется как драйвер хост-контроллера для соответствия конкретным устройствам ConnectX 3–5) [34] под лицензией выбор лицензии BSD для Windows. Он был принят большинством поставщиков InfiniBand для Linux , FreeBSD и Microsoft Windows . IBM ссылается на библиотеку программного обеспечения под названием libibverbs
, для своей операционной системы AIX , а также на «глаголы AIX InfiniBand». [35]
Поддержка ядра Linux была интегрирована в 2005 году в ядро версии 2.6.11. [36]
Ethernet over InfiniBand, сокращенно EoIB, представляет собой реализацию Ethernet на основе протокола InfiniBand и технологии разъемов. EoIB обеспечивает несколько полос пропускания Ethernet , различающихся в зависимости от версии InfiniBand (IB). [37] Реализация пакета интернет-протоколов Ethernet , обычно называемого TCP/IP, в некоторых деталях отличается от прямого протокола InfiniBand в IP over IB (IPoIB).
Технология InfiniBand теперь используется в 205 системах (вместо 235) и является второй наиболее часто используемой технологией внутреннего межсистемного соединения.
Количество систем Gigabit Ethernet выросло до 218 со 182 систем, во многом благодаря тому, что 176 систем теперь используют интерфейсы 10G.
FDR10 — это нестандартная скорость передачи данных InfiniBand, при которой каждая полоса порта 4X имеет скорость передачи данных 10,3125 Гбит/с с кодировкой 64/66b, что обеспечивает эффективную пропускную способность 40 Гбит/с.
FDR10 поддерживает на 20 % большую пропускную способность по сравнению с QDR благодаря лучшей скорости кодирования.
Обзор InfiniBand FDR и FDR10 [...] FDR, стандартная скорость передачи данных InfiniBand, при которой каждая линия порта 4X имеет скорость передачи данных 14,0625 Гбит/с с кодировкой 64b/66b, что приводит к эффективной пропускной способности 54,54 Гбит/с. .
Физический уровень FDR — это физический уровень, указанный IBTA, использующий различные типы блоков, механизм устранения перекоса и правила кадрирования.
Коммутатор SX6518 также поддерживает FDR10, нестандартную скорость передачи данных InfiniBand, при которой каждая полоса порта 4X работает со скоростью передачи данных 10,3125 Гбит/с с кодировкой 64b/66b, что обеспечивает эффективную пропускную способность 40 Гбит/с.