Обратите внимание: хотя технология InfiniBand изначально позиционировалась как замена шины PCI, с появлением технологии 3GIO роль InfiniBand в качестве PCI нового поколения заметно снизилась.
Технология InfiniBand предоставляет множество преимуществ.
Сокращение сложности кабельных подключений, так как InfiniBand позволяет заменить три кабеля – Ethernet, кабели к подсистеме хранения и кабели межпроцессного взаимодействия – одним соединением. В результате намного упрощается аппаратная структура монтажной платы, разводка соединителей на платах и общая структура системы. Более того, монтажные платы подключаются к граничным разъемам и из стойки доступна только пара высокоскоростных соединений.
Встроенное обнаружение ошибок, упрощающее поиск неисправного компонента.
Сокращение потребления пропускной способности памяти, так как сокращается количество операций копирования в память и из нее.
Сокращение контекстных переключений, в том числе переключения между пользовательским режимом и режимом ядра.
Уменьшение накладных расходов, например при вычислении контрольных сумм TCP/IP.
Обеспечение отказоустойчивости за счет использования альтернативных маршрутизаторов в среде связной архитектуры и таких избыточных компонентов; как маршрутизаторы и коммутаторы. Избыточные маршруты позволяют выполнять отправку данных по нескольким маршрутам и балансировать общую нагрузку. Более того, компоненты InfiniBand поддерживают «горячую» замену.
Технология InfiniBand обеспечивает эффективную загрузку монтажной платы из внешнего устройства, что позволяет еще более упростить аппаратную структуру платы.
Архитектурой InfiniBand определена топология логического подключения «точка-точка», которое формируется поверх связной архитектуры. Непосредственно коммутируемая связная архитектура содержит следующие компоненты:
■ адаптеры канала узла;
Рис. 8.9. Шина ввода-вывода InfiniBand
адаптеры канала целевого устройства;
коммутаторы InfiniBand;
физический носитель.
На рис. 8.9 демонстрируется структура шины ввода-вывода InfiniBand и взаимоотношение различных компонентов, которые более подробно рассматриваются далее.
Адаптер канала узла (host channel adapter – НСА) представляет собой устройство, которое работает в качестве точки соединения центрального процессора узла и связной архитектуры InfiniBand. Адаптеры каналов узла тесно связаны с серверами и размещаются рядом с ними. Адаптер НСА уменьшает количество прерываний, сдерживает «вмешательство» операционной системы и может обмениваться данными непосредственно с памятью. Каждый адаптер имеет уникальный идентификатор, созданный на основе адреса протокола IPv6.
Адаптер канала целевого устройства (target channel adapter – ТС А) является аналогом адаптера НСА, предназначенного для периферийных устройств, а не ЦПУ узлов. Адаптеры ТС А обычно взаимодействуют с периферийными устройствами и также размещены недалеко от них.
Коммутатор InfiniBand предоставляет возможность подключения нескольких адаптеров ТСА к одному адаптеру НСА. Кроме того, коммутаторы поддерживают маршрутизацию нескольких логических элементов связной архитектуры (они называются подсетями). В то время как коммутаторы InfiniBand поддерживают подключения внутри подсети, маршрутизаторы InfiniBand реализуют подключение между подсетями. Маршрутизаторы обычно настраиваются так, чтобы дополнять возможности коммутаторов новыми функциями.
Технология InfiniBand поддерживает использование обычных медных или оптических кабелей, при этом линии связи могут достигать 17 метров для медных носителей и 100 метров для оптических кабелей. Подключение InfiniBand может включать в себя разное количество линий связи, каждая из которых имеет быстродействие 2,5 Гбит/с. Поддерживаются комбинации от IX (1 кабель) до 4Х (4 кабеля) для быстродействия 10 Гбит/с или 12Х (12 кабелей) для быстродействия 30 Гбит/с.
Архитектура InfiniBand включает в себя не только физические, но и логические компоненты, описанные далее.
8.2.2.1 Линии связи InfiniBand и сетевые уровни
На уровне канала передачи данных (уровень 2 модели OSI) каждая линия InfiniBand делится максимум на 16 потоков и минимум на 2 потока. Один из потоков всегда выделяется на управление связной архитектурой. Потоки получают приоритеты QoS, а поток управления поЛучает наивысший приоритет (виртуальный поток 15; потоки 0–14 используются для передачи данных) и соответствующий уровень QoS.