Настройка QoS на коммутаторе для трафика управления
Quality of service (QoS) – технология, позволяющая операторам приоритизировать трафик в сети с целью улучшения качества тех или иных услуг в условиях нагруженности сети. Как известно, в условиях высокой нагрузки часть пакетов может теряться из-за переполнения буфера сетевого оборудования. QoS позволяет пропускать в первую очередь приоритетные данные: трафик управления, VoIP или, например, IPTV.
В данной статье рассматривается пример настройки управляемых коммутаторов для приоритетной передачи трафика управления. Если в сети возникает высокая нагрузка или шторм, доступ к удаленным устройствам может быть потерян. Чтобы этого избежать, применяется политика, позволяющая передавать трафик управления в первую очередь вне зависимости от общей загрузки.
Технологи QoS состоит из нескольких элементов:
маркировка и классификация входящего трафика;
приоритизация трафика, в зависимости от его класса;
планирование и механизм обработки очередей;
политика обработки трафика (Rate Limit, Traffic Shaping),
переназначение классов трафика.
Для ситуации, описанной выше, настройка QoS ограничивается классификацией трафика управления и настройкой планировщика очередей.
Класс или приоритет трафика определяется содержанием определенных полей пакета. Это может быть поле Class of Service (CoS – 3 бита со значением от 0 до 7) в Ethernet пакете или Differentiated Services Code Point (DSCP – 6 бит со значением от 0 до 63) в IP пакете.
При получении пакета, коммутатор может доверять меткам CoS или DSCP, установленным в пакете, или перемаркировывать эти поля. При использовании CoS на access портах коммутатор устанавливает метку CoS одновременно с добавлением VLAN.
При классификации пакета коммутатором, в зависимости от определяющего приоритет поля, значение CoS или DSCP преобразуется в локальный приоритет от 0 до 7, в соответствии с таблицей 1:
Таблица 1. Соответствие значений DSCP и CoS локальному приоритету по-умолчанию.
Локальный приоритет определяет, в какую очередь будет помещен пакет. Обычно коммутаторы поддерживают до 8 очередей. Соответствие по-умолчанию локального приоритета и очереди представлено в таблице 2:
Таблица 2. Соответствие по-умолчанию локального приоритета и очереди .
Таким образом, пакет с параметром CoS равным 7 помещается в 8 очередь, пакет с CoS равным 0 – в 1 очередь.
Существуют различные механизмы обработки очередей:
Strict Priority (SP) – обрабатывает очереди строго с восьмой по первую целиком. Т.е. сначала передаются все пакеты, содержащиеся в буфере восьмой очереди. Если восьмая очередь пуста, то передаются пакеты из седьмой очереди и так далее. Алгоритм работы QoS представлен на рисунке 1.
Рисунок 1. Алгоритм работы QoS
Weighted Round Robin (WRR) – алгоритм для более гибкой обработки очередей, требующий тонкой настройки, может планировать порядок передачи в зависимости от веса очередей и их загруженности.
Deficit Round Robin (DRR) – также, как и WRR, является гибким алгоритмом обработки. Отличие его от WRR в том, что WRR основывается на количестве пакетов в очереди, а DRR на размере пакетов.
Помимо этого, могут применяться гибридные режимы SP+WRR, SP+DRR.
В данной статье рассматривается механизм обработки очередей SP, в котором очереди Q8-Q1 обрабатываются планировщиком последовательно от 8 до 1.
В итоге, пакет с параметром CoS, равным 7, передается в выходной интерфейс первым, пакет с CoS, равным 0, – последним, когда отсутствуют пакеты в других очередях.
Перейдем к настройке оборудования.
Схема работы представлена на рисунке 2. Коммутаторы соединены через порты GE1/1/9, работающие в режиме trunk. Сеть поделена на клиентские VLAN100,200. Клиенты в этих сегментах подключаются к портам GE1/1/1-4, настроенным в режиме access. Также создана отдельная сеть управления VLAN20 (процесс ее создания отдельно рассматривается в видео). Для управления коммутаторам SW1 и SW2 в VLAN20 назначены адреса 10.0.10.1 и 10.0.10.2 соответственно. Администратор сети подключен к порту GE1/1/7, настроенному в режиме access, коммутатора SW1 и может управлять им, а также коммутатором SW2.
Рисунок 2. Схема подключения
Алгоритм настройки:
1)Создадим на коммутаторах SW1 и SW2 VLAN20,100 и 200.
SW1(config)#create vlan 10,20,100,200 active
2)Настроим режим работы клиентских портов и портов trunk. Эти настройки аналогичны для SW1 и SW2.
SW1(config)#interface gigaethernet 1/1/1
SW1(config-gigaethernet1/1/1)#switchport mode access
SW1(config-gigaethernet1/1/1)#switchport access vlan 100
SW1(config-gigaethernet1/1/1)#interface gigaethernet 1/1/2
SW1(config-gigaethernet1/1/1)#switchport mode access
SW1(config-gigaethernet1/1/2)#switchport access vlan 100
SW1(config-gigaethernet1/1/2)#interface gigaethernet 1/1/3
SW1(config-gigaethernet1/1/3)#switchport mode access
SW1(config-gigaethernet1/1/3)#switchport access vlan 200
SW1(config-gigaethernet1/1/3)#interface gigaethernet 1/1/4
SW1(config-gigaethernet1/1/4)#switchport mode access
SW1(config-gigaethernet1/1/4)#switchport access vlan 200
SW1(config-gigaethernet1/1/4)#interface gigaethernet 1/1/9
SW1(config-gigaethernet1/1/9)#switchport mode trunk
SW1(config-gigaethernet1/1/9)#switchport trunk allowed vlan 20,100,200 confirm
3)Назначим адреса для управления.
SW1(config)#interface vlan 20
SW1(config-vlan20)# ip address 10.0.10.1 255. 255. 255.0
SW2(config)#interface vlan 20
SW2(config-vlan20)# ip address 10.0.10.2 255. 255. 255.0
4)На коммутаторе SW1 настроим порт администратора.
SW1(config)#interface gigaethernet 1/1/7
SW1(config-gigaethernet1/1/7)#switchport mode access
SW1(config-gigaethernet1/1/7)#switchport access vlan 20
В такой конфигурации, при возникновении шторма в сети, например из-за петли на клиентском порту, трафик управления от администратора может не проходить до удаленного коммутатора:
5)Назначим приоритет трафику, поступающему в порт GE1/1/7, равным 7. Таким образом, трафик управления маркируется меткой CoS равной 7. При этом трафик от клиентов имеет приоритет по умолчанию 0 (CoS=0).
SW1(config-gigaethernet1/1/7)# mls qos priority 7
6)На стороне SW2 настроим приоритет трафика управления. На этом коммутаторе такой трафик не приходит с интерфейса доступа, а генерироваться самим коммутатором, т.е. исходящий от коммутатора трафик во VLAN20 будет маркироваться меткой CoS равной 7.
SW2(config)#interface vlan 20
SW2(config-vlan20)#ip management-traffic cos 7
7)В данном примере используем соотношение локального приоритета и CoS по-умолчанию.
Назначим механизм планирования очередей на trunk портах коммутаторов, на SW1 и SW2 настройки аналогичен. Используем распределение пакетов по очередям, представленным в таблице 2.
SW1(config)#interface gigaethernet 1/1/9
SW1(config-gigaethernet1/1/9)#mls qos queue scheduler sp
8)Trunk порты коммутаторов SW1 и SW2 настраиваем в режиме trust cos. На эти порты трафик приходит с меткой, установленной заранее, и она будет использоваться для классификации без перемаркировки.
SW1(config-gigaethernet1/1/9)#mls qos trust cos
9)Настройка завершена, проверим конфигурацию QoS.
SW1(config)#show mls qos interface
Interface TrustMode Priority Cos-PriProfile Dscp-PriProfile Dscp-Mutation Cos-Remark DEI-Status
----------------------------------------------------------------------------------------------------------------------
gigaethernet1/1/1 cos untagged 0 0 0 0 0 --
gigaethernet1/1/2 cos untagged 0 0 0 0 0 --
gigaethernet1/1/3 cos untagged 0 0 0 0 0 --
gigaethernet1/1/4 cos untagged 0 0 0 0 0 --
gigaethernet1/1/5 cos untagged 0 0 0 0 0 --
gigaethernet1/1/6 cos untagged 0 0 0 0 0 --
gigaethernet1/1/7 cos untagged 7 0 0 0 0 --
gigaethernet1/1/8 cos untagged 0 0 0 0 0 --
gigaethernet1/1/9 cos untagged 0 0 0 0 0 --
gigaethernet1/1/10 cos untagged 0 0 0 0 0 --
vlan1 -- -- -- -- -- -- --
vlan20 -- -- -- -- -- -- --
vlan100 -- -- -- -- -- -- --
vlan200 -- -- -- -- -- -- --
Из вывода видно, что нетегированный трафик, поступающий на порт GE1/1/7, маркируется CoS=7.
SW1(config)#show mls qos queue statistics interface gigaethernet 1/1/9
Port :gigaethernet1/1/9
QueueId PassPkts(Pkts) PassBytes(Bytes) DropPkts(Pkts) DropBytes(Bytes)
----------------------------------------------------------------------------------------------
1 9,965,347,860 3,313,862,814,982 156,845 46,845,123
2 0 0 -- --
3 0 0 -- --
4 0 0 -- --
5 0 0 -- --
6 0 0 -- --
7 0 0 -- --
8 226,647,877 86,310,702,085 -- --
Мы видим, что трафик попадает в две очереди, согласно нашим настройкам.
После активации QoS трафик управления в сети успешно проходит до удаленного коммутатора даже в условиях шторма или высокой нагрузки на сети:
В статье показан только один пример использования QoS. Этот функционал предоставляет очень гибкий и незаменимый инструмент для управления трафиком и обеспечения стабильной работы сети и надежное удаленное управление сетевыми устройствами.