Дисциплина очередей
Контролируемая нагрузка
Гарантированное обслуживание
Это наиболее требовательная служба в архитектуре ISA.
Ключевые характеристики гарантированного обслуживания:
§ Поддерживается гарантированный уровень пропускной способности или гарантированная скорость передачи данных.
§ Определен верхний предел величины задержек пакетов в очередях. Эта величина, сложенная с задержкой распространения, дает суммарную верхнюю границу задержки прохождения данных через сеть.
§ Нет потерь в очередях. То есть ни один пакет не теряется из-за переполнения буфера. Пакеты могут теряться только из-за неисправностей в сети или изменений в маршрутах.
Этот класс обслуживания предназначен для приложений, которым необходима верхняя граница задержки, например для приложений, использующих входной буфер для накапливания и воспроизведения в режиме реального времени поступающих данных, не допускающих потери пакетов.
Ключевые характеристики обслуживания с контролируемой нагрузкой:
§ Обслуживание с контролируемой нагрузкой очень напоминает обслуживание с максимальными усилиями в условиях низкой загруженности сети.
§ Не существует указанного верхнего предела задержек в очередях. Однако гарантируется, что очень большой процент пакетов пройдет без задержек, значительно превышающих минимальную задержку прохождения данных по сети (то есть задержку, складывающуюся из времени распространения сигнала по сети и времени обработки пакетов на маршрутизаторе без потерь времени на ожидание в очередях).
§ Очень большой процент передаваемых пакетов будет успешно доставлен (то есть потери в очередях почти отсутствуют).
В сети, предоставляющей приложениям реального времени гарантии качества обслуживания, существует риск вытеснения из сети трафика, обслуживаемого по остаточному принципу. При обслуживании с контролируемой нагрузкой гарантируется, что сеть зарезервирует достаточно ресурсов для того, чтобы с точки зрения приложения сеть выглядела так, будто в ней не работают приложения реального времени, конкурирующие за ресурсы.
Обслуживание с контролируемой нагрузкой хорошо подходит для адаптивных приложений реального времени. Такие приложения не требуют заранее установленного верхнего ограничения на задержки в сети. Например, приложение воспроизведения видеоданных можно адаптировать, отбросив кадр или слегка задержав выходной поток.
Традиционно маршрутизаторами на каждом выходном порту применяется дисциплина очередей FIFO и поддерживается отдельная очередь. Когда прибывает новый пакет и направляется к выходному порту, он помещается в конец очереди. Пока очередь не опустеет, маршрутизатор передает пакеты из очереди, выбирая из нее самый старый пакет.
Недостатки FIFO.
§ Пакетам, принадлежащим потокам с более высоким приоритетом или потокам, в большей степени чувствительным к задержке, не предоставляется специального обслуживания. Если несколько пакетов из различных потоков готовы к передаче, они посылаются строго в порядке FIFO, то есть в том же порядке, в котором они поступили в очередь.
§ Если несколько меньших по размеру пакетов стоят в очереди позади больших пакетов, тогда результат применения схемы FIFO будет выражаться в большей средней задержке пакета, чем в случае, если бы более короткие пакеты передавались прежде больших пакетов. В целом получается, что потоки из пакетов большего размера получают лучшее обслуживание.
§ Более эгоистичное TCP-соединение может вытеснить более альтруистические TCP-соединения. Если возникает перегрузка и одно из ТСР-соединений по какой-то причине не снизит скорость передачи данных, тогда другим TCP-соединениям придется пойти на большие уступки, чем в случае, если бы все TCP-соединения снизили свои скорости.