Поддержка качества предоставления услуг на уровне отдельных сетевых элементов базируется на использовании алгоритмов обработки очередей протокольных блоков данных (как правило, пакетов IP). Механизмы реализации таких алгоритмов используются в любом сетевом устройстве, функционирующем по принципу коммутации пакетов, - в маршрутизирующем устройстве, в коммутаторе локальной или глобальной сети, в оборудовании конечного узла и т.п. Исключение составляют только повторители, которые, по определению, форматы пакетов не различают, а работают на уровне потоков бит.
Функции обработки пакетов в очередях являются необходимыми в любой пакетной сети, поскольку в любой такой сети время от времени возникают временные перегрузки сетевых устройств, когда они вследствие ограниченности их пропускной способности не в силах продвигать через себя пакеты в том темпе, в котором они поступают в их вводные порты. Если причиной перегрузки является процессорный блок сетевого устройства (который не успевает обрабатывать входящие пакеты), то для временной сохранности необработанных пакетов используется входная очередь, т.е. очередь, связанная с вводным интерфейсом сетевого устройства. В том случае, когда причина перегрузки заключается в ограниченности параметра скорости выводного интерфейса (эта скорость всегда ограничена теоретически максимальной скоростью его функционирования, поддерживаемой реализованным в устройстве протоколом), то пакеты временно сохраняются в выводной очереди.
Главным фактором по степени влияния на процесс возникновения очередей является коэффициент загрузки устройства (utilization), определяемый как отношение средней суммарной интенсивности входящего трафика этого устройства к средней суммарной интенсивности выходящего из него трафика, измеряемое на выбранном временном интервале усреднения.
Рассмотрим сетевое устройство с одним вводным и одним выводным портом. Если на интервале усреднения интенсивность входягцего трафика будет выше, чем интенсивность продвижения пакетов через устройство на выводной интерфейс, то коэффициент загрузки устройства окажется больше единицы. В этом случае на вводном интерфейсе устройства (точнее, в буферной памяти вводного порта этого устройства) возникнет очередь, и ее длина при достаточно длительном сохранении таких условиях стремилась бы к бесконечности, если бы не работали механизмы обработки возникающих очередей.
Если возникнут условия, при которых коэффициент загрузки устройства окажется меньше единицы, а на вводной его порт поступает равномерный поток пакетов, то в такой ситуации очереди пакетов вообще не образуются. Но если в пределах интервалов усреднения существует определенная вариация в скорости поступления пакетов в устройство (например, когда поток входящих в устройство пакетов носит пульсирующий характер), то при таких условиях могут возникать очереди даже при значениях коэффициента загрузки меньше, чем единица. Более того, эти очереди могут иметь довольно значительную среднюю длину. Чем больший размах вариации скорости поступления пакетов, тем большая средняя длина очереди будет иметь место. Поэтому вариации в скоростях поступления пакетов в устройство являются важным, наряду с величиной коэффициента загрузки, фактором, влияющим на поведение очередей.
Пульсирующий характер многих типов трафика, когда коэффициент пульсаций на определенных промежутках времени равняется 100:1 и больше, обусловливает возникновение существенных по размерам очередей. Практика эксплуатации сетей показывает, что даже при значениях коэффициента загрузки сегмента сети на уровне 0,5 (например, в локальных сетях ЕЙгегпеЬ) задержки в доступе к ресурсам сети могут достигать неприемлемых для приложений пользователей величин, что заставляет загружать сегменты подобного рода сетей с коэффициентом нагрузки не более 0,3.
Негативным следствием явления возникновения очередей является ухудшение качества обслуживания трафика. На практике в процессе транспортировки пакетов часто возникают их задержки, которые из-за вариаций задержек имеют, вдобавок, непостоянный характер. Во время продолжительных пульсаций потока пакетов очереди могут возрастать настолько, что пакеты не вмещаются в буферную память сетевых устройств и теряются.
Чтобы уменьшить (а в идеале, нейтрализовать) отрицательное влияние приведенных выше факторов на качество предоставления услуг, служба поддержки качества использует такие методы:
1) предварительное резервирование части пропускной способности сетевого оборудования для потоков с известными (и оговоренными в SLA) значениями параметров QoS (например, с известными значениями средней интенсивности потока и его пульсации);
2) принудительное профилирование входящего трафика таким образом, чтобы облегчить условия поддержки коэффициента загрузки устройства на желаемом уровне;
3) использование сложных алгоритмов управления очередями, учитывающих тонкую структуру характеристик реального трафика.
Чаще всего в маршрутизирующих устройствах и коммутаторах применяются следующие алгоритмы обработки очередей:
♦ традиционный алгоритм FIFO;
♦ приоритетное обслуживание (Priority Queuing);
♦ взвешенное обслуживание (Weighted Queuing, WQ);
♦ взвешенное справедливое обслуживание (Weighted Fair Queuing, WFQ).
Каждый из вышеназванных алгоритмов имеет свою область использования. Возможно и комбинированное применение этих алгоритмов.
⇐Протоколы сигнализации службы поддержки качества | Сети передачи пакетных данных | Традиционный алгоритм fifo⇒