Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БЖД / Дипломный проект Калинин Е.А. 10.05.11 (финал).doc
Скачиваний:
78
Добавлен:
19.03.2015
Размер:
2.33 Mб
Скачать

1.2.1 Коммуникационные среды.

Вычислительная система образуется путем объединения коммуникационной средой совокупности процессоров, блоков памяти и устройств ввода-вывода. При этом процессоры могут быть как одинаковыми, так и разными, специализированными на выполнение определенных функций, например ввода-вывода. Коммуникационная среда может быть многоуровневой иерархической, например объединяющей на нижнем уровне иерархии пары, состоящие из процессора и блока памяти, называемые вычислительными модулями (ВМ). Следующий уровень коммуникационной среды объединяет ВМ в единую систему [8].

Фрагмент коммуникационной среды показан на рис 2.1

Устройство

Устройство

Устройство

Коммутатор

Адаптер

Линк

Коммутатор

Рис. 2.1 Коммуникационная среда

Для согласования интерфейсов коммуникационной среды и подключаемого к коммуникационной среде устройства используются адаптеры. Каналы коммуникационный среды называются также линками (от link). Коммуникационная среда может реализоваться как прямыми соединениями «адаптер-линк-адаптер», так и коммутируемыми, при которых соединение устройств выполняется через коммутатор или несколько коммутаторов. Для подсоединения устройства к коммуникационной среде может быть использовано произвольное число адаптеров, начиная с одного. Если к устройству подключено больше одного адаптера, то устройство, как правило, способно коммутировать передачи данных между этими адаптерами. В качестве устройств , подключаемых к коммуникационной среде, могут выступать процессоры, блоки памяти, контроллеры внешних устройств, вычислительные модули, компьютеры и другие устройства. Важно понимать, что каждый тип устройств должен иметь свой специфический адаптер, который реализует интерфейс устройства с коммуникационной средой.

1.2.2 Топология соединительной сети суперкомпьютеров

Полный граф (рис. 2.2) – система, в которой между любой парой процессоров существует прямая линия связи.

Рис. 2.2. Топология соединительной сети «полный граф»

Линейка (рис. 2.3) – система, в которойвсе процессоры перенумерованы по порядку и каждый процессор, кроме первого и последнего, имеет линии связи только с двумя соседними.

Рис. 2.3. Топология соединительной сети «линейка»

Кольцо (рис. 2.4) – данная топология получается из линейки процессоров соединением первого и последнего процессоров линейки.

Рис. 2.4. Топология соединительной сети «кольцо»

Звезда (рис. 2.5) система, в которой все процессоры имеют линии связи с некоторым управляющим процессором.

Рис. 2.5. Топология соединительной сети «звезда»

Решетка (рис. 2.6) – система, в которой граф линий связи образует прямоугольную сетку.

Рис. 2.6. Топология соединительной сети «решетка»

Гиперкуб (рис. 2.7) частный случай – структуры решетки, когда покаждой размерности сетки имеется два процессора.

Рис. 2.7. Топология соединительной сети «гиперкуб»

1.2.3 Обзор коммуникационных сред

Рассмотрим современные и актуальные коммуникационные среды, по состоянию на 2011год.

InfiniBand является самой быстро развивающейся технологией межузловых высокоскоростных коммуникаций. Коммуникационная среда InfiniBand отличается от прочих тем, что эту технологию поддерживает и совершенствует достаточно большое количество производителей аппаратного обеспечения. Практически все разновидности высокоскоростных интерконнектов, за исключением Gigabit Ethernet, являются разработками какой-либо одной компании, которая занимается развитием интерфейса, производством аппаратных решений и разработкой необходимого программного обеспечения. Благодаря наличию конкуренции не только внешней — с другими видами интерконнектов, но и внутренней, среди производителей аппаратного обеспечения и разработчиков ПО для InfiniBand, именно эта коммуникационная среда является наиболее динамично развивающейся. 

Типичными параметрами для коммуникационной среды этого класса являются реальная скорость передачи данных от  800 до 1400 МБ/с и время задержки на уровне 3-6 мкс в зависимости от используемых платформ и типов интерфейсов

Архитектура InfiniBand (IBA) предлагается как комплексное решение многих проблем: увеличения пропускной способности интерфейса ввода-вывода компьютеров и ВМ параллельных серверов, создания высокоэффективных универсальных коммуникационных сред параллельных вычислительных систем, локальных и глобальных сетей, повышения отказоустойчивости и гарантированного качества обслуживания .

Fibre Channel (FC) — семейство протоколов для высокоскоростной передачи данных. Стандартизацией протоколов занимается Технический комитет T11, входящий в состав Международного комитета по стандартам в сфере ИТ (InterNational Committee for Information Technology Standards — INCITS), аккредитованного Американским национальным институтом стандартов (ANSI). Изначальное применение FC в области суперкомпьютеров впоследствии практически полностью перешло в сферу сетей хранения данных, где FC используется как стандартный способ подключения к системам хранения данных уровня предприятия. Версии FC приведены в таблице 2.1

Таблица 2.1

Наметилась также тенденция к переносу транспортного уровня протокола FC в тот же Gigabit и 10G Ethernet.

Fibre Channel широко применяется для создания Сетей Хранения Данных (Storage Area Networks). Благодаря высокой скорости передачи данных, малой задержке и расширяемости практически не имеет аналогов в этой области. Однако, в последние годы, область его применения постепенно перемещается в сегмент высокопроизводительных систем и решений, а бюджетный сегмент с успехом осваивается недорогими решениями iSCSI на базе Gigabit Ethernet и 10G Ethernet. Наметилась также тенденция к переносу транспортного уровня протокола FC в тот же Gigabit и 10G Ethernet при помощи протоколов FCoE и FCIP [9].

Gigabit Ethernet – характеристики, приведены в таблице 2.2

Таблица 2.2.

Производители оборудования

Intel, 3COM и др.

Показатели производительности

Пиковая пропускная способность - 1 Gbit/sec (125 MB/sec), полный дуплекс. В рамках TCP/IP достигаются скорости порядка 500 Mbit/sec (60 MB/sec), в рамках MPI - до 45 MB/sec

Примерные цены

Сетевой адаптер Intel EtherExpress PRO/1000 MT - $50. Коммутатор D-Link DGS-1016T 16-port UTP 10/100/1000 - $900.

Программная поддержка

Драйверы для многих версий UNIX и Windows NT, протоколы TCP/IP.

Комментарии

Преимуществом данной технологии является совместимость и возможность плавного перехода с технологий Ethernet/Fast Ethernet.

10-гигабитный Ethernet. Новый стандарт 10-гигабитного Ethernet включает в себя семь стандартов физической среды для LAN, MAN и WAN. В настоящее время он описывается поправкой IEEE 802.3ae и должен войти в следующую ревизию стандарта IEEE 802.3.

  • 10GBASE-CX4 — Технология 10-гигабитного Ethernet для коротких расстояний (до 15 метров), используется медный кабель CX4 и коннекторы InfiniBand.

  • 10GBASE-SR — Технология 10-гигабитного Ethernet для коротких расстояний (до 26 или 82 метров, в зависимости от типа кабеля), используется многомодовое волокно. Он также поддерживает расстояния до 300 метров с использованием нового многомодового волокна (2000 МГц/км).

  • 10GBASE-LX4 — использует уплотнение по длине волны для поддержки расстояний от 240 до 300 метров по многомодовому волокну. Также поддерживает расстояния до 10 километров при использовании одномодового волокна.

  • 10GBASE-LR и 10GBASE-ER — эти стандарты поддерживают расстояния до 10 и 40 километров соответственно.

  • 10GBASE-SW, 10GBASE-LW и 10GBASE-EW — Эти стандарты используют физический интерфейс, совместимый по скорости и формату данных с интерфейсом OC-192 / STM-64 SONET/SDH. Они подобны стандартам 10GBASE-SR, 10GBASE-LR и 10GBASE-ER соответственно, так как используют те же самые типы кабелей и расстояния передачи.

  • 10GBASE-T, IEEE 802.3an-2006 — принят в июне 2006 года после 4 лет разработки. Использует экранированную витую пару. Расстояния — до 100 метров.

Подробнее рассмотрим PCI Express, или PCIe, или PCI-E (также известная как 3GIO for 3rd Generation I/O; не путать с PCI-X и PXI) — компьютерная шина, использующая программную модель шины PCI и высокопроизводительный физический протокол, основанный на последовательной передаче данных.

Развитием стандарта PCI Express занимается организация PCI Special Interest Group.

В отличие от шины PCI, использовавшей для передачи данных общую шину, PCI Express, в общем случае, является пакетной сетью с топологией типа звезда, устройства PCI Express взаимодействуют между собой через среду, образованную коммутаторами, при этом каждое устройство напрямую связано соединением типа точка-точка с коммутатором.

Кроме того, шиной PCI Express поддерживается:

  • горячая замена карт;

  • гарантированная полоса пропускания (QoS);

  • управление энергопотреблением;

  • контроль целостности передаваемых данных.

Разработка стандарта PCI Express была начата фирмой Intel после отказа от шины InfiniBand. Официально первая базовая спецификация PCI Express появилась в июле 2002 года.

2006 году сама идея возможности кабельного удлинения канала PCI Express скептически воспринималась многими специалистами – практиками. Весьма популярным было следующее утверждение: «PCI Express – технология коммуникаций внутри материнской платы. Для объединения материнских плат между собой существует Infiniband». И пусть эта конкретная трудность оказалась, в итоге, надуманной, хотелось бы понимать, какие еще проблемы нас подстерегают.

С тех самых пор, как примерно 10 лет назад создатели суперкомпьютеров, в большинстве своем, сознательно отказались от собственных разработок оборудования, перейдя на кластерную технологию, в их среде утвердился весьма разумный обычай. Стало принято начинать всякое обсуждение планов создания собственного, самобытного оборудования с ответа на простой вопрос: «Если это и в самом деле так хорошо, то почему так не делают все остальные»? Невозможностью внятно ответить на этот вполне законный вопрос всякое такое обсуждение, как правило, и заканчивалось [10].

Любопытно отметить, что первый вариант текста этой главы был посвящен попытке дать развернутый, аргументированный ответ именно на этот «проклятый вопрос». Несколько недель спустя главу пришлось переписать. Об ответе на «проклятый вопрос» позаботилась сама жизнь. Хронология этого ответа целиком укладывается в 2007 год и выглядит довольно впечатляюще:

- в начале года официально опубликована спецификация кабельного варианта PCI Express, подтверждающая работоспособность по медному кабелю длиной до 10 метров,

- к концу лета не очень широко известная в мире американская фирма OneStopSystems объявила о производстве коммуникационного оборудования для малоразмерных кластеров на базе прямой коммутации PCI Express,

- ближе к концу года с аналогичным предложением вышла на рынок фирма Dolphin Interconnect, знаменитая в прошлом как разработчик кластерной коммуникационной технологии SCI,

- наконец, фирма Samtec, признанный в мире «законодатель мод» в выпуске кабелей и разъемов, приступила к серийному производству кабельных удлинителей PCI Express, причем не для новых, так и не появившихся в широкой продаже, разъемов, предусмотренных кабельной спецификацией, а для стандартных ножевых разъемов, используемых в серийно выпускаемых материнских платах. Это случилось в начале декабря.

Завершающее событие в этом списке совершенно недвусмысленно говорит о том, что «проклятый вопрос» больше не стоит. Точнее, правильная формулировка «проклятого вопроса» теперь звучит так: «Если так делают уже буквально все, чего же мы ждем»?

Технологии прямой коммутации каналов PCI Express, очевидно, оказались в «точке роста». В этом случае грань между использованием «самодельного» и покупного оборудования стирается – опытный образец собственной разработки зачастую оказывается законченным одновременно с появлением на рынке аналогичных изделий заводского выпуска. Из этого ни в коей мере не следует, что от разработки опытных образцов надо отказаться и просто подождать, пока все новые технические решения будут найдены другими. Все в точности наоборот. Разработчик, уклоняющийся от участия в общей гонке, рискует отстать настолько, что перестанет понимать, куда и зачем все бегут. Чтобы «пойти в магазин и просто купить, не разрабатывая» новое техническое решение, в котором кто-то удачно и недорого реализовал Ваши мысли, весьма желательно эти самые мысли иметь.

Словом, в сложившейся ситуации нам необходимо очень точно и конкретно разобраться, что именно происходит, какие решения нам предлагает промышленность, как именно их можно использовать при построении суперкомпьютера с коммуникационной системой нового типа.

Чтобы понять масштаб проблемы, нам придется несколько более подробно, чем при планировании монтажа и наладки традиционного кластера, углубиться во внутреннюю «кухню» PCI Express.

PCI Express, как и все современные сети, является сетью коммутируемой. Ничего похожего на режим «коллизий», свойственный ранним версиям Ethernet, в ней, конечно же, нет. Коммуникационная магистраль представляет собой набор узлов, соединенных дуплексными каналами «точка – точка». Топология соединений – дерево. Корень дерева – особый узел, называемый root complex (процессор+системная память), листья дерева – устройства. Вершины дерева, не являющиеся листьями, представляют собой коммутаторы, то есть устройства, которые способны принять сетевой пакет по некоторому входу, проанализировать содержащийся в пакете адрес назначения и, в зависимости от того, чему равен адрес, выдать пакет в тот или иной выход.

Настройка коммутаторов происходит аппаратно при включении компьютера. В этот момент каждое из устройств – листьев дерева посылает в направлении корня специальные сетевые пакеты, в которых содержится информация о необходимых адресных диапазонах. Например, видеоадаптер мог бы послать такой пакет: «под буфер регенерации мне необходимо 8 мегабайт адресного пространства памяти, а под регистры управления – еще 512 байт». В результате совместной работы корневого узла и коммутаторов, в обратном направлении поступают ответные сообщения, в которых содержатся конкретные адреса. Устройствам предлагается занять именно их. Например, ответ видеоадаптеру мог бы иметь вид: «Твои 8 мегабайт отныне начинаются с адреса такого-то, а твои 512 байт – с такого …». Настроившись таким образом, коммутаторы работают прозрачно, то есть без всякого программного вмешательства в процесс коммутации пакетов. Если узел – лист дерева знает адрес получателя для пакета, который он хочет отправить, ему достаточно сформировать пакет и выдать его в сеть. Пакет найдет адресата.

Естественно, упомянутые нами выше устройства типа «непрозрачный мост» не пропускают через себя никаких управляющих пакетов, циркулирующих в магистрали в процессе назначения адресов. Каждая из «половинок» непрозрачного моста на это время «притворяется» листом дерева, делает вид, что позади нее ничего нет.

В материнской плате вся необходимая система коммутации реализована в микросхемах чипсета и «южного моста». Пусть в нашем распоряжении имеется материнская плата с несколькими разъемами PCI Express. При установке в эти разъемы соответствующих плат расширения – например, сетевых или графических карт – эти устройства оказываются листьями дерева, включенными в систему коммутации. Эти устройства могут общаться друг с другом, с системной памятью и с прочими устройствами материнской платы. Если бы чипсет умел переводить разъем на материнской плате в режим непрозрачного моста, материнские платы можно было бы соединять между собой просто кабелями, а надлежащая настройка непрозрачных мостов позволила бы нам реализовать систему общей памяти способом, описанным выше. К сожалению, современные чипсеты этого, как правило, не умеют. Экстраполируя тот стремительный темп роста кабельных технологий PCI Express, о котором мы говорили в начале главы, разумно предположить, что соответствующие чипсеты вот-вот станут нормой, но, пока этого не случилось, попробуем поискать выход из положения имеющимися на сегодня средствами.

Как мы знаем, канал PCI Express бывает разной ширины – об этом легко догадаться хотя бы по внешнему виду разъемов на материнской плате. О ширине канала PCI Express мы пока еще не говорили. Понятие это, пожалуй, самое простое во всей иерархии соответствующих протоколов. Любой пакет PCI Express состоит из байтов. Передача байта всегда происходит побитно, в последовательном режиме. Если канал имеет ширину, равную одной линии, байты каждого пакета передаются по этой линии друг за другом. Если линий две, то четные байты можно передавать по одной линии, а следующие за ними нечетные – одновременно по другой. Если линий 4, 8 или более (стандарт допускает до 32-х), дисциплина передачи обобщается аналогичным образом.

Еще раз напомним, что линия канала PCI Express называется на английском языке не «line», а «lane», то есть, в дословном переводе, не «линия», а «дорожка». Таким образом, правильно говорить: «Четырех-лЕйновый разъем», а не «четырех-лАйновый». Впрочем, еще гораздо правильнее говорить: «Разъем шириной четыре».

Соседние файлы в папке БЖД