On-Line Библиотека www.XServer.ru - учебники, книги, статьи, документация, нормативная литература.
       Главная         В избранное         Контакты        Карта сайта   
    Навигация XServer.ru






 

Оптимизация распределения пропускной способности

Стив Штайнке

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

"Никто не может быть слишком богатым или слишком толстым", - сказала однажды Шарлотта Форд. В Эру Internet она могла бы добавить: "Или иметь слишком много пропускной способности глобальной сети".

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

Тем временем стимулы к управлению имеющейся пропускной способностью остаются достаточно сильными. Без той или иной формы контроля пакеты будут передаваться по каналам глобальной сети в лучшем случае в случайном порядке. В худшем же случае крупные пакетные потоки типа HTTP- или ftp-трафика могут временно блокировать чувствительные ко времени транзакционные потоки или посеять хаос в чувствительном к задержке мультимедийном трафике.

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

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

НЕПРИЯТНОСТИ С ТРАФИКОМ

Качество обслуживания в сетях на базе IP измеряется с помощью четырех характеристик: надежность, задержка, вариация задержки и пропускная способность.

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

Проблемы с сетевым трафиком возникают обычно, когда высокоскоростной сегмент сопрягается с низкоскоростным. IP создавался в расчете на каналы с низкой пропускной способностью - низкой по современным стандартам. Различие между самым медленным и самым быстрым каналом не превышало разницу между 110 бит/с и 2400 бит/с - т. е. в соотношении около 20 к 1. А теперь давайте сравним это отношение с тем, что мы можем наблюдать для маршрутизатора с типичной конфигурацией сегодня: интерфейс frame relay на 56 Кбит/с и интерфейс локальной сети на 100 Мбит/с, т. е. приблизительно 2000 к 1. Тот же самый маршрутизатор, но с интерфейсом локальной сети на 1 Гбит/с дает пропорцию 20000 к 1! Если узкий канал заполняется, а широкий продолжает поставлять пакеты для передачи через медленный интерфейс, то единственное, что остается делать маршрутизатору, - начать отбрасывать пакеты либо помещать их в буфер или очередь. Если диспропорция велика, то буферы лучше сделать как можно большего размера.

Вместительные буферы порождают, однако, другую проблему. Очереди могут вызвать задержки, нетерпимые для некоторых видов трафика - например для "живого" аудио и видео. Кроме того, буферизация может привести и к увеличению вариации задержки. Порождаемые очередями проблемы заставили разработчиков искать более элегантные способы выравнивания потока сетевого трафика. Их усилия нашли свое выражение в методике контроля скорости в соединениях TCP.

КОНТРОЛЬ СКОРОСТИ И ОЧЕРЕДИ

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

Введение явных ограничений на некоторые потоки очень часто помогает улучшить такие характеристики, как задержка и вариация задержки, не только для них, но и для всех остальных потоков, идущих через тот же канал. Одно из главных достоинств контроля скорости в том, что устройство управления пропускной способностью знает обо всем маршруте трафика из конца в конец и обратно (по крайней мере в случае соединений TCP) и может до некоторой степени прогнозировать и выравнивать изменения в нагрузке.

Другой подход к управлению пропускной способностью состоит в организации нескольких очередей и задании для них приоритетов в соответствии с некоторым алгоритмом. Например, высокоприоритетные потоки трафика будут направляться в очередь с наименьшим временем ожидания, тогда как низкоприоритетный трафик - в длинную, медленную очередь. Хитрость этого подхода состоит в том, как не блокировать полностью потоки с обслуживанием по мере возможности и предоставить максимальную пропускную способность высокоприоритетным потокам. Некоторые из методов организации очередей для решения этой проблемы опираются на такие алгоритмы, как взвешенная циклическая очередь, взвешенная циклическая очередь с дефицитом, взвешенная справедливая очередь (Weighted Fair Queing, WFQ) и очередь с распределением по классам (Class-Based Queing, CBQ).

Корпоративные маршрутизаторы таких производителей, как Cisco Systems, Bay Networks/Northern Telecom и 3Com, поддерживают несколько очередей и используют некоторые из этих весовых алгоритмов для распределения трафика. Однако даже при наличии маршрутизатора с поддержкой приоритетов отдельный диспетчер пропускной способности с использованием очередей может тем не менее пригодиться, так как процессы классификации пакетов снижают производительность маршрутизатора, а административная нагрузка по определению и реализации политики на маршрутизаторе может оказаться слишком высока, или маршрутизатор не будет поддерживать достаточное число приоритетных категорий. Кроме того, метод классификации маршрутизатора может оказаться недостаточно детализированным для удовлетворения ваших требований. Продукты для управления пропускной способностью с использованием нескольких очередей можно вполне определить как простые в конфигурации маршрутизаторы (или, если хотите, мосты), оптимизированные для организации очередей.

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

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

Конечно, нет такого закона, который запретил бы производителям использовать как контроль скорости, так и организацию очередей. Многим из продуктов, рассматриваемых ниже в этой статье, свойственен именно такой подход. Одно из преимуществ реализации обоих методов в том, что это позволяет эффективно управлять как теми потоками, что передаются из высокоскоростной локальной сети в низкоскоростной канал доступа в Internet, так и теми, что поступают из Internet в локальную сеть.

ПРОДУКТЫ С КОНТРОЛЕМ СКОРОСТИ

Первый появившийся на рынке - и, возможно, имеющий сейчас наибольшую долю рынка - продукт для управления пропускной способностью - это PacketShaper компании Packeteer. Продукты Packeteer представляют собой специализированные устройства с собственной операционной системой реального времени. Каждое устройство содержит жесткий диск, предназначенный исключительно для целей протоколирования событий; устройство загружается из Flash ROM.

PacketShaper 1000 имеет два порта Ethernet на 10 Мбит/с и интерфейс глобальной сети, рассчитанный на скорость до 384 Кбит/с. PacketShaper 2000 способен поддерживать скорости до 10 Мбит/с, в то время как PacketShaper 4000 - до 45 Мбит/с.

Будучи пионером в области продуктов с контролем скорости для соединений TCP, компания Packeteer реализовала тем не менее в своих продуктах очереди для UDP и SNA - протоколы, в которых, в отличие от соединений TCP, контроль скорости принципиально невозможен. В случае TCP-трафика PacketShaper классифицирует потоки, соотносит их с принятыми правилами, измеряет задержку каждого потока из конца в конец и определяет требуемую скорость для выполнения конкретных правил для данного вида потоков. Затем пакеты отправляются равномерно с измененными значениями окон, чтобы отправители не заняли весь канал - естественная тенденция в отсутствии контроля скорости. По утверждению Packeteer, ее устройства никогда не вносят задержки при передаче пакета более 2 миллисекунд; любая же система на базе очередей неизбежным образом вносила бы во много раз большие задержки.

PacketShaper имеет сложную иерархическую систему определения правил. Вы можете задать гарантированную минимальную скорость трафика для конкретных потоков или классов потоков. Вы можете также запретить установление новых соединений при отсутствии необходимых для этого ресурсов. Вы можете настроить правила, в соответствии с которыми доступные ресурсы будут предоставляться низкоприоритетному трафику, и даже блокировать некоторые виды трафика. Кроме того, вместо конкретных скоростей вы можете назначить приоритеты потокам трафика. PacketShaper имеет механизм автоматического обнаружения, способный классифицировать некоторые потоки и диалоги самостоятельно. Packeteer поставляет готовое программное обеспечение Policy Modules в помощь администратору в его работе.

Рекомендуемые розничные цены для PacketShaper 1000, 2000 и 4000 составляют 3450, 7250 и 14 500 долларов соответственно. Устройства PacketShaper выпускаются вот уже почти два года, и многие из заявлений компании были подтверждены на практике. До сих пор никто не продемонстрировал свидетельств того, что действия PacketShaper приводят к некорректному поведению стека TCP/IP. Packeteer представила некоторые из элементов своего процесса контроля скорости в соответствующие органы для получения патента, но вместе с тем компания заявляет, что используемый ею механизм полностью совместим со стандартами.

ПРОДУКТЫ НА БАЗЕ ОЧЕРЕДЕЙ

Если Packeteer предоставляет поддержку контроля скорости для соединений TCP, то Xedia обеспечивает поддержку организации очередей. Xedia производит серию из пяти специализированных аппаратных устройств под названием Access Point, каждое из которых рассчитано на определенный максимальный уровень пропускной способности.

Продукты Access Point T1 поддерживают четыре или восемь линий T-1 с frame relay или PPP. Кроме того, они имеют встроенные DSU/CSU, так что места для отдельного маршрутизатора доступа в Internet просто не остается, т. е. они готовы взять на себя всю работу, а не только регулирование трафика.

Access Point 45 поддерживает пропускную способность уровня T-3, а Access Point ATM - ATM на скоростях Т-3. Access Point 10 и Access Point 100 имеют интерфейсы Ethernet на 10 и 100 Мбит/с соответственно (в отличие от своих собратьев они не имеют интерфейсов глобальной сети). Xedia добилась неплохих результатов по продажам своих продуктов многим известным американским провайдерам Internet.

Устройства Xedia реализуют общеизвестный алгоритм CBQ (он разработан в Lawrence Berkeley Labs). Как и в продуктах Packeteer, пользователи могут определить иерархию классов трафика и приписать им скорости или приоритеты. Одним из принципиальных недостатков организации очередей является трудность определения правил для запрещения новых потоков в заполненных каналах. Потоки с минимальными требованиями не должны разрешаться в том случае, когда ресурсов для поддержки дополнительного потока недостаточно.

Цены на продукты Access Point варьируются от 5000 до 17 000 долларов. Access Point 100 имеет наибольшую номинальную пропускную способность среди всех диспетчеров пропускной способности на рынке.

АГНОСТИКИ

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

WiseWan компании NetReality - это комплект продуктов на базе аппаратной платформы WiseWan 200. WanSentry представляет собой зонд для мониторинга трафика, предоставляющий информацию о потоках глобальной сети компоненту управления трафиком WanShaper. Отличительной особенностью продуктов WiseWan является то, что они располагаются перед корпоративным маршрутизатором доступа со стороны глобальной сети (в отличие от продуктов PacketShaper, делающих заключение о ситуации в глобальной сети опосредованно через маршрутизатор доступа). Аппаратная платформа WiseWan 200 может поддерживать до четырех соединений с пропускной способностью от 56 Кбит/с до 2,048 Мбит/с, т. е. до скоростей E-1. WiseWan продается по цене 15 000 долларов.

Check Point Software является лидером на рынке брандмауэров, и ее методология контекстной проверки, используемая в Firewall-1, весьма хорошо подходит для идентификации и классификации потоков в целях управления пропускной способностью в продукте FloodGate-1. Процесс определения правил для брандмауэра и Check Point VPN легко интегрируются с политикой управления пропускной способностью, так что если администратор имеет опыт работы с двумя другими продуктами, ему не составит труда сконфигурировать FloodGate-1. Кроме того, весьма вероятно, что определенные в целях защиты группы и приоритеты будут определены тем же образом в целях распределения пропускной способности.

Продукт FloodGate имеет трехзвенную структуру из платформы для графического пользовательского интерфейса, сервера управления для хранения информации и распространения правил управления пропускной способностью и модулей FloodGate-1 для установки в каждой точке доступа. В отличие от вышеупомянутых продуктов, компоненты FloodGate-1 являются чисто программными и предназначены для выполнения на платформах Sun Solaris и Windows NT. (Графический интерфейс выполняется в Windows 95 и на других платформах Java.) Розничная цена на FloodGate-1 составляет 10 000 долларов.

Как и FloodGate-1, Guidepost от NetGuard использует контекстную проверку для классификации потоков (NetGuard производит также брандмауэр Guardian с контекстной проверкой). Guidepost является чисто программным продуктом и выполняется на платформе Windows NT 4.0. Он стоит 7000 долларов.

NetRoad TrafficWare от Ukiah Software - это первый из продуктов управления, интегрированный с LDAP3-совместимыми службами каталогов, включая NDS, Directory Server от Netscape и, с ее появлением, Active Directory от Microsoft. Очевидно, что большая часть объектов и атрибутов, относящихся к политике распределения пропускной способности, будет находиться где-либо в корпоративных каталогах: создавать новый каталог для хранения информации о пропускной способности вряд ли имеет смысл.

Как Check Point и NetGuard, Ukiah Software производит также брандмауэр, который интегрируется с диспетчером пропускной способности. NetRoad TrafficWare - это чисто программный продукт на базе Windows NT. Отметим, что брандмауэр и диспетчер должны находиться приблизительно в одном и том же месте - либо с внешней, либо с внутренней стороны маршрутизатора доступа, так что выполнение обоих процессов на одном сервере может быть иногда вполне оправданно. Цены на TrafficWare варьируются в диапазоне от 2200 долларов для модели на 128 Кбит/с до 10 000 долларов для версии на 100 Мбит/с.

В своих аппаратных продуктах для управления пропускной способностью AC200 и AC300 компания Alloc Communications применяет несколько иные подходы. (AC200 поддерживает скорости до 1,544 Мбит/с, в то время как AC300 - до 45 Мбит/с.) Продукты используют для организации очередей алгоритм под названием "Взвешенная справедливая очередь в соответствии с классами". Вместо контроля скорости для TCP-соединений эти продукты действуют как посредники TCP. Как известно, посредник TCP завершает соединение с одной стороны и открывает новое с другой. По утверждению Allot, такой подход более эффективен, нежели перехват и модификация пакетов TCP при их транзите (подход, используемый Packeteer). Дополнительный модуль способен осуществлять распределение нагрузки. Розничная цена на AC200 составляет 7000 долларов, а на AC300 - 13 000 долларов.

КАКИЕ БУДУТ УКАЗАНИЯ?

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

Идея привязки правил управления пропускной способностью к общекорпоративной службе каталогов, реализованная только Ukiah Software, заслуживает самого тщательного изучения. Точки доступа в Internet или глобальную сеть являются средоточием многих важнейших служб, включая виртуальные частные сети, брандмауэры, proxy-серверы, распределители нагрузки и трансляторы сетевых адресов. Профили пользователей, определения групп, идентификационная информация, цифровые сертификаты, MAC- и IP-адреса и классификация по приоритетам - вот только несколько относящихся к защите, производительности и другим важным подконтрольным областям очевидных кандидатов для хранения в каталоге. Разработчики и владельцы программного обеспечения сторонились полномасштабного использования службы каталогов в течение многих лет, но потенциальные возможности стали столь привлекательны, что дальнейшее откладывание оказывается слишком дорогостоящим. Полнофункциональная служба каталогов способна значительно облегчить настройку продуктов для управления пропускной способностью, поэтому каталоги станут в скором времени столь полезны, что не воспользоваться их преимуществами будет просто глупо.

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

Стив Штайнке - главный редактор Network Magazine. С ним можно связаться по адресу: ssteinke@mfi.com.

Рассматриваемые продукты

PacketShaper 1000, PacketShaper 2000, PacketShaper 4000 Packeteer
http://www.packeteer.com

Access Point T1, Access Point 10, Access Point 45, Access Point ATM, Access Point 100 Xedia
http://www.xedia.com

WiseWan (включая WanShaper)
NetReality
http://www.nreality.com

FloodGate-1
Check Point Software
http://www.checkpoint.com

Guidepost
NetGuard
http://www.netguard.com

NetRoad TrafficWare
Ukiah Software
http://www.ukiahsoft.com

AC200, AC300
Allot Communications
http://www.allot.com


Что означают термины качества обслуживания

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

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

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

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

Помните, что сеть Internet создавалась для обеспечения обслуживания по мере возможности на промежуточных узлах (иными словами, на маршрутизаторах), ничего не знающих о маршруте в целом. В частности, такие характеристики, как задержка и вариация задержки, очень трудно гарантировать, особенно когда соединение пролегает через еще чью-то сеть.

Эти архитектурные принципы кардинальным образом отличаются от тех, что были заложены в ATM с его встроенными классами услуг, где каждый коммутатор на протяжении виртуального канала работает согласованно с остальными в целях обеспечения качества услуг, запрошенного при организации канала. Реализация RSVP и Integrated Services (RSVP является частью этих интегрированных сервисов) предполагает серьезную крупномасштабную модификацию Internet. Однако, по всей видимости, их место будет ограничиваться территориальными и корпоративными сетями, так как провайдеры Internet неохотно идут на внедрение RSVP отчасти потому, что это потребует обновления всех маршрутизаторов, чтобы резервирование ресурсов могло производиться на всем протяжении открываемого соединения.

С угасанием надежды на широкую поддержку RSVP в Internet из комитета Integrated Services в рамках IETF выделился новый комитет - Differentiated Services (diffserv). Diffserv намеревается способствовать поддержке разнообразных классов услуг в масштабе Internet, скорее всего, без жестких гарантий качества услуг в подавляющем большинстве реализаций.

Раз уж мы занялись выяснением терминологии, я должен заметить, что использование термина "ширина полосы" по отношению к пропускной способности коммуникационного канала ведет к путанице. Ширина полосы измеряется в герцах или мегагерцах, причем она характеризует аналоговые каналы. Пропускная способность в битах в секунду или мегабитах в секунду связана с шириной полосы законом Шеннона. При постоянном отношении сигнал-шум пропускная способность пропорциональна ширине полосы, но при этом они означают все-таки разные вещи. Однако, к сожалению, и IETF, и многие инженеры не делают различия между пропускной способностью и шириной полосы.



Литература по сетям: разное