Документация: ПО Факел — разрабатываемая версия
Политика Priority Queue¶
Обзор¶
Политика Priority Queue распределяет исходящий трафик по очередям с приоритетами. Пакеты из очереди с более высоким приоритетом передаются первыми; очереди с более низким приоритетом обслуживаются, когда в более приоритетных очередях нет пакетов. Политика не ограничивает скорость и действует, только если исходящий интерфейс перегружен.
Приоритет класса задается его идентификатором (от 1 до 32768): чем меньше идентификатор, тем выше приоритет. Для политики обязательно задается трафик по умолчанию (default): к нему относится трафик, не подошедший ни под один класс. Внутри класса работает очередь, дисциплина которой выбирается параметром queue-type (по умолчанию — FQ-CoDel).
Политика реализована планировщиком с приоритетами (PRIO) плоскости передачи данных FVE и применяется только к исходящему трафику (egress).
Важно
В текущей версии ПО Факел не применяется параметр codel-quantum (см. Ограничения); передача параметра queue-limit в FVE не подтверждена. Группы правил match-group применяются, но условия max-length, tcp, ether, mark и vif в них не учитываются.
Состояние примененных политик отображает команда show qos; команды show qos shaper и show qos cake interface <interface> читают дисциплины очередей ядра Linux и не отображают политики FVE (см. Ограничения).
Пример настройки¶
Голосовой трафик передается первым, затем трафик SSH, затем остальной трафик.
Шаг |
Команда |
Описание |
|---|---|---|
1 |
set qos policy priority-queue |
Относит трафик с меткой |
2 |
set qos policy priority-queue |
Относит трафик на порт 22 к классу |
3 |
set qos policy priority-queue |
Создает для остального трафика очередь FQ-CoDel |
4 |
set qos interface |
Применяет политику к исходящему трафику интерфейса |
Список команд¶
Режим «Конфигурирование»¶
qos policy priority-queue <policy-name>¶
Синтаксис:
set qos policy priority-queue
<policy-name>delete qos policy priority-queue
<policy-name>show qos policy priority-queue
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> description <description>¶
Синтаксис:
set qos policy priority-queue
<policy-name>description<description>delete qos policy priority-queue
<policy-name>description<description>show qos policy priority-queue
<policy-name>description
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<description>— описание. Формат: строка.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> class <class-id>¶
Синтаксис:
set qos policy priority-queue
<policy-name>class<class-id>delete qos policy priority-queue
<policy-name>class<class-id>show qos policy priority-queue
<policy-name>class
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<class-id>— идентификатор класса. Формат: целое число. Диапазон значений: от 1 до 32768.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> class <class-id> description <description>¶
Синтаксис:
set qos policy priority-queue
<policy-name>class<class-id>description<description>delete qos policy priority-queue
<policy-name>class<class-id>description<description>show qos policy priority-queue
<policy-name>class<class-id>description
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<class-id>— идентификатор класса. Формат: целое число. Диапазон значений: от 1 до 32768;<description>— описание. Формат: строка.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> class <class-id> queue-type <queue-type>¶
Синтаксис:
set qos policy priority-queue
<policy-name>class<class-id>queue-type<queue-type>delete qos policy priority-queue
<policy-name>class<class-id>queue-type<queue-type>show qos policy priority-queue
<policy-name>class<class-id>queue-type
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<class-id>— идентификатор класса. Формат: целое число. Диапазон значений: от 1 до 32768;<queue-type>— дисциплина очереди. Возможные значения:fq-codel— справедливая очередь с алгоритмом CoDel;priority— очереди с приоритетами;drop-tailиfair-queue— принимаются, но очередь не создается;random-detect— приводит к ошибке при фиксации конфигурации (см. Ограничения). Значение по умолчанию: fq-codel.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> class <class-id> flows <flows>¶
fq-codel (значение по умолчанию).Синтаксис:
set qos policy priority-queue
<policy-name>class<class-id>flows<flows>delete qos policy priority-queue
<policy-name>class<class-id>flows<flows>show qos policy priority-queue
<policy-name>class<class-id>flows
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<class-id>— идентификатор класса. Формат: целое число. Диапазон значений: от 1 до 32768;<flows>— количество потоков. Формат: целое число. Диапазон значений: от 1 до 65536. Значение по умолчанию: 1024.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> class <class-id> interval <interval>¶
fq-codel (значение по умолчанию).Синтаксис:
set qos policy priority-queue
<policy-name>class<class-id>interval<interval>delete qos policy priority-queue
<policy-name>class<class-id>interval<interval>show qos policy priority-queue
<policy-name>class<class-id>interval
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<class-id>— идентификатор класса. Формат: целое число. Диапазон значений: от 1 до 32768;<interval>— интервал в миллисекундах. Формат: целое число. Значение по умолчанию: 100.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> class <class-id> target <target>¶
fq-codel (значение по умолчанию).Синтаксис:
set qos policy priority-queue
<policy-name>class<class-id>target<target>delete qos policy priority-queue
<policy-name>class<class-id>target<target>show qos policy priority-queue
<policy-name>class<class-id>target
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<class-id>— идентификатор класса. Формат: целое число. Диапазон значений: от 1 до 32768;<target>— задержка в миллисекундах. Формат: целое число. Значение по умолчанию: 5.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> class <class-id> codel-quantum <codel-quantum>¶
Синтаксис:
set qos policy priority-queue
<policy-name>class<class-id>codel-quantum<codel-quantum>delete qos policy priority-queue
<policy-name>class<class-id>codel-quantum<codel-quantum>show qos policy priority-queue
<policy-name>class<class-id>codel-quantum
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<class-id>— идентификатор класса. Формат: целое число. Диапазон значений: от 1 до 32768;<codel-quantum>— квант в байтах. Формат: целое число. Диапазон значений: от 0 до 1048576. Значение по умолчанию: 1514.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> class <class-id> queue-limit <queue-limit>¶
Синтаксис:
set qos policy priority-queue
<policy-name>class<class-id>queue-limit<queue-limit>delete qos policy priority-queue
<policy-name>class<class-id>queue-limit<queue-limit>show qos policy priority-queue
<policy-name>class<class-id>queue-limit
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<class-id>— идентификатор класса. Формат: целое число. Диапазон значений: от 1 до 32768;<queue-limit>— размер очереди. Формат: целое число. Диапазон значений: от 1 до 4294967295.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> default¶
Синтаксис:
set qos policy priority-queue
<policy-name>defaultdelete qos policy priority-queue
<policy-name>defaultshow qos policy priority-queue
<policy-name>default
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> default queue-type <queue-type>¶
Синтаксис:
set qos policy priority-queue
<policy-name>default queue-type<queue-type>delete qos policy priority-queue
<policy-name>default queue-type<queue-type>show qos policy priority-queue
<policy-name>default queue-type
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<queue-type>— дисциплина очереди. Возможные значения:fq-codel— справедливая очередь с алгоритмом CoDel;priority— очереди с приоритетами;drop-tailиfair-queue— принимаются, но очередь не создается;random-detect— приводит к ошибке при фиксации конфигурации (см. Ограничения). Значение по умолчанию: fq-codel.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> default flows <flows>¶
fq-codel (значение по умолчанию).Синтаксис:
set qos policy priority-queue
<policy-name>default flows<flows>delete qos policy priority-queue
<policy-name>default flows<flows>show qos policy priority-queue
<policy-name>default flows
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<flows>— количество потоков. Формат: целое число. Диапазон значений: от 1 до 65536. Значение по умолчанию: 1024.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> default interval <interval>¶
fq-codel (значение по умолчанию).Синтаксис:
set qos policy priority-queue
<policy-name>default interval<interval>delete qos policy priority-queue
<policy-name>default interval<interval>show qos policy priority-queue
<policy-name>default interval
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<interval>— интервал в миллисекундах. Формат: целое число. Значение по умолчанию: 100.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> default target <target>¶
fq-codel (значение по умолчанию).Синтаксис:
set qos policy priority-queue
<policy-name>default target<target>delete qos policy priority-queue
<policy-name>default target<target>show qos policy priority-queue
<policy-name>default target
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<target>— задержка в миллисекундах. Формат: целое число. Значение по умолчанию: 5.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> default codel-quantum <codel-quantum>¶
Синтаксис:
set qos policy priority-queue
<policy-name>default codel-quantum<codel-quantum>delete qos policy priority-queue
<policy-name>default codel-quantum<codel-quantum>show qos policy priority-queue
<policy-name>default codel-quantum
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<codel-quantum>— квант в байтах. Формат: целое число. Диапазон значений: от 0 до 1048576. Значение по умолчанию: 1514.
Режим: «Конфигурирование».
qos policy priority-queue <policy-name> default queue-limit <queue-limit>¶
Синтаксис:
set qos policy priority-queue
<policy-name>default queue-limit<queue-limit>delete qos policy priority-queue
<policy-name>default queue-limit<queue-limit>show qos policy priority-queue
<policy-name>default queue-limit
Аргументы:
<policy-name>— имя политики. Формат: строка из латинских букв, цифр, символов «-» и «_», начинается с буквы или цифры. Имя должно быть уникальным среди политик всех типов;<queue-limit>— размер очереди. Формат: целое число. Диапазон значений: от 1 до 4294967295.
Режим: «Конфигурирование».