Помнится, год 1992 стал годом словесных баталий на тему "маршрутизаторы против мостов". Сейчас все увлечены новой схваткой - "маршрутизаторы против коммутаторов".

Сторонники коммутации твердят уже порядком надоевшее заклинание "коммутировать, где можно, и маршрутизировать, где должно". Они утверждают, что коммутация быстрее, проще, дешевле и вообще ЛУЧШЕ.

Это не просто идеологический конфликт. Он уходит корнями в те времена, когда некоторые компании разворачивали сети DECnet и SNA национального масштаба на базе мостов. Маршрутизаторы тогда воспринимались как нечто столь же загадочное, сколь и бесполезное. Потом наступила эпоха расцвета маршрутизации, а затем показалось, что мода на последнюю проходит под напором IP-коммутации. А и нет - с приходом Ethernet-коммутаторов она возрождается, пусть даже эти коммутаторы и есть не что иное, как многопортовые мосты, на которые наведен маркетинговый глянец.

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

Что же до опасений, неуверенности и сомнений, связанных с маршрутизаторами, то они идут, главным образом, от неправильного представления о производительности этих устройств.

И за аргументами далеко ходить не надо. В тестовой таборатории Гарвардского университета Harvard Network Device Test Lab были проведены измерения задержки при передаче для коммутатора Ethernet уровня 2 Catalyst 5000 компании Cisco Systems, и IP-маршрутизатора уровня 3 Switch Node, представленного Bay Networks. Первый "показал - 66 мс, второй - 72 мс, так что на просмотр таблиц, который "занимает массу времени", как было написано в одной из статей по этому поводу, ушло 6 мс.

Но нетрудно понять, что разница в 6 мс при отправлении не будет хоть сколько-нибудь заметна на фоне общей задержки системы, которая может составлять 10 мс, а в некоторых случаях достигать и 100 мс. Кроме того, для окончательной ясности стоит отметить, что производилась конвейерная передача, поэтому устройства работали со скоростью, поддерживаемой кабельной проводкой, а это большинство маршрутизаторов "умеет" делать уже много лет.

Кроме того, на задержки буферизации могут наложиться задержки передачи. Так, отправление одного 1518-байтного пакета 10-мегабитным Ethernet занимает 1,2 мс. Так что какое устройство ни применяй - коммутатор ли, маршрутизатор ли - если такой пакет окажется перед пользовательскими пакетами, их передача задержится на 1,2 мс. Задержка и ее влияние - это только один аргумент против маршрутизаторов, а их можно найти гораздо больше, и не исключено, что сторонники маршрутизации даже перещеголяют в этом ее противников. Но дело в том, что в них нет нужды. Множество производителей маршрутизаторов приступают к выпуску коммутаторов уровня 3, которые представляют собой заботливо загримированные торговыми представителями быстрые недорогие маршрутизаторы.

Более того, мы уже наблюдаем болезненный процесс пересмотра ценностей сотрудниками торговых отделов компаний. Они, столько лет проклинавшие маршрутизаторы, теперь выступают сторонниками САМОЙ ИДЕИ. Забавно будет посмотреть, как их мнение начнет меняться на противоположное.


Скотт Браднер работает консультантом в University Information Systems Гарвардского университета. С ним можно связаться по адресу: sob@harvard.edu.

Коммутация, маршрутизация или "активизация"

В спор между коммутацией и маршрутизацией может вмешаться третья сила - технология активных сетей. Противостояние возникло из-за разных способов вычисления оптимального маршрута от отправителя пакета к получателю. Маршрутизатор вычисляет этот маршрут для каждого пакета независимо. Если каналы, по которым передается информация, ненадежны, то такое поведение маршрутизаторов оправдано. Но маршрутизатор, вычисляя заново каждый маршрут, очень часто повторяет одни и те же вычисления, что может существенно замедлить передачу пакетов. Коммутатор вычисляет оптимальный маршрут всего один раз, а затем все пакеты с одинаковыми отправителем и получателем посылает по этому заранее выбранному маршруту. Таким образом достигается экономия времени на повторных вычислениях, но в случае выхода из строя коммутатора или линии связи пересчитать маршруты достаточно сложно.

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

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

Технология активной сети ActiveNet, которая разработана в Массачусетском технологическом институте, строится на основе трех компонентов: стандартных программ, которые хранятся в узлах сети; небольших дополнительных программ, передаваемых вместе с пакетом; набора системных и пользовательских переменных, типа таблиц маршрутизации или кэшей. Этот набор компонентов позволяет разработчикам приложений создавать различные маршрутизации для своих программ.

Основным достоинством такой архитектуры является ее гибкая настройка на изменяющиеся условия передачи информации, что позволяет наиболее эффективно использовать существующие каналы связи и коммутационное оборудование (например, с помощью сжатия данных). Однако существенным недостатком активных сетей может стать ненадежная защита от взлома. Если любой пользователь может применить в узле сети какую-либо программу, то технология должна гарантировать соответствующее разграничение прав для пользователей и приложений. В технологии ActiveNet предлагается разделить ресурсы узла на пять категорий: ширина пропускания каналов связи; процессорное время; память; системные и пользовательские переменные, которые могут храниться, к примеру, на жестких дисках (кэши или системные журналы). Для каждого пакета выделяется определенное количество ресурсов, например, пропорционально объему данного пакета. Для получения дополнительных ресурсов в пакете должна содержаться некоторая аутентификационная информация, на основе которой и принимается решение об их выделении. Кроме того, механизмы исполнения программ построены на основе такой технологии, как Java, и позволяют надежно контролировать исполнение программ, что также увеличивает надежность ActiveNet.

Одна из основных проблем новой технологии - совместимость со старыми IP-адресами, типа Internet - может быть решена с помощью дополнительного заголовка, помещаемого после всего IP-заголовка. В этом случае вовсе не обязательно, чтобы все узлы сети поддерживали ActiveNet, так как начального IP-заголовка достаточно для передачи пакета получателю. Но тогда необходимо, чтобы компьютеры отправителя, получателя и всех шлюзов "понимали" протокол ActiveNet, иначе будут неправильно работать протоколы более высоких уровней. Таким образом, можно выделить сегмент Internet и использовать в нем технологию ActiveNet без ущерба уже существующей инфраструктуре. Следует отметить, что технология активной сети чисто программная, то есть для ее реализаций можно не вносить изменения в аппаратную базу. Таким образом, она может быть реализована достаточно быстро, и, возможно, скоро появятся решения на основе этой технологии в новых версиях маршрутизаторов и коммутаторов.

- Валерий Коржов,
Computerworld Россия

Поделитесь материалом с коллегами и друзьями