Классификация трафика
Для настройки классификации в EcoRouterOS необходимо использовать специальные карты классов, создать соответствующий профиль трафика и привязать его к экземпляру сервиса (service-instance). В таком случае входящие в service-instance пакеты могут быть классифицированы, т.е. обработаны и рассмотрены другим QoS-функционалом.
Карты классов создаются в конфигурационном режиме при помощи команды class-map <NAME>
, где NAME может быть любой строкой, рекомендуемый формат имени — все буквы заглавные.
Пример:
ecorouter(config)# class-map VIDEO
ecorouter(config)# class-map IPVOICE
ecorouter(config)# class-map MYCLASS
При создании карты класса пользователь оказывается в режиме ее конфигурирования.
Пример:
ecorouter(config)# class-map VOICE
ecorouter(config-cmap)#?
Traffic classifier configuration commands:
exit Exit from the current mode to the previous mode
help Description of the interactive help system
match Classification criteria
no Negate a command or set its defaults
set Set marking values
show Show running system information
В режиме конфигурации карты классов пользователю доступна команда match
, которая позволит выделять определённые пакеты из общего потока трафика путём указания значения поля или его наименования в заголовках Ethernet, MPLS или IP. По значениям этих полей будет осуществляться классификация трафика. Введение нескольких правил match будет соответствовать логической операции «ИЛИ».
Пример:
ecorouter(config-cmap)#match ?
cos IEEE 802.1Q class of service priority values
dscp Match DSCP in IP packets
exp Match MPLS experimental
ecorouter(config-cmap)#match cos ?
<0-7> Enter class-of-service values
ecorouter(config-cmap)#match dscp ?
<0-63> Enter DSCP values
ecorouter(config-cmap)#match exp ?
<0-7> Enter MPLS exp values
Как видно из примера, классификация в EcoRouterOS может осуществляется по полям cos, dscp и exp. Значения могут задаваться только в десятичном виде. Можно задавать набор значений, используя в качестве разделителя запятую «,» или диапазон, используя в качестве разделителя дефис «-».
Для создания профилей трафика используется команда traffic-profile <NAME>
, где NAME может быть любым наименованием, рекомендуемый формат имени — цифры или все буквы заглавные.
При создании профиля трафика пользователь оказывается в режиме его конфигурирования.
Пример:
ecorouter(config)# traffic-profile 1
ecorouter(config-traffic-profile)# ?
Traffic profile configuration commands:
class Select a class to configure
exit Exit from the current mode to the previous mode
help Description of the interactive help system
no Negate a command or set its defaults
show Show running system information
Для привязки классов трафика к профилю используется команда class
с указанием имени ранее сконфигурированной карты классов.
Пример:
ecorouter(config)#traffic-profile 1
ecorouter(config-profile)#class VIDEO
ecorouter(config-profile)#class IPVOICE
Для включения классификации, возможности обрабатывать пакеты отдельно друг от друга и применять различные политики в зависимости от типа поступающего трафика пользователь должен применить профиль трафика к заранее созданной политике. Сделать это можно с помощью команды в конфигурационном режиме service-policy <NAME>
, где NAME может быть любым наименованием, рекомендуемый формат имени — цифры или заглавные буквы.
Пример:
ecorouter(config)#service-policy ECO
ecorouter(config-policy)#traffic-profile 1
Далее необходимо применить политику на экземпляре сервиса (service-instance) во входящем направлении. Классификация трафика в исходящем направлении невозможна.
Пример:
ecorouter(config)#port ge1
ecorouter(config-port)#service-instance test
ecorouter(config-service-instance)#service-policy ECO in
Пример включения классификации голосового и видео-трафика во входящем направлении по отношении к порту ge1:
ecorouter(config)#class-map VIDEO
ecorouter(config-cmap)#match dscp 1
ecorouter(config-cmap)#exit
ecorouter(config)# class-map IPVOICE
ecorouter(config-cmap)#match dscp 2
ecorouter(config-cmap)#exit
ecorouter(config)#traffic-profile TEST
ecorouter(config-traffic-profile)#class VIDEO
ecorouter(config-traffic-profile)#class IPVOICE
ecorouter(config-cmap)#exit
ecorouter(config)#service-policy ECO
ecorouter(config-policy)#traffic-profile TEST
ecorouter(config)#port ge1
ecorouter(config-port)#service-instance test
ecorouter(config-service-instance)#service-policy ECO in
Для проверки сконфигурированных параметров можно воспользоваться командами:
ecorouter#sh class-map
Class map default
Class map IP0
Match dscp: 2
Class map IP1
Match dscp: 4
Class map IP2
Match dscp: 8
Class map IP3
Match dscp: 12
show traffic-profile
Traffic profile prof-dscp
Class IP0
Class IP1
Class IP2
Class IP3