Документация: ПО Факел — разрабатываемая версия

Общие принципы работы QoS

Как работает QoS

В ПО Факел политики QoS применяются в плоскости передачи данных FVE:

  • политики Shaper, Priority Queue, FQ-CoDel и CAKE реализованы планировщиками исходящего трафика и применяются только к исходящему трафику интерфейса (egress);

  • политика Limiter реализована полисером и применяется к входящему (ingress) и исходящему трафику;

  • правила классификации всех политик образуют общий набор классификатора FVE, в котором класс определяется идентификатором.

Порядок настройки: создайте политику (Политики QoS), задайте классы и правила классификации (Классификация трафика), примените политику к интерфейсу (Применение политики). Состояние QoS отображает команда show qos.

Единицы измерения

Скорость (bandwidth, ceiling) задается абсолютным значением: число и единица измерения записываются слитно, например 50mbit. Значения в процентах не поддерживаются.

Единица

Значение

bit

бит в секунду

kbit

килобит в секунду (103)

mbit

мегабит в секунду (106)

gbit

гигабит в секунду (109)

tbit

терабит в секунду (1012)

без единицы

килобит в секунду

Число без единицы измерения означает килобиты в секунду, поэтому всегда указывайте единицу явно.

Размер всплеска (burst) политики Limiter задается числом с суффиксом k — тысячи байт, например 15k. В текущей версии ПО Факел суффикс M также означает тысячи байт.

Классы и трафик по умолчанию

Политики Shaper, Limiter и Priority Queue делят трафик на классы. Класс имеет числовой идентификатор и параметры обработки (полосу пропускания, очередь и т. д.); трафик относится к классу по правилам классификации (Классификация трафика). Трафик, не подошедший ни под один класс, обрабатывается по параметрам default.

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

В классе политики Shaper или Priority Queue и для трафика по умолчанию работает очередь, дисциплина которой выбирается параметром queue-type: FQ-CoDel (fq-codel, по умолчанию) или очередь с приоритетами (priority). Значения drop-tail, fair-queue и random-detect (Политика Drop Tail, Политика Fair Queue, Политика Random Detect) принимаются командной строкой, но в текущей версии ПО Факел для drop-tail и fair-queue очередь не создается, а random-detect приводит к ошибке при фиксации конфигурации (см. Ограничения).

Метки DSCP

Метка DSCP (Differentiated Services Code Point) задается в правилах классификации (ip dscp, ipv6 dscp) и в параметре set-dscp политики Shaper, который заменяет метку в пакетах класса. Метка задается числом от 0 до 63 или именем. Значения имен по RFC 2474, RFC 2597 и RFC 3246:

Имя

Значение DSCP

Назначение

default

0

Обычная доставка (Best Effort)

CS1–CS7

8, 16, 24, 32, 40, 48, 56

Селекторы классов (Class Selector), RFC 2474

AF11, AF12, AF13

10, 12, 14

Гарантированная доставка (Assured Forwarding), класс 1: низкая, средняя, высокая вероятность отбрасывания

AF21, AF22, AF23

18, 20, 22

Assured Forwarding, класс 2

AF31, AF32, AF33

26, 28, 30

Assured Forwarding, класс 3

AF41, AF42, AF43

34, 36, 38

Assured Forwarding, класс 4

EF

46

Ускоренная доставка (Expedited Forwarding), например для голоса

Имена reliability, throughput, lowdelay, priority, immediate, flash, flash-override, critical, internet и network соответствуют устаревшим значениям поля ToS.

Примечание

В текущей версии ПО Факел именованные метки DSCP из таблицы передаются в FVE как значения байта ToS (например, EF — 0xB8), а числовые значения — без преобразования, поэтому результат для имен не подтвержден (см. Ограничения).

Обработка входящего трафика

К входящему трафику интерфейса применяется только политика Limiter без классов: трафик ограничивается скоростью default bandwidth, пакеты сверх нее отбрасываются. Политики с очередями (Shaper, Priority Queue, FQ-CoDel, CAKE) и Limiter с классами на входящем направлении не проходят проверку при фиксации конфигурации (см. Ограничения). Сценарий с перенаправлением входящего трафика на интерфейс IFB описан на странице Обработка входящего трафика.

Ограничения текущей версии перечислены на странице Ограничения.