Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

ШагОписаниеКомандаКлючи
1Создать списки доступа для определения трафика, к которому должен быть применен расширенный QoS.
См. Раздел Настройка списков доступа (ACL).
2Создать класс QoS и перейти в режим настройки параметров класса.

esr(config)# class-map <NAME>

<NAME> – имя создаваемого класса, задается строкой до 31 символа.
3Задать описание класса QoS (не обязательно).

esr(config-class-map)# description <description>

<description> – до 255 символов.
4Определить трафик относящийся к конфигурируемому классу по списку контроля доступа (ACL).

esr(config-class-map)# match access-group <NAME>

<NAME> – имя списка контроля доступа, задаётся строкой до 31 символа.
5

Задать значение кода DSCP, которое будет установлено в IP-пакетах, соответствующих конфигурируемому классу

(невозможно назначать одновременно с полями IP Precedence и CoS). (при необходимости перемаркировки)

esr(config-class-map)# set dscp <DSCP>

<DSCP> – значение кода DSCP, принимает значения [0..63].

6

Задать значение кода IP Precedence, которое будет установлено в IP-пакетах, соответствующих конфигурируемому классу (невозможно назначать одновременно с полями DSCP и CoS). (при необходимости перемаркировки)

esr(config-class-map)# set ip-precedence <IPP>

<IPP> – значение кода IP Precedence, принимает значения [0..7].

7

Задать значение 802.1p приоритета, которое будет установлено в пакетах, соответствующих конфигурируемому классу (невозможно назначать одновременно с полями DSCP и IP Precedence). (при необходимости перемаркировки)

esr(config-class-map)# set сos <COS>

<COS> – значение 802.1p приоритета, принимает значения [0..7].

8

Создать политику QoS и осуществить переход в режим настройки параметров политики.

esr(config)# policy-map <NAME>

esr(config-policy-map)#

<NAME> – имя создаваемой политики, задается строкой до 31 символа.

9

Задать описание политики QoS (не обязательно).

esr(config-policy-map)# description <description>

<description> – до 255 символов.

10

Установить гарантированную полосу пропускания исходящего трафика для политики в целом.

esr(config-policy-map)# shape average <BANDWIDTH> average { <BANDWIDTH> | percent <BANDWIDTH_PERCENT> } [BURST]

<BANDWIDTH> – гарантированная полоса трафика в Кбит/с, принимает значение [64..10000000];

<BANDWIDTH_PERCENT> - гарантированная полоса трафика в %, принимает значение [1..100]

<BURST> – размер сдерживающего порога в КБайт, принимает значение [128..16000]. По умолчанию 128 КБайт.

11

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

esr(config-policy-map)# shape auto-distribution


12

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

esr(config-policy-map)# class <NAME>

esr(config-class-policy-map)#

<NAME> – имя привязываемого класса, задается строкой до 31 символа. При указании значения «class-default» в данный класс попадает трафик неклассифицированный на входе.

13

Включить политику QoS в класс QoS для создания иерархического QoS.

esr(config-class-policy-map)# service-policy <NAME>

<NAME> – имя политики, задается строкой до 31 символа. Вкладываемая политика должна быть уже создана.

14

Установить гарантированную полосу пропускания исходящего трафика для класса в рамках политики.(при необходимости).

esr(config-class-policy-map)# shape average <BANDWIDTH> # shape average { <BANDWIDTH> | percent <BANDWIDTH_PERCENT> } [BURST]

<BANDWIDTH> – гарантированная полоса трафика в Кбит/с, принимает значение [64..10000000];

<BANDWIDTH_PERCENT> - гарантированная полоса трафика в %, принимает значение [1..100]

<BURST> – размер сдерживающего порога в КБайт, принимает значение [4..16000]. По умолчанию 128 КБайт.

15

Установить разделяемую полосу пропускания исходящего трафика для определенного класса. Данную полосу класс может занять, если менее приоритетный класс не занял свою гарантированную полосу (при необходимости).

esr(config-class-policy-map)# shape peak <BANDWIDTH> peak { <BANDWIDTH> | percent <BANDWIDTH_PERCENT> }  [BURST]

16

Определить режим работы класса (не обязательно).

esr(config-class-policy-map)# mode <MODE>

<MODE> – режим класса:

  • fifo – режим FIFO (First In, First Out);
  • gred – режим GRED (Generalized RED);
  • red – режим RED (Random Early Detection);
  • sfq – режим SFQ (очередь SFQ распределяет передачу пакетов на базе потоков).

Значение по умолчанию: FIFO.

17

Задать приоритет класса в WRR-процессе (при необходимости).

esr(config-class-policy-map)# priority class <PRIORITY>

<PRIORITY> – приоритет класса в WRR-процессе, принимает значения [1..8].

Классы с наибольшим приоритетом обрабатываются в первую очередь.

18

Перевести класс в режим StrictPriority и задать приоритет класса (при необходимости).

esr(config-class-policy-map)# priority level <PRIORITY>

<PRIORITY> – уровень приоритета в StrictPriority-процессе, принимает значения [1..8].

Классы с наибольшим приоритетом обрабатываются в первую очередь. Значение по умолчанию: класс работает в режиме WRR, приоритет не задан.

19

Определить предельное количество виртуальных очередей (не обязательно).

esr(config-class-policy-map)# fair-queue <QUEUE-LIMIT>

<QUEUE-LIMIT> – предельное количество виртуальных очередей, принимает значения в диапазоне [16..4096].

Значение по умолчанию: 16.

20

Определить предельное количество пакетов для виртуальной очереди (не обязательно).

esr(config-class-policy-map)# queue-limit <QUEUE-LIMIT>

<QUEUE-LIMIT> – предельное количество пакетов в виртуальной очереди, принимает значения в диапазоне [2..4096].

Значение по умолчанию: 127.

21

Определить параметры RED (Random Early Detection) (при необходимости).

esr(config-class-policy-map)# random-detect <LIMIT>
<MAX> <MIN> <PROBABILITY>

<LIMIT> – предельный размер очереди в байтах, принимает значения в диапазоне [1..1000000];

<MAX> – максимальный размер очереди в байтах, принимает значения в диапазоне [1..1000000];

<MIN> – минимальный размер очереди в байтах, принимает значения в диапазоне [1..1000000];

<PROBABILITY> – вероятность отбрасывания пакетов, принимает значения [0..100].

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

  • <MAX>> 2 * <MIN>
  • <LIMIT>> 3 * <MAX>

22

Определить параметры GRED (Generalized Random Early Detection) (при необходимости).

esr(config-class-policy-map)# random-detect precedence
<PRECEDENCE><LIMIT><MAX><MIN><PROBABILITY>

<PRECEDENCE> – значение IPPrecendence [0..7];

<LIMIT> – предельный размер очереди в байтах, принимает значения в диапазоне [1..1000000];

<MAX> – максимальный размер очереди в байтах, принимает значения в диапазоне [1..1000000];

<MIN> – минимальный размер очереди в байтах, принимает значения в диапазоне [1..1000000];

<PROBABILITY> – вероятность отбрасывания пакетов, принимает значения [0..100].

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

  • <MAX>> 2 * <MIN>
  • <LIMIT>> 3 * <MAX>

23

Включить протокол компрессии tcp заголовков для трафика отдельного класса (при необходимости).

esr(config-class-policy-map)# compression header ip tcp


24

Включить сервис QoS на интерфейсе/туннеле/сетевом мосту.

esr(config-if-gi)# qos enable


25

Назначить политику QoS на сконфигурируемом интерфейсе/туннеле/сетевом мосту для классификации входящего (input) или приоритезации исходящего (output) трафика.

esr(config-if-gi)# service-policy { input | output } <NAME>

<NAME> – имя QoS-политики, задаётся строкой до 31 символа.

...

Блок кода
esr(config-policy-map)# class fl1
esr(config-class-policy-map)# shape average 40000
esr(config-class-policy-map)# exit
esr(config-policy-map)# class fl2
esr(config-class-policy-map)# shape average 60000
esr(config-class-policy-map)# exit

Для настройки ограничения полосы пропускания в процентах, необходимо использовать команду shape average percent

Scroll Pagebreak
Для другого трафика настраиваем класс с режимом SFQ:

...