配置HQoS示例(基于ACL配置用户队列)
配置思路
- 创建VLAN,并配置各接口,使用户能够通过Switch访问网络。
- 在Switch上配置创建并配置DiffServ域,将802.1p优先级映射为PHB行为并为报文着色,并在Switch入接口上绑定DiffServ域。
- 在Switch上配置流队列WRED模板和流队列模板及相关参数,以实现为不同的业务提供不同的调度优先级,丢弃参数及流量整形参数。
- 在Switch上配置ACL规则,通过VLAN区分来自不同用户的数据流量。
- 在Switch上配置用户队列及流量整形参数,通过引用流队列WRED模板和流队列模板实现HQoS。
操作步骤
- 创建VLAN并配置各接口
# 在SwitchA上创建VLAN10,配置SwitchA上接口GE1/0/1、GE1/0/2的接口类型为Access,并加入VLAN10,配置接口GE2/0/1的接口类型为Trunk,并加入VLAN10。
<HUAWEI> system-view [HUAWEI] sysname SwitchA [SwitchA] vlan batch 10 [SwitchA] interface gigabitethernet 1/0/1 [SwitchA-GigabitEthernet1/0/1] port link-type access [SwitchA-GigabitEthernet1/0/1] port default vlan 10 [SwitchA-GigabitEthernet1/0/1] quit [SwitchA] interface gigabitethernet 1/0/2 [SwitchA-GigabitEthernet1/0/2] port link-type access [SwitchA-GigabitEthernet1/0/2] port default vlan 10 [SwitchA-GigabitEthernet1/0/2] quit [SwitchA] interface gigabitethernet 2/0/1 [SwitchA-GigabitEthernet2/0/1] port link-type trunk [SwitchA-GigabitEthernet2/0/1] port trunk allow-pass vlan 10 [SwitchA-GigabitEthernet2/0/1] quit
# 在SwitchB上创建VLAN20,配置SwitchB上接口GE1/0/1、GE1/0/2的接口类型为Access,并加入VLAN20,配置接口GE2/0/1的接口类型为Trunk,并加入VLAN20。
<HUAWEI> system-view [HUAWEI] sysname SwitchB [SwitchB] vlan batch 20 [SwitchB] interface gigabitethernet 1/0/1 [SwitchB-GigabitEthernet1/0/1] port link-type access [SwitchB-GigabitEthernet1/0/1] port default vlan 20 [SwitchB-GigabitEthernet1/0/1] quit [SwitchB] interface gigabitethernet 1/0/2 [SwitchB-GigabitEthernet1/0/2] port link-type access [SwitchB-GigabitEthernet1/0/2] port default vlan 20 [SwitchB-GigabitEthernet1/0/2] quit [SwitchB] interface gigabitethernet 2/0/1 [SwitchB-GigabitEthernet2/0/1] port link-type trunk [SwitchB-GigabitEthernet2/0/1] port trunk allow-pass vlan 20 [SwitchB-GigabitEthernet2/0/1] quit
# 在SwitchC上创建VLAN10和VLAN20,配置SwitchC上接口GE1/0/1的接口类型为Trunk,并加入VLAN10和VLAN20,配置接口GE2/0/1的接口类型为Trunk,并加入VLAN10和VLAN20。
<HUAWEI> system-view [HUAWEI] sysname SwitchC [SwitchC] vlan batch 10 20 [SwitchC] interface gigabitethernet 1/0/1 [SwitchC-GigabitEthernet1/0/1] port link-type trunk [SwitchC-GigabitEthernet1/0/1] port trunk allow-pass vlan 10 20 [SwitchC-GigabitEthernet1/0/1] quit [SwitchC] interface gigabitethernet 2/0/1 [SwitchC-GigabitEthernet2/0/1] port link-type trunk [SwitchC-GigabitEthernet2/0/1] port trunk allow-pass vlan 10 20 [SwitchC-GigabitEthernet2/0/1] quit
# 在Switch上创建VLAN10和VLAN20,将接口GE1/0/1、GE1/0/2和GE2/0/1的接入类型分别配置为trunk,并分别将接口GE1/0/1加入VLAN10,GE1/0/2加入VLAN20,GE2/0/1加入VLAN 10、VLAN 20。
<HUAWEI> system-view [HUAWEI] sysname Switch [Switch] vlan batch 10 20 [Switch] interface gigabitethernet 1/0/1 [Switch-GigabitEthernet1/0/1] port link-type trunk [Switch-GigabitEthernet1/0/1] port trunk allow-pass vlan 10 [Switch-GigabitEthernet1/0/1] quit [Switch] interface gigabitethernet 1/0/2 [Switch-GigabitEthernet1/0/2] port link-type trunk [Switch-GigabitEthernet1/0/2] port trunk allow-pass vlan 20 [Switch-GigabitEthernet1/0/2] quit [Switch] interface gigabitethernet 2/0/1 [Switch-GigabitEthernet2/0/1] port link-type trunk [Switch-GigabitEthernet2/0/1] port trunk allow-pass vlan 10 20 [Switch-GigabitEthernet2/0/1] quit
- 配置优先级映射
# 创建DiffServ域ds1,将802.1p优先级6、5、2分别映射为服务等级EF、AF3、AF1,并分别将报文标记为绿色,黄色和红色。
[Switch] diffserv domain ds1 [Switch-dsdomain-ds1] 8021p-inbound 6 phb ef green [Switch-dsdomain-ds1] 8021p-inbound 5 phb af3 yellow [Switch-dsdomain-ds1] 8021p-inbound 2 phb af1 red [Switch-dsdomain-ds1] quit
# 在Switch入接口GE1/0/1和GE1/0/2上绑定DiffServ域。
[Switch] interface gigabitethernet 1/0/1 [Switch-GigabitEthernet1/0/1] trust upstream ds1 [Switch-GigabitEthernet1/0/1] trust 8021p inner [Switch-GigabitEthernet1/0/1] quit [Switch] interface gigabitethernet 1/0/2 [Switch-GigabitEthernet1/0/2] trust upstream ds1 [Switch-GigabitEthernet1/0/2] trust 8021p inner [Switch-GigabitEthernet1/0/2] quit
- 配置流队列WRED模板及参数
# 在Switch上配置流队列WRED模板wred1,并配置wred1的三色报文参数。
[Switch] flow-wred-profile wred1 [Switch-flow-wred-wred1] color green low-limit 80 high-limit 100 discard-percentage 10 [Switch-flow-wred-wred1] color yellow low-limit 60 high-limit 80 discard-percentage 20 [Switch-flow-wred-wred1] color red low-limit 40 high-limit 60 discard-percentage 40 [Switch-flow-wred-wred1] quit
- 配置流队列模板及参数
# 在Switch上配置流队列模板flow1引用流队列WRED模板wred1,并配置各服务等级的调度参数。
[Switch] flow-queue-profile flow1 [Switch-flow-queue-flow1] qos queue 5 pq flow-wred-profile wred1 [Switch-flow-queue-flow1] qos queue 3 wfq weight 20 flow-wred-profile wred1 [Switch-flow-queue-flow1] qos queue 1 wfq weight 10 flow-wred-profile wred1 [Switch-flow-queue-flow1] quit
- 配置ACL规则
# 在Switch上配置ACL4001和ACL4002,并分别配置匹配VLAN10和VLAN20的rule规则。
[Switch] acl number 4001 [Switch-acl-L2-4001] rule 1 permit vlan-id 10 [Switch-acl-L2-4001] quit [Switch] acl number 4002 [Switch-acl-L2-4002] rule 1 permit vlan-id 20 [Switch-acl-L2-4002] quit
- 配置用户队列及参数
# 在Switch上配置基于ACL4001和ACL4002的用户队列,并引用流队列模板flow1。
[Switch] interface gigabitethernet 2/0/1 [Switch-GigabitEthernet2/0/1] traffic-user-queue outbound acl 4001 pir 8000 flow-queue-profile flow1 [Switch-GigabitEthernet2/0/1] traffic-user-queue outbound acl 4002 pir 5000 flow-queue-profile flow1 [Switch-GigabitEthernet2/0/1] quit [Switch] quit
- 验证配置结果
# 查看流队列WRED模板的配置信息,包括流队列WRED模板名称以及红、黄、绿三色报文的丢弃上下限和最大丢弃概率。
<Switch> display flow-wred-profile name wred1 Flow-wred-profile[1]: wred1 Queue depth : 1048576 Color Low-limit High-limit Discard-percentage - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Green 80 100 10 Yellow 60 80 20 Red 40 60 40 -----------------------------------------------------------------
# 查看流队列模板的配置信息,包括流队列模板名称以及WFQ调度的权重。
<Switch> display flow-queue-profile name flow1 Flow-queue-profile[1]: flow1 Queue Schedule(Weight) Shaping flow-wred-profile - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0 PQ None default 1 WFQ(10) None wred1 2 PQ None default 3 WFQ(20) None wred1 4 PQ None default 5 PQ None wred1 6 PQ None default 7 PQ None default -----------------------------------------------------------------------
# 查看用户队列的流量统计信息。
<Switch> display traffic-user-queue statistics interface gigabitethernet 2/0/1 outbound acl 4001 -------------------------------------------------------------------------------- Interface: GigabitEthernet2/0/1 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 0 | packets: pass: 4,127 | drop: 2,798,787,076 | bytes: pass: 610,796 | drop: 414,220,487,248 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 1 | packets: pass: 4,127 | drop: 5,597,436,717 | bytes: pass: 610,796 | drop: 828,420,634,116 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 2 | packets: pass: 0 | drop: 0 | bytes: pass: 0 | drop: 0 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 3 | packets: pass: 4,127 | drop: 5,597,436,713 | bytes: pass: 610,796 | drop: 828,420,633,524 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 4 | packets: pass: 4,127 | drop: 2,798,716,293 | bytes: pass: 610,796 | drop: 414,210,011,364 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 5 | packets: pass: 4,127 | drop: 2,798,716,294 | bytes: pass: 610,796 | drop: 414,210,011,512 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 6 | packets: pass: 0 | drop: 0 | bytes: pass: 0 | drop: 0 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 7 | packets: pass: 1,119,509,460 | drop: 1,679,210,961 | bytes: pass: 165,687,400,080 | drop: 248,523,222,228 --------------------------------------------------------------------------------
<Switch> display traffic-user-queue statistics interface gigabitethernet 2/0/1 outbound acl 4002 -------------------------------------------------------------------------------- Interface: GigabitEthernet2/0/1 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 0 | packets: pass: 4,125 | drop: 5,218,026 | bytes: pass: 610,500 | drop: 772,267,848 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 1 | packets: pass: 4,125 | drop: 10,440,178 | bytes: pass: 610,500 | drop: 1,545,146,344 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 2 | packets: pass: 0 | drop: 0 | bytes: pass: 0 | drop: 0 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 3 | packets: pass: 4,125 | drop: 10,440,178 | bytes: pass: 610,500 | drop: 1,545,146,344 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 4 | packets: pass: 4,125 | drop: 5,218,027 | bytes: pass: 610,500 | drop: 772,267,996 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 5 | packets: pass: 4,125 | drop: 5,218,027 | bytes: pass: 610,500 | drop: 772,267,996 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 6 | packets: pass: 0 | drop: 0 | bytes: pass: 0 | drop: 0 -------------------------------------------------------------------------------- Queue ID | Statistics information -------------------------------------------------------------------------------- 7 | packets: pass: 2,092,988 | drop: 3,129,165 | bytes: pass: 309,762,224 | drop: 463,116,420 --------------------------------------------------------------------------------
配置文件
SwitchA的配置文件
# sysname SwitchA # vlan batch 10 # interface GigabitEthernet1/0/1 port link-type access port default vlan 10 # interface GigabitEthernet1/0/2 port link-type access port default vlan 10 # interface GigabitEthernet2/0/1 port link-type trunk port trunk allow-pass vlan 10 # return
SwitchB的配置文件
# sysname SwitchB # vlan batch 20 # interface GigabitEthernet1/0/1 port link-type access port default vlan 20 # interface GigabitEthernet1/0/2 port link-type access port default vlan 20 # interface GigabitEthernet2/0/1 port link-type trunk port trunk allow-pass vlan 20 # return
SwitchC的配置文件
# sysname SwitchC # vlan batch 10 20 # interface GigabitEthernet1/0/1 port link-type trunk port trunk allow-pass vlan 10 20 # interface GigabitEthernet2/0/1 port link-type trunk port trunk allow-pass vlan 10 20 # return
Switch的配置文件
# sysname Switch # vlan batch 10 20 # diffserv domain ds1 8021p-inbound 2 phb af1 red 8021p-inbound 5 phb af3 yellow 8021p-inbound 6 phb ef green # acl number 4001 rule 1 permit vlan-id 10 acl number 4002 rule 1 permit vlan-id 20 # flow-wred-profile wred1 color green low-limit 80 high-limit 100 discard-percentage 10 color yellow low-limit 60 high-limit 80 discard-percentage 20 color red low-limit 40 high-limit 60 discard-percentage 40 # flow-queue-profile flow1 qos queue 1 wfq weight 10 flow-wred-profile wred1 qos queue 3 wfq weight 20 flow-wred-profile wred1 qos queue 5 flow-wred-profile wred1 # interface GigabitEthernet1/0/1 port link-type trunk port trunk allow-pass vlan 10 trust upstream ds1 trust 8021p inner # interface GigabitEthernet1/0/2 port link-type trunk port trunk allow-pass vlan 20 trust upstream ds1 trust 8021p inner # interface GigabitEthernet2/0/1 port link-type trunk port trunk allow-pass vlan 10 20 traffic-user-queue outbound acl 4001 pir 8000 flow-queue-profile flow1 traffic-user-queue outbound acl 4002 pir 5000 flow-queue-profile flow1 # return