Алгоритм взвешенных очередей (Weighted Queuing) разработан для того, чтобы устранить проблему монополизации ресурсов сетевого оборудования при приоритетном обслуживании со стороны высоко приоритетного трафика с большой интенсивностью потока пакетов. Т.е. создать ситуацию, при которой можно было бы предоставлять всем классам трафика предварительно определенный для них минимум пропускной способности сетевых ресурсов или гарантировать выполнение определенных требований относительно величины задержек пакетов. В соответствии с алгоритмом взвешенных очередей каждому классу трафика приписывается определенный вес, а под весом класса понимается процент пропускной способности, который предоставляется этому классу, по отношению к величине полной пропускной способности вводного интерфейса в устройстве обработки пакетов. Вес классам трафика может назначать администратор сети.
Взвешенное обслуживание также предусматривает необходимость классификации входящего трафика по нескольким классам и создания для каждого класса своей отдельной очереди пакетов. Но согласно данному алгоритму с каждой очередью связывается не её приоритет, а процент пропускной способности вводного интерфейса, предоставление которого гарантируется данному классу трафика в случае возникновения перегрузки на этом интерфейсе.
В примере, приведенном на рисунке 5.3, сетевое устройство поддерживает пять отдельных очередей для каждого из пяти классов трафика. Этим очередям с учётом возможности возникновения перегрузок выделяется соответственно 10%, 10%, 30%, 20% и 30% пропускной способности вводного интерфейса.
При этом используется следующий механизм предоставления необходимого веса образованным очередям. Реализуется процедура последовательного и циклического обслуживания очередей. В каждом цикле обслуживания из каждой очереди на вводной интерфейс направляется такое количество пакетов (в пропорции к количеству пакетов из других очередей), которое соответствует весу данной очереди. Например, если цикл просмотра очередей равняется одной секунде, а скорость вводного интерфейса равняется 100 Мбит/с, то в каждом цикле из первой очереди выбирается 10 Мбит данных, со второй - тоже 10 Мбит, с третьей - 30 Мбит, с четвертой - 20 Мбит, а с пятой - 30 Мбит.
В результате, каждому классу трафика достается гарантированный минимум пропускной способности, что во многих случаях является более желательным результатом, чем неконтролируемое подавление низко приоритетных классов трафика со стороны трафика с высоким приоритетом.
В общем случае, взвешенное обслуживание приводит к более высоким значениям задержек пакетов и их вариаций по сравнению с приоритетным обслуживанием трафика наиболее приоритетного класса. Но для создания более благоприятных условий обслуживания всех классов трафика взвешенное обслуживание часто бывает более приемлемым.
Если при взвешенном обслуживании рассматривать отдельно любой класс трафика, то оказывается, что на уровень задержек и вариации
Рисунок 5.3 - Взвешенное обслуживание очередей в пакетной сети задержек в значительной мере влияет коэффициент загрузки вводного интерфейса трафиком данного класса. В этом случае коэффициент загрузки подсчитывается как отношение средней интенсивности входного трафика данного класса к части пропускной способности вводного интерфейса, которая выделена этому классу (выделение части пропускной способности производится согласно весу класса). Характер «поведения» очереди этого класса и, соответственно, задержек здесь выглядит приблизительно так лее, как и в случае очереди, образованной по алгоритму FIFO - чем меньше коэффициент загрузки, тем меньше средняя длина очереди и тем меньше задержки.
Взвешенное обслуживание предусматривает возможность для администраторов сети назначать очередям разных классов оптимальные и разные размеры буферной памяти. Уменьшение размера буфера для очереди какого-либо класса приводит на практике к росту числа потерь пакетов в этой очереди во время перегрузок, но зато это действие способствует уменьшению времени ожидания в очереди тех пакетов, которые всё же не были отброшены и попали в очередь для дальнейшей обработки.
⇐Приоритетное обслуживание | Сети передачи пакетных данных | Взвешенное справедливое обслуживание⇒