logo search
Технологии корпоративных сетей

Приоритетные очереди в маршрутизаторах

Большинство современных маршрутизаторов имеют встроенные функции ор­ганизации приоритетных очередей, которые позволяют обслуживать в первую очередь определенные виды трафика. Например, администратор может указать, что трафик к определенной группе адресов для некоторых приложений должен иметь более высокий приоритет, чтобы уменьшить задержку. Это особенно важно в больших распределенных сетях. На рис. 3.2 приведен пример распреде­ления данных от различных протоколов по уровням приоритетов при поступле­нии их в очередь маршрутизатора.

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

На данный метод не существует единого стандарта. Отдельные его части опи­саны в разных стандартах. Каждый производитель сетевого оборудования реали­зует в своих изделиях собственные алгоритмы обработки очередей. Например, компания Cisco Systems использует алгоритм взвешенной справедливой очереди с ранним обнаружением ошибок, а компания Bay Networks — очередь, основан­ную на классах.

Если маршрутизатор получает пакеты быстрее, чем он может отправить их через данный порт, он помещает пакеты в очередь. Затем, в простейшем случае, они отправляются в порядке поступления, то есть реализуется принцип «первым пришел, первым ушел» — FIFO (First In, First Out). Такой алгоритм довольно эффективен, но опыт управления сетями показывает, что он далеко не опти­мален.

Случайное раннее обнаружение (Random Early Detection, RED) представляет собой альтернативу очередям FIFO. Этот метод позволяет смягчить эффект от потери пакетов даже при очень больших нагрузках. Такая очередь по-прежнему использует принцип FIFO, но пакеты отбрасываются случайным образом (вмес­то того, чтобы отбрасывать сообщения из конца очереди), когда средняя длина очереди за данный промежуток времени превосходит установленное значение. Этим достигается оптимизация заполнения очереди. Данный алгоритм был из­начально придуман для протокола TCP, но он может быть применим к трафику любого протокола, когда сеть не гарантирует доставки.

Очередь с приоритетами — это алгоритм, при котором несколько очередей FIFO или RFD образуют одну очередь. Трафик распределяется между этими очередями в соответствии с заданными критериями. При этом трафик отправля­ется в порядке строгой очередности: первым — трафик с высоким приоритетом, вторым — со средним и т. д.

Очереди на основе классов (Class-Based Queuing, CBQ) — это алгоритм, при котором трафик делится на несколько классов. Каждый класс имеет собствен­ную очередь и ему выделяется некоторая часть пропускной способности канала.

Взвешенная справедливая очередь (Weighted Fair Queuing, WFQ) — частный случай CBQ, когда классам соответствуют независимые потоки. Каждому классу соответствует одна очередь FIFO и ей отводится некоторая часть пропускной способности канала. При этом происходит перераспределение пропускной спо­собности между потоками. Выделение дополнительной пропускной способности для больших чотоков позволяет уменьшить задержку при их обработке.

Интерфейсом к очередям передачи пакетов служит протокол резервирования ресурсов (Resource Reservation Protocol — RSVP). Этот протокол позволяет системам запрашивать сервисы у сети, например, гарантированную пропускную спо­собность, максимальный уровень потерь пакетов или предсказуемую задержку.

По мнению администраторов, которые внедрили у себя магистрали на базе маршрутизаторов, обычно этот метод справляется с перегрузками и помогает избежать появления сбоев в сети. Метод уже доказал свою пригодность при «расшивке» узких мест сети. Однако вызывает сомнение применимость этого метода в больших сетях, обслуживающих разнообразные данные. Организациям, планирующим внедрять у себя такие сети, следует рассмотреть и другие техно­логии обеспечения качества обслуживания.