22-优先级与队列调度典型配置举例
本章节下载: 22-优先级与队列调度典型配置举例 (196.37 KB)
目 录
本章介绍了如何通过优先级映射、优先级重标记与队列调度功能,在网络产生拥塞时,优先满足重要业务数据的发送,提供高效的差异化传输服务。
某公司的网络结构如图1所示。现要求通过优先级映射和队列调度功能相结合,对公司内网流量和访问Internet的流量,在各设备上进行一定的调整,达到以下组网需求:
· 对内网服务器群的访问:管理部发送的数据要优先于研发部发送的数据进行传输,当拥塞发生时,按照2:1的比例依次发送管理部和研发部的报文。
· 对Internet的访问:管理部发送的数据优先于研发部发送的数据进行传输,当拥塞发生时,必须先将管理部的数据发送完成后,再发送研发部的数据。
· 两个部门内访问Internet的流量均有3种:HTTP、FTP和Email,报文中的DSCP位分别为33,35,27。现要求发送访问Internet的数据时,传输优先级如下:HTTP>FTP>Email。当拥塞发生时,按照2:1:1的比例依次发送三种报文。
· 为了按照部门来划分报文优先级,可以使用交换机的端口优先级功能,在连接两个部门的端口上分别配置不同的端口优先级,即可为两个部门的报文标记不同的802.1p优先级。
· 要使标记的802.1p优先级对报文的传输产生实际影响,必须在数据传输路径中的所有接收端口上,都配置为信任802.1p优先级,设备才能够根据802.1p优先级确定报文的传输队列。
· 对于拥塞发生时按比例发送不同队列报文的需求,可以通过配置WRR队列调度算法,并为每个队列配置不同权重值的方式来实现。
· 当端口上发送拥塞时,如果要使管理部数据绝对优先于研发部数据发送,可以在端口上配置SP队列,同时将管理部的数据调度到比较优先的队列中,即可以实现该需求。
· 对于根据报文上层协议确定传输优先级的需求,需要在端口上配置为信任DSCP优先级,从而能够根据DSCP优先级将报文映射到不同队列。
· 当拥塞发生时的队列调度处理比例也可以通过在WRR队列中为各队列配置不同的权重来实现。
(1) Switch C的配置
# 创建VLAN10和VLAN20。
<SwitchC> system-view
[SwitchC] vlan 10
[SwitchC-vlan10] quit
[SwitchC] vlan 20
[SwitchC-vlan20] quit
# 将GigabitEthernet1/0/2端口加入VLAN10,配置端口优先级为6,即为所有管理部发出的报文标记802.1p优先级为6。
[SwitchC] interface GigabitEthernet 1/0/2
[SwitchC-GigabitEthernet1/0/2] port access vlan 10
[SwitchC-GigabitEthernet1/0/2] qos priority 6
[SwitchC-GigabitEthernet1/0/2] quit
# 将GigabitEthernet1/0/3端口加入VLAN20,配置端口优先级为4,即为所有研发部发出的报文标记802.1p优先级为4。
[SwitchC] interface GigabitEthernet 1/0/3
[SwitchC-GigabitEthernet1/0/3] port access vlan 20
[SwitchC-GigabitEthernet1/0/3] qos priority 4
[SwitchC-GigabitEthernet1/0/3] quit
# 由于802.1p优先级保存在VLAN Tag中,因此在GigabitEthernet1/0/1端口上需要配置报文以携带VLAN Tag的方式发送。此处以Trunk端口类型为例进行配置。配置端口允许VLAN10和VLAN20的报文通过,VLAN1作为缺省允许通过的VLAN,需要取消允许其通过。
[SwitchC] interface GigabitEthernet 1/0/1
[SwitchC-GigabitEthernet1/0/1] port link-type trunk
[SwitchC-GigabitEthernet1/0/1] port trunk permit vlan 10 20
[SwitchC-GigabitEthernet1/0/1] undo port trunk permit vlan 1
[SwitchC-GigabitEthernet1/0/1] quit
(2) Switch B的配置
# 创建VLAN10、VLAN20、VLAN30和VLAN40。
<SwitchB> system-view
[SwitchB] vlan 10
[SwitchB-vlan10] quit
[SwitchB] vlan 20
[SwitchB-vlan20] quit
[SwitchB] vlan 30
[SwitchB-vlan30] quit
[SwitchB] vlan 40
[SwitchB-vlan40] quit
# 将端口GigabitEthernet1/0/1配置为Trunk端口,允许VLAN10和VLAN20通过,取消允许VLAN1通过。
<SwitchB> system-view
[SwitchB] interface GigabitEthernet 1/0/1
[SwitchB-GigabitEthernet1/0/1] port link-type trunk
[SwitchB-GigabitEthernet1/0/1] port trunk permit vlan 10 20
[SwitchB-GigabitEthernet1/0/1] undo port trunk permit vlan 1
# 配置端口的优先级信任模式为信任802.1p优先级。
[SwitchB-GigabitEthernet1/0/1] qos trust dot1p
[SwitchB-GigabitEthernet1/0/1] quit
# 将端口GigabitEthernet1/0/10加入VLAN40。
[SwitchB] interface GigabitEthernet 1/0/10
[SwitchB-GigabitEthernet1/0/10] port access vlan 40
# 将端口GigabitEthernet1/0/20加入VLAN30。
[SwitchB] interface GigabitEthernet 1/0/20
[SwitchB-GigabitEthernet1/0/20] port access vlan 30
在SwitchB上需要创建VLAN接口并配置路由协议,使各网段之间可以互通。配置过程这里省略,请参见路由典型配置指导中的介绍。
# 通过查找dot1p-lp优先级映射表,802.1p优先级为4的报文映射到本地优先级4,即队列4,802.1p优先级为6的报文映射到本地优先级6,即队列6。
# 在出端口GigabitEthernet1/0/20上,配置以字节数为调度权重的WRR队列,并配置队列6的权重为队列4的2倍(本例中以4和2为例)。
[SwitchB] interface GigabitEthernet 1/0/20
[SwitchB-GigabitEthernet1/0/20] qos wrr 4 group 1 weight 2
[SwitchB-GigabitEthernet1/0/20] qos wrr 6 group 1 weight 4
[SwitchB-GigabitEthernet1/0/20] quit
(1) Switch B的配置
# 配置端口GigabitEthernet1/0/10的队列调度算法为SP队列。
[SwitchB] interface GigabitEthernet 1/0/10
[SwitchB-GigabitEthernet1/0/10] qos wrr 0 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 1 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 2 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 3 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 4 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 5 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 6 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 7 group sp
(2) Switch A的配置
# 配置端口GigabitEthernet1/0/1的优先级信任模式为信任DSCP优先级。
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] qos trust dscp
# 通过dscp-1p映射表找到DSCP优先级与本地优先级的映射关系。通过查找,DSCP优先级为33、35、27的报文分别映射到本地优先级为4、4、3。根据组网需求,需要将DSCP优先级为33的报文映射到更高的队列中,这里可以通过修改dscp-1p映射表来实现。此处以将DSCP优先级为33的报文映射到队列5为例,需要将DSCP优先级映射为本地优先级为5。
[SwitchA] qos map-table dscp-1p
[SwitchA-maptbl-dscp-dot1p] import 33 export 5
[SwitchA-maptbl-dscp-dot1p] quit
# 通过以上配置,已经将三种业务报文分别映射到队列5、4、3,配置端口GigabitEthernet1/0/2在发送报文时使用以字节数为调度权重的WRR队列,并配置三个队列的权重值比例为2:1:1(此处以6、3、3为例)。
[SwitchA] interface GigabitEthernet 1/0/2
[SwitchA-GigabitEthernet1/0/2] qos wrr 5 group 1 weight 6
[SwitchA-GigabitEthernet1/0/2] qos wrr 4 group 1 weight 3
[SwitchA-GigabitEthernet1/0/2] qos wrr 3 group 1 weight 3
· Switch A的配置文件:
#
qos map-table dscp-1p
import 33 export 5
#
interface GigabitEthernet1/0/1
qos trust dscp
#
interface GigabitEthernet1/0/2
qos wrr 5 group 1 weight 6
qos wrr 4 group 1 weight 3
qos wrr 3 group 1 weight 3
· Switch B的配置文件:
#
vlan 10
#
vlan 20
#
vlan 30
#
vlan 40
#
interface GigabitEthernet1/0/1
port link-type trunk
undo port trunk permit vlan 1
port trunk permit vlan 10 20
qos trust dot1p
#
interface GigabitEthernet1/0/10
port access vlan 40
qos wrr 0 group 1 sp
qos wrr 1 group 1 sp
qos wrr 2 group 1 sp
qos wrr 3 group 1 sp
qos wrr 4 group 1 sp
qos wrr 5 group 1 sp
qos wrr 6 group 1 sp
qos wrr 7 group 1 sp
#
interface GigabitEthernet1/0/20
port access vlan 30
qos wrr 6 group 1 weight 4
qos wrr 4 group 1 weight 2
· Switch C的配置文件:
#
vlan 10
#
vlan 20
#
interface GigabitEthernet1/0/1
port link-type trunk
undo port trunk permit vlan 1
port trunk permit vlan 10 20
#
interface GigabitEthernet1/0/2
port access vlan 10
qos priority 6
#
interface GigabitEthernet1/0/3
port access vlan 20
qos priority 4
某公司的网络结构如图2所示。现要求对于公司内网流量和访问Internet的流量,在各设备上进行一定的调整,达到以下组网需求:
· 对内网服务器群的访问:管理部发送的数据要优先于研发部发送的数据进行传输,当拥塞发生时,按照2:1的比例依次发送管理部和研发部的报文。但如果有对应用服务器的访问数据,无论是由哪个部门发送的,均以最高优先级发送,传输完成后,再按比例继续发送访问其它服务器的数据。
· 对Internet的访问:管理部发送的数据优先于研发部发送的数据进行传输,当拥塞发生时,必须先将管理部的数据发送完成后,再发送研发部的数据。但对于研发部经理的访问数据,按管理部报文的级别进行优先传输。
· 两个部门内访问Internet的流量均有3种:HTTP、FTP和Email,报文中的DSCP位分别为33,35,27。现要求在发送访问Internet的数据时,传输优先级如下:HTTP>FTP>Email。当拥塞发生时,按照2:1:1的比例依次发送三种报文。其中对于管理部的Email数据,按HTTP数据优先级进行处理。
· 对于访问服务器群(除应用服务器外)的数据差异化传输需求,请参见1.1.2 1. 中的配置思路分析。
· 对于访问应用服务器的特殊需求,可以针对特定目的IP地址的流进行重标记本地优先级的动作,并在出端口将重标记后的本地优先级对应的队列加入到SP+WRR队列中的SP组,实现对访问应用服务器数据的优先传送。
· 对于全局通用性的Internet流量优先级配置策略,请参见1.1.2 2. 中的配置思路分析。
· 为了使研发经理主机发送的数据得到与管理部数据同样的优先处理,可以通过对特定源IP地址的流进行重标记本地优先级的动作来实现。
· 对于管理部的Email数据,可以创建匹配DSCP优先级为27的流分类,搭配重标记优先级的流行为,从而将其本地优先级与HTTP报文标记为一致。
(1) Switch C的配置
# 创建VLAN10和VLAN20。
<SwitchC> system-view
[SwitchC] vlan 10
[SwitchC-vlan10] quit
[SwitchC] vlan 20
[SwitchC-vlan20] quit
# 将GigabitEthernet1/0/2端口加入VLAN10,配置端口优先级为6,即为所有管理部发出的报文标记802.1p优先级为6。
[SwitchC] interface GigabitEthernet 1/0/2
[SwitchC-GigabitEthernet1/0/2] port access vlan 10
[SwitchC-GigabitEthernet1/0/2] qos priority 6
[SwitchC-GigabitEthernet1/0/2] quit
# 将GigabitEthernet1/0/3端口加入VLAN20,配置端口优先级为4,即为所有研发部发出的报文标记802.1p优先级为4。
[SwitchC] interface GigabitEthernet 1/0/3
[SwitchC-GigabitEthernet1/0/3] port access vlan 20
[SwitchC-GigabitEthernet1/0/3] qos priority 4
[SwitchC-GigabitEthernet1/0/3] quit
# 由于802.1p优先级保存在VLAN Tag中,因此在GigabitEthernet1/0/1端口上需要配置报文以携带VLAN Tag的方式发送。此处以Trunk端口类型为例进行配置。配置端口允许VLAN10和VLAN20的报文通过,VLAN1作为缺省允许通过的VLAN,需要取消允许其通过。
[SwitchC] interface GigabitEthernet 1/0/1
[SwitchC-GigabitEthernet1/0/1] port link-type trunk
[SwitchC-GigabitEthernet1/0/1] port trunk permit vlan 10 20
[SwitchC-GigabitEthernet1/0/1] undo port trunk permit vlan 1
[SwitchC-GigabitEthernet1/0/1] quit
(2) Switch B的配置
# 创建VLAN10、VLAN20、VLAN30和VLAN40。
<SwitchB> system-view
[SwitchB] vlan 10
[SwitchB-vlan10] quit
[SwitchB] vlan 20
[SwitchB-vlan20] quit
[SwitchB] vlan 30
[SwitchB-vlan30] quit
[SwitchB] vlan 40
[SwitchB-vlan40] quit
# 将端口GigabitEthernet1/0/1配置为Trunk端口,允许VLAN10和VLAN20通过,取消允许VLAN1通过。
<SwitchB> system-view
[SwitchB] interface GigabitEthernet 1/0/1
[SwitchB-GigabitEthernet1/0/1] port link-type trunk
[SwitchB-GigabitEthernet1/0/1] port trunk permit vlan 10 20
[SwitchB-GigabitEthernet1/0/1] undo port trunk permit vlan 1
# 配置端口的优先级信任模式为信任802.1p优先级。
[SwitchB-GigabitEthernet1/0/1] qos trust dot1p
[SwitchB-GigabitEthernet1/0/1] quit
# 将端口GigabitEthernet1/0/10加入VLAN40。
[SwitchB] interface GigabitEthernet 1/0/10
[SwitchB-GigabitEthernet1/0/10] port access vlan 40
# 将端口GigabitEthernet1/0/20加入VLAN30。
[SwitchB] interface GigabitEthernet 1/0/20
[SwitchB-GigabitEthernet1/0/20] port access vlan 30
在SwitchB上需要创建VLAN接口并配置路由协议,使各网段之间可以互通。配置过程这里省略,请参见路由典型配置指导中的介绍。
# 通过查找dot1p-lp优先级映射表,802.1p优先级为4的报文映射到队列4,802.1p优先级为6的报文映射到队列6。
# 创建高级IPv4 ACL 3000,匹配目的IP地址为192.168.1.2的报文。
[SwitchB] acl number 3000
[SwitchB-acl-adv-3000] rule permit ip destination 192.168.1.2 0
[SwitchB-acl-adv-3000] quit
# 创建流分类app_server,匹配条件为IPv4 ACL 3000。
[SwitchB] traffic classifier app_server
[SwitchB-classifier-app_server] if-match acl 3000
[SwitchB-classifier-app_server] quit
# 创建流行为app_server,动作为重标记802.1p优先级为7。
[SwitchB] traffic behavior app_server
[SwitchB-behavior-app_server] remark dot1p 7
[SwitchB-behavior-app_server] quit
# 创建QoS策略app_server,将以上流分类和流行为进行关联。
[SwitchB] qos policy app_server
[SwitchB-qospolicy-app_server] classifier app_server behavior app_server
[SwitchB-qospolicy-app_server] quit
# 在GigabitEthernet1/0/1端口的入方向上应用QoS策略app_server。
[SwitchB] interface GigabitEthernet 1/0/1
[SwitchB-GigabitEthernet1/0/1] qos apply policy app_server inbound
[SwitchB-GigabitEthernet1/0/1] quit
# 在出端口GigabitEthernet1/0/20上,配置以字节数为调度权重的SP+WRR队列,将队列7配置到SP队列中,将队列4和6配置到WRR队列中,并配置队列6的权重为队列4的2倍(本例中以4和2为例)。
[SwitchB] interface GigabitEthernet 1/0/20
[SwitchB-GigabitEthernet1/0/20] qos wrr 7 group sp
[SwitchB-GigabitEthernet1/0/20] qos wrr 6 group 1 weight 4
[SwitchB-GigabitEthernet1/0/20] qos wrr 4 group 1 weight 2
(1) Switch C的配置
# 创建基本IPv4 ACL 2000,匹配源IP地址为192.168.0.12的报文。
[SwitchC] acl number 2000
[SwitchC-acl-basic-2000] rule permit source 192.168.0.12 0
[SwitchC-acl-basic-2000] quit
# 创建流分类rd_manager,匹配条件为IPv4 ACL 2000。
[SwitchC] traffic classifier rd_manager
[SwitchC-classifier-rd_manager] if-match acl 2000
[SwitchC-classifier-rd_manager] quit
# 创建流行为rd_manager,动作为重标记802.1p优先级为6。
[SwitchC] traffic behavior rd_manager
[SwitchC-behavior-rd_manager] remark dot1p 6
[SwitchC-behavior-rd_manager] quit
# 创建QoS策略rd_manager,将以上流分类和流行为进行关联。
[SwitchC] qos policy rd_manager
[SwitchC-qospolicy-rd_manager] classifier rd_manager behavior rd_manager
[SwitchC-qospolicy-rd_manager] quit
# 在GigabitEthernet1/0/3端口的入方向上应用QoS策略rd_manager。
[SwitchC] interface GigabitEthernet 1/0/3
[SwitchC-GigabitEthernet1/0/3] qos apply policy rd_manager inbound
[SwitchC-GigabitEthernet1/0/3] quit
(2) Switch B的配置
# 配置端口GigabitEthernet1/0/10的队列调度算法为SP队列。
[SwitchB] interface GigabitEthernet 1/0/10
[SwitchB-GigabitEthernet1/0/10] qos wrr 0 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 1 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 2 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 3 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 4 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 5 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 6 group sp
[SwitchB-GigabitEthernet1/0/10] qos wrr 7 group sp
(3) Switch A的配置
# 配置端口GigabitEthernet1/0/1的优先级信任模式为信任DSCP优先级。
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] qos trust dscp
# 通过dscp-1p映射表找到DSCP优先级与本地优先级的映射关系。通过查找,DSCP优先级为33、35、27的报文分别映射到本地优先级为4、4、3。根据组网需求,需要将DSCP优先级为33的报文映射到更高的队列中,这里可以通过修改dscp-1p映射表来实现。此处以将DSCP优先级为33的报文映射到队列5为例,需要将DSCP优先级映射为本地优先级为5。
[SwitchA] qos map-table dscp-1p
[SwitchA-maptbl-dscp-dot1p] import 33 export 5
[SwitchA-maptbl-dscp-dot1p] quit
# 通过以上配置,已经将三种业务报文分别映射到队列5、4、3,配置端口GigabitEthernet1/0/2在发送报文时使用以字节数为调度权重的WRR队列,并配置三个队列的权重值比例为2:1:1(此处以6、3、3为例)。
[SwitchA] interface GigabitEthernet 1/0/2
[SwitchA-GigabitEthernet1/0/2] qos wrr 5 group 1 weight 6
[SwitchA-GigabitEthernet1/0/2] qos wrr 4 group 1 weight 3
[SwitchA-GigabitEthernet1/0/2] qos wrr 3 group 1 weight 3
[SwitchA-GigabitEthernet1/0/2] quit
# 创建高级IPv4 ACL 3000,匹配由192.168.2.0/24网段发出的DSCP优先级为27的报文。
[SwitchA] acl number 3000
[SwitchA-acl-adv-3000] rule permit ip dscp 27 source 192.168.2.0 0.0.0.255
[SwitchA-acl-adv-3000] quit
# 创建流分类admin_email,匹配条件为IPv4 ACL 3000。
[SwitchA] traffic classifier admin_email
[SwitchA-classifier-admin_email] if-match acl 3000
[SwitchA-classifier-admin_email] quit
# 创建流行为admin_email,动作为重标记dscp优先级为40。
[SwitchA] traffic behavior admin_email
[SwitchA-behavior-admin_email] remark dscp 40
[SwitchA-behavior-admin_email] quit
# 创建QoS策略admin_email,将以上流分类和流行为进行关联。
[SwitchA] qos policy admin_email
[SwitchA-qospolicy-admin_email] classifier admin_email behavior admin_email
[SwitchA-qospolicy-admin_email] quit
# 在GigabitEthernet1/0/1端口的入方向上应用QoS策略admin_email。
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] qos apply policy admin_email inbound
[SwitchA-GigabitEthernet1/0/1] quit
· Switch A的配置文件:
#
acl number 3000
rule 0 permit ip source 192.168.2.0 0.0.0.255 dscp 27
#
traffic classifier admin_email operator and
if-match acl 3000
#
traffic behavior admin_email
remark dscp 40
#
qos policy admin_email
classifier admin_email behavior admin_email
#
qos map-table dscp-1p
import 33 export 5
#
interface GigabitEthernet1/0/1
qos apply policy admin_email inbound
qos trust dscp
#
interface GigabitEthernet1/0/2
qos wrr 5 group 1 weight 6
qos wrr 4 group 1 weight 3
qos wrr 3 group 1 weight 3
· Switch B的配置文件:
#
vlan 10
#
vlan 20
#
vlan 30
#
vlan 40
#
acl number 3000
rule 0 permit ip destination 192.168.1.2 0
#
traffic classifier app_server operator and
if-match acl 3000
#
traffic behavior app_server
remark dot1p 7
#
qos policy app_server
classifier app_server behavior app_server
#
interface GigabitEthernet1/0/1
port link-type trunk
undo port trunk permit vlan 1
port trunk permit vlan 10 20
qos apply policy app_server inbound
qos trust dot1p
#
interface GigabitEthernet1/0/10
port access vlan 40
qos wrr 0 group 1 sp
qos wrr 1 group 1 sp
qos wrr 2 group 1 sp
qos wrr 3 group 1 sp
qos wrr 4 group 1 sp
qos wrr 5 group 1 sp
qos wrr 6 group 1 sp
qos wrr 7 group 1 sp
#
interface GigabitEthernet1/0/20
port access vlan 30
qos wrr 7 group sp
qos wrr 6 group 1 weight 4
qos wrr 4 group 1 weight 2
· Switch C的配置文件:
#
vlan 10
#
vlan 20
#
acl number 2000
rule 0 permit source 192.168.0.12 0
#
traffic classifier rd_manager operator and
if-match acl 2000
#
traffic behavior rd_manager
remark dot1p 6
#
qos policy rd_manager
classifier rd_manager behavior rd_manager
#
interface GigabitEthernet1/0/1
port link-type trunk
undo port trunk permit vlan 1
port trunk permit vlan 10 20
#
interface GigabitEthernet1/0/2
port access vlan 10
qos priority 6
#
interface GigabitEthernet1/0/3
port access vlan 20
qos apply policy rd_manager inbound
qos priority 4
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!