Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Next »

Содержание

Введение

Развитие сетей передачи данных влечёт за собой рост объёма передаваемого трафика, что требует модернизации устройств и каналов связи. При обновлении парка сетевого оборудования можно столкнуться с множеством проблем: технических, организационных, финансовых и т.д., поэтому одним из решений является внедрение политики качества обслуживания на существующем парке устройств. Внедрение политики позволит классифицировать сетевой трафик и распределять сетевые ресурсы между классами трафика.

Терминология

  • QoS (Quality of Service - качество обслуживания) - технология, позволяющая выполнить классификацию потока данных и выделить сетевые ресурсы для каждого из классов.
  • Политика QoS - документ, описывающий принципы классификации потоков трафика и требования к ресурсам для каждого из классов.
  • Поток трафика
  • Сервис

Схема распространения пакетов

В пакетных сетях передачи данных трафик распространяется от узла-отправителя к узлу-получателю через каналы связи и промежуточные устройства. В общем случае пакет данных обрабатывается каждым из промежуточных устройств независимо. Рассмотрим пример обработки пакета данных промежуточным сетевым устройством (рис. 1):

  1. Узел 2 формирует пакет данных передаёт его в Среду-2. Пакет данных инкапсулируется в канальный протокол, используемый в Среде-2.
  2. Кадр данных распространяется в Среде-2. Для этого кадр данных преобразовывается в сигнал, соответствующий физическим свойствам среды. Сигналы, используемые в проводных и беспроводных средах будут отличаться, что повлияет на эффекты их распространения и сценарии использования.
  3. Сигнал поступает на входной интерфейс устройства, демоделируется и полученный кадр данных проверяется на целостность: если кадр повреждён, то он отбрасывается.
  4. Принятый кадр проверяется на необходимость перенаправления. Кадр может быть адресован сетевому устройству, в этом случае он передаётся на обработку внутренним процессам. Кадр может быть адресован другому узлу и, в этом случае, возможны два варианта развития событий: кадр должен быть передан далее через выходной интерфейс, либо отброшен (если Среда-2 является общей средой, то все передаваемые сигналу будут приняты всеми устройствами, подключенными к среде).
  5. Если кадр должен быть обработан и передан другому узлу, то кадр поступает в очередь сообщений. Очередь сообщений представляет собой набор буферов, в которые помещаются данные, принятые входящими интерфейсами. Число и объём буферов памяти, в которых хранится очередь сообщений, не стандартизованы и зависит от производителя оборудования. Например, в устройствах семейств InfiLink 2x2 выделено 32 очереди, 17 из которых доступны пользователю для настройки.
  6. Кадр данных проходит через очередь сообщений, в которую он был помещен, и поступает в выходной интерфейс.
  7. Поскольку очереди сообщений являются связующим звеном между наборами входящих и исходящих интерфейсов, то в устройстве должен быть выделен контроллер, который выполняет заполнение очередей входящими данными и выборку из очередей для передачи исходящим интерфейсам. Как правило, эти функции выполняет центральный процессор (ЦП). Как будет показано далее, заполнение и выборка очередей может выполняться неравномерно и зависеть от классификации потоков данных.
  8. Исходящий интерфейс формирует модулированный сигнал и передаёт его в Среду-5. К Среде-5 подключен Узел-5, являющийся получателем исходного пакета данных.
  9. Узел-5 принимает сигнал, демодулирует его и обрабатывает полученный кадр данных.

Следует отметить, что в большинстве современных сетевых устройств интерфейсы являются комбинированными и могут выступать как в роли входящих, так и в роли исходящих.

Рисунок 1 - Схема прохождения трафика через сетевое устройство

Сетевое устройство может быть промежуточным для нескольких пар узлов, каждая из которых может передавать данные нескольких сервисов (рис. 2а). Рассмотрим схему, в которой сетевое устройство является промежуточным для трафика пар узлов Узел-1 - Узел-4, Узел-2 - Узел-5 и Узел-3 - Узел-6, при этом первая пара передаёт данные трёх сервисов, вторая - двух, третья - одного. В общем случае, при отсутствии настроек QoS, данные всех сервисов попадают в общую очередь в порядке поступления их на сетевое устройство и в этом же порядке будут из очереди переданы на выходные интерфейсы.

При настроенном QoS, можно классифицировать каждый из входящих потоков трафика, например по его типу, и сопоставить каждому классу свою очередь (рис. 2б). Каждой из очередей пакетов может быть назначен свой приоритет, который будет учитываться при извлечении пакетов из очередей сообщений, что позволит гарантировать показатели качества. Классификация потоков трафика может быть выполнена не на основании используемых сервисов, а по другим критериям. Например, каждой паре пользователей может быть выделена отдельная очередь сообщений (рис. 2в).

Рисунок 2а - Формирование очереди для различных сервисов без QoS

Рисунок 2б - Формирование очередей различных сервисов с QoS

Рисунок 2в - Формирование очередей различных пользователей с QoS

Следует иметь в виду, что на пути данных от источника до получателя может быть расположено несколько промежуточных сетевых устройств, очереди сообщений на которых независимы друг от друга, т.е. эффективное внедрение политики QoS потребует конфигурации всех сетевых узлов.

Метрики качества

Основываясь на предыдущем разделе, можно сформулировать предпосылки для оценки эффективности передачи данных:

  • Пропускная способность каналов связи и сетевых устройств является конечной.
  • Время доставки данных от источника к получателю является ненулевым.
  • Канал связи представляет из себя среду с набором физических параметров, которые определяют эффекты при распространении сигнала.
  • Программная и аппаратная архитектура сетевого устройства могут оказывать влияние на распространение данных.

Выделяют три основные метрики качества:

  • Потери.
  • Задержка.
  • Джиттер.

Подробно рассмотрим метрики на примере: Узел-2 передаёт три пакета данных Узлу-5, источник и получателя данных соединяет промежуточное сетевое устройство, пакеты передаются в рамках одного сервиса, т.е. их ключевые служебные поля совпадают.

Потери

При передачи потока данных, часть из них могут быть не приняты, либо приняты с ошибками. В этом случае можно говорить о потери данных, которые измеряются как отношение принятых данных к переданным. В примере (рис. 3) Узел-2 передаёт пакеты с идентификаторами 1,2 и 3, однако Узел-5 принимает только пакеты 1 и 3, т.е. пакет с идентификатором 2 потерян. Существуют сетевые механизмы, позволяющие выполнить повторную передачу потерянных данных. Например, к таким механизмам можно отнести протоколы TCP и ARQ.

Причины потерь данных можно выделить в следующие группы:

  • Потери в среде: потери, связанные с распространением сигнала в физической среде. Например, кадр будет считаться потерянным, если уровень полезного сигнала ниже чувствительности приёмника. Также, к примерам можно отнести физическое повреждение интерфейсов подключения к среде или импульсные наводки, возникающие из-за некачественного заземления.
  • Потери в интерфейсе: потери, связанные с обработкой очереди сообщений на входном или выходном интерфейсе. У каждого из интерфейсов существует буфер памяти, который может быть полностью заполнен при интенсивном потоке данных. В этом случае все последующие данные, поступающие в интерфейс, будут отброшены, т.к. не могут быть помещены в буфер.
  • Потери в устройстве: данные, отброшенные в соответствии с логикой конфигурации сетевого устройства. В случае, если очереди сообщений будут переполнены, то входящие данные не смогут быть добавлены в очередь обработки и сетевое устройство их отбросит. Также, к этим потерям можно отнести пакеты данных, отфильтрованные списками доступа и файрволом.

Рисунок 3 - Пример потери пакета данных

Пропускная способность

Одной из основных метрик, используемых на практике, является пропускная способность, величина которой зависит от потерь. Пропускная способность определяется физическими возможностями канала связи и возможностью обработки потока данных промежуточными сетевыми устройствами. Пропускная способность канала связи определяется как максимальный объём данных, который может быть предан от источника к получателю в единицу времени.

Пакетная производительность

Параметром, влияющий на пропускную способность и состояние очередей сообщений является пакетная производительность устройства. Под пакетной производительностью понимается максимальное число пакетов данных заданной длины, которое устройство способно передать в единицу времени.

Пропускная способность, получаемая на практике, зависит как от пакетной производительности, так и от характеристик интерфейса, поэтому на этапе проектирования следует обращать внимание на согласованность этих параметров, чтобы ни одно из них не стало "бутылочным горлышком" канала связи и сетевого сегмента.

Задержка

Под задержкой понимается время распространения пакета данных от источника до получателя. Величина задержки складывается из следующих компонентов:

  • Время распространения сигнала в среде: время распространения сигнала в среде зависит от физических характеристик среды, но, в любом случае, является ненулевым.
  • Время сериализации: преобразование входными/выходными интерфейсами битового потока в сигнал и обратно не является мгновенным и требует аппаратных ресурсов сетевого устройства.
  • Время обработки: время, которое пакет данных находится в промежуточном устройстве. Это время зависит от состояния очередей сообщений, т.к. пакет данных будет обработан только после обработки пакетов, ранее помещённых в эту очередь. Также, влияние на это время оказывает загрузка центрального процессора.

При измерениях задержки часто используется понятие круговой задержки (RTT), т.е. времени распространения пакета данных от источника к получателю и обратно. Такое значение, например, используется при выводе результатов команды ping. Состояние промежуточных сетевых устройств при обработке прямого и обратного пакета данных может отличаться, поэтому в общем случае круговая задержка не равна двум односторонним задержкам.

Рисунок 4 - Пример задержки при передачи данных

Джиттер

Загрузка ЦП и состояние очередей сообщений на промежуточных сетевых устройствах постоянно меняются, поэтому задержка при распространении пакетов данных может изменяться. В примере (рис. 5) время распространения пакетов с идентификаторами 1 и 2 отличаются. Разница между максимальным и средним значениями задержки называется джиттером.

Рисунок 5 - Пример плавающей задержки при передачи данных

В сетевой инфраструктуре с избыточностью каналов связи данные между источником и получателем могут быть переданы различными путями, что, также, приведёт к появлению джиттера. В частном случае, разница между задержками в каналах связи может оказаться настолько большой, что порядок переданных пакетов данных изменится на приёмной стороне (рис. 6). В примере пакеты с идентификаторами были приняты в разном порядке.

Влияние эффекта зависит от характеристик сервиса и возможностей восстановления исходной последовательности протоколами высших уровней сетевого взаимодействия. Например, если трафик различных сервисов будет передан разными путями, то это не повлияет на неупорядоченность принятых данных.

Рисунок 6 - Пример неупорядоченной доставки данных

Требования сервисов к метрикам качества

Каждый из сервисов передачи данных имеет набор требований к показателям качества. Документ RFC 4594 предусматривает следующие виды сервисов:

Имя сервисаОписаниеВеличина
ПотериЗадержкаДжиттер
Нужно подумать над переводом, т.к. это не устойчивые выражения.надо ли?


Трафик служебных протоколов
низкиенизкаяда
Телефония
очень низкиеочень низкаяочень низкий
Сигнализация
низкиенизкаяда
Мультимедийные конференции
средниеочень низкаянизкий
Интерактивный трафик реального времени
низкиеочень низкаянизкий
Мультимедийные трансляции
средниесредняяда
Широковещательное видео
очень низкиесредняянизкий
Данные, требовательные к задержкам
низкиесредняяда
Управление
низкиесредняяда
Данные, требовательные к пропускной способности
низкиевысокаяда
Стандарт
не определено
Низкоприоритетные данные
высокиевысокаяда

Методы обеспечения QoS

Передача трафика различных сервисов реализована на единой сетевой инфраструктуре, которая имеет ограниченные ресурсы, поэтому должны быть должны быть предусмотрены механизмы по распределению ресурсов между сервисами.

Рассмотрим пример (рис. 7), в котором Узел-2 генерирует трафик нескольких сервисов с суммарной скоростью 1 Гбит/с, Среда-2 позволяет передать этот поток данных промежуточному сетевому устройству, однако максимальная пропускная способность канала связи сетевого устройства и Узла-5 равна 500 Мбит/с. Очевидно, что поток данных не может быть обработан полностью и часть этого потока должна быть отфильтрована. Задача QoS сделать эту фильтрацию управляемой, обеспечив конечным сервисам требуемые значения метрик. Разумеется, не получится обеспечить требуемые показатели для всех сервисов, т.к. пропускные способности каналов связи не совпадает, поэтому в рамках реализации политики QoS трафик критичных сервисов должен обрабатываться в первую очередь.

Рисунок 7 - Пример несогласованности объёма входящего трафика и пропускной способности каналов связи

Рассмотренный пример позволяет сформулировать два основных метода, используемых при реализации политики QoS:

  • Приоритизация: распределение данных по очередям сообщений и приоритетная выборка пакетов из очередей. В этом случае сначала обрабатываются пакеты, наиболее чувствительные к задержке и джиттеру, а потом - трафик, для которого значение задержки не критично.
  • Ограничение пропускной способности: ограничение пропускной способности для потоков трафика. Весь трафик, превышающий установленный порог пропускной способности будет отброшен.

Расширим пример, рассмотренный выше, добавив в схему распространения данных второе промежуточное сетевое устройство (рис. 8а). Пусть на Сетевом устройстве-1 настроена приоритизация трафика: данные телефонии, чувствительные к задержкам и джиттеру, помещаются в очередь сообщений 1, а данные почтового сервиса - в последнюю очередь. При отправке данных сетевым устройством сначала будут переданы в выходной интерфейс все пакеты первой очереди сообщений, затем второй и т.д. На Сетевом устройстве-2 не настроена приоритизация трафика и все входящие пакеты помещаются в последнюю очередь сообщений.

Сетевое устройство-1 отправляет в Среду-7 сначала пакеты телефонии, а затем пакеты почтового сервиса. Это поведение соответствует требованиям к метрикам качества: поскольку данные телефонии отправляются в первую очередь, то величина задержки для этого типа трафика будет минимизирован.

На Сетевом устройстве-2 трафик Узла-1 и Узла-2 суммируется с трафиком Узла-3 и, поскольку отсутствует настройка приоритизации, все пакеты помещаются в единую очередь и последовательно отправляются через выходные интерфейсы. Сетевое устройство-2 вносит существенную задержку в распространение пакетов телефонии.

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






Рисунок 8а - Пример распространения данных с частично внедрённой политикой QoS


Рисунок 8б - Пример распространения данных с внедрённой политикой QoS







Дополнительные материалы

Онлайн-курсы


White papers


Вебинары


Скринкасты


Прочее

  1. RFC 4594


План:

2. Методы обеспечения QoS.

    Приоритизация и ограничение пропускной способности.

    Обоснование необходимости внедрения QoS на всём пути прохождения трафика.

3. Механизмы приоритизации трафика

    Использование приоритета из заголовка Ethernet

    Использование приоритета из заголовка IP

    Приоритизация трафика в MINT

        Описание

        Автоматическое распознавание приоритета

        Назначение приоритета вручную

    Приоритизация трафика в XG

    Приоритизация трафика в V5

4. Механизмы ограничения пропускной способности

    Предотвращение и управление перегразками

    Policing и Shaping

    Алгоритм Token Bucket

    Ограничение пропускной способности в R5000

    Ограничение пропускной способности в XG

    Ограничение пропускной способности в V5



+часть устройств WhiteBox, часть - BlackBox

  • No labels