Что такое QoS? Пропускная Способность Локальной Сети — Настройка Планировщика Пакетов QoS в Роутере TP-Link, Asus, Zyxel Keenetic, D-Link

Нет ни одного человека, который бы хоть раз не прочитал какой-нибудь FAQ по Windows XP. А раз так, то каждый знает, что есть такая вредная служба Quality of Service - сокращенно QoS. При настройке системы ее настоятельно рекомендуется отключать, потому что она по умолчанию ограничивает сетевую пропускную способность на 20%, и как будто бы эта проблема существует и в Windows 2000.

Вот эти строки:

"Q: Как полностью отключить службу QoS (Quality of Service)? Как ее настроить? Правда ли, что она ограничивает скорость сети? A: Действительно, по умолчанию Quality of Service резервирует для своих нужд 20% от пропускной способности канала (любого - хоть модем на 14400, хоть гигабитный Ethernet). Причем даже если удалить службу QoS Packet Scheduler из Properties-соединения, этот канал не освобождается. Освободить канал или просто настроить QoS можно здесь. Запускаем апплет Group Policy (gpedit.msc). В Group Policy находим Local computer policy и нажимаем на Administrative templates. Выбираем пункт Network - QoS Packet Sheduler. Включаем Limit reservable bandwidth. Теперь снижаем Bandwidth limit 20% до 0% или просто отключаем его. При желании здесь же можно настроить и другие параметры QoS. Для активации произведенных изменений остается только перезагрузиться ".

20% - это, конечно, очень много. Воистину Microsoft - "маздай". Утверждения подобного рода кочуют из FAQ в FAQ, из форума в форум, из СМИ в СМИ, используются во всевозможного рода "твикалках" - программах по "настройке" Windows XP (кстати говоря, откройте "Групповые политики" и "Локальные политики безопасности", и ни одна "твикалка" не сравнится с ними по богатству вариантов настройки). Разоблачать голословные утверждения такого рода нужно осторожно, что мы сейчас и сделаем, применив системный подход. То есть основательно изучим проблемный вопрос, опираясь на официальные первоисточники.

Что такое сеть с качественным сервисом?

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

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

Функциональные возможности QoS призваны удовлетворить двух субъектов сети: сетевые приложения и сетевых администраторов. Они часто имеют разногласия. Администратор сети ограничивает ресурсы, используемые специфическим приложением, в то же время приложение пытается захватить как можно больше сетевых ресурсов. Их интересы могут быть согласованы, принимая во внимание тот факт, что сетевой администратор играет главенствующую роль по отношению ко всем приложениям и пользователям.

Основные параметры QoS

Различные приложения имеют различные требования по обработке их сетевого трафика. Приложения в большей или меньшей степени терпимы к задержкам и потерям трафика. Эти требования нашли применение в следующих параметрах, связанных с QoS:

Bandwidth (полоса пропускания) - скорость, с которой трафик, генерируемый приложением, должен быть передан по сети
- Latency (задержка) - задержка, которую приложение может допустить в доставке пакета данных.
- Jitter - изменение времени задержки.
- Loss (потеря) - процент потерянных данных.

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

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

Фундаментальные ресурсы QoS и механизмы обработки трафика

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

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

Способность сетевых интерфейсов к пересылке трафика и наличие памяти для сохранения трафика в сетевых устройствах (до тех пор, пока трафик не может быть послан дальше) составляют фундаментальные ресурсы, требующиеся для обеспечения QoS для потоков трафика приложений.

Распределение ресурсов QoS по сетевым устройствам

Устройства, поддерживающие QoS, разумно используют ресурсы сети для передачи трафика. То есть трафик приложений, более терпимых к задержкам, становится в очередь (сохраняется в буфере в памяти), а трафик приложений, критичных к задержкам, передается далее.

Для выполнения этой задачи сетевое устройство должно идентифицировать трафик путем классификации пакетов, а также иметь очереди и механизмы их обслуживания.

Механизм обработки трафика

Механизм обработки трафика включает в себя:

802.1p
- Дифференцированные услуги per-hop-behaviors (diffserv PHB).
- Интегрированные услуги (intserv).
- ATM и др.

Большинство локальных сетей основано на технологии IEEE 802 включая Ethernet, token-ring и др. 802.1p - это механизм обработки трафика для поддержки QoS в таких сетях.

802.1p определяет поле (уровень 2 в сетевой модели OSI) в заголовке пакета 802, которое может нести одно из восьми значений приоритета. Как правило, хосты или маршрутизаторы, посылая трафик в локальную сеть, маркируют каждый посланный пакет, присваивая ему определенное значение приоритета. Предполагается, что сетевые устройства, такие, как свичи, мосты и хабы, обработают пакеты соответствующим образом, используя механизмы организации очередей. Область применения 802.1p ограничена локальной сетью (LAN). Как только пакет пересекает локальную сеть (через уровень 3 OSI), приоритет 802.1p удаляется.

Diffserv - это механизм уровня 3. Он определяет поле в уровне 3 заголовка пакетов IP, названных diffserv codepoint (DSCP).

Intserv - это целый комплекс услуг, определяющий гарантированный сервис и сервис, управляющий загрузкой. Гарантированный сервис обещает нести некоторый объем трафика с измеримой и ограниченной задержкой. Сервис, управляющий загрузкой, соглашается нести некоторый объем трафика с "появлением легкой загруженности сети". Это - измеримые услуги в том смысле, что они определены, чтобы обеспечить измеримый QoS к определенному количеству трафика.

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

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

Для наглядности рассмотрим рис. 1.

Принимаем следующее:

Все маршрутизаторы участвуют в передаче нужных протоколов.
- Один QoS-сеанс, требующий 64 Kbps, инициализирован между хостом А и хостом B.
- Другой сеанс, требующий 64 Kbps, инициализирован между хостом А и хостом D.
- Для упрощения схемы полагаем, что маршрутизаторы сконфигурированы так, что могут резервировать все сетевые ресурсы.

В нашем случае один запрос о резервировании 64 Kbps достиг бы трех маршрутизаторов на пути данных между хостом А и хостом B. Другой запрос о 64 Kbps достиг бы трех маршрутизаторов между хостом А и хостом D. Маршрутизаторы выполнили бы эти запросы на резервирование ресурсов, потому что они не превышают максимума. Если вместо этого каждый из хостов B и C одновременно инициализировал бы 64 Kbps QoS-сеанс с хостом A, то маршрутизатор, обслуживающий эти хосты (B и C), запретил бы одно из соединений.

Теперь предположим, что администратор сети отключает обработку QoS в трех нижних маршрутизаторах, обслуживающих хосты B, C, D, E. В этом случае запросы о ресурсах до 128 Kbps удовлетворялись бы независимо от месторасположения участвующего в соединении хоста. При этом гарантии качества были бы низки, поскольку трафик для одного хоста подвергал бы риску трафик другого. Качество обслуживания могло бы быть сохранено, если бы верхний маршрутизатор ограничивал все запросы до 64 Kbps, однако это привело бы к неэффективному использованию сетевых ресурсов.

С другой стороны, пропускную способность всех сетевых связей можно было бы увеличить до 128 Kbps. Но увеличенная пропускная способность будет использоваться только когда хосты B и C (или D и E) одновременно затребуют ресурсы. Если это не так, то ресурсы сети опять будут использоваться неэффективно.

QoS-компоненты Microsoft

Windows 98 содержит компоненты QoS только пользовательского уровня включая:

Компоненты приложений.
- GQoS API (часть Winsock 2).
- QoS service provider.

Операционная система Windows 2000/XP/2003 содержит все описанное выше и следующие компоненты:

Resource Reservation Protocol Service Provider (Rsvpsp.dll) и службы RSVP (Rsvp.exe) и QoS ACS. В Windows XP, 2003 не используются. Управление трафиком (Traffic.dll).
- Generic Packet Classifier (Msgpc.sys). Классификатор пакетов определяет класс сервиса, которому принадлежит пакет. При этом пакет будет поставлен в соответствующую очередь. Очереди управляются Планировщиком пакетов QoS.
- Планировщик пакетов QoS (Psched.sys). Определяет параметры QoS для специфического потока данных. Трафик помечается определенным значением приоритета. Планировщик пакетов QoSпределяет график постановки в очередь каждого пакета и обрабатывает конкурирующие запросы между поставленными в очередь пакетами, которые нуждаются в одновременном доступе к сети.

Диаграмма на рис.2 иллюстрирует стек протоколов, компоненты Windows и их взаимодействие на хосте. Элементы, использовавшиеся в Windows 2000, но не использующиеся в Windows XP/2003, на диаграмме не показаны.

Приложения находятся наверху стека. Они могут знать или не знать о QoS. Чтобы использовать всю мощь QoS, Microsoft рекомендует использовать в приложениях вызовы Generic QoS API. Это особенно важно для приложений, требующих высококачественных гарантий обслуживания. Некоторые утилиты могут использоваться для вызова QoS от имени приложений, которые не знают о QoS. Они работают через API управления трафиком. Например, NetMeeting использует GQoS API. Но для таких приложений качество не гарантируется.

Последний гвоздь

Вышеизложенные теоретические моменты не дают однозначного ответа на вопрос, куда деваются пресловутые 20% (которые, замечу, никто еще точно не измерял). Исходя из вышесказанного, такого быть не должно. Но оппоненты выдвигают новый довод: система QoS хорошая, да реализация кривая. Стало быть, 20% все-таки "отжираются". Видать, проблема допекла и софтверного гиганта, поскольку он уже довольно давно отдельно опроверг подобные измышления.

Впрочем, дадим слово разработчикам и изложим избранные моменты из статьи "316666 - Windows XP Quality of Service (QoS) Enhancements and Behavior " литературным русским языком:

"Сто процентов сетевой полосы пропускания доступны для распределения между всеми программами, если какая-либо программа явно не запрашивает приоритетную полосу пропускания. Эта "зарезервированная" полоса пропускания доступна другим программам, если программа, которая ее затребовала, не отправляет данные.

По умолчанию программы могут резервировать до 20% основной скорости соединения на каждом интерфейсе компьютера. Если программа, которая резервировала полосу пропускания, не посылает достаточно много данных, чтобы использовать ее полностью, неиспользованная часть зарезервированной полосы пропускания доступна для других потоков данных.

Были заявления в различных технических статьях и телеконференциях, что Windows XP всегда резервирует 20% доступной полосы пропускания для QoS. Эти заявления неверны".

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

Нет ни одного человека, который бы хоть раз не прочитал какой-нибудь FAQ по Windows XP. А раз так, то каждый знает, что есть такая вредная служба Quality of Service — сокращенно QoS. При настройке системы ее настоятельно рекомендуется отключать, потому что она по умолчанию ограничивает сетевую пропускную способность на 20%, и как будто бы эта проблема существует и в Windows 2000.

Вот эти строки:

Q: Как полностью отключить службу QoS (Quality of Service)? Как ее настроить? Правда ли, что она ограничивает скорость сети?
A: Действительно, по умолчанию Quality of Service резервирует для своих нужд 20% от пропускной способности канала (любого - хоть модем на 14400, хоть гигабитный Ethernet). Причем даже если удалить службу QoS Packet Scheduler из Properties-соединения, этот канал не освобождается. Освободить канал или просто настроить QoS можно здесь. Запускаем апплет Group Policy (gpedit.msc). В Group Policy находим Local computer policy и нажимаем на Administrative templates. Выбираем пункт Network - QoS Packet Sheduler. Включаем Limit reservable bandwidth. Теперь снижаем Bandwidth limit 20% до 0% или просто отключаем его. При желании здесь же можно настроить и другие параметры QoS. Для активации произведенных изменений остается только перезагрузиться.

20% - это, конечно, очень много. Воистину Microsoft - "маздай". Утверждения подобного рода кочуют из FAQ в FAQ, из форума в форум, из СМИ в СМИ, используются во всевозможного рода "твикалках" - программах по "настройке" Windows XP (кстати говоря, откройте "Групповые политики" и "Локальные политики безопасности", и ни одна "твикалка" не сравнится с ними по богатству вариантов настройки). Разоблачать голословные утверждения такого рода нужно осторожно, что мы сейчас и сделаем, применив системный подход. То есть основательно изучим проблемный вопрос, опираясь на официальные первоисточники.

Что такое сеть с качественным сервисом?

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

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

Функциональные возможности QoS призваны удовлетворить двух субъектов сети: сетевые приложения и сетевых администраторов. Они часто имеют разногласия. Администратор сети ограничивает ресурсы, используемые специфическим приложением, в то же время приложение пытается захватить как можно больше сетевых ресурсов. Их интересы могут быть согласованы, принимая во внимание тот факт, что сетевой администратор играет главенствующую роль по отношению ко всем приложениям и пользователям.

Основные параметры QoS

Различные приложения имеют различные требования по обработке их сетевого трафика. Приложения в большей или меньшей степени терпимы к задержкам и потерям трафика. Эти требования нашли применение в следующих параметрах, связанных с QoS:

  • Bandwidth (полоса пропускания) - скорость, с которой трафик, генерируемый приложением, должен быть передан по сети;
  • Latency (задержка) - задержка, которую приложение может допустить в доставке пакета данных;
  • Jitter - изменение времени задержки;
  • Loss (потеря) - процент потерянных данных.

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

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

Фундаментальные ресурсы QoS и механизмы обработки трафика

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

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

Способность сетевых интерфейсов к пересылке трафика и наличие памяти для сохранения трафика в сетевых устройствах (до тех пор, пока трафик не может быть послан дальше) составляют фундаментальные ресурсы, требующиеся для обеспечения QoS для потоков трафика приложений.

Распределение ресурсов QoS по сетевым устройствам

Устройства, поддерживающие QoS, разумно используют ресурсы сети для передачи трафика. То есть трафик приложений, более терпимых к задержкам, становится в очередь (сохраняется в буфере в памяти), а трафик приложений, критичных к задержкам, передается далее.

Для выполнения этой задачи сетевое устройство должно идентифицировать трафик путем классификации пакетов, а также иметь очереди и механизмы их обслуживания.

Механизм обработки трафика

Механизм обработки трафика включает в себя:

  • 802.1p;
  • Дифференцированные услуги per-hop-behaviors (diffserv PHB);
  • Интегрированные услуги (intserv);
  • ATM и др.

Большинство локальных сетей основано на технологии IEEE 802 включая Ethernet, token-ring и др. 802.1p - это механизм обработки трафика для поддержки QoS в таких сетях.

802.1p определяет поле (уровень 2 в сетевой модели OSI) в заголовке пакета 802, которое может нести одно из восьми значений приоритета. Как правило, хосты или маршрутизаторы, посылая трафик в локальную сеть, маркируют каждый посланный пакет, присваивая ему определенное значение приоритета. Предполагается, что сетевые устройства, такие, как свичи, мосты и хабы, обработают пакеты соответствующим образом, используя механизмы организации очередей. Область применения 802.1p ограничена локальной сетью (LAN). Как только пакет пересекает локальную сеть (через уровень 3 OSI), приоритет 802.1p удаляется.

Diffserv - это механизм уровня 3. Он определяет поле в уровне 3 заголовка пакетов IP, названных diffserv codepoint (DSCP).

Intserv - это целый комплекс услуг, определяющий гарантированный сервис и сервис, управляющий загрузкой. Гарантированный сервис обещает нести некоторый объем трафика с измеримой и ограниченной задержкой. Сервис, управляющий загрузкой, соглашается нести некоторый объем трафика с "появлением легкой загруженности сети". Это - измеримые услуги в том смысле, что они определены, чтобы обеспечить измеримый QoS к определенному количеству трафика.

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

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

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

Политики QoS

Тип трафика QoS Безопасность Когда?
Голос Задержка меньше 150 мс в одну сторону Шифрование на уровне передаче голоса Понедельник - Пятница
Система планирования ресурсов предприятия Обеспечение доступной полосы пропускания минимум 512 кб/с Зашифрован 24 часа в сутки, 7 дней в неделю, 365 дней в году
Трафик, создаваемый программным обеспечением станков и оборудования Обеспечение доступной полосы пропускания минимум 256 кб/с В открытом виде Понедельник - Пятница
Трафик от использования интернет ресурсов HTTP/HTTPS Негарантированная доставка по принципу Best Effort HTTP прокси сервер Понедельник – Пятница, с 8 утра до 9 вечера.

Осуществление QoS в сетях унифицированных коммуникаций

Условно, процесс осуществления QoS в сетях Unified Communications (унифицированных коммуникаций), можно разделить на 3 этапа:

  1. Определение типа трафика в сети и его требований. На данном этапе необходимо научить сеть определять типы трафика чтобы применять к ним те или иные QoS алгоритмы;
  2. с одинаковыми требованиями QoS. Например, можно определить 4 типа трафика: голос, высоко – приоритетный трафик, низко – приоритетный трафик и трафик от пользования браузером для просмотра WEB страниц;
  3. Назначить политики QoS , применяемые к классам, определенным в п.2.

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

Согласно указанным принципам, можно условно выделить три QoS политики:

  • Без задержки: Присваивается в голосовому трафику;
  • Лучшее обслуживание: Присваивается к трафику с наивысшим приоритетом;
  • Остальное: Присваивается к низко – приоритетному и трафику web – браузеров;
Шаг 1: Определение типа трафика

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

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

После этого, необходимо определить бизнес цели и модели работы и составить список бизнес – требований. По итогам этих действий, каждый из пунктов списка можно сопоставить с тем или иным классом трафика.

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

Шаг 2: Сгруппировать трафик в классы

После идентификации сетевого трафика, необходимо использовать список бизнес требований, составленный на первом этапе, чтобы определить классы трафика.

Голосовой трафик всегда определяется отдельным классом. Компания Cisco имеет разработанные механизмы QoS для голосового трафика, например, Low latency queuing (LLQ) , цель которого заключается в контроле за тем, чтобы голос получал преимущество в обслуживании. После того как определены наиболее критичные приложения, необходимо определить классы трафика использую список бизнес требований.

Не каждое приложение имеет свой собственный класс обслуживания. Довольно много приложений с похожими требованиями к QoS группируются вместе в единый класс.

Пример классификации трафика

Типичный корпоративный ландшафт определяет 5 классов трафика:

  • Голос: Наивысший приоритет для трафика VoIP;
  • Критически важные: Небольшой набор критически важных для бизнеса приложений;
  • Транзакции: В данном классе присутствуют сервисы баз данных, интерактивный трафик и привилегированный сетевой трафик;
  • Негарантированная доставка: Работает по принципу Best Effort, что дословно переводится как «лучшее усилие». В данный класс можно отнести интернет трафик и e-mail.

Шаг 3: Сгруппировать трафик в классы

Третьим шагом необходимо описать политики QoS для каждого из классов трафика, которые включают следующие действия:

  • Назначить минимальный размер гарантированной полосы пропускания;
  • Назначить максимальный размер полосы пропускания;
  • Назначить приоритеты для каждого из классов;
  • Использовать QoS технологии, такие как алгоритмы контроля очередей для управления перегрузками.

Рассмотрим на текущем примере определение политик QoS для каждого из классов:

  1. Голос: Доступна полоса пропускания – 1мбит/с. Использовать метку Differentiated Services Code Poin (DSCP) со значением EF . Метка EF (Expedited Forwarding) означает то, что пакеты с таким маркером получают приоритет в очереди согласно принципу наименьшей задержки. Дополнительно используется алгорит LLQ;
  2. Критически важные: Минимальная полоса пропускания – 1мбит/с. Использовать метку Differentiated Services Code Poin (DSCP) со значением AF31 (метка в поле DSCP 011010), что обеспечивает наименьшую вероятность отбрасывания пакета. Параллельное использование алгоритма CBWFQ гарантирует необходимую полосу пропускания для маркированного трафика;
  3. Негарантированная доставка: Максимальная полоса пропускания – 500кбит/с. Использовать метку Differentiated Services Code Poin (DSCP) со значением Default (метка в поле DSCP 000000), что обеспечивает обслуживание по умолчанию. Алгоритм CBWFQ обеспечивает «доставку по возможности», которая ниже по приоритету классов «Голос» и «Критически важные».

Полезна ли Вам эта статья?

Пожалуйста, расскажите почему?

Нам жаль, что статья не была полезна для вас:(Пожалуйста, если не затруднит, укажите по какой причине? Мы будем очень благодарны за подробный ответ. Спасибо, что помогаете нам стать лучше!

Существует такая служба как QoS . Расшифровывается сия аббревиатура, как Quality of Service . В случае настройки системы ее крайне нежелательно активировать, так как она имеет свойство существенно уменьшать пропускную способность сети (приблизительно на 20 процентов)

Сейчас, пожалуй, невозможно найти такого человека, который бы ни разу не читал ни одно из FAQ , касающихся работы Windows .

20% — это, разумеется, просто безумно много. И конечно же Майкрософт – должен погибнуть. Утверждения такого плана переходят из одного ФАКа в другой, бродят по форумам, средствам массовой информации, пользуются огромным успехом во всяких «твикалках» — программному обеспечению по «обучению» Windows . Раз облачать подобного рода утверждения необходимо крайне осторожно, этим-то мы сейчас и займемся, качественно применяя системный подход. То бишь крайне детально рассмотрим проблемный вопрос, будем опираться на авторитетные первоисточники.

Что есть сеть с качественным сервисом?

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

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

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

Основные параметры службы QoS

Разные приложения имеют совершенно разные требования к переработке их трафика. Приложения в некоторой степени более или менее терпимы к потере и несущественным задержкам сетевого трафика.

Эти требования находят своё применение в таких параметрах, которые связанны с QoS :

Полоса пропускания (англ. Bandwidth) – та скорость с которой трафик, который генерируется приложением, может быть и должен быть передан по сети

Задержка (Latency) – время задержки, которое может допустить само приложение при доставке пакета информации

Изменение задержки (Jitter )

Потеря (Loss ) – коэффициент потери информации.

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

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

Базовые ресурсы службы QoS и способы обработки трафика

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

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

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

Распределение ресурсов службы QoS по сетевым устройствам

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

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

Механизмы и способы обработки трафика

Подавляющее большинство локальных сетей основывается на технологии iEEE 802 и включает token —ring , Ethernet и так далее. 802.1p является механизмом обработки трафика для поддержки службы QoS в подобного рода сетях.

802.1p способно определить поле (второй уровень в сетевой модели OSI ) в заглавии пакета 802, которое несет какое-то значение приоритета. Обычно, маршрутизаторы или же хосты, отсылая свой трафик в локальную сеть, маркируют все посланные ими пакеты, присваивая им какое-то значение приоритета. Подразумевается, что свичи, хабы, мосты и иные сетевые устройства будут обрабатывать пакеты путем организации очередей. Область применения указанного механизма обработки трафика ограничивается LAN . В тот же момент, когда пакет пересекает LAN (через третий уровень OSI ), приоритет 802.1p сразу же удаляется

Механизм третьего уровня – Diffserv , который определяет в поле в третьем уровне загаловка IP -пакетов, которые называются DSCP (расш. Diffserv codepoint )

Itserv представляет из себя законченный пакет услуг, который определяет гарантированных сервис и сервис, который управляет перегрузками. Гарантированный сервис способен нести какой-то объем трафика с ограниченной задержкой. Сервис, который управляет загрузкой,вызывается нести какой-то объем трафика когда «появляется легкая загруженность сетей». Они являются в какой-то степени измеримыми услугами, так как они определяются, для того чтобы обеспечить соотношение QoS к какому-то количеству трафика.

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

Также служба QoS имеет в своём распоряжении довольно много непростых механизмов, которые обеспечивают работу такой технологии. Хотим отметить только лишь один, но очень существенный момент: для того, чтобы служба начала функционировать, нужна поддержка такой технологии и наличие необходимой настройки на всех передачах от первоначального пункта и до конечного

Нужно принять:

Абсолютно все маршрутизаторы принимают участиев передаче необходимых протоколов;

Первый QoS —сеанс, котор ый требует 64 кбпс, инициализируется между хостами A и B

Второй сеанс, который требует 64 кбпс, инициализируется между хостами A и D

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

Для нас важно, что один вопрос о резервировании 64 кбпс должен был достигнуть трех маршрутизаторов по пути потока информации между хостами A и B . Следующий запрос о 64 кбпс смог бы д остигнуть трех маршуртизаторов между хостами A и D . Маршрутизаторы бы смогли исполнить запросы на резервировании ресурсов, так как они не больше максимально указанной точки. Если же вместо этого любой из хостов B и C смог бы инициализировать 64 кбпс QoS -сеанс с А-хостом, то в таком случае маршрутизатор, который обслуживает указанные хосты, скорее всего запретил бы какое-то одно соединение.

А сейчас попробуем представить, что сетевой администратор выключает обработку службы в трех маршрутизаторах, которые обслуживают хост E ,D ,C ,B . В таком случае запросы о ресурсах больших 64 кбпс будут удовлетворяться вне зависимости от расположения хоста, который принимает участие в создании. В этом случае гарантии качества были бы крайне низки, так как трафик для единого хоста наносил бы ущерб трафику другого. Качество обслуживания, скорее всего, могло бы остаться прежним, если бы верхний маршрутизатор смог ограничить запросы до 64кбпс, но это бы привело к крайне неэффективному использованию ресурсов сети.

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

Майкрософтовские QoS -компонент ы

98 версия Windows располагает лишь компонентами QoS только для уровня пользователей:

QoS сервис провайдер

Winsock 2 (GQoS API )

Некоторые компоненты приложений

Более поздние операционные системы компании Майкрософт содержат все, что указано выше, а также такие компоненты, как:

Traffic .dll – возможность управления трафиком

Rsvpsp .dll и служб ы rsvp .exe ,а также QoS ACS . В XP и 2003 не используются

Mspgps .sys – классификатор пакетов, способен определить класс сервиса, принадлежащий пакету.

Psched .sys является планировщиком пакетов службы QoS . Его функция заключается в определении параметров службы для специфического потока информации. Весь трафик будет отмечаться каким-то значением приоритета. Планировщик пакетов будет определять трафик, путем постановки в очередь всех покетов и обрабатывать конкурирующие запросы через поставленные в очередь пакеты данных, которые нуждаются в своевременном доступе к сети.

Планировщик пакетов QoS (Psched.sys). Определяет параметры QoS для специфического потока данных. Трафик помечается определенным значением приоритета. Планировщик пакетов QoS определяет график постановки в очередь каждого пакета и обрабатывает конкурирующие запросы между поставленными в очередь пакетами, которые нуждаются в одновременном доступе к сети.

Финальный аккорд

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

Про то, какие проблемы могут быть в сети и как на них может повлиять QoS. В этой статье мы поговорим про механизмы работы QoS.

Механизмы QoS

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

Рассмотрим следующие модели:

  • Best Effort –негарантированная доставка используется во всех сетях по умолчанию. Положительная сторона заключается в том, что эта модель не требует абсолютно никаких усилий для реализации. Не используются никакие механизмы QoS, весь трафик обслуживается по принципу “пришел первым – обслужили первым”. Такая модель не подходит для современных сетевых сред;
  • Integrated Services (IntServ) – эта модель интегрированного обслуживания использует метод резервирования. Например, если пользователь хотел сделать VoIP вызов 80 Кбит/с по сети передачи данных, то сеть, разработанная исключительно для модели IntServ , зарезервировала бы 80 Кбит/с на каждом сетевом устройстве между двумя конечными точками VoIP, используя протокол резервирования ресурсов RSVP (Resource Reservation Protocol) . На протяжении звонка эти 80 Кбит/с будут недоступны для другого использования, кроме как для VoIP звонка. Хотя модель IntServ является единственной моделью, обеспечивающей гарантированную пропускную способность, она также имеет проблемы с масштабируемостью. Если сделано достаточное количество резервирований, то сеть просто исчерпает полосу пропускания;
  • Differentiated Services (DiffServ) – модель дифференцированного обслуживания является самой популярной и гибкой моделью для использования QoS. В этой модели можно настроить каждое устройство так, чтобы оно могло использовать различные методы QoS, в зависимости от типа трафика. Можно указать какой трафик входит в определенный класс и как этот класс должен обрабатываться. В отличие от модели IntServ , трафик не является абсолютно гарантированным, поскольку сетевые устройства не полностью резервируют полосу пропускания. Однако DiffServ получает полосу, близкую к гарантированной полосе пропускания, в то же время решая проблемы масштабируемости IntServ . Это позволило этой модели стать стандартной моделью QoS;

Инструменты QoS

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

  • Классификация и разметка (Classification and Marking) - Эти инструменты позволяют идентифицировать и маркировать пакет, чтобы сетевые устройства могли легко идентифицировать его по мере пересечения сети. Обычно первое устройство, которое принимает пакет, идентифицирует его с помощью таких инструментов, как списки доступа (access-list), входящие интерфейсы или deep packet inspection (DPI), который рассматривает сами данные приложения. Эти инструменты могут быть требовательны к ресурсам процессора и добавлять задержку в пакет, поэтому после того как пакет изначально идентифицирован, он сразу помечается. Маркировка может быть в заголовке уровня 2 (data link ), позволяя коммутаторам читать его и/или заголовке уровня 3 (network ), чтобы маршрутизаторы могли его прочитать. Для второго уровня используется протокол 802.1P , а для третьего уровня используется поле Type of Service . Затем, когда пакет пересекает остальную сеть, сетевые устройства просто смотрят на маркировку, чтобы классифицировать ее, а не искать глубоко в пакете;
  • Управление перегрузками (Congestion Management) – Перегрузки возникают, когда входной буфер устройства переполняется и из-за этого увеличивается время обработки пакета. Стратегии очередей определяют правила, которые маршрутизатор должен применять при возникновении перегрузки. Например, если интерфейс E1 WAN был полностью насыщен трафиком, маршрутизатор начнет удерживать пакеты в памяти (очереди), чтобы отправить их, когда станет доступна полоса пропускания. Все стратегии очередей направлены на то, чтобы ответить на один вопрос: “когда есть доступная пропускная способность, какой пакет идет первым?“;
  • Избегание заторов (Congestion Avoidance) – Большинство QoS механизмов применяются только тогда, когда в сети происходит перегрузка. Целью инструментов избегания заторов является удаление достаточного количества пакетов несущественного (или не очень важного) трафика, чтобы избежать серьезных перегрузок, возникающих в первую очередь;
  • Контроль и шейпинг (Policing and Shaping) – Этот механизм ограничивает пропускную способность определенного сетевого трафика. Это полезно для многих типичных «пожирателей полосы» в сети: p2p приложения, веб-серфинг, FTP и прочие. Шейпинг также можно использовать, чтобы ограничить пропускную способность определенного сетевого трафика. Это нужно для сетей, где допустимая фактическая скорость медленнее физической скорости интерфейса. Разница между этими двумя механизмами заключается в том, что shaping формирует очередь из избыточного трафика, чтобы выслать его позже, тогда как policing обычно сбрасывает избыточный трафик;
  • Эффективность линков (Link Efficiency) – Эта группа инструментов сосредоточена на доставке трафика наиболее эффективным способом. Например, некоторые низкоскоростные линки могут работать лучше, если потратить время на сжатие сетевого трафика до его отправки (сжатие является одним из инструментов Link Efficiency);
Механизмы Link Efficiency

При использовании медленных интерфейсов возникают две основных проблемы:

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

Чтобы побороть эти проблемы были разработаны следующие Link Efficiency механизмы:

  • Сжатие полезной нагрузки (Payload Compression) – сжимает данные приложения, оправляемые по сети, поэтому маршрутизатор отправляет меньше данных, по медленной линии;
  • Сжатие заголовка (Header Compression) – Некоторый трафик (например, такой как VoIP) может иметь небольшой объем данных приложения (RTP-аудио) в каждом пакете, но в целом отправлять много пакетов. В этом случае количество информации заголовка становится значимым фактором и часто потребляет больше полосы пропускания, чем данные. Сжатие заголовка решает эту проблему напрямую, устраняя многие избыточные поля в заголовке пакета. Удивительно, что сжатие заголовка RTP, также называемое сжатым транспортным протоколом реального времени (Compressed Real-time Transport Protocol - cRTP ) уменьшает 40-байтовый заголовок до 2-4 байт!;
  • Фрагментация и чередование (Link Fragmentation and Interleaving) - LFI решает проблему задержки сериализации путем измельчения больших пакетов на более мелкие части до их отправки. Это позволяет маршрутизатору перемещать критический VoIP-трафик между фрагментированными частями данных (которые называются «чередованием» голоса);
Алгоритмы очередей

    Постановка в очереди (queuing ) определяет правила, которые маршрутизатор должен применять при возникновении перегруженности. Большинство сетевых интерфейсов по умолчанию используют базовую инициализацию First-in, First-out (FIFO) . В этом методе сначала отправляется любой пакет, который приходит первым. Хотя это кажется справедливым, не весь сетевой трафик создается равным. Основная задача очереди - обеспечить, чтобы сетевой трафик, обслуживающий критически важные или зависящие от времени бизнес-приложения, отправлялся перед несущественным сетевым трафиком. Помимо очередности FIFO используются три первичных алгоритма очередности:

  • Weighted Fair Queuing (WFQ) – WFQ пытается сбалансировать доступную полосу пропускания между всеми отправителями равномерно. Используя этот метод, отправитель с высокой пропускной способностью получает меньше приоритета, чем отправитель с низкой пропускной способностью;
  • Class-Based Weighted Fair Queuing (CBWFQ) – этот метод массового обслуживания позволяет указать гарантированные уровни пропускной способности для различных классов трафика. Например, вы можете указать, что веб-трафик получает 20 процентов полосы пропускания, тогда как трафик Citrix получает 50 процентов пропускной способности (вы можете указать значения как процент или конкретную величину полосы пропускания). Затем WFQ используется для всего неуказанного трафика (остальные 30 процентов в примере);
  • Low Latency Queuing (LLQ) - LLQ часто упоминается как PQ-CBWFQ, потому работает точно так же, как CBWFQ, но добавляется компонент приоритета очередей (Priority Queuing - PQ ). Если вы указываете, что определенный сетевой трафик должен идти в приоритетную очередь, то маршрутизатор не только обеспечивает пропускную способность трафика, но и гарантирует ему первую полосу пропускания. Например, используя чистый CBWFQ, трафику Citrix может быть гарантированно 50% пропускной способности, но он может получить эту полосу пропускания после того, как маршрутизатор обеспечит некоторые другие гарантии трафика. При использовании LLQ приоритетный трафик всегда отправляется перед выполнением любых других гарантий. Это очень хорошо работает для VoIP, делая LLQ предпочтительным алгоритмом очередей для голоса;

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

Полезна ли Вам эта статья?

Пожалуйста, расскажите почему?

Нам жаль, что статья не была полезна для вас:(Пожалуйста, если не затруднит, укажите по какой причине? Мы будем очень благодарны за подробный ответ. Спасибо, что помогаете нам стать лучше!




Top