QoS配置与管理实战——2

                                                              流量监管和流量整形配置

一、流量监管配置综述

流量监管(TP就是对流量进行控制,通过监督进入端口的流量速率,对超出部分的流量进行丢弃,使进入的流量被限制在一个合理的范围之内。配置基于接口的流量监管后,设备将对流入接口上所有的业务流量进行流量监管;配置基于流的流量监管后,设备将对符合流分类规则的报文进行流量监管

在所有华为S系列交换机中均具备以下几种流量监管功能(可同时配置)

1、基于接口的流量监管

基于接口的流量监管是指对进入该接口的所有流量进行控制,而不区分具体报文的类型。监管的结果是丢弃超出速率限制的部分。

2、基于管理网口的流量监管

当设备的管理网口由于恶意攻击、网络异常等原因导致流量过大时,会导致CPU占用率过高,进而影响系统正常运行,需要对管理网口的流量进行限制。

3、基于流的流量监管

基于流的流量监管是指在设备上经过流分类后,对符合流分类的流量进行速率限制。通过监督进入设备的该类流量速率,丢弃超出速率限制的部分。基于流的流量监管采用双令牌桶技术,可实现/入两个方向的端口限速和流限速

S2700SI系列交换机不支持基于流的流量监管。S5700HI/5710EI/7700/9300/9300E/9700系列交换机支持对上行流做两次CAR,即在对符合流分类的上行流做完一次CAR后,将所有的上行流聚合在一起再做一次共享CAR,这里所有的上行流是指满足同一流策略中绑定了配置共享CAR的流行为的流分类的入方向业务流

——所谓的流量监管,看来就是报文速率的管理,超出规定的速率,就进行丢包

二、配置流量监管

华为S系列交换机支持基于接口、基于管理网口和基于流这三种流量监管,用户可以选择配置所需的一种或全部的流量监管功能。

1、配置基于接口的流量监管

基于接口的流量监管是在交换机端口上应用监管策略,控制进入该端口的所有流量的速率,使端口接收的流量被限制在一个合理的范围之内(丢弃超出速率限制的部分)。

(1)S2700/3700/5700/6700系列交换机基于接口的流量监管配置

在S2700/3700/5700/6700系列交换机中,是在对应的接口视图下使用qos lr inbound cir cir-value [cbs cbs-value]命令配置接口入方向上的流量监管速率(出方向上的流量控制是通过流量整形来实现的)。通过执行本命令,如果接口在入方向上收到报文的速率大于配置的流量监管速率,那么该报文被丢弃。如果多个接口需要配置相同的流量监管速率,可通过接口组进行配置,以减少重复配置工作。

cir-value:指定接口承诺信息速率(Committed Information Rate,即保证能够通过的平均速率,单位为kbit/s。

cbs-value:可选参数,指定承诺突发尺寸(Committed Burst Size,即瞬间能够通过的承诺突发流量。单位为byte(字节)。若不指定该参数:单令牌桶时,本参数缺省值为参数cir-value的188倍;双令牌桶时,缺省值为cir-value参数取值的125倍。

(2)在S7700/9300/9300E/9700系列交换机基于接口的流量配置

在S7700/9300/9300E/9700系列交换机中,基于接口的流量配置需要先在系统视图下配置好CAR模板,然后在具体接口下配置监管速率。具体步骤如下:

①在系统视图下通过qos car car-name { cir cir-value [ cbs cbs-value [ pbs pbs-value] | pir pir-value [cbs cbs-value pbs pbs-value]]}命令创建并配置CAR模板。

●car-name:指定QoS CAR模板名称。

●cir-value:二选一参数,指定承诺信息速率,即保证能够通过的平均速率,单位为kbit/s。

●cbs-value:可选参数,指定承诺突发尺寸,即瞬间能够通过的承诺突发流量。单位为byte(字节)。若不指定该参数时同上。

pir-value:二选一参数,指定峰值信息速率(Peak Information Rate,即最大能够通过的速率。单位为kbit/s,本参数值必须大于等于cir-value参数值。

pbs-value:可选参数,指定峰值突发尺寸(Peak Burst Size,即瞬间能够通过的峰值突发流量,单位为byte。本参数值必须大于等于cir-value参数值。缺省为pir-value值的125倍。

当流量监管速率取值超过接口最大速率时,相当于没有对接口实行流量监管。

当cbs-value值小于当前部署业务中单个报文的字节数时,将导致这些报文被直接丢弃。为避免报文颜色识别出现问题,建议配置pbs-value参数值大于cbs-value参数值。

报文的颜色由qos car中的cbs cbs-valuepbs pbs-value参数共同确定。——报文颜色的判断与cirpir无关

●报文的突发尺寸<cbs-value时,报文被标记为绿色。

●cbs-value ≤报文的突发尺寸<pbs-value时,报文被标记为黄色。

●报文的突发尺寸≥pbs-value时,报文被标记为红色。

在本命令创建的QoS CAR模板可以应用到以下具体场景中。

●在流行为视图下,执行car car-name share命令对指定类别的业务流量进行流量监管。

●在接口视图下,执行qos car inbound car-name命令对接口入方向上的所有报文进行流量监管。

●在VLAN视图下应用QoS CAR模板时,执行storm suppression broadcast car-name [share]命令可对VLAN的上行广播流量进行流量监管;执行storm suppression multicast car-name [share]命令可对VLAN的上行组播流量进行流量监管;执行unicast-suppression car-name [share]命令可对VLAN的上行未知单播流量进行流量监管。

②然后在具体接口视图下配置qos car inbound car-name命令,在接口上应用前面创建的CAR模板,以对流入该接口的所有业务流量实施流量监管。如果多个接口需要配置相同的QoS CAR,可通过端口组进行配置。

示例:在S2700/3700/5700/6700系列交换机上限制Eth0/0/1接口入方向上接收数据的承诺信息速率为20000kbit/s,承诺突发尺寸为375000字节。

<Huawei>system-view

[Huawei]interface Ethernet 0/0/1

[Huawei-Ethernent0/0/1]qos lr inbound cir20000 cbs 375000

示例:在S7700/9300/9700系列交换机上,对GE0/0/1接口入方向报文应用名为qoscar1的QoS CAR模板进行流量监管,限制该接口上接收数据的承诺速率为10000kbit/s,承诺突发尺寸为10240字节。

<Huawei>system-view

[Huawei]qos car qoscar1 cir 10000 cbs 10240

[Huawei]interface gigabitethernet 0/0/1

[Huawei-GigabitEthernent0/0/1]qos car inbound qoscar1

[Huawei-GigabitEthernent0/0/1]quit

可通过display qos car{all | name car-name}查看CAR模板的配置信息。

2、配置管理网口的流量监管

基于管理网口的流量监管是专门针对管理端口进行的流量监管,以防一些对管理端口(在S5700/6700系列交换机中为meth0/0/1,S7700/9300/9700系列交换机中为ethernet0/0/0)的恶意攻击。

管理网口的流量监管的配置,就是在对应的管理端口视图下使用qos lr pps packets命令配置对于管理网口的限速功能,即限制管理网口的包速率。参数用来指定管理端口上的包速率,即每秒通过的报文数,单位为pps。

示例:限制S5700系列交换机管理网口Meth0/0/1的包速率为1000pps。

<Huawei>system-view

[Huawei]interface meth 0/0/1

[Huawei-Meth0/0/1]qos lr pps 1000

示例:限制S7700系列交换机管理网口Ethernet0/0/0的包速率为1000pps。

<Huawei>system-view

[Huawei]interface Ethernet 0/0/0

[Huawei-Ethernet0/0/0]qos lr pps 1000

3、配置基于流的流量监管

若需要对接口入方向某类流量进行控制时,不能采用基于接口的流量监管,而是需要采用基于流的流量监管。

基于流的流量监管其实就是一个配置和应用QoS策略的过程,其中包括“定义流分类”、“配置流行为”、“配置流策略”和“应用流策略”四大步骤

(1)定义流分类:可根据报文中的二层信息、三层信息、ACL对不同报文进行分类。

(2)配置流行为:创建流行为,并对不同分类的报文配置对应的流量监管行为。

(3)配置流策略:创建流策略,关联上面定义的流分类和流行为。

(4)应用流策略:在全局、VLAN或具体的交换机端口上应用上面配置的流策略,进行流量监管。在端口上进行流量监管则此端口单独享有端口限制速率,而在全局进行流量监管则所有端口共享端口限制速率。

相同的流策略可以在不同的接口下应用,当匹配流分类规则的报文的接收或发送速率超过限制速率时,直接被丢弃。基于流的流量监管,可以通过流分类,为不同业务提供更细致的差分服务。

在S5700SI、S5700LI和S5700-LI系列交换机中,如果同时配置了接口入方向的流量监管、VLAN的广播流量抑制,以及入方向的基于流的流量监管时,且报文同时符合上述两种或两种以上限速的条件,限速生效的优先级由高到低依次是接口入方向的流量监管、VLAN的广播流量抑制、入方向的基于流的流量监管

三、配置流量整形

流量整形(TS是一种主动调整流量输出速率的措施。当下游设备的入接口速率小于上游设备的出接口速率或发生突发流量时,下游设备入接口处可能出现流量拥塞的情况,此时用户可通过在上游设备的出接口上配置流量整形,将上游不规则的流量得到整形,输出一条速率比较平整的流量,从而解决下游设备的拥塞问题。配置流量整形后,可实现报文的流量以均匀的速率向外发送,减少因超过承诺速率而被丢弃的报文。

与流量监管相同,流量整形也是对流量进行限速。但是利用流量监管进行限速时,系统会直接丢弃不符合速率要求的报文,而流量整形将不符合速率要求的报文先送入队列进行缓存,当令牌桶有足够的令牌时,再均匀地向外发送这些被缓存的报文。流量整形会增加延迟(由于流量整形采用了缓存机制),而流量监管几乎不引入额外的延迟。

华为S系列交换机均支持两种流量整形功能(可同时配置):

●基于接口的流量整形

对接口上所有通过的报文进行流量整形。

●基于队列的流量整形

对接口上通过的某类报文(基于简单流分类)分别进行流量整形,从而可实现针对业务(如话音、数据、视频)的流量整形。

1、基于接口的流量整形配置

如果需要对接口出方向所有流量进行控制,可以配置基于接口的流量整形。当接口发送报文的速率超过限制速率时,超出的那部分报文先进入缓存队列;当令牌桶有足够的令牌时,再均匀地向外发送这些被缓存的报文;当缓存队列已满时,报文将被丢弃

基于接口流量整形的方法是在对应接口下使用qos lr outbound cir cir-value [ cbs cbs-value] (S2700/3700/5700/6700系列中)命令,或qos lr cir cir-value [cbs cbs-value] [ outbound ](S7700/9300/9700系列中)命令进行的。

(1)cir-value:指定接口承诺信息速率,即保证能够通过的平均速率,单位为kbit/s,但不同的接口类型取值范围不同。

(2)cbs-value:可选参数,指定承诺突发尺寸,即瞬间能够通过的承诺突发流量。单位为byte(字节)。若不指定该参数:单令牌桶时,本参数的缺省值为参数cir-value取值的188倍;双令牌桶时,本参数的缺省值为cir-value参数取值的125倍。

示例:在S2700/3700/5700/6700系列中,限制GE0/0/1接口向外发送数据的承诺信息速率为20000kbit/s,承诺突发尺寸为375000字节。

<Huawei>system-view

[Huawei]interface gigabitethernet0/0/1

[Huawei-GigabitEthernet0/0/1]qos lr outbound cir 20000 cbs 375000

示例:在S7700/9300/9700系列中,限制GE1/0/1接口向外发送数据的承诺信息速率为20000kbit/s。承诺突发尺寸为375000字节。

<Huawei>system-view

[Huawei]interface gigabitethernet1/0/1

[Huawei-GigabitEthernet1/0/1]qos lr cir 20000 cbs 375000 outbound

示例:在S7700/9300/9700系列中,通过接口组group1,限制GE1/0/1~GE1/0/6接口的CIR为200000kbit/s,CBS为3750000字节。

<Huawei>system-view

[Huawei]port-group group1

[Huawei-port-group-group1]group-membergigabitethernet 1/0/1 to gigabitethernet 1/0/6

[Huawei-port-group-group1]qos cir 200000cbs 3750000

[Huawei-port-group-group1]quit

2、配置基于接口队列的流量整形

基于接口的流量整形是不区分报文类型的,对所有从该接口发送的报文都进行同样的整形。基于队列的流量整形可以实现对不同类型报文区分整形。对从交换机内部进入到出接口的报文先根据所配置的优先级映射进入到出接口的不同队列,然后针对不同的优先级队列设置不同的流量整形参数,以实现对不同业务的差分服务。因此,在配置基于接口队列的流量整形前,需要配置优先级映射,将报文的优先级映射为PHB行为,从而使不同业务进入到不同的接口队列。——由此可见,队列是每个接口都有的,而且进出方向都有队列,入接口的数据报文按优先级映射进入入接口的队列,设备内部进行交换处理,进入出接口的队列

(1)在除S2700-52P-EI/2700-52P-PWR-EI之外的其他S2700EI系列交换机中,需要在对应的出接口视图下使用qos queue queue-index shaping cir cir-value cbs cbs-value命令进行配置。

(2)在其他S系列交换机中,需要在对应的出接口视图下使用qos queue queue-index shaping cir cir-value pir pir-value [cbscbs-value pbs pbs-value]命令进行配置。

●queue-index:指定队列索引号。

●cir-value:指定接口承诺信息速率,即保证能够通过的平均速率,单位为kbit/s。

●pir-value:指定峰值信息速率,即最大能够通过的速率。单位为kbit/s。缺省值为端口的最大带宽,且必须大于等于cir-value参数值。

●cbs-value:可选参数,指定承诺突发尺寸,即瞬间能够通过的承诺突发流量。单位为byte(字节)。

●pbs-value:指定峰值突发尺寸,即瞬间能够通过的峰值突发流量。单位是byte。

示例:在S2700-52P-EI/2700-52P-PWR-EI系列交换机GE0/0/1端口2队列上配置队列整形功能,参数CIR为1000kbit/s、CBS为125000byte。

<Huawei>system-view

[Huawei]interface gigabitethernet0/0/1

[Huawei-GigabitEthernet0/0/1]qos queue 2 shaping cir 1000 cbs 125000

示例:在S2700-52P-EI/2700-52P-PWR-EI系列之外的S系列交换机GE1/0/1端口4队列上配置队列整形功能,参数CIR为10000kbit/s,PIR为20000kbit/s。

<Huawei>system-view

[Huawei]interface gigabitethernet1/0/1

[Huawei-GigabitEthernet1/0/1]qos queue 4 shaping cir 10000 pir 20000

如果在同一接口下既配置接口队列整形功能,又配置接口整形功能,则接口整形的CIR必须大于等于接口所有队列整形的CIR之和;否则,流量整形会出现异常现象,如低优先级队列抢占高优先级队列的带宽等。

3、(可选)配置接口队列缓存

可以为任一流量整形功能配置接口队列的缓存。缓存大小会影响到队列整形的效果,可以根据网络实际需求,配置接口指定队列缓存大小。修改接口队列缓存前需要使用shutdown命令关闭接口,配置完后使用undo shutdown打开接口,否则配置不生效。

(1)在S2700/3700/5700EI系列交换机中

在具体接口或接口组下使用qos queue queue-index max-length packet-number命令配置接口队列缓存大小。

●queue-index:指定队列索引号。

●packet-number:指定该队列最大可缓存的报文个数。

缺省情况下,队列0可以缓存报文的最大报文个数是400,其他队列可以缓存报文的最大报文个数是89。

示例:在S2700/3700/5700EI系列交换机中配置Gigabitethernet0/0/1接口队列0可以缓存报文的最大报文个数为155.

<Huawei>system-view

[Huawei]interface gigabitethernet1/0/1

[Huawei-GigabitEthernet1/0/1]qos queue 0max-length

(2)在S5700HI/6700/7700/9300/9300E/9700系列交换机中

在具体接口或接口组下使用qos queue queue-index length length-value命令配置接口的优先级队列长度。

●queue-index:指定队列索引号。

●Length-value:指定该队列的最大长度,单位为byte。

示例:在S5700HI/6700/7700/9300/9300E/9700系列交换机中,配置GE1/0/0接口上的优先级队列1的长度为20000字节。

<Huawei>system-view

[Huawei]interface gigabitethernet1/0/0

[Huawei-GigabitEthernet1/0/0]qos queue 1 Length 20000

(3)在S5700SI/5700LI/5700S-LI系列交换机中

在S5700SI/5700LI/5700S-LI系列交换机中,在拥塞发生期间,可以对报文采用尾部丢弃(Tail-Drop)的方法。当队列的长度达到最大值后,所有新入队列的报文(缓存在队列尾部)都将被丢弃,直到拥塞解决。可使用qos queue max-length命令配置接口指定队列可以缓存报文的最大报文个数,确保该队列有足够可用的缓冲区,避免队列因为不能得到缓冲区而丢失流量。采用尾部丢弃法的接口队列缓存的配置比较复杂,步骤如下:

<1>先在系统视图下使用qos tail-drop-profile profile-name命令创建全局尾丢弃模板,并进入尾丢弃模板视图,定义的模板数量不能超过7个。

<2>然后在5700SI/5700-28P-LI/5700-52P-LI系列交换机中使用qos queue queue-index max-length packet-number [green max-length packet-number]命令,在S5700-10P-LI/5700-28X-LI/5700-5X-LI系列交换机中使用qosqueue queue-index green max-length packet-number non-green max-length packet-number命令配置接口队列缓存大小。

●queue-index:指定队列索引号。

●max-length packet-number:指定队列中可以缓存的最大报文个数。

●green max-length packet-number:指定队列中可以缓存绿色报文的最大个数。

●non-green max-length packet-number:指定队列中可以缓存非绿色报文的最大个数。

示例:全局名称为test的尾丢弃模板,配置队列0可以缓存的最大报文个数为200。

<Huawei>system-view

[Huawei]qos tail-drop-profile test

[Huawei-tail-drop-profile-test]qos queue 0 max-length 200

<3>最后在关闭接口或者接口组的情况下,进入对应的接口或接口组视图使用qos tail-drop-profile profile-name命令在接口或接口组下应用指定的尾丢弃模板。

示例:全局创建名称为test的尾丢弃模板,配置队列1的绿色报文最大长度为10,并在GE0/0/1接口下应用该模板。

<Huawei>system-view

[Huawei]qos tail-drop-profile test

[Huawei-tail-drop-profile-test]qos queue 1 green max-length 10

[Huawei-tail-drop-profile-test]quit

[Huawei]interface gigabitethernet 0/0/1

[Huawei-GigabitEthernet0/0/1]qos tail-drop-profiletest

——配置接口队列缓存,就是为每个队列配置其大小,队列就是设备内存的一部分,队列大,内存占用的多,能够缓存的报文就多

四、流量监管和流量整形管理

1、在S2700/3700系列交换机中

(1)执行display qos lr outbound interface interface-type interface-number查看指定接口上的速率限制信息。

(2)执行reset traffic policy statistics {global [slot slot-id] | interface interface-typeinterface-number | vlan vlan-id} inbound可清除全局、指定接口或指定VLAN下应用的流策略的统计信息。

(3)在S2700-52P-EI/2700-52P-PWR-EI/3700SI/3700EI系列交换机上执行reset qos queue statistics [queue queue-index {inbound interface interface-typeinterface-number | outbound interface interface-type interface-number [from interface{interface-type interface-number | all}]}]命令可清除接口上基于队列的流量统计信息。

2、在S5700/6700系列交换机中

在S5700SI和S5700Ei系列交换机中查看接口队列的整形参数之前,需要先执行qos queue statistics enable命令使能对指定接口队列的统计功能。

(1)displayTraffic policy statistics {global [slot slot-id] | interface int-type int-num |vlan vlan-id} {inbound | outbound} [verbose {classifier-base | rule-base}[class classifier-name]]查看基于流的流量统计信息。

(2)在S5700Si中,display qosqueue statistics [queue queue-index outbound interface interface-typeinterface-number]命令查看接口队列的统计信息。

(3)在S5700EI中,display qosqueue statistics [queue queue-index {inbound interface interface-typeinterface-number  | outbound interfaceinterface-type interface-number [from interface {interface-typeinterface-number | all}]}]查看接口队列的统计信息。

(4)在S5700HI/5710EI/5700LI/5700S-LI/6700中,display qosqueue statistics interface interface-type interface-number查看接口队列的统计信息。

3、在S7700/9300/9700系列交换机中

(1)displaytraffic policy statistics  {global [slotslot-id] | interface int-type int-num | vlan vlan-id} {inbound | outbound}[verbose {classifier-base | rule-base} [class classifier-name]]查看基于流的流量统计信息。

(2)display qoscar statistics interface interface-type interface-number inbound查看配置基于接口的流量监管后指定接口上通过和丢弃的报文统计信息。

(3)display qosqueue statistics interface interface-type interface-number查看接口上基于队列的流量统计信息。

这里考虑到这样一个问题,就是队列缓存与CBS的关系,队列缓存应该要大于CBS,否则的话,报文还没有达到CBS,因队列已满就开始丢包了。

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值