Сайт о телевидении

Сайт о телевидении

» » Качества обслуживания qos в пакетной передачи данных. Что есть сеть с качественным сервисом? Основные параметры службы QoS

Качества обслуживания qos в пакетной передачи данных. Что есть сеть с качественным сервисом? Основные параметры службы QoS


В настоящее время вместе с планомерным увеличением скоростей передачи данных в телекоммуникациях увеличивается доля интерактивного трафика, крайне чувствительного к параметрам среды транспортировки. Поэтому задача обеспечения качества обслуживания (Quality of Service - QoS) становится все более актуальной.

Рассмотрение вопроса подобной сложности лучше всего начинать с простых и понятных примеров настройки оборудования, например, фирмы Cisco. Представленный здесь материал, безусловно, не может конкурировать с www.cisco.com. Наша задача – начальная классификация огромного объема сведений в компактном виде с целью облегчения понимания и дальнейшего изучения.

1. Определения и термины.

Определений термина QoS настолько много, что мы выберем единственно верное - правильно, от Cisco: "QoS – QoS refers to the ability of a network to provide better service to selected network traffic over various underlying technologies…". Что можно литературно перевести как: "QoS – способность сети обеспечить необходимый сервис заданному трафику в определенных технологических рамках".

Необходимый сервис описывается многими параметрами, отметим среди них самые важные.

Bandwidth (BW) - полоса пропускания, описывает номинальную пропускную способность среды передачи информации, определяет ширину канала. Измеряется в bit/s (bps), kbit/s (kbps), mbit/s (mbps).

Delay - задержка при передаче пакета.

Jitter - колебание (вариация) задержки при передаче пакетов.

Packet Loss – потери пакетов. Определяет количество пакетов, отбрасываемых сетью во время передачи.

Чаще всего для описания пропускной способности канала проводят аналогию с водопроводной трубой. В ее рамках Bandwidth – это ширина трубы, а Delay – длина.

Время передачи пакета через канал Transmit time [s] = packet size / bw .

Например, найдем время передачи пакета размером 64 байта по каналу шириной 64 килобита/c:

Packet size = 64*8=512 (bit) Transmit Time = 512/64000 = 0.008 (c)

2. Сервисные модели QoS.

2.1. Best Effort Service.

Негарантированная доставка. Абсолютное отсутствие механизмов QoS. Используются все доступные ресурсы сети без какого-либо выделения отдельных классов трафика и регулирования. Считается, что лучшим механизмом обеспечения QoS является увеличение пропускной способности. Это в принципе правильно, однако некоторые виды трафика (например, голосовой) очень чувствительны к задержкам пакетов и вариации скорости их прохождения. Модель Best Effort Service даже при наличии больших резервов допускает возникновение перегрузок в случае резких всплесков трафика. Поэтому были разработаны и другие подходы к обеспечению QoS.

2.2. Integrated Service (IntServ).

Integrated Service (IntServ, RFC 1633) - модель интегрированного обслуживания. Может обеспечить сквозное (End-to-End) качество обслуживания, гарантируя необходимую пропускную способность. IntServ использует для своих целей протокол сигнализации RSVP. Позволяет приложениям выражать сквозные требования к ресурсам и содержит механизмы обеспечения данных требований. IntServ можно кратко охарактеризовать как резервирование ресурсов (Resource reservation).

2.3. Differentiated Service (DiffServ).

Differentiated Service (DiffServ, RFC 2474/2475) - Модель дифференцированного обслуживания. Определяет обеспечение QoS на основе четко определенных компонентов, комбинируемых с целью предоставления требуемых услуг. Архитектура DiffServ предполагает наличие классификаторов и формирователей трафика на границе сети, а также поддержку функции распределения ресурсов в ядре сети в целях обеспечения требуемой политики пошагового обслуживания (Per-Hop Behavior - PHB). Разделяет трафик на классы, вводя несколько уровней QoS. DiffServ состоит из следующих функциональных блоков: граничные формирователи трафика (классификация пакетов, маркировка, управление интенсивностью) и реализаторы PHB политики (распределение ресурсов, политика отбрасывания пакетов). DiffServ можно кратко охарактеризовать как приоритезацию трафика (Prioritization).

3. Базовые функции QoS.

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

3.1. Классификация и разметка (Classification and Marking).

Классификация пакетов (Packet Classification) представляет собой механизм соотнесения пакета к определенному классу трафика.

Другой не менее важной задачей при обработке пакетов является маркировка пакетов (Packet Marking) - назначение соответствующего приоритета (метки).

В зависимости от уровня рассмотрения (имеется в виду OSI) эти задачи решаются по-разному.

3.1.1. Layer 2 Classification and Marking.

Коммутаторы Ethernet (Layer 2) используют протоколы канального уровня. Протокол Ethernet в чистом виде не поддерживает поле приоритета. Поэтому на Ethernet портах (Access Port) возможна лишь внутренняя (по отношению к коммутатору) классификация по номеру входящего порта и отсутствует какая-либо маркировка.

Более гибким решением является использование стандарта IEEE 802.1P, который разрабатывался совместно с 802.1Q. Иерархия отношений здесь следующая: 802.1D описывает технологию мостов и является базовой для 802.1Q и 802.1P. 802.1Q описывает технологию виртуальных сетей (VLAN), а 802.1P обеспечение качества обслуживания. В целом, включение поддержки 802.1Q (транк с виланами), автоматически дает возможность использования 802.1P. Согласно стандарту используются 3 бита в заголовке второго уровня, которые называются Class of Service (CoS). Таким образом, CoS может принимать значения от 0 до 7.

3.1.2. Layer 3 Classification and Marking.

Маршрутизирующее оборудование (Layer 3) оперирует IP пакетами, в которых под цели маркировки предусмотрено соответствующее поле в заголовке - IP Type of Service (ToS) размером один байт. ToS может быть заполнен классификатором IP Precedence или DSCP в зависимости от задачи. IP precedence (IPP) имеет размерность 3 бита (принимает значения 0-7). DSCP относится к модели DiffServ и состоит из 6 бит (значения 0-63).

Кроме цифровой формы, значения DSCP могут быть выражены с использованием специальных ключевых слов: доставка по возможности BE – Best Effort, гарантированная доставка AF – Assured Forwarding и срочная доставка EF – Expedited Forwarding. В дополнение к этим трем классам существуют коды селектора классов, которые добавляются к обозначению класса и обратно совместимы с IPP. Например, значение DSCP равное 26 можно записать как AF31, что полностью равнозначно.

MPLS содержит индикатор QoS внутри метки в соответствующих битах MPLS EXP (3 бита).

Промаркировать IP пакеты значением QoS можно разными способами: PBR, CAR, BGP.

Пример 1. Маркировка PBR

Policy Based Route (PBR) можно использовать с целью маркировки, производя ее в соответствующей подпрограмме (Route-map может содержать параметр set ip precedence):

!
interface FastEthernet0/0
ip policy route-map MARK
speed 100
full-duplex
no cdp enable
!
!
route-map MARK permit 10
match ip address 1
set ip precedence priority
!

На выходе интерфейса можно увидеть результат (например, программой tcpdump под unix):

# tcpdump -vv -n -i em0
... IP (tos 0x20 ...)

Пример 2. Маркировка CAR.

Механизм Committed Access Rate (CAR) разработан для ограничения скорости, однако дополнительно может и маркировать пакеты (параметр set-prec-transmit в rate-limit):

!
interface FastEthernet0/0
ip address 192.168.0.2 255.255.255.252
rate-limit input access-group 1 1000000 10000 10000 conform-action set-prec-transmit 3 exceed-action set-prec-transmit 3
no cdp enable
!
access-list 1 permit 192.168.0.0 0.0.0.255
!

#sh interface FastEthernet0/0 rate-limit

3.2. Управление перегрузками (Congestion Management). Механизм очередей.

3.2.1. Перегрузки (Congestions).

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

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

3.2.2. Layer 2 Queuing.

Физическое устройство классического коммутатора можно упрощенно представить следующим образом: пакет приходит на входной порт, обрабатывается механизмом коммутации, который решает, куда направить пакет, и попадает в аппаратные очереди выходного порта. Аппаратные очереди представляет собой быструю память, хранящую пакеты перед тем, как они попадут непосредственно на выходной порт. Далее, согласно определенному механизму обработки, пакеты извлекаются из очередей и покидают коммутатор. Изначально очереди равноправны и именно механизм обработки очередей (Scheduling) определяет приоритезацию. Обычно каждый порт коммутатора содержит ограниченное число очередей: 2, 4, 8 и так далее.

В общих чертах настройка приоритезации заключается в следующем:

1. Изначально очереди равноправны. Поэтому предварительно необходимо их настроить, то есть определить очередность (или пропорциональность объема) их обработки. Чаще всего это делается привязкой приоритетов 802.1P к очередям.

2. Необходимо сконфигурировать обработчик очередей (Scheduler). Чаще всего используются взвешенный циклический алгоритм (Weighted Round Robin WRR) или строгая очередь приоритетов (Strict Priority Queuing).

3. Назначение приоритета поступающим пакетам: по входному порту, по CoS или, в случае дополнительных возможностей (Layer 3 switch), по каким-то полям IP.

Работает все это следующим образом:

1. Пакет попадает в коммутатор. Если это обычный Ethernet пакет (клиентский Access Port), то он не имеет меток приоритета и таковая может выставляться коммутатором, например, по номеру входного порта, если это нужно. Если входной порт транковый (802.1Q или ISL), то пакет может нести метку приоритета и коммутатор может ее принять или заменить на необходимую. В любом случае пакет на данном этапе попал в коммутатор и имеет необходимую разметку CoS.

2. После обработки процессом коммутации пакет в соответствии с меткой приоритета CoS направляется классификатором (Classify) в соответствующую очередь выходного порта. Например, критический трафик попадает в высокоприоритетную, а менее важный в низкоприоритетную очереди.

3. Механизм обработки (Scheduling) извлекает пакеты из очередей согласно их приоритетам. Из высокоприоритетной очереди за единицу времени будет выдано на выходной порт больше пакетов, чем из низкоприоритетной.


3.2.3. Layer 3 Queuing.

Маршрутизирующие устройства оперируют пакетами на третьем уровне OSI (Layer 3). Чаще всего поддержка очередей обеспечивается программно. Это означает в большинстве случаев отсутствие аппаратных ограничений на их число и более гибкое конфигурирование механизмов обработки. Общая парадигма QoS Layer 3 включает маркировку и классификацию пакетов на входе (Marking & Classification), распределение по очередям и их обработку (Scheduling) по определенным алгоритмам.

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

Проведем классификацию Layer 3 QoS по методам обработки очередей.

3.2.3.1. FIFO.

Элементарная очередь с последовательным прохождением пакетов, работающая по принципу первый пришел – первый ушел (First In First Out - FIFO), имеющему русский эквивалент кто первый встал того и тапки. По сути, здесь нет никакой приоритезации. Включается по умолчанию на интерфейсах со скоростью больше 2 мбит/с.

3.2.3.2. PQ. Очереди приоритетов.

Priority Queuing (PQ) обеспечивает безусловный приоритет одних пакетов над другими. Всего 4 очереди: high, medium, normal и low. Обработка ведется последовательно (от high до low), начинается с высокоприоритетной очереди и до ее полной очистки не переходит к менее приоритетным очередям. Таким образом, возможна монополизация канала высокоприоритетными очередями. Трафик, приоритет которого явно не указан, попадет в очередь по умолчанию (default).

Параметры команды.
распределение протоколов по очередям:
priority-list LIST_NUMBER protocol PROTOCOL {high|medium|normal|low} list ACCESS_LIST_NUMBER
определение очереди по умолчанию:
priority-list LIST_NUMBER default {high|medium|normal|low}
определение размеров очередей (в пакетах):
priority-list LIST_NUMBER queue-limit HIGH_QUEUE_SIZE MEDIUM_QUEUE_SIZE NORMAL_QUEUE_SIZE LOW_QUEUE_SIZE

обозначения:
LIST_NUMBER – номер обработчика PQ (листа)
PROTOCOL - протокол
ACCESS_LIST_NUMBER – номер аксесс листа
HIGH_QUEUE_SIZE – размер очереди HIGH
MEDIUM_QUEUE_SIZE - размер очереди MEDIUM
NORMAL_QUEUE_SIZE - размер очереди NORMAL
LOW_QUEUE_SIZE - размер очереди LOW

Алгоритм настройки.

1. Определяем 4 очереди
access-list 110 permit ip any any precedence network
access-list 120 permit ip any any precedence critical
access-list 130 permit ip any any precedence internet
access-list 140 permit ip any any precedence routine

priority-list 1 protocol ip high list 110
priority-list 1 protocol ip medium list 120
priority-list 1 protocol ip normal list 130
priority-list 1 protocol ip low list 140
priority-list 1 default low


priority-list 1 queue-limit 30 60 90 120

2. Привязываем к интерфейсу

!
interface FastEthernet0/0
ip address 192.168.0.2 255.255.255.0
speed 100
full-duplex
priority-group 1
no cdp enable
!

3. Просмотр результата
# sh queueing priority

Current priority queue configuration:

List Queue Args - - 1 low default - 1 high protocol ip list 110 1 medium protocol ip list 120 1 normal protocol ip list 130 1 low protocol ip list 140

#sh interfaces fastEthernet 0/0

Queueing strategy: priority-list 1


Interface FastEthernet0/0 queueing strategy: priority


high/19 medium/0 normal/363 low/0

3.2.3.3. CQ. Произвольные очереди.

Custom Queuing (CQ) обеспечивает настраиваемые очереди. Предусматириваетмя управление долей полосы пропускания канала для каждой очереди. Поддерживается 17 очередей. Системная 0 очередь зарезервирована для управляющих высокоприоритетных пакетов (маршрутизация и т.п.) и пользователю недоступна.

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

Параметры команды.
определение полосы пропускания очередей:
queue-list LIST-NUMBER queue QUEUE_NUMBER byte-count
BYTE_COUT

определение размеров очередей:
queue-list LIST-NUMBER queue QUEUE_NUMBER limit QUEUE_SIZE

обозначения:
LIST-NUMBER – номер обработчика
QUEUE_NUMBER – номер очереди
BYTE_COUT – размер очереди в пакетах

Алгоритм настройки.

1. Определяем очереди
access-list 110 permit ip host 192.168.0.100 any
access-list 120 permit ip host 192.168.0.200 any

queue-list 1 protocol ip 1 list 110
queue-list 1 protocol ip 2 list 120
queue-list 1 default 3

queue-list 1 queue 1 byte-count 3000
queue-list 1 queue 2 byte-count 1500
queue-list 1 queue 3 byte-count 1000

Дополнительно можно установить размеры очередей в пакетах
queue-list 1 queue 1 limit 50
queue-list 1 queue 2 limit 50
queue-list 1 queue 3 limit 50

2. Привязываем к интерфейсу
!
interface FastEthernet0/0
ip address 192.168.0.2 255.255.255.0
speed 100
full-duplex
custom-queue-list 1
no cdp enable
!

3. Просмотр результата
#sh queueing custom

Current custom queue configuration:

List Queue Args - 1 3 default - 1 1 protocol ip list 110 1 2 protocol ip list 120 1 1 byte-count 1000 - 1 2 byte-count 1000 - 1 3 byte-count 2000 -

#sh interface FastEthernet0/0

Queueing strategy: custom-list 1

#sh queueing interface fastEthernet 0/0
Interface FastEthernet0/0 queueing strategy: custom

Output queue utilization (queue/count)
0/90 1/0 2/364 3/0 4/0 5/0 6/0 7/0 8/0
9/0 10/0 11/0 12/0 13/0 14/0 15/0 16/0

3.2.3.4. WFQ. Взвешенные справедливые очереди.

Weighted Fair Queuing (WFQ) автоматически разбивает трафик на потоки (flows). По умолчанию их число равно 256, но может быть изменено (параметр dynamic-queues в команде fair-queue). Если потоков больше, чем очередей, то в одну очередь помещается несколько потоков. Принадлежность пакета к потоку (классификация) определяется на основе TOS, протокола, IP адреса источника, IP адреса назначения, порта источника и порта назначения. Каждый поток использует отдельную очередь.

Обработчик WFQ (scheduler) обеспечивает равномерное (fair - честное) разделение полосы между существующими потоками. Для этого доступная полоса делится на число потоков и каждый получает равную часть. Кроме того, каждый поток получает свой вес (weight), с некоторым коэффициентом обратно пропорциональный IP приоритету (TOS). Вес потока также учитывается обработчиком.

В итоге WFQ а втоматически справедливо распределяет доступную пропускную способность, дополнительно учитывая TOS. Потоки с одинаковыми IP приоритетами TOS получат равные доли полосы пропускания; потоки с большим IP приоритетом – большую долю полосы. В случае перегрузок ненагруженные высокоприоритетные потоки функционируют без изменений, а низкоприоритетные высоконагруженные – ограничиваются.

Вместе с WFQ работает RSVP. По умолчанию WFQ включается на низкоскоростных интерфейсах.

Алгоритм настройки.
1. Помечаем трафик каким-либо способом (устанавливаем IP приоритет - TOS) или получаем его помеченным

2. Включаем WFQ на интерфейсе
interface FastEthernet0/0
fair-queue

interface FastEthernet0/0
fair-queue CONGESTIVE_DISCARD_THRESHOLD DYNAMIC_QUEUES

Параметры:
CONGESTIVE_DISCARD_THRESHOLD – число пакетов в каждой очереди, при превышении которого пакеты игнорируются (по умолчанию - 64)
DYNAMIC_QUEUES – число подочередей, по которым классифицируется трафик (по умолчанию - 256)

3. Просмотр результата
# sh queueing fair
# sh queueing interface FastEthernet0/0

3.2.3.5. CBWFQ.

Class Based Weighted Fair Queuing (CBWFQ) соответствует механизму обслуживания очередей на основе классов. Весь трафик разбивается на 64 класса на основании следующих параметров: входной интерфейс, аксесс лист (access list), протокол, значение DSCP, метка MPLS QoS.

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

Пакеты, не попадающие в сконфигурированные классы, попадают в класс по умолчанию, который можно дополнительно настроить и который получает оставшуюся свободной полосу пропускания канала. При переполнении очереди любого класса пакеты данного класса игнорируются. Алгоритм отклонения пакетов внутри каждого класса можно выбирать: включенное по умолчанию обычное отбрасывание (tail-drop, параметр queue-limit) или WRED (параметр random-detect). Только для класса по умолчанию можно включить равномерное (честное) деление полосы (параметр fair-queue).

CBWFQ поддерживает взаимодействие с RSVP.

Параметры команды.

критерии отбора пакетов классом:
class-map match-all CLASS
match access-group
match input-interface
match protocol
match ip dscp
match ip rtp
match mpls experimental

определение класса:

class CLASS
bandwidth BANDWIDTH
queue-limit QUEUE-LIMIT
random-detect

определение класса по умолчанию (default):

class class-default
bandwidth BANDWIDTH
bandwidth percent BANDWIDTH_PERCENT
queue-limit QUEUE-LIMIT
random-detect
fair-queue

обозначения:
CLASS – название класса.
BANDWIDTH – минимальная полоса kbit/s, значение независимо от bandwidth на интерфейсе.
BANDWIDTH_PERCENT - процентное соотношение от bandwidth на интерфейсе.
QUEUE-LIMIT – максимальное количество пакетов в очереди.
random-detect – использование WRED.
fair-queue – равномерное деление полосы, только для класса по умолчанию

По умолчанию абсолютное значение Bandwidth в классе CBWFQ не может превышать 75% значение Bandwidth на интерфейсе. Это можно изменить командой max-reserved-bandwidth на интерфейсе.

Алгоритм настройки.

1. Распределение пакетов по классам - class-map

class-map match-all Class1
match access-group 101

2. Описание правил для каждого класса - policy-map
policy-map Policy1
class Class1
bandwidth 100
queue-limit 20
class class-default
bandwidth 50
random-detect

3. Запуск заданной политики на интерфейсе - service-policy
interface FastEthernet0/0
bandwidth 256

4. Просмотр результата
#sh class Class1
#sh policy Policy1
#sh policy interface FastEthernet0/0

Пример 1.

Деление общей полосы по классам в процентном соотношении (40, 30, 20).
access-list 101 permit ip host 192.168.0.10 any
access-list 102 permit ip host 192.168.0.20 any
access-list 103 permit ip host 192.168.0.30 any

class-map match-all Platinum
match access-group 101
class-map match-all Gold
match access-group 102
class-map match-all Silver
match access-group 103

policy-map Isp
class Platinum
bandwidth percent 40
class Gold
bandwidth percent 30
class Silver
bandwidth percent 20

interface FastEthernet0/0
bandwidth 256
service-policy output Isp

3.2.3.6. LLQ.

Low Latency Queuing (LLQ) – очередность с низкой задержкой. LLQ можно рассматривать как механизм CBWFQ с приоритетной очередью PQ (LLQ = PQ + CBWFQ).
PQ в LLQ позволяет обеспечить обслуживание чувствительного к задержке трафика. LLQ рекомендуется в случае наличия голосового (VoIP) трафика. Кроме того, он хорошо работает с видеоконференциями.

Алгоритм настройки.

1. Распределение пакетов по классам - Class-map
access-list 101 permit ip any any precedence critical

class-map match-all Voice
match ip precedence 6
class-map match-all Class1
match access-group 101

2. Описание правил для каждого класса - Policy-map

Аналогично CBWFQ, только для приоритетного класса (он один) указывается параметр priority.
policy-map Policy1
class Voice
priority 1000
class Class1
bandwidth 100
queue-limit 20
class class-default
bandwidth 50
random-detect

3. Запуск заданной политики на интерфейсе - Service-policy
interface FastEthernet0/0
bandwidth 256
service-policy output Policy1

Пример 1.
Относим класс Voice к PQ, а все остальное к CQWFQ.
!
class-map match-any Voice
match ip precedence 5
!
policy-map Voice
class Voice
priority 1000
class VPN
bandwidth percent 50
class class-default
fair-queue 16
!
interface X
Sevice-policy output Voice
!

Пример 2.
Дополнительно ограничиваем общую скорость для PQ в LLQ, чтобы он не монополизировал весь канал в случае неправильной работы.
!
class-map match-any Voice
match ip precedence 5
!
policy-map Voice
class Voice
priority 1000
police 1024000 32000 32000 conform-action transmit exceed-action drop
class Vpn
bandwidth percent 50
class class-default
fair-queue 16
!
interface FastEthernet0/0
service-policy output Voice
!

Существует такая служба как 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. Что это за компонент, также подробно опишем далее. Начнем мы с определения, а далее коснемся тонкостей настроек и различных подходов к применению правил для обработки трафика.

Определение

Quality of Service (QoS) - это технология предоставления определенным классам трафика заданных приоритетов при обслуживании. Такой подход имеет смысл лишь при возникновении очереди. Последняя образуется в особо «узких» местах. И часто называют ее «бутылочным горлышком». Типичным примером очереди можно считать Интернет в офисе, где компьютеры подключены к сети со скоростью около 100 Мбит/сек. При этом все они используют единый канал. Однако технологию QoS нельзя считать панацеей. Если «горлышко» слишком узкое, часто переполняется буфер интерфейса. Именно в него помещаются пакеты данных.

Параметры

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

Принцип работы

Когда осуществляется настройка QoS, важно учесть, что по умолчанию в нашем распоряжении не вся полоса, а лишь 75 %. Пакеты, не попавшие в состав других классов, поступают в class-default. Маршрутизаторы следят, чтобы администратор не выдал больше полосы, чем имеет в распоряжении. Подобные попытки пресекаются. Создаётся впечатление, будто политика намерена выдавать классам не более заданного показателя. Однако подобная ситуация создается лишь в том случае, если наполнены все очереди. В случае опустения какой-либо, предназначенную ей полосу пропорционально делят наполненные «соседи». Если данные идут из класса, имеющего статус priority, маршрутизатор сосредотачивается именно на передаче подобных пакетов. Причем приоритетных очередей бывает несколько. В таком случае полоса между ними делится пропорционально заданным процентам. Когда приоритетные пакеты заканчиваются, наступает очередь для CBWFQ.

За каждый временной отсчёт из всех очередей «зачерпывается» доля данных. Ее необходимо указать в настройке соответствующего класса. Если часть очередей по определенным причинам пустует, их полоса пропорционально делится. Теперь разберем, что делать, когда необходимо строго рубить данные из класса, которые выходят за указанную скорость. Важно помнить, что указание bandwidth только распределяет полосу, когда очереди полностью загружены. Вы можете указать необходимую среднюю скорость и максимальный «выброс». Чем больше последний показатель, тем быстрее передача может отклоняться в сторону. Мы коротко описали, на каких принципах основывается настройка QoS.

Нет ни одного человека, который бы хоть раз не прочитал какой-нибудь 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% полосы пропускания, что ж, я могу посоветовать и дальше использовать побольше всевозможных "твикалок" и кривых сетевых драйверов. Еще и не столько будет "отжираться".

Все, миф о QoS, умри!