Доброго времени суток, уважаемые форумчане. Столкнулся со следующей проблемой.
Дано: некоторое количество серверов на FreeBSD 8.4 и вышеуказанный коммутатор DGS-1510-28.
Требуется: поднять на одном физическом линке несколько логических сетей с приоритезацией трафика между ними. Например, один из них (скажем, vlan 1242) используется для управления сетевыми устройствами, а другой (например, vlan 1244) используется для резервных копий и прочих локальных некритичных вещей. Соответственно, требуется выполнить такую настройку, при которой трафик для управления не забивался трафиком для бэкапов при избытке оного.
Есть одна особенность - FreeBSD 8.4 из коробки не умеет вешать на трафик метки QoS или DSCP, соответственно такая конфигурация отпадает.
Я нашёл в мануале возможность задать class-map по номеру vlan-а, и потом, применяя этот class-map, направлять трафик непосредственно в нужную CoS-очередь, более или менее приоритетную.
Соответственно, настройка выглядит следующим образом:
Код:
# class-map для управления сетевыми устройствами
Switch(config)# class-map net-control
Switch(config-cmap)# match vlan 1242
Switch(config-cmap)# exit
# class-map для локалки (бекапы, etc)
Switch(config)# class-map local
Switch(config-cmap)# match vlan 1244
Switch(config-cmap)# exit
# создаём policy-map для приоритезации
# приоритеты в порядке убывания - локалка для управления сетевыми устройствами -> бекапы
Switch(config)# police-map cos-based-treatment
Switch(config-pmap)# class net-control
Switch(config-pmap-c)# set cos-queue 7
Switch(config-pmap-c)# exit
Switch(config-pmap)# class local
Switch(config-pmap-c)# set cos-queue 0
Switch(config-pmap-c)# exit
# вешаем полученную policy-map на интерфейсы
Switch(config-pmap)# exit
Switch(config)# interface eth1/0/1
Switch(config-if)# service-policy input cos-based-treatment
Switch(config-if)# exit
Switch(config)# interface eth1/0/2
Switch(config-if)# service-policy input cos-based-treatment
#Выставляем приоритеты для нужных CoS-очередей (127 для 7 очереди, 1 по умолчанию для остальных).
Switch(config)#interface eth1/0/1
Switch(config-if)#wrr-queue bandwidth 1 1 1 1 1 1 1 127
Switch(config-if)#end
Switch(config)#interface eth1/0/2
Switch(config-if)#wrr-queue bandwidth 1 1 1 1 1 1 1 127
Switch(config-if)#
После настройки я пробовал тестировать данную конфигурацию, гоняя трафик параллельно по двум vlan-ам и пытаясь найти хоть какие-то различия. Варианты тестирования: iperf с udp-пакетами для переизбытка pps по обеим сетям, параллельный scp больших файлов по разным сетям, iperf-udp по одной сети, ping по другой и сравнение времени задержки... Все результаты показали, что не видно никакой разницы при прохождении трафика по разным vlan-ам.
Собственно, вопрос. Может ли подобная конфигурация вообще работать, и если может, то как можно наглядно убедиться в эффективности работы данной схемы?