QoS: качество обслуживания. Вычислительные сети и коммуникации

Содержание

Слайд 2

QoS: Quality of Service Полоса пропускания (bandwidth) Уровень потерь пакетов (packet

QoS: Quality of Service

Полоса пропускания (bandwidth)
Уровень потерь пакетов (packet loss)
Задержка (delay)
Вариация

задержки (jitter)
Изменение порядка следования пакетов (reordering)
Разные виды трафика имеют различные приоритеты метрик
Совокупность метрик для класса трафика – Class of Service(CoS)

Метрики качества обслуживания

Слайд 3

Задачи, которые QoS может решать Ограничение полосы, занимаемой отдельными типами трафика

Задачи, которые QoS может решать

Ограничение полосы, занимаемой отдельными типами трафика

Гарантирование полосы для определенных типов трафика
Обеспечение приоритетов одних типов трафика над другими
Равномерное распределение имеющихся ресурсов в пределах одного типа трафика
Сглаживание резких колебаний загрузки каналов
Предотвращение глобальной синхронизации потоков TCP
Оптимальное использование имеющейся полосы пропускания каналов

Задачи, которые QoS решать не может

Обеспечение нормальной работы постоянно перегруженного канала связи
Ограничение входящего трафика
Защита от DDoS
Сделать хорошо

Слайд 4

Три составные части и три источника QoS В порядке их применения

Три составные части и три источника QoS

В порядке их применения к

входящему трафику:
Классификация и маркировка трафика
Управление очередями (queue management)
Управление полосой пропускания
Особенности внедрения QoS в глобальном и локальном масштабе
Слайд 5

Базовые характеристики программного кода Локальность по коду Локальность по данным Обработка

Базовые характеристики программного кода

Локальность по коду
Локальность по данным
Обработка данных занимает время,

сравнимое с их доставкой

Особенности потребления контента пользователем

Быстрый процесс доставки данных
Пользователь осмысляет увиденное/создает новые данные
Быстрый процесс доставки результата

Слайд 6

Типичный паттерн трафика конечного пользователя (А)типичный паттерн трафика провайдера

Типичный паттерн трафика конечного пользователя

(А)типичный паттерн трафика провайдера

Слайд 7

Типичный паттерн трафика точки обмена (MSK-IX)

Типичный паттерн трафика точки обмена (MSK-IX)

Слайд 8

Печальные эффекты COVID-19

Печальные эффекты COVID-19

Слайд 9

Сферическое ограничение трафика в вакууме при 0K после распада фотонов Какой

Сферическое ограничение трафика в вакууме при 0K после распада фотонов

Какой размер

очереди оптимален?
Что делать, когда очередь переполнится?
Какие последствия эти решения будут иметь?

Кажущиеся простыми очень непростые вопросы

Физическое ограничение скорости передачи, очередь типа FIFO

10GBASE-T

1000BASE-T

Слайд 10

Сферическое ограничение трафика в вакууме при 0K Алгоритм дырявого ведра (Leaky

Сферическое ограничение трафика в вакууме при 0K

Алгоритм дырявого ведра (Leaky Bucket)

Скорость

входящего трафика любая
Исходящая скорость ≤ заданной (CIR)
Избыточный трафик задерживается
После переполнения очереди избыточный трафик отбрасывается
Нельзя превысить заданную скорость
Растет задержка
Актуальность трафика под вопросом
Просто реализовать и использовать

CIR – Committed Information Rate (bps)

Слайд 11

Сферическое ограничение трафика в вакууме Алгоритм ведра с жетонами (Token Bucket)

Сферическое ограничение трафика в вакууме

Алгоритм ведра с жетонами (Token Bucket)

Входящий трафик

Исходящий

трафик

Жетоны со скоростью CIR bps

Жетоны в объеме пропущеного
трафика в битах

Размер ведра:
Committed burst size (в байтах)

Слайд 12

Сферическое ограничение трафика в вакууме Алгоритм ведра с жетонами (Token Bucket)

Сферическое ограничение трафика в вакууме

Алгоритм ведра с жетонами (Token Bucket)

Гарантированная скорость

равна CIR
Допускается превышение гарантированной скорости, но не более, чем для передачи CBS байт за раз
При отсутствии жетонов в ведре пакет отбрасывается
Отсутствует задержка пакетов
Неправильный выбор величины CBS очень сильно влияет на производительность
Реализуется несколько сложнее, чем Leaky bucket
Слайд 13

Сферическое ограничение трафика при н.у. Алгоритм ведра с жетонами (Token Bucket)

Сферическое ограничение трафика при н.у.

Алгоритм ведра с жетонами (Token Bucket) в

варианте srTCM

Входящий трафик

Исходящий трафик

Жетоны со скоростью CIR bps

Жетоны в объеме пропущеного
трафика в битах

Лишние жетоны

Размер ведра:
Excessive Burst Size EBS

Слайд 14

Сферическое ограничение трафика при н.у. Алгоритм ведра с жетонами (Token Bucket)

Сферическое ограничение трафика при н.у.

Алгоритм ведра с жетонами (Token Bucket) в

варианте srTCM

srTCM – Single rate Three Color Mode
Гарантированная скорость равна CIR
Допускается превышение гарантированной скорости, но не более, чем для передачи CBS байт за раз
Допускается превышение гарантированной скорости без гарантии доставки не более, чем на EBS байт за раз
Пакеты, размер которых не соответствует числу жетонов в одном из ведер отбрасываются
Жетоны из ведер не суммируются
Большая гибкость при управлении в пиковых ситуациях

Слайд 15

Сферическое ограничение трафика у земли Алгоритм ведра с жетонами (Token Bucket)

Сферическое ограничение трафика у земли

Алгоритм ведра с жетонами (Token Bucket) в

варианте trTCM

Входящий трафик

Исходящий трафик

Жетоны @ CIR bps

Жетоны @ PIR bps
Peak Information Rate

Слайд 16

Сферическое ограничение трафика у земли Алгоритм ведра с жетонами (Token Bucket)

Сферическое ограничение трафика у земли

Алгоритм ведра с жетонами (Token Bucket) в

варианте trTCM

trTCM – Two rate Three Color Mode
Гарантированная скорость равна CIR
Допускается превышение гарантированной скорости, но не более, чем для передачи CBS байт за раз
Допускается превышение гарантированной скорости без гарантии доставки вплоть до скорости PIR (+EBS size)
Пакеты, размер которых не соответствует числу жетонов в одном из ведер отбрасываются
Жетоны из ведер не суммируются
Лучшая утилизация ресурсов сети при наличии гарантий полосы

Слайд 17

Сферическое ограничение трафика Traffic Shaping vs Traffic Policing

Сферическое ограничение трафика

Traffic Shaping vs Traffic Policing

Слайд 18

Сферическое ограничение трафика у земли в условиях самоизоляции В реальных условиях

Сферическое ограничение трафика у земли в условиях самоизоляции

В реальных условиях потоков

трафика больше одного
Требования разных потоков могут отличаться кардинально
В реальных условиях исходящей полосы может не хватать
Объем трафика и размер пакетов у разных потоков различны
Пакет нельзя передать частями (но если очень хочется, то можно)
Влияние алгоритмов управления полосой на TCP
Shaping vs Policing – выбор не всегда очевиден
Необходимо научиться скрещивать управление трафиком с управлением потоками
Управление очередями как решение
Слайд 19

Простое FIFO – First In First Out

Простое FIFO – First In First Out

Слайд 20

Простое FIFO – First In First Out Большие пакеты получают необоснованные

Простое FIFO – First In First Out

Большие пакеты получают необоснованные привилегии
Трафик

задерживается в очереди на одинаковую величину
В случае нехватки ресурсов возникает риск синхронизации TCP
Tail Drop неоднозначное решение
Один подход для всех типов трафика
Прост в реализации и наиболее распространен
Считать FIFO механизмом QoS довольно наивно
Слайд 21

Шаг вперед – Priority Queuing (PQ)

Шаг вперед – Priority Queuing (PQ)

Слайд 22

Шаг вперед – Priority Queuing (PQ) Возможность монополизации канала приоритетным трафиком

Шаг вперед – Priority Queuing (PQ)

Возможность монополизации канала приоритетным трафиком
Потоки мелких

пакетов высокой интенсивности имеют приоритет
Большая вариация задержки у классов с меньшим приоритетом
Простота реализации сравнима с FIFO
Является полноценным механизмом управления потоками
Отсутствие гибкости
Слайд 23

Следующий шаг вперед – Fair Queuing (FQ)

Следующий шаг вперед – Fair Queuing (FQ)

Слайд 24

Следующий шаг вперед – Fair Queuing (FQ) Так ли честен честный

Следующий шаг вперед – Fair Queuing (FQ)

Так ли честен честный алгоритм?
Все

потоки рассматриваются, как равноправные
Перерасход ресурсов на управление очередями
Для byte-fair варианта требуется система расчета времени
Сложность реализации, особенно в byte-fair сценарии
Самый простой из хорошо работающих алгоритмов
Монополизация канала практически невозможна
Синхронизация в TCP не возникает
Слайд 25

Weighted Fair Queuing (WFQ)

Weighted Fair Queuing (WFQ)

Слайд 26

Wighted Fair Queuing (FQ) Вес очереди пропорционален приоритету и размеру Мелкие

Wighted Fair Queuing (FQ)

Вес очереди пропорционален приоритету и размеру
Мелкие пакеты имеют

приоритет над большими
Перерасход ресурсов на управление очередями
Сложность реализации
Самый адаптивный из хорошо работающих алгоритмов
Монополизация канала практически невозможна
Синхронизация в TCP не возникает
Слайд 27

Class-Based Weighted Fair Queuing (CBWFQ) + Low Latency Queue

Class-Based Weighted Fair Queuing (CBWFQ) + Low Latency Queue

Слайд 28

Class-Based Weighted Fair Queuing (CBWFQ) + Low Latency Queue Отдельная очередь

Class-Based Weighted Fair Queuing (CBWFQ) + Low Latency Queue

Отдельная очередь для

потоков, требовательных к задержке
Все достоинства WFQ
Количество очередей уменьшилось на два порядка
Простота реализации по сравнению с flow-based WFQ
Самый управляемый вариант из хорошо работающих
Слайд 29

Классификация и маркировка IP Type of Service (Integrated Services, IntServ)

Классификация и маркировка

IP Type of Service (Integrated Services, IntServ)

Слайд 30

Классификация и маркировка IP DSCP (Differentiated Services, DiffServ)

Классификация и маркировка

IP DSCP (Differentiated Services, DiffServ)

Слайд 31

Классификация и маркировка Назначение приоритетов вручную на основе правил Назначение приоритетов

Классификация и маркировка

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

Network-Based Application Recognition
Автоматический QoS (Auto QoS)

Механизмы классификации