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

Известно, что одним из основных свойств архитектуры DiffServ является возможность назначения пакетам различных приоритетов. Пакеты классифицируются на базе информации третьего уровня (IP) моделей OSI и TCP/IP по значению поля «тип услуги» (Type of Service, далее - TOS), находящегося в заголовке. В терминах архитектуры DiffServ данное поле носит имя DS. Назначение уровня приоритета осуществляется при поступлении пакета в домен DiffServ пограничным входящим узлом (Ingress node), в результате чего каждый пакет, находящийся в домене DiffServ, имеет свой приоритет и при поступлении в любой маршрутизатор в рамках этого домена должен быть обработан в соответствии со значением поля DS. Текущие спецификации AF РНВ [RFC2597] определяют четыре класса с тремя уровнями приоритета пакета для каждого.

Пакеты, принадлежащие одному классу, перенаправляются независимо от пакетов, принадлежащих другому классу, при этом в маршрутизаторе, находящемся в домене DiffServ, для каждого реализованного класса РНВ AF должны быть распределены ресурсы, однако не требуется, чтобы все классы РНВ AF были реализованы. Таким образом очевидно, что в DiffServ-маршрутизаторах необходимо реализовывать алгоритмы активного управления очередями, которые способны различать поступающие пакеты по их приоритету и, соответственно, приоритету эти пакеты обрабатывать.

Базовый алгоритм RED, описанный выше, не способен обеспечить обработку пакетов в соответствии с их приоритетами, поэтому его необходимо модифицировать путем введения дополнительных наборов параметров для каждого приоритета. В [MakkarOO] была предложена классификация алгоритмов, базирующихся на RED и реализующих поддержку приоритетов пакетов, и было дано общее название для подобных алгоритмов - «многоуровневый RED» (Multilevel red, далее - MRED).

Алгоритмы класса MRED могут быть разбиты [Goyal99 на четыре категории - классификация с примерами представлена на рис. 2.56. Категория SAST (Single Average Single Threshold, «одно среднее значение, один набор значений границ») представлена базовым алгоритмом RED, категория SAMT (Single Average Multiple Threshold, «одно среднее значение, несколько наборов значений границ») - алгоритмом WRED (Weighed RED, взвешенный RED), категория МАМТ (Multiple Average Multiple Threshold, «несколько средних значений, несколько наборов значений границ») - алгоритмом RIO (RED In & Out). Далее в этой главе рассмотрим модификации MRED, позволяющие осуществлять управление очередью, принимая во внимание приоритеты поступающих пакетов.

Классификация алгоритмов MRED

Рис. 2.56. Классификация алгоритмов MRED

Алгоритм ared | Управление трафиком и качество обслужевания в сети | Алгоритм wred