QoS在企业网中的应用
在企业网络中,QoS的一系列技术不要求在同一台设备上应用,而应根据业务需要在不同位置应用。
图5 QoS技术在企业网络中的应用
理论上来说,各层次设备的功能如下:
l 接入层业务识别
接入交换机LSW1作为边界交换机,在接入侧需要担负数据流的识别、分类以及流标记的工作;在网络侧需要担负不同应用数据流的拥塞管理、拥塞避免、流量整形等工作。
l 汇聚层/核心层提供差分服务
汇聚层和核心层设备端口信任基于接入层标识的QoS参数,通过队列调度、流量整形、拥塞避免等方式实施QoS策略,保证高优先级业务优先获得调度。
而实际应用时,具体功能的部署完全取决于业务需求。在图5的组网中,可以在SwitchA应用报文分类和标记,用以区分不同部门的报文,然后在接口GE1/0/2出方向应用流量监管,限制进入广域网的流量。如果不需要区分来自不同部门的报文,可以直接在接口GE1/0/2出方向应用接口限速,限制进入广域网的流量。
当然,同一种QoS技术,也可能因为应用的位置不同而作用范围不同。如图5所示,如果在LSW1的接口GE0/0/1和GE0/0/2应用出方向接口限速,则可以分别保证部门1、部门2可以使用的最大带宽。如果在SwitchA的接口GE1/0/1应用入方向接口限速,则保证的是部门1和部门2一共可以使用的最大带宽,并不能保证部门1、部门2分别可以使用的最大带宽。
QoS实现工具之MQC
QoS技术可以对网络中报文进行分类处理,根据优先级提供不同的差分服务,如何实现这种差分服务呢?我们有一种强大的配置方法-模块化QoS命令行MQC(Modular QoS Command-Line)。
1 MQC可以做什么?
MQC,又叫流策略,是指通过将某些具有相同特征的报文划分为一类,并为这一类报文提供相同服务的配置方法。通过配置流策略,用户可以定义报文分类规则匹配需要单独处理的流量,然后将匹配的流量进行相应处理,达到自己想要的效果。
通过MQC配置可以实现流量监管、重标记优先级等QoS业务,也可以实现流量统计、策略路由等其他网络常用功能,功能强大,配置灵活。
2 MQC是如何实现的?
2.1 MQC的配置流程
MQC包含三个要素,分别是流分类(traffic classifier)、流行为(traffic behavior)和流策略(traffic policy)。三要素通过下面的方式配合使用完成对流量的处理:
1、 配置流分类定义报文匹配规则
2、 配置流行为确定报文处理动作
3、 配置流策略,并将配置好的流分类和流行为绑定到一起
4、 在指定视图下应用流策略
图一 MQC配置流程图
2.2配置流分类
当用户想要对某类流量进行识别时,需要确定一组流量匹配规则,这个过程称为定义流分类。分类方法丰富多样,常用的报文分类规则有如下几种:
· MAC地址
· VLAN ID
· 802.1p优先级
· EXP优先级
· ACL
· DSCP优先级
· IP优先级
· 所有报文
· 出接口或入接口
通过命令traffic classifier classifier-name [ operator { and | or } ] [ precedence precedence-value ]配置流分类,然后在该流分类中通过if-macth命令配置具体的规则。框式设备可以通过precedence precedence-value 为每个流分类指定优先级,如果不配置,则使用系统默认分配的优先级,即根据用户的配置顺序生效。盒式设备不支持该参数,按照用户的配置顺序生效,报文优先匹配先配置的流分类规则。
一个流分类中可以配置一条规则,也可以配置多条,多条规则之间的关系可以配置为and或者or。规则之间的关系配置为and或者or时,报文匹配流分类的要求不同:
匹配规则 | 流分类中有ACL规则 | 流分类中没有ACL规则 |
---|---|---|
and | 报文必须匹配ACL中的一条rule规则以及所有非ACL规则才属于该类 | 报文必须匹配所有非ACL规则才属于该类 |
or | 报文只需匹配流分类中的一个或多个规则即属于该类 |
以下面两个流分类为例,对于tc1来说,报文必须同时匹配ACL2001(或者ACL3001),802.1p优先级为5和三层协议类型为IP协议三个规则时才属于该类。
[switch] traffic classifier tc1 operator and
[switch-classifier-tc1] if-match acl 2001
[switch-classifier-tc1] if-match 8021p 5
[switch-classifier-tc1] if-match acl 3001
[switch-classifier-tc1] if-match protocol ip
对于tc2来说,报文匹配ACL3001或者报文802.1p优先级为6时都属于该类。
[switch] traffic classifier tc2 operator or
[switch-classifier-tc2] if-match acl 3001
[switch-classifier-tc2] if-match 8021p 6
2.3配置流行为
前面通过流分类对报文进行了分类,那分类的目的是什么呢?就是对不同类型的报文(或者说不同业务)提供不同的服务,而不同的服务就是通过流行为来定义的。配置时需要通过命令traffic behavior behavior-name定义一个流行为,然后在流行为中配置具体的流动作。常用的流动作包括以下几种:
流动作 | 命令关键字 |
---|---|
报文过滤 | deny | permit |
重标记 | remark |
重定向和策略路由 | redirect |
流量统计 | statistic enable |
流量监管 | car |
流镜像 | mirroring to observe-port |
如果配置流动作为重标记,表示对报文重新进行分类,可以重标记报文的802.1p优先级、DSCP优先级、本地优先级、目的MAC地址、流ID等等。重标记报文的802.1p优先级和DSCP优先级会影响下游设备对报文的QoS处理,不影响报文在本设备的QoS处理;重标记本地优先级则仅影响本设备对报文的QoS处理。
在一个流行为中可以定义一个或多个动作,如下流行为tb1表示对匹配分类的报文进行流量监管,限速为4096kbit/s,同时进行流量统计。
[switch]traffic behavior tb1
[switch-behavior-tb1] car cir 4096
[switch-behavior-tb1] statistic enable
流行为tb2表示将匹配分类的报文重定向到下一跳10.10.10.1。
[switch] traffic behavior tb2
[switch-behavior-tb2] redirect ip-nexthop 10.10.10.1
不同的流动作之间可能会存在互斥,即同一个流行为中,某些动作不能同时配置。比如流动作deny与流镜像之外的其他动作不能在一个流行为中配置。
ACL与MQC经常组合使用。ACL里面的permit/deny与traffic behavior中的permit/deny组合使用时有如下四种情况:
ACL | Traffic policy****中的behavior | 匹配报文的最终处理结果 |
---|---|---|
permit | permit | permit |
permit | deny | deny |
deny | permit | deny |
deny | deny | deny |
2.4配置流策略
前面配置的流分类、流行为是孤立的,本身没任何意义,所以必须将两者联系在一起才有意义,而流策略就是把两者绑定起来。流分类规则和流行为定义好之后,通过命令traffic policy policy-name [ match-order { auto | config } ]配置一个流策略,然后通过classifier classifier-name behavior behavior-name将流分类和流行为绑定到一起,组成一个特定的策略。
以下面的配置为例,流策略tp1表示对匹配tc1规则的报文执行tb1的动作,对匹配tc2规则的报文执行tb2动作。
[switch] traffic policy tp1 match-order config
[switch-trafficpolicy-tp1] classifier tc1 behavior tb1
[switch-trafficpolicy-tp1] classifier tc2 behavior tb2
l 流策略tp1的配置顺序为config,匹配顺序由流分类规则优先级决定:
² 如果未配置优先级,或者不支持流分类规则优先级配置,则按照配置顺序生效。tc1先配置,因此报文优先匹配tc1的规则,执行tb1的动作,匹配之后不会再进行下一步规则查找。
² 如果框式设备配置了流分类规则优先级,则按照优先级配置大小生效,数值越小,优先级越高。
l 如果流策略tp1的配置顺序为auto,匹配顺序由系统预先指定的流分类类型的优先级决定:
² 该优先级由高到低依次为:二层规则+三层规则 > 高级ACL6规则 > 基本ACL6规则 > 二层规则 > 三层规则 > 自定义ACL规则(部分设备在某些情况下,三层规则 > 二层规则)。
² 流分类tc1中定义的规则属于二层规则+三层规则,因此优先级较高,报文优先匹配tc1的规则,执行tb1的动作,匹配之后不会执行tb2的流动作。
l 对于不支持配置match-order参数的盒式设备,报文按照配置顺序进行匹配。
2.5应用流策略
流策略配置完之后,需要选择该策略在设备上生效的范围。流策略可以应用在接口、VLAN和全局的出方向和入方向,其中接口包括物理接口、子接口、VLANIF接口和Eth-Trunk接口等。以接口为例,在指定接口入方向应用某个流策略,表示对进入该接口且匹配流分类规则的流量执行指定动作。如下所示:
[switch] interface GigabitEthernet 1/0/1
[switch-GigabitEthernet1/0/1] traffic-policy tp1 inbound
同一台设备上面可以配置多个流策略,同一个流策略也可以应用在多个视图下。因此报文有可能会同时匹配多个流策略,那到底哪个流策略会生效呢?根据流分类规则是否属于同一类,分为以下两种情况。
当流分类属于同一类时,流策略的生效规则如下图所示:
图二 流策略生效规则示意图一
当流分类规则不属于同一类时,流策略的生效规则如下图所示:
图三 流策略生效规则示意图二
比如,设备上还配置了一个流策略tp2,且应用在VLAN30上。
[switch] traffic policy tp2 match-order config
[switch-trafficpolicy-tp2] classifier tc1 behavior tb1
[switch-trafficpolicy-tp2] quit
[switch] vlan 30
[switch-vlan30] traffic-policy tp2 inbound
从配置可以看出流分类规则均为tc1,但是因为接口的生效优先级高于VLAN,因此只有流策略tp1生效。
3 MQC配置举例
前面我们已经分别介绍了配置MQC的四个步骤,现在我们来看一下一个完整的MQC配置过程是怎样的。
以下面的组网为例,假设部门1的用户均属于VLAN10,部门2的用户均属于VLAN20,用户希望为部门1提供8Mbit/s的带宽,为部门2提供6Mbit/s的带宽。
此处省略接口和VLAN等基本配置。
图四 MQC应用组网图
[LSW1] traffic classifier bumen1
[LSW1-classifier- bumen1] if-match vlan-id 10 //匹配部门1的流量
[LSW1-classifier- bumen1] quit
[LSW1] traffic classifier bumen2
[LSW1-classifier- bumen2] if-match vlan-id 20 //匹配部门2的流量
[LSW1-classifier- bumen2] quit
[LSW1] traffic behavior bumen1
[LSW1-behavior-bumen1] **car cir 8000 pir 10000 green pass //**限制部门1的流量为8Mbit/s
[LSW1-behavior-bumen1] quit
[LSW1] traffic behavior bumen2
[LSW1-behavior-bumen2] **car cir 6000 pir 10000 green pass //**限制部门2的流量为6Mbit/s
[LSW1-behavior-bumen2] quit
[LSW1] traffic policy xiansu
[LSW1-trafficpolicy-xiansu] classifier bumen1 behavior bumen1 //将流分类和流行为绑定
[LSW1-trafficpolicy-xiansu] classifier bumen2 behavior bumen2
[LSW1-trafficpolicy-xiansu] quit
[LSW1] interface gigabitethernet 0/0/3
[LSW1-GigabitEthernet0/0/3] traffic-policy xiansu outbound //在接口出方向应用该策略
[LSW1-GigabitEthernet0/0/3] quit
QoS实现之报文简单分类与标记
MQC中的流分类可以实现报文的分类,流行为可以对报文进行重标记,从而实现对流量的精细化差分服务。而优先级映射则可以根据802.1p优先级、DSCP优先级和本地优先级对报文进行分类,是另一种报文分类和标记的方法。。
1 为什么要有优先级映射?
优先级映射用来实现报文携带的QoS优先级与设备本地优先级(即设备内部区分报文的服务等级)之间的转换,然后设备根据本地优先级提供有差别的QoS服务。
携带QoS优先级的报文到达设备后,外部优先级(如802.1p、DSCP)被映射成设备的本地优先级,这样设备才能够识别出该如何处理报文。报文离开设备时,本地优先级又被映射成外部优先级,从而保证报文到达下一台设备时,设备能够继续根据报文中的优先级字段提供差分服务。也就是说,通过优先级映射对报文分类是基础,是有区别地实施服务的前提。
用户可以根据网络规划在不同网络中使用不同的QoS优先级字段,例如在二层网络中使用802.1p优先级,三层网络中使用DSCP优先级,MPLS网络中使用EXP优先级。
本期专题主要介绍二层和三层网络中的优先级映射。
2 QoS优先级字段
既然有优先级映射,那我们就有必要先来了解一下报文里的哪些字段可以用来标识优先级。
2.1 VLAN帧头中的802.1p优先级
根据IEEE 802.1Q定义,VLAN帧头中的PRI字段(即802.1p优先级),或称为CoS(Class of Service)字段,标识了服务质量需求。VLAN帧中的PRI字段位置如图1所示。
在802.1Q头部中包含3比特长的PRI字段。PRI字段定义了8种业务优先级CoS,按照优先级从高到低顺序取值为7、6、5、4、3、2、1和0。
2.2 IP报文头中的IP Precedence字段和DSCP字段
RFC 791中将IP报文头中的ToS域的最高3位称为Precedence字段,标识8个IP优先级,从高到低顺序取值为7、6、5、4、3、2、1和0。
RFC 791定义的ToS域中,除了Precedence字段外,ToS域中还包括D、T、R三个比特,分别表示延迟要求、吞吐量和可靠性。
RFC 1349重新定义了ToS域,增加了C比特,表示传输开销。
RFC 2474又重新定义了ToS域,将0位~5位改名为DSCP字段,6位和7位是保留位(用于流控制)。
IP Precedence字段和DSCP字段在报文中的位置如图2所示。
3 DiffServ域模型的优先级映射
3.1 原理介绍
在DiffServ域模型下,优先级映射利用DS域来管理和记录QoS优先级与服务等级、颜色之间的映射关系,其过程如下:
\1. 在报文进入设备时,报文携带的QoS优先级被映射到设备内部服务等级和颜色。
\2. 设备根据报文的服务等级及颜色实现拥塞避免。
\3. 在报文离开设备时,内部服务等级和颜色被映射为QoS优先级。设备根据内部服务等级与QoS优先级之间的映射关系确定报文进入的队列,从而针对队列进行流量整形、拥塞避免、队列调度等处理。设备可以修改报文发送出去时所携带的QoS优先级,以便其他设备根据报文携带的优先级提供相应的QoS服务。
将QoS优先级映射到服务等级、颜色是对入方向的报文进行,而将服务等级、颜色映射为QoS优先级则是对出方向的报文进行,如图3所示。
图3 QoS优先级映射
这里提到了服务等级和颜色的概念,下面我们分别来介绍一下。
3.1.1 服务等级
服务等级,也叫本地优先级,是指报文在设备内部的服务质量,它决定了报文在设备内部所属的队列类型。服务等级以PHB(Per Hop Behavior)表示。
每一个DS节点上对报文的处理称为PHB。PHB描述了DS节点对报文采用的外部可见的转发行为。PHB可以用优先级来定义,也可以用一些可见的服务特征如报文延迟、抖动或丢包率来定义。PHB只定义了一些外部可见的转发行为,没有指定特定的实现方式。
最初,RFC定义了四种标准的PHB:
l CS(Class Selector,选择类器)
l EF(Expedited Forwarding,加速转发)
l AF(Assured Forwarding,确保转发)
l BE(Best-Effort,尽力而为),为缺省的PHB
在RFC 2474中,CS又被划分为两个等级,即CS6和CS7。
在RFC 2597中,AF又被划分为四个等级,即为AF1~AF4。每个等级又有3个丢弃优先级,其表达形式为:AF1xAF4x(x代表丢弃优先级,按照从低到高的丢弃优先级,取值为13)。
至此,PHB共有8个细分级别,按优先级从高到低依次为CS7、CS6、EF、AF4、AF3、AF2、AF1、BE。RFC定义的与之对应的DSCP优先级如表1所示。
表1 RFC定义的PHB及与之对应的DSCP优先级
PHB | DSCP****优先级 |
---|---|
CS7 | 56 |
CS6 | 48 |
EF | 46 |
AF4 | 34,36,38(对应AF41,AF42,AF43) |
AF3 | 26,28,30(对应AF31,AF32,AF33) |
AF2 | 18,20,22(对应AF21,AF22,AF23) |
AF1 | 10,12,14(对应AF11,AF12,AF13) |
BE | 0 |
CS7和CS6,默认用于协议报文,如企业内部各个交换机之间的STP报文、LLDP报文、LACP报文等。如果这些报文无法接收会引起协议中断。
EF用于承载VoIP语音的流量,或者企业内部视频会议的数据流,因为语音业务的报文要求低延迟、低抖动、低丢包率,其重要程度仅次于协议报文。
AF4用来承载语音的信令流量,即VoIP业务的协议报文。
AF3可以用作远端设备的Telnet、FTP等服务。这些业务对带宽要求适当,但是对网络时延、抖动都非常敏感,同时要求完全可靠的传输,不能出现丢包。
AF2可以用来承载企业内部IPTV的直播流量,可以保证在线视频业务的流畅性。直播业务的实时性强,需要有连续性和大吞吐量的保证,但是允许小规模的丢包。
AF1用作企业内部普通数据流业务,例如E-Mail。普通数据对实时性和抖动等因素要求都不高,只要保证不丢包的传达即可。
BE用于尽力而为的服务,用作不紧急、不重要、不需要负责的业务,如HTTP网页浏览业务。
3.1.2 颜色
颜色是指报文在设备内部的丢弃优先级,用于决定当一个队列发生拥塞时报文的丢弃顺序,对本地优先级与队列的映射关系没有影响。颜色有3种取值,IEEE定义的优先级从低到高依次为Green、Yellow、Red。
丢弃优先级的高低实际取决于对应参数的配置。例如,配置Green最大只能使用50%缓存,Red最大可以使用100%缓存,则Green的丢弃优先级比Red高。所以并不是标记为Red的报文一定比标记为Green的报文丢弃优先级就高。
3.2 优先级映射关系
DiffServ域模型下,优先级映射的核心内容是配置优先级与PHB行为/颜色之间的映射关系。设备上有一个default域,它定义了缺省情况下报文的优先级和PHB行为/颜色之间的映射关系。default域可以修改,但不能删除。除了default域外,用户也可以根据需要创建新的DiffServ域,并指定报文的优先级和PHB行为/颜色之间的映射关系。
下面我们就来介绍default域中不同报文优先级与PHB行为/颜色之间的映射关系。
3.2.1 802.1p优先级的映射关系
在DiffServ域模型中,接口入方向上VLAN报文的802.1p优先级和PHB行为/颜色之间的缺省映射关系如表2所示。
表2 DiffServ域接口入方向802.1p优先级到PHB行为/颜色的缺省映射关系
802.1p****优先级 | PHB****行为 | 颜色 |
---|---|---|
0 | BE | Green |
1 | AF1 | Green |
2 | AF2 | Green |
3 | AF3 | Green |
4 | AF4 | Green |
5 | EF | Green |
6 | CS6 | Green |
7 | CS7 | Green |
在DiffServ域模型中,接口出方向上VLAN报文的PHB行为/颜色到802.1p优先级之间的缺省映射关系如表3所示。
表3 DiffServ域接口出方向PHB行为/颜色到802.1p优先级之间的缺省映射关系
PHB****行为 | 颜色 | 802.1p****优先级 |
---|---|---|
BE | Green、Yellow、Red | 0 |
AF1 | Green、Yellow、Red | 1 |
AF2 | Green、Yellow、Red | 2 |
AF3 | Green、Yellow、Red | 3 |
AF4 | Green、Yellow、Red | 4 |
EF | Green、Yellow、Red | 5 |
CS6 | Green、Yellow、Red | 6 |
CS7 | Green、Yellow、Red | 7 |
从表2和表3可以看出,缺省情况下:
l VLAN报文在DiffServ域接口入方向上,802.1优先级(从低到高)与PHB行为(从BE到CS7)是一一对应的,且报文颜色全部是Green。
l VLAN报文在DiffServ域接口出方向上,PHB行为(从BE到CS7)与802.1优先级(从低到高)是一一对应的,不管报文的颜色是Green、Yellow还是Red。
也许你已经发现,**在入方向上,缺省情况下不管VLAN报文的802.1p优先级是多少,颜色始终都是Green,为什么在出方向上,会出现不同颜色的报文呢?**这里我们先卖个关子,稍后再作解释。
3.2.2 DSCP优先级的映射关系
在DiffServ域模型中,接口入方向上IP报文的DSCP优先级和PHB行为/颜色之间的缺省映射关系如表4所示。
表4 DiffServ域接口入方向DSCP优先级到PHB行为/颜色的缺省映射关系
DSCP****优先级 | PHB****行为 | 颜色 | DSCP****优先级 | PHB****行为 | 颜色 |
---|---|---|---|---|---|
8 | AF1 | Green | 28 | AF3 | Yellow |
10 | AF1 | Green | 30 | AF3 | Red |
12 | AF1 | Yellow | 32 | AF4 | Green |
14 | AF1 | Red | 34 | AF4 | Green |
16 | AF2 | Green | 36 | AF4 | Yellow |
18 | AF2 | Green | 38 | AF4 | Red |
20 | AF2 | Yellow | 40 | EF | Green |
22 | AF2 | Red | 48 | CS6 | Green |
24 | AF3 | Green | 56 | CS7 | Green |
26 | AF3 | Green | 0~63之间的其它优先级 | BE | Green |
在DiffServ域模型中,接口出方向上IP报文的PHB行为/颜色到DSCP优先级之间的缺省映射关系如表5所示。
表5 DiffServ域接口出方向PHB行为/颜色到DSCP优先级之间的缺省映射关系
PHB****行为 | 颜色 | DSCP****优先级 |
---|---|---|
BE | Green、Yellow、Red | 0 |
AF1 | Green | 10 |
AF1 | Yellow | 12 |
AF1 | Red | 14 |
AF2 | Green | 18 |
AF2 | Yellow | 20 |
AF2 | Red | 22 |
AF3 | Green | 26 |
AF3 | Yellow | 28 |
AF3 | Red | 30 |
AF4 | Green | 34 |
AF4 | Yellow | 36 |
AF4 | Red | 38 |
EF | Green、Yellow、Red | 46 |
CS6 | Green、Yellow、Red | 48 |
CS7 | Green、Yellow、Red | 56 |
3.3 本地优先级
前面我们提到一个疑问:**在入方向上,缺省情况下不管VLAN报文的802.1p优先级是多少,颜色始终都是Green,为什么在出方向上,会出现不同颜色的报文呢?**有两种可能的原因:
l 在配置入方向优先级映射时,用户可以根据需要通过命令8021p-inbound 8021p-value phb service-class [ green | yellow | red ]指定报文的颜色。如果不指定,则默认报文为Green。
l 报文经过入方向优先级映射进入设备之后,在经过出方向映射离开设备之前,还有一个设备本地的处理过程。在这个过程中,设备用本地优先级来标识报文。用户可以根据需要通过命令remark local-precedence { local-precedence-name | local-precedence-value } [ green | yellow | red ]对报文在设备内部进行重新分类,也就是重标记报文的本地优先级,并且可以指定报文的颜色。因此,在出方向上,会出现不同颜色的报文。
在设备内部,报文的本地优先级与端口队列也是一一对应的,如表6所示。
表6 本地优先级与各队列之间的对应关系表(框式交换机的部分单板、盒式交换机)
本地优先级 | 队列索引 |
---|---|
BE | 0 |
AF1 | 1 |
AF2 | 2 |
AF3 | 3 |
AF4 | 4 |
EF | 5 |
CS6 | 6 |
CS7 | 7 |
对于框式交换机的一些单板(具体型号请参看产品文档),报文的本地优先级与端口队列的对应关系如表7所示。
表7本地优先级与各队列之间的对应关系表(框式交换机的部分单板)
本地优先级 | 队列索引 |
---|---|
BE(非已知单播报文) | 0 |
AF1(非已知单播报文) | 1 |
AF2(非已知单播报文) | 1 |
AF3(非已知单播报文) | 1 |
AF4(非已知单播报文) | 2 |
EF(非已知单播报文) | 2 |
CS6(非已知单播报文) | 6 |
CS7(非已知单播报文) | 6 |
BE(已知单播报文) | 0 |
AF1(已知单播报文) | 1 |
AF2(已知单播报文) | 2 |
AF3(已知单播报文) | 3 |
AF4(已知单播报文) | 4 |
EF(已知单播报文) | 5 |
CS6(已知单播报文) | 6 |
CS7(已知单播报文) | 7 |
说明:
l VLAN报文和IP报文都可以进行本地优先级重标记。
l 重标记报文的本地优先级,仅会影响当前设备对报文的QoS处理。
l 重标记报文本地优先级的同时,报文的调度队列也会被修改。
l 重标记报文本地优先级仅对设备入方向的报文生效。
4 qos map-table模型下的优先级映射
4.1 原理介绍
在qos map-table模型下,优先级映射实现从IP优先级到802.1p、IP优先级的映射,以及从DSCP到802.1p、丢弃优先级、DSCP优先级的映射,其过程如下:
\1. 在报文进入设备时,在端口信任报文携带的DSCP或者IP优先级的情况下,DSCP或者IP根据map-table被映射为802.1p优先级。
\2. 设备根据802.1p与本地优先级之间默认的映射关系确定报文进入的队列,从而针对队列进行流量整形、拥塞避免、队列调度等处理。
\3. 在报文离开设备时,设备修改报文发送出去时所携带的优先级,以便其他设备根据报文的优先级提供相应的QoS服务。
**说明:**仅部分盒式交换机不支持DiffServ域模型下的优先级映射,只支持qos map-table模型下的优先级映射。
qos map-table模型下,优先级映射配置的核心内容是配置DSCP优先级/IP优先级与其他优先级之间的映射关系。设备上定义了缺省的qos map-table映射关系表,下面我们就来介绍一下这些缺省映射关系表。
4.2 DSCP优先级与其他优先级的映射
qos map-table模型下,DSCP优先级可以映射成802.1p优先级、丢弃优先级(DP)或DSCP优先级。
DSCP到802.1p、DP优先级的缺省映射关系如表8所示。
表8 DSCP到802.1p、DP优先级的缺省映射关系表
Input DSCP****优先级 | Output 802.1p****优先级 | Output DP****优先级 |
---|---|---|
0~7 | 0 | 0 |
8~15 | 1 | 0 |
16~23 | 2 | 0 |
24~31 | 3 | 0 |
32~39 | 4 | 0 |
40~47 | 5 | 0 |
48~55 | 6 | 0 |
56~63 | 7 | 0 |
缺省情况下,DSCP到DSCP的优先级映射关系是一一对应的。
4.3 IP优先级与其他优先级的映射
qos map-table模型下,IP优先级可以映射成802.1p优先级或IP优先级。IP优先级到802.1p、IP优先级的缺省映射关系如表9所示。
表9 IP到802.1p、IP优先级的缺省映射关系表
Input IP****优先级 | Output 802.1p****优先级 | Output IP****优先级 |
---|---|---|
0 | 0 | 0 |
1 | 1 | 1 |
2 | 2 | 2 |
3 | 3 | 3 |
4 | 4 | 4 |
5 | 5 | 5 |
6 | 6 | 6 |
7 | 7 | 7 |
4.4 802.1p优先级到本地优先级的映射
从直观上来看,qos map-table模型下,设备是将进入设备的报文中携带的DSCP优先级、IP优先级,映射成了离开设备时报文携带的另一种优先级。
而实际上,在设备内部,也有一个本地处理的过程。所有进入设备的报文,其外部优先级字段都是先被映射为802.1p优先级,再根据802.1p优先级映射为本地优先级;设备根据本地优先级进行队列调度的QoS处理。
缺省情况下,802.1p优先级到本地优先级的映射关系如表10所示。
表10 802.1p优先级到本地优先级的映射关系
802.1p****优先级 | 本地优先级 |
---|---|
0 | BE |
1 | AF1 |
2 | AF2 |
3 | AF3 |
4 | AF4 |
5 | EF |
6 | CS6 |
7 | CS7 |
**说明:**设备采用缺省的802.1p优先级到本地优先级的映射关系,且该映射关系不可修改。
5 优先级映射配置举例
前面我们详细介绍了优先级映射的原理及设备上的缺省映射关系。下面我们结合具体的示例,来看一下两种模型下优先级映射的配置。
5.1 DiffServ域模型下的配置举例
用户需求
如图4所示,SwitchA通过接口GE0/0/3与SwitchB互连,SwitchB与路由器互连。部门1和部门2可经由SwitchA、SwitchB和路由器访问网络。部门1和部门2分别属于VLAN 100和VLAN 200。
来自部门1和2的报文802.1p优先级均为0,但是部门1的服务等级高,需要得到更好的QoS保证。通过定义DiffServ域,将来自部门1的数据报文优先级映射为4,将来自部门2的数据报文优先级映射为2,以提供差分服务。
图4 优先级映射组网图(DiffServ域模型)
配置思路
采用如下的思路配置优先级映射:
\1. 创建VLAN,并配置各接口,部门1和部门2都能够通过Switch访问网络。
\2. 创建DiffServ域,将802.1p优先级映射为PHB行为和颜色。
\3. 在SwitchA入接口GE0/0/1和GE0/0/2上绑定DiffServ域。
配置过程
SwitchA上的关键配置:
# 在SwitchA上创建DiffServ域domain1、domain2,并配置将部门1和部门2的802.1p优先级映射到本地优先级。
[SwitchA] diffserv domain domain1
[SwitchA-dsdomain-domain1] 8021p-inbound 0 phb af4 green
[SwitchA-dsdomain-domain1] quit
[SwitchA] diffserv domain domain2
[SwitchA-dsdomain-domain2] 8021p-inbound 0 phb af2 green
[SwitchA-dsdomain-domain2] quit
# 将DiffServ域domain1和domain2分别绑定到接口GE0/0/1、GE0/0/2。
[SwitchA] interface gigabitethernet 0/0/1
[SwitchA-GigabitEthernet0/0/1] trust upstream domain1
[SwitchA-GigabitEthernet0/0/1] quit
[SwitchA] interface gigabitethernet 0/0/2
[SwitchA-GigabitEthernet0/0/2] trust upstream domain2
[SwitchA-GigabitEthernet0/0/2] quit
配置完成后,可以通过命令display diffserv domain [ all | name ds-domain-name ]查看配置。
配置验证
使用测试仪,分别模拟部门1和部门2向SwitchA的接口GE0/0/1和GE0/0/2发送报文。发送的报文分别属于VLAN 100和VLAN 200,携带的802.1p优先级为0。
接口GE0/0/1上接收到的报文如下图所示:
接口GE0/0/2接口上接收到的报文如下图所示:
报文到达接口,设备对报文进行优先级映射,然后通过接口GE0/0/3向SwitchB转发。在SwitchB上对接收到的报文进行抓包,可以看到:
l VLAN 100的报文其802.1p优先级被映射为4
l VLAN200的报文其802.1p优先级被映射为2
后续用户可以根据报文的802.1p优先级,配置其他QoS功能,实现差分服务。
现在,我们以SwitchA上接口GE0/0/1接收到的报文为例,再重新回顾一下设备对报文进行优先级映射的整个过程:
\1. 接口GE0/0/1接收到来自VLAN 100、802.1p优先级为0的报文。根据8021p-inbound 0 phb af4 green命令,将其PHB映射成AF4。
\2. 由于没有修改本地优先级与各队列之间的对应关系,SwitchA使用缺省的映射关系,因此报文进入队列4。
\3. SwitchA通过接口GE0/0/3的队列4将报文向SwitchB转发,可以在SwitchA上通过执行命令display qos queue statistics加以验证。这里只给出SwitchA上接口GE0/0/3队列4的显示信息,display回显中的其他队列的显示信息省略。
[SwitchA] display qos queue statistics interface GigabitEthernet 0/0/3
------------------------------------------------------------
Queue ID : 4
CIR(kbps) : 0
PIR(kbps) : 1,000,000
Used Length(byte) : 0
Passed Packets : 123,706,860
Passed Rate(pps) : 412,356
Passed Bytes : 12,865,511,178
Passed Rate(bps) : 343,080,272
Dropped Packets : 0
Dropped Rate(pps) : 0
Dropped Bytes : 0
Dropped Rate(bps) : 0
------------------------------------------------------------
可以看出,SwitchA的接口GE0/0/3通过队列4向SwitchB发送的报文数量,与SwitchA的接口GE0/0/1接收到的测试仪发送的报文数量基本一致。
如果SwitchA上通过命令qos local-precedence-queue-map local-precedence queue-index改变本地优先级与队列之间的对应关系,则在接口GE0/0/3上报文的队列将被改变。例如SwitchA上配置qos local-precedence-queue-map af4 7后,SwitchA会通过接口GE0/0/3的队列7将报文向SwitchB转发。
[SwitchA] display qos queue statistics interface GigabitEthernet 0/0/3
------------------------------------------------------------
Queue ID : 7
CIR(kbps) : 0
PIR(kbps) : 1,000,000
Used Length(byte) : 0
Passed Packets : 124,574,406
Passed Rate(pps) : 349,039
Passed Bytes : 15,928,667,594
Passed Rate(bps) : 290,400,352
Dropped Packets : 0
Dropped Rate(pps) : 0
Dropped Bytes : 0
Dropped Rate(bps) : 0 ------------------------------------------------------------
可以看出,SwitchA的接口GE0/0/3通过队列7向SwitchB发送的报文数量,与SwitchA的接口GE0/0/1接收到的测试仪发送的报文数量基本一致。
5.2 qos map-table模型下的配置举例
用户需求
如图5所示,SwitchC与路由器互连,部门1和部门2可经由SwitchA和SwitchB访问网络。部门1和部门2分别属于VLAN 100和VLAN 200。
部门1需要得到更好的QoS保证,因此将来自部门1的数据报文DSCP优先级映射为45,将来自部门2的数据报文DSCP优先级映射为30。设备信任报文的DSCP优先级。当拥塞发生时,优先处理DSCP优先级高的报文。
图5 优先级映射组网图(qos map-table模型)
配置思路
采用如下的思路配置优先级映射:
\1. 创建VLAN,并配置各接口,使企业都能够访问网络。
\2. 配置优先级映射,将来自部门1的数据报文DSCP优先级映射为45,将来自部门2的数据报文DSCP优先级映射为30。
配置过程
SwitchA上的关键配置:
# 配置接口信任报文的DSCP优先级。
[SwitchA] interface gigabitethernet 0/0/1
[SwitchA-GigabitEthernet0/0/1] trust dscp
[SwitchA-GigabitEthernet0/0/1] quit
[SwitchA] interface gigabitethernet 0/0/2
[SwitchA-GigabitEthernet0/0/2] trust dscp
[SwitchA-GigabitEthernet0/0/2] quit
# 配置优先级映射。
[SwitchA] qos map-table dscp-dscp
[SwitchA-dscp-dscp] input 0 to 63 output 45
[SwitchA-dscp-dscp] quit
SwitchB上的关键配置:
# 配置接口信任报文的DSCP优先级。
[SwitchB] interface gigabitethernet 0/0/1
[SwitchB-GigabitEthernet0/0/1] trust dscp
[SwitchB-GigabitEthernet0/0/1] quit
[SwitchB] interface gigabitethernet 0/0/2
[SwitchB-GigabitEthernet0/0/2] trust dscp
[SwitchB-GigabitEthernet0/0/2] quit
# 配置优先级映射。
[SwitchB] qos map-table dscp-dscp
[SwitchB-dscp-dscp] input 0 to 63 output 30
[SwitchB-dscp-dscp] quit
配置完成后可以通过命令display qos map-table dscp-dscp查看配置的映射关系表。
配置验证
使用测试仪,分别模拟部门1和部门2向SwitchA、SwitchB的接口GE0/0/1发送报文。发送的报文分别属于VLAN 100和VLAN 200,携带的DSCP优先级为0。
在SwitchA、SwitchB的接口GE0/0/2上可以看到,报文的DSCP优先级分别被改成45和30。
验证过程与“5.1 DiffServ域模型下的配置举例”中的验证过程类似,通过抓包查看报文的DSCP优先级即可,具体过程不再赘述。
配置案例
1、配置MQC实现流量监管示例
组网拓扑
组网需求
Switch通过接口GE2/0/1与路由器互连,企业可经由Switch和路由器访问网络,如[图1](mk:@MSITStore:D:\华为文档\常用\S7700 V200R022C10 产品文档(chm)\S7700 V200R022C10 产品文档.chm::/dc/dc_cfg_qos_1134.html#ZH-CN_TASK_0177111490__fig_dc_cfg_qos_013401)所示。
语音业务对应的VLAN ID为120,视频业务对应的VLAN ID为110,数据业务对应的VLAN ID为100。
在Switch上需要对不同业务的报文分别进行流量监管,以将流量限制在一个合理的范围之内,并保证各业务的带宽需求。
不同业务对于服务质量的需求不同,语音业务对服务质量要求最高,视频业务次之,数据业务要求最低,所以在Switch中还需要重标记不同业务报文的DSCP优先级,以便于路由器按照报文的不同优先级分别进行处理,保证各种业务的服务质量。
配置思路
采用如下的思路配置MQC实现流量监管:
- 创建VLAN,并配置各接口,使企业能够通过Switch访问网络。
- 在Switch上配置基于VLAN ID进行流分类的匹配规则。
- 在Switch上配置流行为,对报文进行流量监管并且重标记报文的DSCP优先级。
- 在Switch上配置流量监管策略,绑定已配置的流行为和流分类,并应用到Switch与LSW连接的接口上。
操作步骤
-
创建VLAN并配置各接口
# 在Switch上创建VLAN 100、110、120。
<HUAWEI> system-view [HUAWEI] sysname Switch [Switch] vlan batch 100 110 120
# 将接口GE1/0/1、GE2/0/1的接入类型分别配置为trunk,并分别将接口GE1/0/1和GE2/0/1加入VLAN 100、VLAN 110、VLAN 120。
[Switch] interface gigabitethernet 1/0/1 [Switch-GigabitEthernet1/0/1] port link-type trunk [Switch-GigabitEthernet1/0/1] port trunk allow-pass vlan 100 110 120 [Switch-GigabitEthernet1/0/1] quit [Switch] interface gigabitethernet 2/0/1 [Switch-GigabitEthernet2/0/1] port link-type trunk [Switch-GigabitEthernet2/0/1] port trunk allow-pass vlan 100 110 120 [Switch-GigabitEthernet2/0/1] quit
-
配置流分类
# 在Switch上创建流分类c1~c3,对不同业务流按照其VLAN ID进行分类。
[Switch] traffic classifier c1 operator and [Switch-classifier-c1] if-match vlan-id 120 [Switch-classifier-c1] quit [Switch] traffic classifier c2 operator and [Switch-classifier-c2] if-match vlan-id 110 [Switch-classifier-c2] quit [Switch] traffic classifier c3 operator and [Switch-classifier-c3] if-match vlan-id 100 [Switch-classifier-c3] quit
-
配置流量监管行为
# 在Switch上创建流行为b1~b3,对不同业务流进行流量监管以及重标记优先级。
[Switch] traffic behavior b1 [Switch-behavior-b1] car cir 2000 pir 10000 green pass [Switch-behavior-b1] remark dscp 46 [Switch-behavior-b1] statistic enable [Switch-behavior-b1] quit [Switch] traffic behavior b2 [Switch-behavior-b2] car cir 4000 pir 10000 green pass [Switch-behavior-b2] remark dscp 30 [Switch-behavior-b2] statistic enable [Switch-behavior-b2] quit [Switch] traffic behavior b3 [Switch-behavior-b3] car cir 4000 pir 10000 green pass [Switch-behavior-b3] remark dscp 14 [Switch-behavior-b3] statistic enable [Switch-behavior-b3] quit
-
配置流量监管策略并应用到接口上
# 在Switch上创建流策略p1,将流分类和对应的流行为进行绑定并将流策略应用到接口GE1/0/1入方向上,对报文进行流量监管和重标记。
[Switch] traffic policy p1 [Switch-trafficpolicy-p1] classifier c1 behavior b1 [Switch-trafficpolicy-p1] classifier c2 behavior b2 [Switch-trafficpolicy-p1] classifier c3 behavior b3 [Switch-trafficpolicy-p1] quit [Switch] interface gigabitethernet 1/0/1 [Switch-GigabitEthernet1/0/1] traffic-policy p1 inbound [Switch-GigabitEthernet1/0/1] quit
2、配置针对不同网段用户限速示例
组网拓扑
组网需求
Switch通过接口GE3/0/1与路由器互连,用户可经由Switch和路由器访问网络,如图所示。
不同楼层的用户通过不同的接入交换机连接网络,且分别属于不同的网段,针对不同网段的用户提供不同的带宽。同一网段的所有用户共享带宽。
配置思路
采用如下的思路配置针对不同网段用户限速:
- 创建VLAN,并配置各接口,使用户能够通过Switch访问网络。
- 在Switch上配置ACL分别匹配不同的网段。
- 在Switch上配置流分类匹配ACL规则。
- 在Switch上配置流行为,对来自不同楼层的用户报文进行限速。
- 在Switch上配置限速策略,绑定已配置的流行为和流分类,并应用到Switch与路由器连接的接口上。
操作步骤
-
创建VLAN并配置各接口
# 在Switch上创建VLAN 100、200。
<HUAWEI> system-view [HUAWEI] sysname Switch [Switch] vlan batch 100 200
# 将接口GE1/0/1、GE2/0/1的接入类型分别配置为Trunk,并分别将接口GE1/0/1和GE2/0/1加入VLAN 100、VLAN 200。将接口GE3/0/1的接入类型配置为Trunk,并加入VLAN100和VLAN200。
[Switch] interface gigabitethernet 1/0/1 [Switch-GigabitEthernet1/0/1] port link-type trunk [Switch-GigabitEthernet1/0/1] port trunk allow-pass vlan 100 [Switch-GigabitEthernet1/0/1] quit [Switch] interface gigabitethernet 2/0/1 [Switch-GigabitEthernet2/0/1] port link-type trunk [Switch-GigabitEthernet2/0/1] port trunk allow-pass vlan 200 [Switch-GigabitEthernet2/0/1] quit [Switch] interface gigabitethernet 3/0/1 [Switch-GigabitEthernet3/0/1] port link-type trunk [Switch-GigabitEthernet3/0/1] port trunk allow-pass vlan 100 200 [Switch-GigabitEthernet3/0/1] quit
-
配置ACL
# 配置ACL规则匹配不同的网段。
[Switch] acl 2000 [Switch-acl-basic-2000] rule permit source 192.168.1.0 0.0.0.255 [Switch-acl-basic-2000] quit [Switch] acl 2001 [Switch-acl-basic-2001] rule permit source 192.168.2.0 0.0.0.255 [Switch-acl-basic-2001] quit
-
配置流分类
# 在Switch上创建流分类c1、c2,对来自不同楼层的用户进行分类。
[Switch] traffic classifier c1 operator and [Switch-classifier-c1] if-match acl 2000 [Switch-classifier-c1] quit [Switch] traffic classifier c2 operator and [Switch-classifier-c2] if-match acl 2001 [Switch-classifier-c2] quit
-
配置流量监管行为
# 在Switch上创建流行为b1、b2,对不同业务流进行流量监管。
[Switch] traffic behavior b1 [Switch-behavior-b1] car cir 4000 pir 10000 green pass [Switch-behavior-b1] quit [Switch] traffic behavior b2 [Switch-behavior-b2] car cir 6000 pir 10000 green pass [Switch-behavior-b2] quit
-
配置流量监管策略并应用到接口上
# 在Switch上创建流策略p1,将流分类和对应的流行为进行绑定,并将流策略应用到接口GE3/0/1出方向上,对报文进行流量监管。
[Switch] traffic policy p1 [Switch-trafficpolicy-p1] classifier c1 behavior b1 [Switch-trafficpolicy-p1] classifier c2 behavior b2 [Switch-trafficpolicy-p1] quit [Switch] interface gigabitethernet 3/0/1 [Switch-GigabitEthernet3/0/1] traffic-policy p1 outbound [Switch-GigabitEthernet3/0/1] quit
3、配置流量整形示例
组网需求
Switch通过接口GE2/0/1与路由器互连,来自网络侧的业务有语音、视频、数据,携带的802.1p优先级分别为6、5、2,这些业务可经由路由器和Switch到达用户,如[图1](mk:@MSITStore:D:\华为文档\常用\S7700 V200R022C10 产品文档(chm)\S7700 V200R022C10 产品文档.chm::/dc/dc_cfg_qos_0137.html#ZH-CN_TASK_0177111501__fig_dc_cfg_qos_013701)所示。由于来自用户局域网的流量速率大于Router接口的速率,出接口GE2/0/1处可能会发生带宽抖动。为减少带宽抖动,同时保证各类业务带宽要求,现要求如下:
- 接口带宽限制为10000kbit/s。
- 语音带宽限制为3000kbit/s,最大不超过5000kbit/s。
- 视频带宽限制为5000kbit/s,最大不超过8000kbit/s。
- 数据带宽限制为2000kbit/s,最大不超过3000kbit/s。
配置思路
采用如下的思路配置流量整形:
- 创建VLAN,并配置各接口,使用户能够通过Switch访问网络。
- 配置优先级映射,将802.1p优先级映射为PHB行为。
- 配置接口整形功能,限制接口的总带宽。
- 配置端口队列整形功能,限制语音、视频、数据三类业务的带宽。
操作步骤
-
创建VLAN并配置各接口
# 创建VLAN 10。
<HUAWEI> system-view [HUAWEI] sysname Switch [Switch] vlan batch 10
# 将接口GE1/0/1、GE2/0/1的接入类型分别配置为trunk,并分别将接口GE1/0/1、GE2/0/1加入VLAN 10。
[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 2/0/1 [Switch-GigabitEthernet2/0/1] port link-type trunk [Switch-GigabitEthernet2/0/1] port trunk allow-pass vlan 10 [Switch-GigabitEthernet2/0/1] quit
# 创建VLANIF10,并配置网段地址10.10.10.2/24。
[Switch] interface vlanif 10 [Switch-Vlanif10] ip address 10.10.10.2 255.255.255.0 [Switch-Vlanif10] quit
请在Router上的与Switch对接的接口上配置IP地址10.10.10.1/24。
-
配置优先级映射
# 创建DiffServ域ds1,将802.1p优先级6、5、2分别映射为PHB行为CS7、EF、AF2。
[Switch] diffserv domain ds1 [Switch-dsdomain-ds1] 8021p-inbound 6 phb cs7 [Switch-dsdomain-ds1] 8021p-inbound 5 phb ef [Switch-dsdomain-ds1] 8021p-inbound 2 phb af2 [Switch-dsdomain-ds1] quit [Switch] interface gigabitethernet 1/0/1 [Switch-GigabitEthernet1/0/1] trust upstream ds1 [Switch-GigabitEthernet1/0/1] quit
-
配置接口整形
# 在Switch上配置接口整形,将接口速率限制在10000kbit/s。
[Switch] interface gigabitethernet 2/0/1 [Switch-GigabitEthernet2/0/1] qos lr cir 10000 outbound
-
配置端口队列整形
# 在Switch上配置端口队列整形,使语音、视频、数据业务的带宽分别限制为3000kbit/s、5000kbit/s、2000kbit/s,最大分别不超过5000kbit/s、8000kbit/s、3000kbit/s。
[Switch-GigabitEthernet2/0/1] qos queue 7 shaping cir 3000 pir 5000 [Switch-GigabitEthernet2/0/1] qos queue 5 shaping cir 5000 pir 8000 [Switch-GigabitEthernet2/0/1] qos queue 2 shaping cir 2000 pir 3000 [Switch-GigabitEthernet2/0/1] quit [Switch] quit
5.验证配置结果
# 查看DiffServ域ds1的配置信息。
<Switch> display diffserv domain name ds1
# 配置成功后,从接口GE2/0/1发出的报文带宽限制为10000kbit/s;语音业务带宽限制为3000kbit/s,不超过5000kbit/s;视频业务带宽限制为5000kbit/s,不超过8000kbit/s;数据业务带宽限制为2000kbit/s,不超过3000kbit/s。
4、配置层次化流量监管示例
组网需求
Switch通过接口GE2/0/1与Router互连,企业可经由Switch和Router访问网络,如[图1](mk:@MSITStore:D:\华为文档\常用\S12700 V200R012C00 产品文档(chm)\S12700 V200R012C00 产品文档.chm::/dc/dc_cfg_qos_0135.html#dc_cfg_qos_0135__fig_dc_cfg_qos_013501)所示。
在企业网络中,由于网络侧带宽小于企业局域网带宽,在网络侧链路入口处会造成网络拥塞,数据丢失,因此需要对出口带宽进行限制,总带宽限制在12000kbps,另外还需要对语音、视频和数据业务分别进行流量监管将流量限制在一个合理的范围内。
企业的语音业务对应的VLAN ID为120,视频业务对应的VLAN ID分别为110,数据业务对应的VLAN ID为100,不同业务对于服务质量的需求不同,语音业务对服务质量要求最高,视频业务次之,数据业务要求最低,所以在Switch中还需要重标记不同业务报文的DSCP优先级,以便于下游Router按照报文的不同优先级分别进行处理,保证各种业务的服务质量。
具体配置需求如[表1](mk:@MSITStore:D:\华为文档\常用\S12700 V200R012C00 产品文档(chm)\S12700 V200R012C00 产品文档.chm::/dc/dc_cfg_qos_0135.html#dc_cfg_qos_0135__tab_dc_cfg_qos_013501)所示。
配置思路
采用如下的思路配置层次化流量监管:
- 创建VLAN,并配置各接口,使企业能够通过Switch访问网络。
- 配置CAR模板,限制企业语音、数据、视频三种业务的总带宽。
- 在Switch上配置基于VLAN ID进行流分类的匹配规则,区分语音、视频和数据报文。
- 在Switch上配置流行为,对来自企业的报文进行流量监管并且重标记报文的DSCP优先级。
- 在Switch上配置流量监管策略,绑定已配置的流行为和流分类,并应用到企业与Switch连接的接口上。
操作步骤
-
创建VLAN并配置各接口
# 在Switch上创建VLAN 100、110、120。
<HUAWEI> system-view [HUAWEI] sysname Switch [Switch] vlan batch 100 110 120
# 将接口GE1/0/1、GE2/0/1的接入类型分别配置为trunk,并分别将接口GE1/0/1和GE2/0/1加入VLAN 100、VLAN 110、VLAN 120。
[Switch] interface gigabitethernet 1/0/1 [Switch-GigabitEthernet1/0/1] port link-type trunk [Switch-GigabitEthernet1/0/1] port trunk allow-pass vlan 100 110 120 [Switch-GigabitEthernet1/0/1] quit [Switch] interface gigabitethernet 2/0/1 [Switch-GigabitEthernet2/0/1] port link-type trunk [Switch-GigabitEthernet2/0/1] port trunk allow-pass vlan 100 110 120 [Switch-GigabitEthernet2/0/1] quit
2.配置CAR模板
[Switch] qos car car1 cir 12000
3.配置流分类
# 在Switch上创建流分类c1~c3,对来自企业的不同业务流按照其VLAN ID进行分类。
[Switch] traffic classifier c1 operator and
[Switch-classifier-c1] if-match vlan-id 120
[Switch-classifier-c1] quit
[Switch] traffic classifier c2 operator and
[Switch-classifier-c2] if-match vlan-id 110
[Switch-classifier-c2] quit
[Switch] traffic classifier c3 operator and
[Switch-classifier-c3] if-match vlan-id 100
[Switch-classifier-c3] quit
[Switch-classifier-c3] quit
4.配置流量监管行为
# 在Switch上创建流行为b1~b3,对不同业务流进行流量监管以及重标记优先级。
[Switch] traffic behavior b1
[Switch-behavior-b1] car cir 2000 pir 10000 green pass
[Switch-behavior-b1] car car1 share
[Switch-behavior-b1] remark dscp 46
[Switch-behavior-b1] statistic enable
[Switch-behavior-b1] quit
[Switch] traffic behavior b2
[Switch-behavior-b2] car cir 4000 pir 10000 green pass
[Switch-behavior-b2] car car1 share
[Switch-behavior-b2] remark dscp 30
[Switch-behavior-b2] statistic enable
[Switch-behavior-b2] quit
[Switch] traffic behavior b3
[Switch-behavior-b3] car cir 4000 pir 10000 green pass
[Switch-behavior-b3] car car1 share
[Switch-behavior-b3] remark dscp 14
[Switch-behavior-b3] statistic enable
[Switch-behavior-b3] quit
5.配置流量监管策略并应用到接口上
# 在Switch上创建流策略p1,将流分类和对应的流行为进行绑定并将流策略应用到接口GE1/0/1入方向上,对来自企业的报文进行流量监管和重标记。
[Switch] traffic policy p1
[Switch-trafficpolicy-p1] classifier c1 behavior b1
[Switch-trafficpolicy-p1] classifier c2 behavior b2
[Switch-trafficpolicy-p1] classifier c3 behavior b3
[Switch-trafficpolicy-p1] quit
[Switch] interface gigabitethernet 1/0/1
[Switch-GigabitEthernet1/0/1] traffic-policy p1 inbound
[Switch-GigabitEthernet1/0/1] quit
6.验证配置结果
# 查看流分类的配置信息。
[Switch] display traffic classifier user-defined
查看流策略的配置信息,以流策略p1为例。
[Switch] display traffic policy user-defined p1
查看在接口上应用的流策略信息,以接口GE1/0/1为例。
[Switch] display traffic policy statistics interface gigabitethernet 1/0/1 inbound