В качестве отклика на свою статью о переходе от "наследия" таких повсеместно распространенных сетей, как Ethernet и Token Ring, к современным высокоскоростным сетям (см. LAN Magazine/Русское издание, #4, 1995) я получил от читателей, наряду с просьбами о помощи в проектировании сетей, несколько замечаний и вопросов. Редакционная колонка текущего номера будет посвящена ответу на некоторые из них.
ETHERNET В TECHNICOLOR
Начнем с письма, в котором читатель спрашивает, какой из коммутаторов Ethernet наилучшим образом отвечал бы потребностям студии анимации, представляющей собой небольшую мастерскую из четырех художников-графиков, работающих на компьютерах на базе Pentium, поддерживаемых четырьмя подчиненными компьютерами визуализации на базе Pentium, одну административную систему на базе процессора Pentium и одного продюсера, работающего на компьютере класса 486.
"Основным средством заработка для нас, - говорится в письме, - является пакет Autodesk 3D Studio под DOS. ПК связаны в сеть Personal NetWare компании Novell посредством адаптеров Ethernet на 10 Мбит/с, работающую на пределе".
Дуэйн Пауэлл, администратор сети Blur Studio,
Венис Бич, шт. Калифорния
Комментарий редактора: Поскольку процесс визуализации одного изображения (или целой последовательности) может занимать много времени, то Вы поступили правильно, выделив для этой цели по компьютеру. Ответ на вопрос, какую помощь может оказать коммутатор в данной ситуации, зависит от деталей процесса визуализации. Вы имеете одноранговую сеть (Personal NetWare представляет собой одноранговую сетевую ОС), в которой может вестись четыре "диалога" между рабочими станциями художников и подчиненными компьютерами. Помощь коммутатора была бы бесспорна, если бы он предоставил каждому из этих диалогов свой собственный "канал" на 10 Мбит/с.
Данное заключение основано на предположении, что в ходе процесса визуализации информация "перетекает" между рабочими станциями художников и подчиненными компьютерами в ту и в другую сторону. Если перед началом визуализации все необходимые исходные файлы будут помещены на собственные диски подчиненных компьютеров, то операции визуализации никак не затронут работу сети. Четыре отдельные операции визуализации могли бы выполняться параллельно, не создавая к тому же сетевого трафика (за исключением этапа установки, на котором художники передают файлы со своих рабочих станций на подчиненные компьютеры или оценивают результаты). В этом случае усовершенствование сети и на йоту не может увеличить быстродействие визуализации. Вам лучше вложить свои деньги в приобретение мощных процессоров, большего объема оперативной памяти и быстродействующих массивов накопителей для оснащения подчиненных компьютеров визуализации.
Такова одна из возможностей - при условии, что использование приложений не накладывает больших требований на сеть. Однако графика, а трехмерная графика особенно, означает огромные массивы данных. Мы говорим, разумеется, о Больших Файлах (Big Files). Если только сеть не обладает высокой пропускной способностью, то их передача по сети может занять уйму времени. Предположим, Вам необходимо воспроизвести по сети анимационный (или видео-) фильм с быстрой сменой кадров. Очевидно, что для этого скорость 10 Мбит/с недостаточна, даже если у каждого пользователя есть выделенный Ethernet. В этом случае стоит обратить внимание на альтернативные высокоскоростные варианты: Fast Ethernet, 100VG-AnyLAN или FDDI. Высокая пропускная способность каналов исключит необходимость сегментирования вашей сети.
Переход к сетям стандарта 100VG-AnyLAN или Fast Ethernet будет более дорогим, нежели простая замена хаба на коммутатор, поскольку придется заменить не только хаб, но и сетевые платы. Однако если скорости 10 Мбит/с вполне достаточно, то это тот путь, по которому надо идти. Производители оборудования сетей 100VG-AnyLAN и 100BaseT резко снижают цены на свои продукты. А значит, стоимость миграции может оказаться меньше, чем Вы предполагаете. (Исторически сложилось так, что устройства стандарта FDDI были более дорогими, однако, учитывая конкуренцию со стороны производителей устройств 100VG-AnyLAN и 100BaseT, кривая цен FDDI-продуктов также устремилась вниз).
Очевидно только одно - необходима информация. Первые вложения должны быть осуществлены в анализатор протокола или монитор трафика для анализа потоков информации и выяснения того, насколько сеть загружена и в каких ситуациях она загружена "под завязку". Недорогой программный анализатор или монитор трафика вполне достаточен: в данной ситуации незачем использовать высококачественное оборудование. Спустя несколько лет эти инвестиции окупят себя с лихвой.
Есть один тест, который Вы можете выполнить прямо сейчас, даже без специального тестового оборудования. Подберите задание с умеренным объемом визуализации. Нет необходимости в том, чтобы она выполнялась в течение нескольких часов. На самом деле, предпочтителен 10-минутный тест, однако он должен быть репрезентативным с точки зрения вида нагрузки, которую большинство задач визуализации налагают на сеть. В идеале, одно и то же задание следут выполнить дважды и сравнить результаты.
Запустите тестовое задание один раз в сети из одной рабочей станции художника и одной вспомогательной машины визуализации. Если есть хаб, который определяет коэффициент использования сети, то во время теста следите за его значением. Затем снова запустите эту задачу, когда все остальные вспомогательные компьютеры работают над своими собственными задачами. Во время выполнения повторного теста желательно следить за коэффициентом использования сети.
Если задание по визуализации завершается гораздо быстрее в случае, когда оно является единственным в сети, то очевидно, что конфигурацию сети можно улучшить за счет использования индивидуальных Ethernet-соединений для каждой пары художник-вспомогательный компьютер. Иными словами, здесь пригодится коммутатор.
Когда тест визуализации с единственным компьютером в сети выполняется немногим быстрее второго, это означает одно из двух: или требуется гораздо большая, по сравнению с 10 Мбит/с, пропускная способность, или скорость выполнения задачи визуализации больше зависит от функционирования самих машин визуализации, а быстродействие сети не является критическим фактором. Контроль значений коэффициента использования Ethernet во время прохождения тестов подскажет, какой из указанных случаев имеет место.
Относительно ПО для сети следует отметить, что ни одна из возможностей одноранговых сетей с DOS не в силах соперничать с VINES (Banyan), LAN Server (IBM), Windows NT Server (Microsoft) или NetWare 3.x или 4.x.
В то же время, если Вы решаетесь "идти дорогой коммутации", клиент-серверная модель сети (используемая большинством только что упомянутых сетевых ОС высокого уровня) может оказаться против Вас, поскольку весь трафик должен будет проходить через канал между сервером и коммутатором. А стало быть, потребуется коммутатор, имеющий, по крайней мере, один высокоскоростной порт для файлового сервера - если все порты коммутатора работают со скоростью передачи 10 Мбит/с при наличии сервера коммутатор не поможет.
Конечно, в вышеизложенном комментарии больше вопросов, чем ответов, однако он дает некоторое представление о проблемах, с которыми придется столкнуться при оценке системы. Консультант должен вначале сам "пощупать" систему, чтобы затем дать надежные рекомендации.
НА УРОВНЕ АДРЕСА
"Я только что прочитал Вашу статью о стратегии построения сети, - пишет Эндрю Яу-Хва Ву (Сан-Хосе, СА). - Она бесспорно интересна и содержательна. Однако кое в чем мне трудно разобраться без Вашей помощи. Область сетевых технологий для меня совершенно незнакома, поэтому отнеситесь к моим вопросам со снисхождением, если они покажутся Вам элементарными. Я знаю кое-что о хабах, маршрутизаторах и шлюзах, но ничего - о коммутации сетей Ethernet и Token Ring.
Поскольку коммутатор Ethernet передает полученные пакеты только на порт адресата, коммутатор должен знать, какие адреса присвоены каждому порту. Как он узнает об этом? Использует ли он статическую настройку конфигурации или динамическое распознавание (как мост)? Где можно прочитать о принципах работы коммутаторов?
На Рис. 3 показаны три канала связи файлового сервера с коммутатором. В статье указывается, что в этом случае три клиента могут одновременно обмениваться пакетами с файловым сервером. Означает ли данное обстоятельство, что на файловом сервере имеется три сетевые платы с разными сетевыми адресами? Будет ли клиент знать, что имеется три адреса сервера, которые могут быть адресованы явно, или что имеется только один адрес, а коммутатор отправляет адресованные серверу пакеты на различные порты в зависимости от того, какой свободен?
На Рис. 6 показаны два хаба 10BaseT, подсоединенные к коммутатору Ethernet, а клиенты C4, C5 и C6 подсоединены к тому же хабу. Поскольку Ethernet является сетью широковещательного типа, то если С4 и С5 обмениваются пакетами, эти пакеты также посылаются на коммутатор. Но не будет ли коммутатор считать, что пакеты, которые он получает, следует переслать на тот же самый порт, с которого они пришли? Как коммутатор обрабатывает их?"
Эндрю Яу-Хва Ву
Сан-Хосе, Калифорния
Комментарий редактора: Коммутатор функционирует очень похоже на мост с возможностями распознавания (фактически, с точки зрения конструкции, очень трудно отличить некоторые коммутаторы от многопортовых мостов, разве что у коммутаторов обычно гораздо больше портов, чем у среднего моста). Коммутатор узнает адреса присоединенных устройств посредством мониторинга пакетов, получаемых на каждый из его портов, и запоминания адреса источника, включенного в каждый пакет. Он строит таблицу адресов и портов, соответствующих каждому адресу.
Серверы сети обычно извещают о своем присутствии с помощью отправки широковещательного пакета с интервалом в минуту или около того. Таким образом, коммутаторы узнают адрес сервера. Клиенты сети обычно также отправляют широковещательные пакеты при первом подключении к сети в поисках сервера.
Маловероятно, но предположим, что коммутатор получает пакет, адресованный узлу, отсутствующему в таблице адресов, коммутатор передает этот пакет на все порты (за исключением того порта, с которого он прибыл). Такое поведение известно как "лавинная адресация" (floading). Если узел назначения "слушает" сеть, он реагирует на передачу, и коммутатор получает затем возможность поместить адрес этого узла в таблицу адресов.
Файловый сервер (Рис. 3) на самом деле имел три сетевые платы, каждый с собственным адресом Ethernet. Каким конкретно образом они будут работать, если будут работать вообще, зависит от сетевой ОС. В случае NetWare, загружаемые модули NLM от сторонних компаний позволяют подсоединять две или более сетевые платы с одним и тем же коммутатором. Они выполняют функцию "распределения", разделяя трафик между сервером и коммутатором поровну, насколько это возможно. Пользователи не будут знать о трех различных адресах одного и того же сервера: они подсоединяются и регистрируются на сервере с помощью его имени, а не адреса в Ethernet. Фактическое отображение физического адреса (адреса в Ethernet или Token Ring) на логический адрес (имя сервера) выполняется сетевым ПО и скрыто от пользователей.
На Рис. 6, приведенном в статье, показано несколько клиентов сети, соединеных с хабом (повторителем) Ethernet 10BaseT, который, в свою очередь, присоединен к коммутатору Ethernet. Это было сделано для иллюстрации того факта, что к каждому порту на коммутаторе не обязательно должен быть подсоединен только один узел (исключение составляет случай, когда коммутатор может поддерживать один адрес уровня MAC на один порт).
Если клиент должен адресовать пакет другому узлу сети на том же самом хабе, коммутатор сверит адрес со своей таблицей адресов и определит, что оба клиента - и отправитель и получатель - подсоединены к одному и тому же порту коммутатора, и не будет ничего делать. Пакет попадет к своему адресату без какого-либо участия коммутатора. Это один из способов, с помощью которых коммутатор помогает уменьшить трафик в других сегментах сети: он останавливает трафик, который не должен выходить за границы сегмента.
СЕРВЕР, ПОЛНЫЙ СЕТЕВЫХ ПЛАТ
"Ваша статья появилась как раз вовремя, а я ценю своевременную информацию. Однако, я не понял, что предпочтительнее - показанная на Рис. 3 конфигурация с коммутатором (несколько каналов связи с сервером) или же присоединение трех сетевых плат сервера непосредственно к сегментам C1, C2 и С3 без использования коммутатора. Полагаю, Вы исходили из необходимости внутрисегментных связей, таких как запуск одноранговой сети наряду с NetWare. Так ли это? Для меня важна любая дополнительная информация по данному вопросу".
Имя и адрес не указаны.
Комментарий редактора: В самом деле, Вы можете связать сегменты локальной сети непосредственно сетевыми платами на файловом сервере, экономя на покупке коммутатора Ethernet. Однако данный вопрос не затрагивался в нашей статье по причине ее ограниченного объема, а также из-за того, что этот метод не обладает масштабируемостью. Он работает прекрасно в сети с единственным сервером, однако что произойдет, если у Вас крупная объединенная сеть?
По правде говоря, Вы можете соединить одну сетевую плату непосредственно с магистралью сети. В этой ситуации можно использовать файловый сервер для маршрутизации пакетов между магистралью и локальными сегментами файлового сервера. Такое решение будет работоспособным в случае, если файловый сервер способен осуществлять маршрутизацию по протоколам всех семейств, используемых в сети. NetWare, к примеру, будет использовать IPX, но если имеются другие протоколы, то не обойтись, например, без Multiprotocol Router компании Novell. Он представляет собой программный маршрутизатор на базе загружаемых программных модулей (NLM), который Вы можете установить на своем сервере.
Поскольку маршрутизация требует интенсивного использования центрального процессора (CPU), Novell рекомендует запускать Multiprotocol Router на компьютере, не являющемся файловым сервером. Компания включает в комплект поставки версию Runtime NetWare. (NetWare Runtime по существу представляет собой ОС NetWare без файловых сервисов - платформу для запуска модулей NLM). Проблема, связанная с использованием отдельного компьютера для запуска Multiprotocol Router, состоит в том, что становится невозможным использовать одну из сетевых плат файлового сервера в качестве линии связи с магистралью - Уловка-22.
В статье упор делается, главным образом, на высокоскоростные сети, и, хотя у нас не было шанса проверить это утверждение, необходимо сказать, что программная маршрутизация не подходит для коммутатора с точки зрения времени задержки или общего времени передачи пакета данных.
Все это означает, что подход, о котором Вы упомянули, превосходен для сетей с единственным сервером. И тем не менее, при реализации данного подхода в более сложных сетях не исключены проблемы, но проблемы решаемые.