В этой статье я расскажу о новом инструменте, который появился с выходом пакета обновлений к ISA 2004 SP2, под названием Diffserv.
Одной из новых возможностей, которая появилась с выходом пакета обновлений к ISA 2004 Service Pack 2, была возможность по назначению приоритетов для пакетов (packet prioritization) для HTTP и HTTPS трафика. Эта возможность осуществляется с помощью фильтра Diffserv ISA, который сканирует домены (domain) и URL внутри трафика HTTP(S) и назначает для них приоритеты с помощью битов Diffserv. Это работает совместно с маршрутизаторами (QoS enabled routers) и позволяет улучшить пропускную способность для канала Internet и других WAN каналов, которые могут у вас быть. Назначение приоритетов для пакетов (Packet prioritization) описывается как глобальная политика (global policy), а не с помощью правил. Под этим я подразумеваю, что весь трафик браузера, который проходит через ISA подвергается такому контролю.
Если у вас еще нет пакета обновлений sp2, то я добавил ссылку на него здесь. В рамках этой статьи я не буду вдаваться в преимущества и недостатки Diffserv, а лишь скажу, что изначально – это протокол, который описывает приоритеты для трафика (traffic prioritization) на уровне 3 (layer 3). Пометки Diffserv помещаются в заголовке (header) пакета IP и используются затем для классификации трафика.
Итак, что мы будем с ним делать?
Давайте сначала проведем установку, в результате чего все станет немного понятнее.
Теперь, несмотря на волнение, вы должны заметить настройку ”Specify DiffservPreferences” (указать свойства Diffserv) в настройках глобальных политик (Global HTTP Policy Settings) в узле Configuration/General (конфигурация/общая). Если вы не нашли ее еще, то начнем немедленно.
Рисунок 1
Рисунок 2
Первое и самое важное, мы должны включить назначение приоритетов (prioritization) для этих битов, и сделаем мы это поместив галочку в поле Allow the setting of Diffserv bits according to URLs and domain names (разрешить установку битов Diffserv в URL и названия доменов )
Затем мы перейдем к следующей закладке справа и настроим приоритеты и двоичные значения Diffserv для использования их в вашем сервере ISA Server.
Рисунок 3
Итак, давайте создадим наш первый приоритет, нажав на кнопку Add (добавить).
Рисунок 4
Т.к. это мое первое правило, то я просто присвою двоичное значение (также известное как Differentiation Service Codepoint или DSCP) равное 110010 для битов Diffserv. Это значение также соответствует двоичному значению, которое использует мой маршрутизатор.
Здесь я включил ограничение на размер (size limit) для этого приоритета, и с помощью этого я в основном сказал, что этот приоритет должен назначаться для ответов и запросов, которые не превышают этот лимит. Если запрос (request) или ответ (response) превысил этот лимит, то эму будет назначен следующий приоритет, который удовлетворяет всем условиям.
Для облегчения восприятия материала, я настроил еще два приоритета, которые будут соответствовать настройкам моего маршрутизатора, и назначу эти правила для других URL и доменов.
Рисунок 5
Итак, теперь у нас есть несколько приоритетов, и пришло время назначить их для чего-нибудь. Откройте закладку URL и снова нажмите на кнопку Add (добавить).
Рисунок 6
Здесь я, например, назначу мой первый приоритет для сайта google.com, а мой второй приоритет для microsoft.com. Я могу также назначать различные приоритеты для URL внутри одного родительского домена, т.е. я могу назначить адресу www.microsoft.com /isaserver/* более высокий приоритет, чем для всего остального сайта Microsoft, добавив адрес www.microsoft.com/* и удостоверившись, что URL адрес isaserver имеет более высокий приоритет в списке правил.
Хорошо, мы настроили несколько приоритетов для HTTP URL, но как быть с трафиком, который заключен (tunneled) внутри соединений HTTPS? Здесь нам приходят на помощь правила домена (domain rules). Сервер ISA не знает, какой используется URL в том случае, если трафик заключен внутри HTTPS канала, поэтому он назначает биты Diffserv для домена (domain).
Для того, чтобы установить приоритеты для домена, просто перейдите к закладке domains и выберите снова кнопку Add (добавить), а затем введите названия необходимых доменов (domain names) и правильно назначьте им приоритеты.
Рисунок 7
Снова вы можете воспользоваться символом * для назначения приоритетов для различных частей домена и для назначения правильных приоритетов.
Последнее, что нам необходимо сделать для завершения этой работы – это выбрать, для каких сетей ISA Networks будут применяться эти настройки. А для этого, как вы могли догадаться, вам необходимо перейти в закладку Networks.
Т.к. у меня в моей внешней сети (external network) есть только маршрутизатор (QoS router), и он работает совместно с моим сервером ISA Server, я подключу все эти настройки для внешней сети (External network). У вас могут быть другие сети (Networks), описанные в ISA в некоторых сценариях, а также другие маршрутизаторы (QoS router), но для этого используются те же самые принципы.
Рисунок 8
Итак, дело сделано. Вы больше можете не жаловаться на то, что Microsoft исключил инструмент под названием Bandwidth Control из ISA Server 2000. Реальность заключается в том, что для тех из вас, кого действительно волнует назначение приоритетов для трафика и пакетов (packet prioritization and traffic), мы можем использовать теперь наши сервера ISA Servers совместно с механизмом контроля трафика, который использует вся остальная промышленность, и причем делает это очень эффективно, что не может нас не радовать!