УДК 621.372 (075)
Сравнительный анализ алгоритмов обслуживания очередей на качество передачи видеотрафика
Ю.А. Иванов, А.С. Пастухов, А.С. Бургар
Дан сравнительный анализ очередей FIFO/DropTail, Random Early Drop (RED), stochastic Fair Queu-ing (SFQ) и Deficit Round Robin (DRR) с использованием компьютерного моделирования; проведена оценка их характеристик и параметров.
Comparative analysis of FIFO/DropTail, Random Early Drop (RED), stochastic Fair Queuing (SFQ) and Deficit Round Robin (DRR) algorithms using computer simulation is conducted and their QoS parameters features are estimated.
Одной из задач современного этапа развития ин-фокоммуникаций является переход к сетям следующего поколения NGT (Next Generation Networks), позволяющим наиболее эффективно обеспечивать необходимый уровень качества обслуживания (QoS) в IP сетях. Это достигается несколькими способами. Основные из них - увеличение полосы пропускания сети за счет наращивания аппаратных возможностей оборудования, задание приоритетов данных, организация очередей, предотвращение перегрузок и формирование трафика.
Особый интерес представляет изучение различных алгоритмов управления очередью и влияние их на характеристики QoS параметров. В данной статье дается исследование алгоритмов обслуживания:
- First In-First Out(FIFO)/DropTail;
- Random Early Drop (RED);
- Stochastic Fair Queuing (SFQ);
- Deficit Round Robin (DRR).
Построение и описание модели сети. Модельные эксперименты проводились на модели соединения локальной вычислительной сети через канал с ограниченной пропускной способностью (ПС) (рис.1).
Каналы характеризуются пропускной способностью (r) и временем задержки (т). Узлы сервера 51 - 510 объединены в локальную вычислительную сеть, которая подключена к конечному пользователю (клиентскому узлу) R1 через маршрутизатор G1, передавая трафик по каналу с малой ПС (территориальная сеть - WAN).
Каналы связи при моделировании характеризуются следующими параметрами.
1. Пропускная способность каналов связи между серверами и маршрутизатором составляет 10 Мбит/с (дуплекс), а время задержки каждого
канала (1 мс) получается суммированием задержек на передачу, распространение и постановку в очередь.
2. Пропускная способность симплексного канала связи от маршрутизатора к клиенту в прямом направлении изменяется и составляет 5, 10, 15, 20, 25 Мбит/с и 22,8 кбит/с - в обратном направлении с задержкой распространения 20 мс.
В буфере маршрутизатора G 1 организуется очередь сегментов Q, которые отправляются далее к клиенту. Порядок передачи данных определяется алгоритмом обслуживания очередей с необходимым качеством (уровнем QoS). По сути, очереди представляют собой область памяти маршрутизатора конечной длины, в котором группируются пакеты с одинаковыми приоритетами. Сегмент, поступающий на выходной интерфейс, помещается в очередь, если она может вместить этот сегмент, иначе сегмент теряется. Когда пропускной способности сети достаточно для передаваемого трафика, то алгоритмы обслуживания очередей должны исключать “сброс” пакетов при случайных всплесках трафика. В этих случаях наиболее эффективно применение алгоритма FIFO (First In - First Out) с очередью, играющей роль буфера. Алгоритм FIFO является самым быстрым из всех алгоритмов обслуживания очередей с одинаковым приоритетом.
Одним из возможных подходов при решении проблемы перегрузки является алгоритм RED (Random Early Detection), позволяющий маршрутизатору отбрасывать пакеты, даже когда в очереди еще имеется место. Главной целью алгоритма RED является исключение ситуации, когда несколько потоков перегружаются почти одновременно и затем синхронно начинают процедуру восстановления. Он позволяет организовать очереди таким образом, что их размер отслеживает осцилляции величины RTT. Алгоритм RED пытается увеличить число коротких перегрузок и избежать долгих перегрузок. Его задача состоит в том, чтобы сообщить отправителю о возможности перегрузки, и отправитель должен адаптироваться к этой ситуации.
Стратегия справедливых (взвешенных) очередей SFQ (Stochastic Fairness Queuing) используется по умолчанию для интерфейсов низкого быстродействия. SFQ делит трафик на несколько потоков, используя в качестве параметров (для IP-протокола): IP-адреса и порты получателя и отправителя, а также поле IP-заголовка. Очереди обслуживаются в соответствии с карусельным принципом (round-robin). Более высокий приоритет имеют потоки с меньшей полосой.
Алгоритм DRR (Deficit Round Robin) - «Круговое обслуживание с дефицитом») является модификацией алгоритма RR для пакетов переменной длины. В DRR добавлена функция накопления времени обслуживания. В случаях, когда некоторой очереди выделено определенное количество времени для обработки находящегося в ней пакета, но пакет слишком длинный и требует большего времени, данный пакет не передается на обслуживание. При обращении планировщика к этой оче-
Таблица. Видеоданные MPEG_________________________
реди в следующий раз, выделяемое время суммируется с неиспользованным временем, что позволяет обслужить этот пакет. Такое решение позволяет обслуживать пакеты любой длины в соответствии с принципом «справедливого распределения ресурсов».
Видеотрафик. Для моделирования работы использовался программный комплекс NS-2 (Network Simulator).
С целью генерации видеотрафика с самоподобными свойствами использовались видеоданные MPEG-4, передающиеся на прикладном уровне. Для передачи по IP-сетям они должны быть преобразованы в IP-пакеты более низких уровней. Все видеоданные имеют следующие свойства:
- 25 кадров в секунду;
- GoP-структура: IPBBPBBPBBIBBP (14 кадров);
- вход кодера: 176*144 пикселей с восьмибитным цветовым разрешением.
Отношение максимальной битовой скорости к средней битовой скорости передачи характеризует импульсивность этих трасс.
Для передачи видео по IP-сетям видеоинформация должна быть упакована в пакеты. Согласно RTP/UDP/IP-рекомендациям пакетирования, каждый кадр видео MPEG можно передать в одном или более пакетах RTP (Real-Time Protocol) и целое множество этих кадров может переноситься в одном пакете RTP. Например, большой кадр разделен на несколько пакетов RTP, и несколько маленьких кадров объединены в одном пакете RTP. Поскольку в трассах MPEG размер каждого кадра обычно больше, чем максимальный размер пакета MTU (Maximum Transmission Unit) для типичных сетей, специфическая сеть может принять, не при-
№ источника MPEG Показатель Херста H Средняя битовая скорость, Мбит/с Максимальная битовая скорость , Мбит/с
1 Fitzek 0,61 0,68 1,99
2 Parkplatz 0,65 0,79 2,77
3 ARDTalk 0,71 0,55 3,11
4 Futurama 0,73 1,03 8,79
5 Star Wars IV 0,78 0,27 1,87
6 Simpsons 0,81 1,31 8,79
7 Alladin 0,83 0,44 3,07
8 Ski 0,86 0,61 3,16
9 Music 0,89 1,03 3,68
10 The Silence of the Lambs 0,91 0,58 4,44
меняя разделение. Таким образом, большие кадры разделяются, соответствуя требованию MTU при получении маршрутизатором. При моделировании использовалось значение MTU, равное 552 байтам, что является средним MTU в реальных сетях.
Когда очень большой кадр отправляется в сеть, сеть разделяет его на множество пакетов из-за MTU-ограничения. Поскольку кадр очень большой - он сразу займет много места в буфере маршрутизатора, сильно загружая его. Это приведет к значительному снижению эксплуатационных показателей сети при моделировании. Кроме того, применяемый для моделирования программный комплекс NS-2 использует буферы пакетов, работающие по нескольким алгоритмам, в которых размеры буфера измеряются в пакетах. Это ограничение создает проблему равнодоступности размера буфера. Например, очень большой пакет может занять одно место в буфере, тогда как много очень маленьких пакетов займут много места в буфере.
В результате большие кадры MPEG при моделировании должны быть предварительно упакованы перед передачей по сети.
Каждый кадр в MPEG-трассе упаковывается в целое число пакетов. Размер каждого 552 байта (размер MTU). Например, если кадр равен 1800 байтам (1800=552*3,26) или 2100 байтам (2100=552*3,80), создаются три и четыре пакета соответственно. Хотя такое округление в большую сторону и усечение вызывают ненужное дополнение и удаление байтов, они отрицательно не влияют на результат моделирования.
Если в моделировании используются переменные размеры пакетов, при полном буфере может содержаться различное число байт (даже притом, что число пакетов - то же самое), что влияет на содержание и повторяемость результатов моделирования. Использование постоянного размера пакета не только компенсирует ограничение буфера в NS-2, но также упрощает анализ и сравнение результатов моделирования.
После того, как каждый кадр упакован, передача пакетов, принадлежащих одному кадру, равномерно распределена в первой половине длины кадра (каждая длина кадра - 40 мс, потому что частота кадров - 25 кадров в секунду). Распределение передачи пакетов помогает избежать внезапной перегрузки буфера маршрутизатора из-за проблемы больших MPEG-кадров (рис. 2). Результаты моделирования. Анализ данных, полученных в результате моделирования позволяет
Рис. 2. Метод пакетирования МРЕО: трасса МРЕО до пакетирования (а); трасса МРЕО после пакетирования (б)
наглядно продемонстрировать основные отличия в работе алгоритмов обслуживания. Сбор данных осуществлялся в течении среднего времени передачи МРЕО-видео на протяжении 2000 с.
Анализ зависимостей на рис. 3, а показывает тенденцию к уменьшению, а затем к увеличению и стабилизации скорости передачи при работе всех алгоритмов обслуживания при увеличении пропускной способности объединенного канала. Особенно сильно выражено изменение скорости передачи при работе алгоритма 8Б0, что связано с подстройкой скорости разделенных алгоритмом потоков под пропускную способность общего канала. Наименьшее изменение скорости передачи показывает алгоритм обслуживания БИЯ.
Анализ зависимостей на рис. 3, б, в показывает, что время задержки и ее вариация в буфере маршрутизатора алгоритма БЯЯ сравнительно большая, чем у остальных алгоритмов. Это свидетельствует о большом числе пакетов в очередях данного алгоритма.
Рис. 3. Изменение параметров QoS при увеличении пропускной способности общего канала
• Таким образом, относительно стабильная по скорости передачи работа алгоритма DRR имеет большее время обслуживания за счет суммирования времени обслуживания больших пакетов. При этом наблюдается практически одинаковое количество потерь всех алгоритмов, что свидетельствует о гарантированном качестве обслуживания алгоритмов, осуществляемое средствами управления перегрузками, которые разгружают очереди, сбросив часть пакетов, - тем самым выполняя требование QoS.
ЛИТЕРАТУРА
1. Шелухин О.И., Тенякшев A.B., Осин A.B. Моделирование информационных процессов/ Под ред. О.И. Шелухина. - М.: САЙНС-ПРЕСС, 2004.
2. Chen B. Simulation and analysis of quality of service parameters in IP networks with video traffic/ Simon Fraser University, May 2002.
3. http://www.isi.edu/nsnam/ns/ns-documentation.html
Поступила 03. 03. 2008 г.