Достоинства коммуникационной сети InfiniBand Технология Infiniband берет свое начало в 1999 году, когда были объединены два конкурирующих проекта под авторством крупнейших производителей коммуникационного оборудования того времени: Compaq, IBM, Hewlett-Packard, Intel, Microsoft и Sun.
С точки зрения архитектуры она представляет собой коммутируемую сеть высокоскоростных соединений между вычислительными модулями и устройствами хранения масштаба суперкомпьютера или вычислительного центра.
При проектировании стандарта Infiniband в него были заложены следующие приоритеты:
- Иерархическаяприоритизация трафика;
- Низкая латентность;
- Масштабируемость;
- Возможность резервирования;
История InfiniBand началась с того, что стало очевидно: высокопроизводительным серверам необходимы мощные альтернативы существующим системам ввода/вывода. Революционные изменения происходили везде, а в этой сфере наблюдалась очевидная стагнация, имя которой — PCI. Более чем за десять лет своего существования шина PCI практически полностью монополизировала ввод/вывод, стала непременным атрибутом архитектуры компьютеров всех уровней, начиная от самых простых настольных моделей и вплоть до мощных корпоративных серверов.
Но десять лет по технологическим меркам — почти эпоха. Шина PCI появилась на фоне символов своего времени наподобие 66-мегагерцевых процессоров, технологий на 0,8 микрон и сетей с пропускной способностью 10 Мбайт/с. С тех пор много воды утекло. Почти полностью утратили актуальность большинство шинных архитектур, в том числе AT/ISA, EISA, HP-PB, MCA, VME, NuBus, Sbus, TurboChannel, не говоря уже о родоначальнике всех шин UNIBUS. Это и не удивительно, ведь их пропускная способность, не превосходящая нескольких мегабайт в секунду, существенно уступала шине PCI, работающей на частоте 133 МГц, которая может быть повышена до 266 МГц, а перспективе превысит 1 ГГц. Поэтому она живет и здравствует, однако и ее царствованию есть предел. Пропускная способность в версии PCI-X находится в диапазоне 6,4-8,5 Гбайт/с; сегодня, когда получают распространение интерфейсы Ultra320 SCSI, GigabitEthernet, FiberChannel, служащие для подключения систем хранения и позволяющие образовывать кластеры, этого уже явно недостаточно. Не случайно получила хождение шуточная расшифровка аббревиатуры PCI — ProblematicComputerInterface. Кроме очевидных ограничений по производительности выявились врожденные функциональные недостатки (о них ниже), поэтому многие организации стали предлагать альтернативные решения, которыми можно было бы полностью или частично заменить PCI.
Работа над замещающими PCI проектами началась в конце 90-х годов. На сегодняшний день насчитывается более полусотни разных технологий, среди которых наиболее известны InfiniBand, RapidIO, HyperTransport, StarFabric; есть и множество других. Спектр альтернативных решений очень широк, некоторые конкурируют между собой, другие дополняют друг друга, к тому же все они различаются по степени готовности к выпуску в производство. Как обычно, поначалу во взглядах на перспективные продукты преобладал радикализм; нередко то или иное решение предлагали как безоговорочную «замену» PCI. Поиск подобной замены в этой области очень напоминает события, связанные с интерфейсом SCSI. В обоих случаях в проверенную временем технологию были вложены большие средства, поэтому она не может быть просто так отброшена, в итоге она не уходит одномоментно, а продолжает совершенствоваться, оставаясь в игре, претенденты же обычно либо как-то подстраиваются под нее, либо подыскивают себе собственные ниши. Вот и сейчас, особенно на фоне спада производства в области высоких технологий, во взглядах на будущее PCI возобладал умеренный консерватизм, признающий право на существование и за новыми, и за старыми подходами. В какой-то момент показалось, что острота интереса к альтернативным архитектурам ввода/вывода вообще спала.
Шина Infiniband является последовательной, так же как, скажем, PCIe или SATA, но в отличие от последних, может использовать как волоконную, так и медную среду передачи, что позволяет ей обслуживать и внутренние, и сильно внешние соединения. Кодирование передаваемых данных производится по схеме 8B/10B для скоростей до QDR включительно и по схеме 64B/66B для FDR и EDR.
Рисунок 1.1 - Коннекторы: CX4(слева) и QSFP(справа)
Линии Infiband обычно оконцовывают коннекторами СХ4 (на фотографии слева) и QSFP, для высокоскоростных линков сейчас все больше применяется оптика.Продвижением и стандартизацией Infiniband занимается InfiniBandTradeAssociation – консорциум заинтересованных производителей, включающий в себя IBM, Hewlett-Packard, Intel, Oracle и другие компании. Что же касается непосредственно оборудования, то есть адаптеров и коммутаторов Infiniband, то лидирующие позиции на рынке занимают Mellanox и QLogic (приобретена Intel в начале 2012 года).
Адаптеры Infinibandделятся на двекатегории: Host Channel Adapters (HCA) и Target Channel Adapters (TCA).НСА устанавливаются в сервера и рабочие станции, ТСА – в устройства хранения; соответственно, на долю первых приходится управление и передача данных, вторые исполняют команды и также передают данные. Каждый адаптер имеет один или несколько портов. Как уже говорилось, одной из особенностей Infiniband является высокоточная маршрутизация трафика. Например, перемещение данных с одного стораджа на другой должно быть инициировано НСА, но после передачи управляющих директив сервер выходит из игры – весь трафик движется напрямую из одного хранилища в другое.
Рисунок 1.2 -Адаптер HCA QLogic QLE7340 (56 Гбит/с).
Как можно заметить, количество соединений между абонентами Infiniband избыточно. Это сделано для увеличения скорости передачи и обеспечения резервирования. Совокупность конечных пользователей, подключенных к одному или нескольким коммутаторам, называется подсетью; карта подсети, то есть набор доступных маршрутов между пользователями, находится в памяти менеджера подсети – таковой обязательно должен быть, хотя бы один. Несколько подсетей может объединяться в одну сеть с помощью маршрутизаторов Infiniband.[7]
Infiniband разрабатывался не только как средство оптимальной передачи данных, но и как стандарт прямого обмена содержимым памяти серверов; так, на его основе работает протокол RDMA (RemoteDirectMemoryAccess), позволяющий удаленно получать и передавать области памяти без участия операционной системы. В свою очередь, на RDMA базируется серия более специализированных протоколов, расширяющих его функциональность.
Существуют также протоколы водружения поверх Infiniband стандартного стека протоколов TCP/IP, они включены, во все наборы ПО для Infiniband, как фирменные, так различных производителей сетевых устройств, так и открытые.[8]
Рисунок 1.3 -График роста скоростей Infiband
Итак, Infiniband находит свое применение везде, где передаются большие объемы данных с высокими скоростями, идет ли речь о суперкомпьютерах, высокопроизводительных кластерах, распределенных базах данных и т.д. [5]
2. Классификация сетей
Сети классифицируются по ряду признаков.
По расстоянию между узлами
В зависимости от расстояний между связываемыми узлами различают вычислительные сети:
- территориальные - охватывающие значительное географическое пространство;
- среди территориальных сетей можно выделить сети региональные и глобальные, имеющие соответственно региональные или глобальные масштабы;
- региональные сети иногда называют сетями MAN (MetropolitanAreaNetwork), а общее англоязычное название для территориальных сетей - WAN (WideAreaNetwork);
- локальные (ЛВС) - охватывающие ограниченную территорию (обычно в пределах удаленности станций не более чем на несколько десятков или сотен метров друг от друга, реже на 1...2 км);
- локальные сети обозначают LAN (LocalAreaNetwork);
- корпоративные (масштаба предприятия) - совокупность связанных между собой ЛВС, охватывающих территорию, на которой размещено одно предприятие или учреждение в одном или нескольких близко расположенных зданиях. Локальные и корпоративные вычислительные сети - основной вид вычислительных сетей, используемых в системах автоматизированного проектирования (САПР).[3]
По топологии
- Сетевая топология – это геометрическая форма сети. В зависимости от топологии соединений узлов различают сети шинной (магистральной), кольцевой, звездной, иерархической, произвольной структуры.
- шинная (bus) - локальная сеть, в которой связь между любыми двумя станциями устанавливается через один общий путь и данные, передаваемые любой станцией, одновременно становятся доступными для всех других станций, подключенных к этой же среде передачи данных (последнее свойство называют широковещательностью);
- кольцевая (ring) - узлы связаны кольцевой линией передачи данных (к каждому узлу подходят только две линии); данные, проходя по кольцу, поочередно становятся доступными всем узлам сети;
- звездная (star) - имеется центральный узел, от которого расходятся линии передачи данных к каждому из остальных узлов;
- иерархическая - каждое устройство обеспечивает непосредственное управление устройствами, находящимися ниже в иерархии.
- Дерево (fattree) — топология компьютерной сети, изобретенная Charles E. Leiserson из MIT, является дешевой и эффективной для суперкомпьютеров. В отличие от классической топологии дерево, в которой все связи между узлами одинаковы, связи в утолщенном дереве становятся более широкими (толстыми, производительными по пропускной способности) с каждым уровнем по мере приближения к корню дерева. Часто используют удвоение пропускной способности на каждом уровне.
а) б) в)
г) д)
Рисунок 1.4 - Сетевые топологии
По способу управления
- В зависимости от способа управления различают сети:
- "клиент/сервер" - в них выделяется один или несколько узлов (их название - серверы), выполняющих в сети управляющие или специальные обслуживающие функции, а остальные узлы (клиенты) являются терминальными, в них работают пользователи. Сети клиент/сервер различаются по характеру распределения функций между серверами, другими словами по типам серверов (например, файл-серверы, серверы баз данных). При специализации серверов по определенным приложениям имеем сеть распределенных вычислений. Такие сети отличают также от централизованных систем, построенных на мэйнфреймах;
- одноранговые - в них все узлы равноправны; поскольку в общем случае под клиентом понимается объект (устройство или программа), запрашивающий некоторые услуги, а под сервером - объект, предоставляющий эти услуги, то каждый узел в одноранговых сетях может выполнять функции и клиента, и сервера.
- Наконец появилась сетецентрическая концепция, в соответствии с которой пользователь имеет лишь дешевое оборудование для обращения к удаленным компьютерам, а сеть обслуживает заказы на выполнение вычислений и получения информации. То есть пользователю не нужно приобретать программное обеспечение для решения прикладных задач, ему нужно лишь платить за выполненные заказы. Подобные компьютеры называют тонкими клиентами или сетевыми компьютерами.
Заключение
Для практических расчетов (3D-анимация, крэш-тесты, разведка нефтяных и газовых месторождений, прогнозирование погоды) обычно используются кластеры из 10-200 узлов. При этом основная задача — обеспечение эффективной работы кластера с конкретным приложением. Архитектура кластера должна обеспечивать масштабируемость ПО при увеличении количества узлов, т. е. прирост производительности при добавлении новых вычислительных модулей. Для этого важно правильно выбрать конфигурацию кластера в зависимости от профиля обмена данными между экземплярами программы, запущенными на разных узлах. Здесь нужно учитывать общий объем пересылаемых данных, распределение длин сообщений, использование групповых операций и т. п.
Сегодня даже те задачи, для решения которых традиционно применялись многопроцессорные системы с общей памятью, такие, как управление крупными базами данных, успешно решаются на кластерах. Появление на рынке таких продуктов, как, например, Oracle RAC (RealApplicationsCluster), дало возможность применять кластерные системы в области баз данных, а новая версия СУБД Oracle 10g, построенная на базе GRID-технологий, обеспечивает максимально эффективное использование кластерной архитектуры для решения этих задач. Таким образом, благодаря доступности кластерных решений число предприятий, которые могут позволить себе кардинально упростить и ускорить работу с корпоративной базой данных, существенно увеличивается.[]
Кластерные решения — наиболее экономически обоснованный выбор. В отличие от большинства серверных систем с общей памятью кластерные решения легко масштабируются до систем большей производительности. Таким образом, при ужесточении требований заказчика к производительности необязательно покупать новую систему — можно добавить стандартные вычислительные узлы и легко нарастить старую. Причем диапазон масштабируемости очень широк: например, 288-узловой кластер «СКИФ К-1000» с пиковой производительностью 2,5 TFlops можно нарастить до системы мощностью 30 TFlops путем объединения стандартных вычислительных модулей.[10]
Список литературы
1. Олифер В.Г., Олифер Н.А. Компьютерные сети. Принципы, технологии, протоколы. Спб.: Питер, 2014
2. В.Г. Олифер, Н.А. Олифер. Основы сетей передачи данных : курс лекций : учебное пособие. М.:ИНТУИТ, 2005
3. Конева Н.Е. Оптимизация электронных схем на ПЭВМ. Учебный практикум. М.: МГОУ, 2008
4. StrohmaierE., ShanH., ArchitectureIndependent Performance Characterization and Benchmarking for Scientific Applications, 2004
5. http://www.ipacs-benchmark.org - PALLAS MPI Benchmark Suite V2.2
6. IB Gold Distribution Stack User’s Manual, Rev.1.8.0, Mellanox Technologies, 2005
7. Mellanox Firmware Tools User?s Manual, Rev. 0.10, Mellanox Technologies, 2005.
8. Linux HCA Driver for InfiniHost and InfiniHost III HCA families, Rev. 4.1.0 Release Notes, Mellanox Technologies, 2005.
9.
Приложение А. Календарный план
|