Корпоративные сети с переполненными каналами — первые кандидаты на создание обходного магистрального пути Gigabit Ethernet. Способна ли Gigabit Ethernet решить ваши проблемы с пропускной способностью?

Администраторы крупных корпоративных сетей часто приходят к выводу, что уровень загруженности магистрали (а возможно, и не только магистрали) угрожает застопорить весь трафик. Во многих из этих сетей доминирующей технологией на магистрали является FDDI. Хотя по сравнению с Ethernet на 10 Мбит/с FDDI была довольно быстрой технологией и хотя она обеспечивала очень высокий уровень утилизации сети даже при пиковых нагрузках, теперь, с появлением Fast Ethernet, пропускная способность FDDI в 100 Мбит/с уже не выглядит чем-то выдающимся.

При перегруженности сети мысли администраторов, вполне естественно, обращаются к некоторым более высокоскоростным сетевым технологиям, к каковым на сегодняшний день относятся ATM (скорость передачи данных 155 Мбит/с или 622 Мбит/с) и Gigabit Ethernet (1000 Мбит/с). По сравнению с FDDI или Fast Ethernet эти технологии предлагают действительно высокую скорость передачи данных, а, кроме того, ATM поддерживает качество услуг для чувствительных к задержке приложений, таких, как голос или видео.

Хотя ATM часто называют сетью будущего, ее реализация предусматривает также значительное, возможно, кардинальное изменение современных сетей. Это и заставляет обратиться к Gigabit Ethernet. Теоретической предпосылкой создания Gigabit Ethernet стало десятикратное увеличение скорости Fast Ethernet при сохранении основных особенностей технологии. Gigabit Ethernet предлагается как высокоскоростная, относительно недорогая, без дополнительных изысков сеть. Сочетание таких характеристик выглядит весьма впечатляюще, с точки зрения администраторов, поскольку их первоочередной задачей является увеличение пропускной способности имеющихся сетей передачи данных.

Цель этого испытательного стенда состояла не в тщательном сравнении Gigabit Ethernet и ATM, и не столько потому, что это было сделано уже неоднократно, сколько потому, что на самом деле это не единственный вопрос, который возникает у администратора сети в связи с Gigabit Ethernet. В силу этого мы посвятили данное тестирование решениям на базе Gigabit Ethernet, чтобы понять, в какой мере эта технология способна снять проблему перегруженности сетей. В частности, особое внимание мы уделили одному узкому месту: обмену данными с сервером. С этой целью мы протестировали возможность использования Gigabit Ethernet на соединениях с сервером с помощью сетевых плат G-NIC Gigabit Ethernet компании Packet Engines, а также повторителей FDR Full-Duplex Gigabit Ethernet той же компании.

Стандарт Gigabit Ethernet (IEEE 802.3z) определяет две среды передачи: 1000BaseSX для многомодовых оптических кабелей с коротковолновыми (850 нанометров) лазерами; 1000BaseLX — для одномодовых или многомодовых оптических кабелей с длинноволновыми (1300 нанометров) лазерами. Третий подход, стандарт на который еще не принят и для которого пока нет готовых продуктов, предполагает использование стандартных медных кабелей UTP Категории 5.

Концентратор (повторитель) FDR компании Packet Engines выпускается в двух конфигурациях. Одна модель имеет шесть полнодуплексных портов 1000BaseSX. Кроме того, она оснащается одним портом для каскадирования 1000BaseSX и одним портом 10BaseT/100BaseTX (с автоматической настройкой скорости передачи) для связи с существующими сетями Ethernet или Fast Ethernet. По желанию заказчика порт для каскадирования предлагается и с интерфейсом 1000BaseLX.

Вторая модель содержит 12 полнодуплексных портов 1000BaseSX, один порт для каскадирования 1000BaseSX и один порт 10BaseT/100BaseTX. Порт для каскадирования может также иметь и интерфейс 1000BaseLX.

Плата G-NIC имеет модели на базе шин PCI и Sbus. Версия для PCI поддерживает как 32-, так и 64-разрядную шину. Сетевые платы для шин PCI и Sbus имеются как с интерфейсом SX, так и LX. В этом испытательном стенде мы использовали сетевую плату с интерфейсом SX и концентратор с шестью портами.

ТЕСТОВАЯ КОНФИГУРАЦИЯ

При тестировании мы использовали два сервера LANLAB_NT2 и LANLAB_NT3 с операционной системой Windows NT Server 4.0. Системы LANLAB_NT2 и LANLAB_NT3 представляют собой серверы Dell Computer Systems PowerEdge 4200/300. LANLAB_NT2 оснащен двумя процессорами Pentium II/300 МГц, а LANLAB_NT3 — одним процессором Pentium II/300 МГц. Оба сервера имели оперативную память объемом 128 Мбайт и жесткий диск емкостью 4,2 Гбайт. На каждом из них была установлена операционная система Windows NT Server 4.0 с пакетом Service Pack 3.

Мы также использовали три клиентские рабочие станции. Две из них, с именами CPU 15 и CPU 16, работали под управлением Windows 95, а третья — CPU 17 — с Windows NT Workstation 4.0. Система CPU 17 представляла собой компьютер Dell Dimension XPS D300 с процессором Pentium II/300 МГц, оперативной памятью объемом 64 Мбайт и жестким диском емкостью 2 Кбайт. Как и на серверах, на CPU 17 был установлен Service Pack 3 компании Microsoft. С аппаратной точки зрения комплектация CPU 15 и CPU 16 не отличалась от CPU 17, но в отличие от него оба компьютера работали с Windows 95 OSR 2.5.

Мы установили платы Packet Engines G-NIC на все рабочие станции и серверы и подключили их к концентратору Packet Engines FDR Full-Duplex Hub с помощью 25-метрового многомодового оптического кабеля. Таким образом, все узлы принадлежали одной локальной сети. В другой ситуации мы назвали бы такую топологию доменом коллизий, если бы FDR не работал в полнодуплексном режиме, так что всякие коллизии отсутствовали.

ТЕСТЫ С ОДНИМ СЕРВЕРОМ

Мы провели серию тестов, чтобы установить, какой пропускной способности можно достичь на серверах; в качестве тестового мы воспользовались пакетом Chariot компании Ganymede Software (см. статью А. Франка "Тестирование производительности сети" в мартовском номере LAN за этот год).

Тесты Chariot проводятся между парами конечных точек. Такой подход хорошо соответствует клиент-серверной модели: одна конечная точка принимает на себя роль сетевого клиента, а вторая — сервера.

Packet Engines рекомендует предпринять несколько дополнительных шагов для оптимизации производительности. Во-первых, драйвер G-NIC допускает "64-разрядную оптимизацию". По словам представителей Packet Engines, такая оптимизация позволяет увеличить производительность даже при работе с 32-разрядной шиной PCI. Мы убедились в этом сами, в силу чего использовали эту опцию на клиентах и серверах в остальных тестах.

Вторая уловка — установить размер окна TCP в 64 Кбайт (FFFF в шестнадцатеричной системе). В Windows NT Server и Workstation это делается с помощью редактора Windows Registry (Regedit.exe) посредством создания нового ключа Registry (TcpWindowSize) со значением FFFF(h). Мы установили это значение на обоих серверах, а также на системе с Windows NT Workstation, но не на клиентах Windows 95.

В первом тесте одной из конечных точек была рабочая станция Windows 95 Workstation (CPU 16), а другой — Windows NT Server (LANLAB_NT3). Во время теста файл объемом 1 Мбайт передавался по каналу 100 раз (всего было передано 100 Мбайт). Chariot показал, что пропускная способность составила 99,3 Мбит/с, при этом пиковое значение оказалось равным 102,6 Мбит/с, а минимальное — 37,6 Мбит/с. (Чтобы не быть привязанным к конкретному тесту в дальнейшем, мы будем указывать среднюю пропускную способность, т. е. объем переданной информации, поделенный на продолжительность передачи.)

Во время проведения теста мы также контролировали уровень загруженности процессора в каждой из конечных точек с помощью Performance Monitor (Perfmon.exe) на Windows NT и System Monitor в системах с Windows 95. Пиковая загрузка процессора в LANLAB_NT3 составила 100% от Processor Time, а средняя во время теста — 98%. (Processor Time — это доля времени (в процентах), когда процессор выполняет полезную работу.) На клиенте с Windows 95 максимальный показатель Processor Usage составил 75%, а средний — 50%. (System Monitor, используемый на компьютерах с Windows 95, не идентичен Perfmon, работающему под Windows NT, в силу чего обе утилиты сообщают разные параметры, по крайней мере придерживаются различной терминологии. Processor Usage в System Monitor примерно эквивалентен параметру Processor Time в Perfmon.)

Мы были весьма удивлены относительно невысоким уровнем достигнутой пропускной способности. Конечно, мы не рассчитывали, что плата Gigabit Ethernet действительно будет передавать данные со скоростью около 1 Гбит/с, хотя и не могли предположить, что скорость будет составлять около 100 Мбит/с. Чтобы исключить возможность ошибки, мы повторили тест несколько раз. В целом ситуация не изменилась, хотя при многократном повторении результаты одного и того же теста отличались на несколько процентов. Переходя от CPU 15 к CPU 16, мы получили почти идентичные цифры; средняя пропускная способность составила 97,2 Мбит/с по сравнению с 99,3 Мбит/с в случае CPU 16. Уровень загруженности процессора для обоих клиентов и серверов был сравним с полученным в первом тесте.

Каковы будут результаты для Windows NT? В следующем тесте в качестве клиента использовалась станция CPU 17 с Windows NT Workstation 4.0 (и Service Pack 3). Как и раньше, данные принимались на LANLAB_NT3. (CPU 17 выступала также в качестве консоли Chariot, так что она должна была выполнять дополнительную задачу помимо того, чтобы служить конечной точкой для Chariot. По сравнению с машинами с Windows 95 она имела некоторый гандикап, так как они работали только как конечные точки для Chariot.) Средняя пропускная способность в этом случае составила 104,5 Мбит/с.

В следующем тесте мы составили две пары конечных точек. Первая пара состояла из CPU 17 и LANLAB_NT3, а вторая — из CPU 16 и LANLAB_NT3 (другими словами, два клиента работали с одним сервером). В этом тесте пропускная способность для первой пары в среднем равнялась 53,8 Мбит/с, а для второй пары — 43,1 Мбит/с. Средняя совокупная пропускная способность, таким образом, оказалась равной 96,9 Мбит/с.

При интерпретации этих показателей следует учитывать, что пропускная способность для первой пары рассматривалась с точки зрения одного из клиентов (CPU 17), в то время как для второй пары — с точки зрения другого (CPU 16). Совокупная пропускная способность — это объем данных, передаваемых сервером. Таким образом, учитывая пропускную способность, клиенты могли с тем же успехом использовать платы 100BaseT, подключенные к коммутатору, который бы связывал их с магистралью Gigabit Ethernet.

Этот тест подтверждает, что причиной недостаточной производительности являются не клиенты, поскольку добавление клиента не увеличивает совокупную пропускную способность с точки зрения сервера по сравнению с обеспечиваемой им при работе с одним клиентом. Показатель Percent Processor Time для LANLAB_NT3 держался на уровне 100%, т. е. сервер не имел свободных циклов для увеличения производительности при передаче файлов. Среднее значение параметра Percent Processor Time на CPU 17 было 35%, а для CPU 16 средний показатель Processor Usage достигал 27%. Образно говоря, клиенты даже не запыхались.

Чтобы окончательно убедиться в этом, мы добавили третью пару конечных точек. Она состояла из CPU 15 (с Windows 95) и LANLAB_NT3 (другими словами, теперь все три клиента работали с одним и тем же сервером). Совокупная средняя пропускная способность несколько снизилась, до 93,2 Мбит/с. Средняя пропускная способность для пар 1, 2 и 3 составила соответственно 38,6 Мбит/с, 28,6 Мбит/с и 26 Мбит/с.

СМЕНА СЕРВЕРА

При обслуживании LANLAB_NT3 более одного клиента сервер работал на пределе своих возможностей (Processor Time оставался на уровне 100%), поэтому мы выполнили снова всю серию описанных выше тестов, но роль сервера стал исполнять LANLAB_NT2 — компьютер с двумя процессорами Pentium II. При работе с CPU 16 — клиентом с Windows 95 — мы получили среднюю пропускную способность 96,2 Мбит/с. На сервере средний показатель Processor Time составил 95%, а на клиенте среднее значение Processor Usage — 71%. При замене клиента на систему с Windows NT Workstation (CPU 17) (в модели с одним клиентом) пропускная способность возросла до 102,5 Мбит/с.

Переходя к модели с двумя клиентами, мы образовали четвертую пару из CPU 16 и LANLAB_NT2, а пятую — из CPU 17 и LANLAB_NT2. В этом случае совокупная пропускная способность составила 103,9 Мбит/с, в том числе для четвертой пары — 76 Мбит/с, а для пятой пары — 27,9 Мбит/с. На сервере значение Processor Time постоянно оставалось равным 100%. На CPU 17 средний показатель Processor Time достигал 35%, а средний Processor Usage для CPU 16 — 42%.

Для тестирования модели с тремя клиентами мы добавили еще одну пару (пара 6), состоящую из CPU 15 и LANLAB_NT2. В этом тесте средняя пропускная способность достигла 102,3 Мбит/с, несколько снизившись по сравнению с результатами теста для конфигурации из двух клиентов. Средняя пропускная способность для отдельных клиентов составила 43,3 Мбит/с, 26,7 Мбит/с и 32,3 Мбит/с для четвертой, пятой и шестой пар соответственно. Конечно, показатель Processor Time для сервера все время оставался на уровне 100%. Для CPU 17 Processor Time в среднем равнялось 35%, а для CPU 15 и CPU 16 средний показатель Processor Usage составлял 17% и 15% соответственно.

ТЕСТ С ДВУМЯ СЕРВЕРАМИ

По утверждению представителей Packet Engines, концентратор FDR может передавать данные на гигабитных скоростях. Если это так, то не он является причиной возникновения узких мест при передаче данных. Чтобы убедиться в этом, мы провели последний тест для конфигурации, состоящей из двух пар конечных точек и двух серверов.

Седьмая пара содержала в качестве клиента CPU 17, а в качестве сервера — LANLAB_NT2. Восьмую пару составляли CPU 16 и LANLAB_NT3; таким образом каждый из серверов был связан только с одним клиентом. В этом тесте нам удалось добиться максимальной пропускной способнос-ти: 199,1 Мбит/с. Пропускная способность для пары 7 достигла 102,2 Мбит/с, в то время как для восьмой пары она составила 96,9 Мбит/с. Во время этого теста в среднем показатель Processor Time для LANLAB_NT2 не превышал 63%, а для LANLAB_NT3 — 95%. Среднее значение Processor Time для CPU 17 оказалось равным 60%, а Processor Usage для CPU 16 был в среднем на уровне 55%.

В целом этот тест показал, что не концентратор FDR оказывается причиной такой низкой пропускной способности, так как совокупная пропускная способность вдвое превышала этот показатель для конфигурации из двух пар с одним сервером. Очевидно, узким местом являются сами серверы: как представляется, 100 Мбит/с — максимальная скорость передачи данных для серверов, оснащенных адаптерами G-NIC. В какой мере эти ограничения связаны с сетевыми платами, серверами (чему свидетельством может служить высокий уровень загрузки процессора) или стеками протоколов операционной системы, на основе этих тестов выяснить невозможно.

ЗАКЛЮЧЕНИЕ

Наше тестирование показало, что мы не можем рассчитывать на то, что обмен данными с сервером будет происходить на скорости, значительно превышающей 100 Мбит/с, если только серверы не оснащены лучше, чем LANLAB_NT2 с двумя процессорами Pentium II/300 МГц. Платы G-NIC работают с 32- и 64-разрядными шинами PCI. Пока немногие из компьютеров имеют 64-разрядные шины PCI, но в ближайший год число таких систем должно заметно возрасти.

Если вы планируете перейти на Gigabit Ethernet, то вам, скорее всего, захочется провести свою собственную серию тестов, чтобы понять, как увеличивается производительность конкретных серверов при использовании Gigabit Ethernet. Если пропускная способность для любого сервера не намного превышает 100 Мбит/с, затраты на применение Gigabit Ethernet на соединениях между сервером и коммутатором оправдать будет непросто. Возможно, лучшим решением окажется установка двух сетевых плат 100BaseT, если ваша сетевая операционная система поддерживает конфигурацию с двумя платами.

Концентратор FDR прекрасно показал себя в этой серии тестов. Хотя мы не смогли достичь гигабитных скоростей, никаких признаков того, что он каким-либо образом негативно влияет на скорость передачи данных по локальной сети, выявить мы не смогли. Как и для большинства концентраторов, его установка отнимает минимальное время, а управление не представляет сложности. В небольших локальных сетях он мог бы вполне служить в качестве гигабитной магистрали. При пропускной способности 1 Гбит/с концентратор может без труда поддерживать от трех до пяти серверов. В такой конфигурации общая пропускная способность ограничивается именно возможностями серверов.

Алан Франк — научный редактор Communication Systems Design. До этого он работал в должности старшего научного редактора журнала Network Magazine. С ним можно связаться по адресу: afrank@mfi.com.

ИТОГ ИСПЫТАНИЙ

G-NIC и FDR-12

Packet EnginesP.O. Box 14497Spokane, WA 992141-509-777-7000

Факс: 1-509-777-7001

www.packetengines.com

Цель. Решение проблемы перегруженности сети за счет увеличения скорости передачи данных по каналам между серверами и коммутатором.

Вопросы. Несмотря на совершенствование продуктов, Gigabit Ethernet — еще достаточно новая технология.

Тестируемый продукт или реализация. Концентратор (повторитель) Gigabit Ethernet и сетевые адаптеры компании Packet Engines.

Достоинства. Простая установка; управление на базе Web (для концентратора FDR); широкая поддержка операционных систем для сетевых плат (драйверы имеются для Windows NT 3.51, NT 4.0, NetWare 3.12 и выше, Windows 95, Windows 98 (бета-версия), Linux, FreeBSD, Solaris [x86 и SPARC], Digital UNIX и SGI IRIX 6.4).

Недостатки. Пропускная способность на линиях связи с сервером не превышает 10% уровня загруженности сети. Таким образом, по сравнению с менее дорогим Fast Ethernet преимущества использования Gigabit Ethernet для подключения серверов или рабочих станций незначительны.

Цена. FDR-12 Full-Duplex Repeater (13 портов 1000BaseSX, один порт на 10/100 Мбит/с) стоит 15 995 долларов, а FDR-6 Full-Duplex Repeater (7 портов 1000BaseSX, один порт на 10/100 Мбит/с) — 9995 долларов. G-NIC PCI 1000BaseSX стоит 1295 долларов, G-NIC Sbus 1000BaseSX — 1595 долларов, G-NIC PCI 1000BaseLX — 2695 долларов и G-NIC Sbus 1000BaseLX — 2695 долларов.