21-QoS操作
本章节下载: 21-QoS操作 (499.88 KB)
目 录
QoS(Quality of Service,服务质量)是各种存在服务供需关系的场合中普遍存在的概念,它评估服务方满足客户服务需求的能力。评估通常不是精确的评分,而是注重分析在什么条件下服务是好的,在什么情况下还存在着不足,以便有针对性地做出改进。
在Internet中,QoS所评估的就是网络转发分组的服务能力。由于网络提供的服务是多样的,因此对QoS的评估可以基于不同方面。通常所说的QoS,是对分组转发过程中为延迟、抖动、丢包率等核心需求提供支持的服务能力的评估。
传统的IP网络无区别地对待所有的报文,设备处理报文采用的策略是FIFO(First In First Out,先入先出),它依照报文到达时间的先后顺序分配转发所需要的资源。所有报文共享网络和设备的资源,至于得到资源的多少完全取决于报文到达的时机。这种服务策略称作Best-Effort,它尽最大的努力将报文送到目的地,但对分组转发的延迟、抖动、丢包率和可靠性等需求不提供任何承诺和保证。
传统的Best-Effort服务策略只适用于对带宽、延迟不敏感的WWW、FTP、E-mail等业务。
随着计算机网络的高速发展,越来越多的网络接入Internet。Internet无论从规模、覆盖范围和用户数量上都拓展得非常快。越来越多的用户使用Internet作为数据传输的平台,开展各种应用。
除了传统的WWW、FTP、E-mail应用外,用户还尝试在Internet上拓展新业务,比如远程教学、远程医疗、可视电话、电视会议、视频点播等。企业用户也希望通过VPN技术,将分布在各地的分支机构连接起来,开展一些事务性应用:比如访问公司的数据库或通过Telnet管理远程设备。
这些新业务有一个共同特点,即对带宽、延迟、抖动等传输性能有着特殊的需求。比如电视会议、视频点播需要高带宽、低延迟和低抖动的保证。事务处理、Telnet等关键任务虽然不一定要求高带宽,但非常注重低延迟,在拥塞发生时要求优先获得处理。
新业务的不断涌现对IP网络的服务能力提出了更高的要求,用户已不再满足于能够简单地将报文送达目的地,而是还希望在转发过程中得到更好的服务,诸如支持为用户提供专用带宽、减少报文的丢失率、管理和避免网络拥塞、调控网络的流量、设置报文的优先级。所有这些,都要求网络应当具备更为完善的服务能力。
传统网络所面临的服务质量问题,主要是由网络拥塞引起的。所谓拥塞,是指由于供给资源的相对不足而造成转发速率下降、引入额外的延迟的一种现象。
在Internet分组交换的复杂环境下,拥塞极为常见。以下图中的两种情况为例:
图1-1 流量拥塞示意图
(1) 分组流从高速链路进入交换机,由低速链路转发出去。
(2) 分组流从相同速率的多个端口同时进入交换机,由一个相同速率的端口转发出去。
如果流量在出端口超过线速,那么就会遭遇资源的瓶颈而导致拥塞。
不仅仅是链路带宽的瓶颈会导致拥塞,任何用以正常转发处理的资源的不足,如可分配的处理器时间、缓冲区、内存资源的不足,都会造成拥塞。此外,在某个时间内对所到达的流量控制不力,使之超出了可分配的网络资源,也是引发网络拥塞的一个因素。
拥塞有可能会引发一系列的负面影响:
l 拥塞增加了报文传输的延迟和抖动,过高的延迟会引起报文重传。
l 拥塞使网络的有效吞吐率降低,造成网络资源的利用率降低。
l 拥塞加剧会耗费大量的网络资源(特别是存储资源),不合理的资源分配甚至可能导致系统陷入资源死锁而崩溃。
可见,拥塞使流量不能及时获得资源,是造成服务性能下降的源头。然而在分组交换以及多用户业务并存的复杂环境下,拥塞又是常见的,因此必须慎重加以对待。
增加网络带宽是解决资源不足的一个直接途径,然而它并不能解决所有导致网络拥塞的问题。
解决网络拥塞问题的一个更有效的办法是在网络中增加流量控制和资源分配的功能,为有不同服务需求的业务提供有区别的服务,正确地分配和使用资源。在进行资源分配和流量控制的过程中,尽可能地控制好那些可能引发网络拥塞的直接或间接因素,减少拥塞发生的概率;在拥塞发生时,依据业务的性质及其需求特性权衡资源的分配,将拥塞对QoS的影响减到最小。
流分类、流量监管、流量整形、拥塞管理和拥塞避免是构造有区别地实施服务的基石,它们主要完成如下功能:
l 流分类:依据一定的匹配规则识别出对象。流分类是有区别地实施服务的前提。
l 流量监管:对进入设备的特定流量的规格进行监管。当流量超出规格时,可以采取限制或惩罚措施,以保护运营商的商业利益和网络资源不受损害。
l 流量整形:一种主动调整流的输出速率的流控措施,通常是为了使流量适配下游设备可供给的网络资源,避免不必要的报文丢弃和拥塞。
l 拥塞管理:拥塞管理是必须采取的解决资源竞争的措施。通常是将报文放入队列中缓存,并采取某种调度算法安排报文的转发次序。
l 拥塞避免:过度的拥塞会对网络资源造成损害。拥塞避免监督网络资源的使用情况,当发现拥塞有加剧的趋势时采取主动丢弃报文的策略,通过调整流量来解除网络的过载。
在这些流量管理技术中,流分类是基础,它依据一定的匹配规则识别出报文,是有区别地实施服务的前提;而流量监管、流量整形、拥塞管理和拥塞避免从不同方面对网络流量及其分配的资源实施控制,是有区别地提供服务思想的具体体现。
流分类采用一定的规则识别符合某类特征的报文,它是有区别地进行服务的前提和基础。
流分类规则可以使用IP报文头的ToS(Type of Service,服务类型)字段的优先级位,识别出有不同优先级特征的流量;也可以由网络管理者设置流分类的策略,例如综合源地址、目的地址、MAC地址、IP协议或应用程序的端口号等信息对流进行分类。一般的分类依据都局限在封装报文的头部信息,使用报文的内容作为分类的标准是比较少见的。分类的结果是没有范围限制的,它可以是一个由五元组(源地址、源端口号、协议号、目的地址、目的端口号)确定的狭小范围,也可以是到某网段的所有报文。
一般在网络边界对报文分类时,同时设置报文IP头的ToS字段中的优先级位。这样,在网络的内部就可以直接使用IP优先级作为分类标准。而队列技术也可以使用这个优先级来对报文进行不同的处理。下游网络可以选择接收上游网络的分类结果,也可以按照自己的标准重新进行分类。
进行流分类是为了有区别地提供服务,它必须与某种流控或资源分配动作关联起来才有意义。具体采取何种流控动作,与所处的阶段以及网络当前的负载状况有关。例如,当报文进入网络时依据承诺速率对它进行监管;流出结点之前进行整形;拥塞时的队列调度管理;拥塞加剧时要采取拥塞避免措施等。
下面介绍一下IP优先级、ToS优先级、DSCP优先级和802.1p优先级。
(1) IP优先级、ToS优先级和DSCP优先级
图2-1 DS域和ToS字节
IP header的ToS字段有8个bit,其中:
l 前3个bit表示的是IP优先级,取值范围为0~7;
l 第3~6这4个bit表示的是ToS优先级,取值范围为0~15;
l RFC2474重新定义了IP报文头部的ToS域,称之为DS域,其中DSCP(Differentiated Services Codepoint,差分服务编码点)优先级用该域的前6个bit(0~5bit)表示,取值范围为0~63,后2个bit(6、7bit)是保留位。
表2-1 IP优先级说明
IP优先级(十进制) |
IP优先级(二进制) |
关键字 |
0 |
000 |
routine |
1 |
001 |
priority |
2 |
010 |
immediate |
3 |
011 |
flash |
4 |
100 |
flash-override |
5 |
101 |
critical |
6 |
110 |
internet |
7 |
111 |
network |
Diff-Serv网络定义了四类流量,设备会根据报文中的DSCP优先级对报文执行相应的动作:
l 加速转发(Expedited Forwarding,EF)类,这种方式不用考虑其他流量是否分享其链路,适用于低时延、低丢失、低抖动、确保带宽的优先业务(如虚租用线路);
l 确保转发(Assured Forwarding,AF)类,又分为四个小类(AF1/2/3/4),每个AF小类又分为三个丢弃优先级,可以细分AF业务的等级,AF类的QoS等级低于EF类;
l 兼容IP优先级(Class Selector,CS)类,是从IP ToS字段演变而来的,共8类;
l 尽力转发(Best Effort,BE)类,是CS中特殊一类,没有任何保证,AF类超限后可以降级为BE类,现有IP网络流量也都默认为此类。
表2-2 DSCP优先级说明
DSCP优先级(十进制) |
DSCP优先级(二进制) |
关键字 |
46 |
101110 |
ef |
10 |
001010 |
af11 |
12 |
001100 |
af12 |
14 |
001110 |
af13 |
18 |
010010 |
af21 |
20 |
010100 |
af22 |
22 |
010110 |
af23 |
26 |
011010 |
af31 |
28 |
011100 |
af32 |
30 |
011110 |
af33 |
34 |
100010 |
af41 |
36 |
100100 |
af42 |
38 |
100110 |
af43 |
8 |
001000 |
cs1 |
16 |
010000 |
cs2 |
24 |
011000 |
cs3 |
32 |
100000 |
cs4 |
40 |
101000 |
cs5 |
48 |
110000 |
cs6 |
56 |
111000 |
cs7 |
0 |
000000 |
be(default) |
(2) 802.1p优先级
802.1p优先级位于二层报文头部,适用于不需要分析三层报头,而需要在二层环境下保证QoS的场合。
图2-2 带有802.1Q标签头的以太网帧
如图2-2所示,4个字节的802.1Q标签头包含了2个字节的TPID(Tag Protocol Identifier,标签协议标识,取值为0x8100)和2个字节的TCI(Tag Control Information,标签控制信息),图2-3显示了802.1Q标签头的详细内容。
图2-3 802.1Q标签头
在上图中,TCI中Priority字段就是802.1p优先级,也称为CoS优先级。它由3个bit组成,取值范围为0~7。
表2-3 802.1p优先级说明
802.1p优先级(十进制) |
802.1p优先级(二进制) |
802.1p优先级(二进制) |
0 |
000 |
best-effort |
1 |
001 |
background |
2 |
010 |
spare |
3 |
011 |
excellent-effort |
4 |
100 |
controlled-load |
5 |
101 |
video |
6 |
110 |
voice |
7 |
111 |
network-management |
之所以称此优先级为802.1p优先级,是因为有关这些优先级的应用是在802.1p规范中被详细定义。
如果不限制用户发送的流量,那么大量用户不断突发的数据只会使网络更拥挤。为了使有限的网络资源能够更好地发挥效用,更好地为更多的用户服务,必须对用户的流量加以限制。比如限制每个时间间隔某个流只能得到承诺分配给它的那部分资源,防止由于过分突发所引发的网络拥塞。
流量监管和流量整形就是一种通过对流量规格的监督,来限制流量及其资源使用的流控策略。进行流量监管或整形有一个前提条件,就是要知道流量是否超出了规格,然后才能根据评估结果实施调控策略。一般采用令牌桶(Token Bucket)对流量的规格进行评估。
令牌桶可以看作是一个存放一定数量令牌的容器。系统按设定的速度向桶中放置令牌,当桶中令牌满时,多出的令牌溢出,桶中令牌不再增加。
在使用令牌桶对流量进行评估时,是以令牌桶中的令牌数量是否足够满足报文的转发为依据的。如果桶中存在足够的令牌可以用来转发报文,称流量遵守或符合(conforming)约定值,否则称为不符合或超标(excess)。
评估流量时令牌桶的参数设置包括:
l 平均速率:向桶中放置令牌的速率,即允许的流的平均速度。通常设置为CIR(Committed Information Rate,承诺信息速率)。
l 突发尺寸:令牌桶的容量,即每次突发所允许的最大的流量尺寸。通常设置为CBS(Committed Burst Size,承诺突发尺寸),设置的突发尺寸必须大于最大报文长度。
每到达一个报文就进行一次评估。每次评估,如果桶中有足够的令牌可供使用,则说明流量控制在允许的范围内,此时要从桶中取走与报文转发权限相当的令牌数量;否则说明已经耗费太多令牌,流量超标了。
为了评估更复杂的情况,实施更灵活的调控策略,可以设置两个令牌桶。例如TP(Traffic Policing,流量监管)中有四个参数:
l CIR
l CBS
l PIR(Peak Information Rate,峰值信息速率)
l EBS(Excess Burst Size,超出突发尺寸)
它使用了两个令牌桶,每个桶投放令牌的速率分别为CIR、PIR,只是尺寸不同——分别为CBS和EBS(这两个桶简称C桶和E桶),代表所允许的不同突发级别。每次评估时,依据“C桶有足够的令牌”、“C桶令牌不足,但E桶足够”以及“C桶和E桶都没有足够的令牌”的情况,可以分别实施不同的流控策略。
TP(Traffic Policing,流量监管)的典型应用是监督进入网络的某一流量的规格,把它限制在一个合理的范围之内,或对超出的部分流量进行“惩罚”,以保护网络资源和运营商的利益。例如可以限制HTTP报文不能占用超过50%的网络带宽。如果发现某个连接的流量超标,流量监管可以丢弃报文。
流量监管广泛的用于监管进入因特网服务提供商ISP的网络流量。流量监管还包括对所监管流量的流分类服务,并依据不同的评估结果,实施预先设定好的监管动作。这些动作可以是:
l 转发:对评估结果为“不符合”的报文正常转发。
l 丢弃:对评估结果为“不符合”的报文进行丢弃。
TS(Traffic Shaping,流量整形)是一种主动调整流量输出速率的措施。一个典型应用是基于下游网络结点的流量监管指标来控制本地流量的输出。
流量整形与流量监管的主要区别在于,流量整形对流量监管中需要丢弃的报文进行缓存——通常是将它们放入缓冲区或队列内,如图2-5所示。当令牌桶有足够的令牌时,再均匀的向外发送这些被缓存的报文。流量整形与流量监管的另一区别是,整形可能会增加延迟,而监管几乎不引入额外的延迟。
例如,交换机SwitchA向SwitchB发送报文。SwitchB要对SwitchA发送来的报文进行流量监管,对超出规格的流量直接丢弃。
为了减少报文的无谓丢失,可以在SwitchA的出口对报文进行流量整形处理。将超出流量整形特性的报文缓存在SwitchA中。当可以继续发送下一批报文时,流量整形再从缓冲队列中取出报文进行发送。这样,发向SwitchB的报文将都符合SwitchB的流量规定。
表2-4 配置任务简介
配置 |
配置说明 |
相关链接 |
配置流量监管 |
配置ACL |
|
在端口应用流量监管策略 |
||
配置基于队列的流量整形 |
在端口配置流量整形 |
|
配置匹配所有流的流量整形 |
在端口配置流量整形 |
流量监管的配置包括两方面的任务,一是定义那些需要实施监管的报文的特征,二是定义对这些报文的监管策略。
表2-5 基于ACL的流量监管配置过程
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
配置ACL规则 |
参见本手册“ACL”部分的描述 |
必选 |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
配置流量监管 |
qos car inbound acl [ ipv6 ] acl-number cir committed-information-rate [ cbs committed-burst-size [ ebs excess-burst-size ] ] [ pir peak-information-rate ] [ red action ] |
必选 缺省情况下,cbs为100000字节,ebs为100000字节,pir为0,red action为discard |
在端口Ethernet 1/0/1上配置流量监管,对匹配基本IPv4 ACL 2000的报文进行流量控制,限制报文的速率为1000kbps,丢弃超出限制的报文。
# 进入系统视图。
<Sysname> system-view
# 进入端口视图。
[Sysname] interface Ethernet 1/0/1
# 配置流量监管。
[Sysname-Ethernet1/0/1] qos car inbound acl 2000 cir 1000 red discard
流量整形配置分为以下几种:
l 基于队列的流量整形配置:为某一个队列的数据包配置整形参数。
l 匹配所有流的流量整形配置:为所有的流配置整形参数。
表2-6 基于队列的流量整形配置
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
||
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
配置流量整形 |
qos gts queue queue-number cir committed-information-rate |
必选 cir的值必须为650的倍数 |
表2-7 适配所有流的流量整形配置
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
配置流量整形 |
qos gts any cir committed-information-rate |
必选 cir的值必须为650的倍数 |
在端口Ethernet 1/0/1上配置流量整形,对流量超过1300kbps的报文进行整形。
# 进入系统视图。
<Sysname> system-view
# 进入端口视图。
[Sysname] interface Ethernet 1/0/1
# 配置流量整形。
[Sysname-Ethernet1/0/1] qos gts any cir 1300
完成上述配置后,在任意视图下执行display命令,可以显示配置流量监管/流量整形后的运行情况。通过查看显示信息,用户可以验证配置的效果。
表2-8 流量监管/流量整形显示
操作 |
命令 |
显示流量监管在端口上的配置情况和统计信息 |
display qos car interface [ interface-type interface-number ] |
显示流量整形在端口上的配置信息 |
display qos gts interface [ interface-type interface-number ] |
QoS策略包含了三个要素:类、流行为、策略。用户可以通过QoS策略将指定的类和流行为绑定起来,方便的进行QoS配置。
类是用来识别流的。
类的要素包括:类的名称和类的规则。
用户可以通过命令定义一系列的规则,来对报文进行分类。同时用户可以通过命令指定规则之间的关系:and和or。
l and:报文只有匹配了所有的规则,设备才认为报文属于这个类。
l or:报文只要匹配了类中的一个规则,设备就认为报文属于这个类。
流行为用来定义针对报文所做的QoS动作。
流行为的要素包括:流行为的名称和流行为中定义的动作。
用户可以通过命令在一个流行为中定义多个动作。
策略用来将指定的类和指定的流行为绑定起来。
策略的要素包括:策略名称、绑定在一起的类和流行为的名称。
QoS策略的配置步骤如下:
l 定义类,并在类视图中定义一组流分类规则;
l 定义流行为,并在流行为视图中定义一组动作;
l 定义策略,在策略视图下为使用的类中指定对应的流行为;
l 在端口或端口组视图下应用策略。
表3-1 QoS策略介绍
策略名称 |
绑定的类 |
定义流行为的命令 |
统计 |
用户根据需要使用if-match match-criteria定义类 |
accounting |
CAR(流量监管) |
用户根据需要使用if-match match-criteria定义类 |
car |
流量过滤 |
用户根据需要使用if-match match-criteria定义类 |
filter |
流镜像 |
用户根据需要使用if-match match-criteria定义类 |
mirror-to |
VLAN外层tag标记 |
用户根据需要使用if-match match-criteria定义类 |
nest |
优先级映射 |
用户根据需要使用if-match match-criteria定义类 |
primap |
流量重定向 |
用户根据需要使用if-match match-criteria定义类 |
redirect |
优先级重标记 |
用户根据需要使用if-match match-criteria定义类 |
remark |
l 确定了策略中类的名称、类的匹配规则
l 确定了策略中流行为的名称、流行为中包含的动作
l 确定了策略的名称
l 确定了应用策略的端口或端口组
定义类首先要创建一个类名称,然后在此类视图下配置其匹配规则。
表3-2 定义类
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建类并进入类视图 |
traffic classifier classifier-name [ operator { and | or } ] |
必选 缺省情况下,类视图下各匹配规则之间的关系为and,即逻辑与 |
配置匹配报文的规则 |
if-match match-criteria |
必选 |
match-criteria:匹配规则,取值如表3-3所示。
取值 |
描述 |
acl access-list-number |
定义匹配IPv4 ACL的规则,access-list-number的取值范围为2000~5999 需要注意的是,当类中匹配规则的关系为and时,如果ACL中定义了多条规则,应用策略时,各规则之间的关系实际为or |
acl ipv6 access-list-number |
定义匹配IPv6 ACL的规则,access-list-number的取值范围为2000~3999 需要注意的是,当类中匹配规则的关系为and时,如果ACL中定义了多条规则,应用策略时,各规则之间的关系实际为or |
any |
定义匹配所有报文的规则 |
customer-vlan-id vlan-id-list |
定义匹配用户网络VLAN ID的规则,vlan-id-list为VLAN ID的列表,形式可以为vlan-id to vlan-id,也可以输入多个不连续的VLAN ID,用空格隔开,设备最多允许用户同时指定8个VLAN ID;VLAN ID的取值范围为1~4094 |
destination-mac mac-address |
定义匹配目的MAC地址的规则 |
dot1p 8021p-list |
定义匹配802.1p优先级的规则,8021p-list为COS取值的列表,最多可以输入8个COS取值,用空格隔开,COS的取值范围为0~7 |
dscp dscp-list |
定义匹配DSCP的规则,dscp-list为DSCP取值的列表,最多可以输入8个DSCP取值,用空格隔开,DSCP的取值范围为0~63 |
ip-precedence ip-precedence-list |
定义匹配IP优先级的规则,ip-precedencee-list为IP优先级取值的列表,最多可以输入8个IP优先级取值,用空格隔开,IP优先级的取值范围为0~7 |
protocol protocol-name |
定义匹配协议的规则,protocol-name取值为IP、IPv6或Bittorrent S3500-EA系列以太网交换机目前不支持匹配Bittorrent协议 |
service-vlan-id vlan-id-list |
定义匹配运营商网络VLAN ID的规则,vlan-id-list为VLAN ID的列表,形式可以为vlan-id to vlan-id,也可以输入多个不连续的VLAN ID,用空格隔开,设备最多允许用户同时指定8个VLAN ID;VLAN ID的取值范围为1~4094 |
source-mac mac-address |
定义匹配源MAC地址的规则 |
(1) 组网需求
配置一个类test,规则为匹配IP优先级为6的报文。
(2) 配置步骤
# 进入系统视图。
<Sysname> system-view
# 定义类并进入类视图。
[Sysname] traffic classifier test
# 配置匹配规则。
[Sysname-classifier-test] if-match ip-precedence 6
定义流行为首先需要创建一个流行为名称,然后在此流行为视图下配置其动作。
如果定义primap动作,用户必须根据需求配置优先级映射表。具体配置请参见“第5章 优先级映射”。
表3-4 定义流行为
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建流行为并进入流行为视图 |
traffic behavior behavior-name |
必选 |
配置统计动作 |
accounting |
必选 用户可以根据需要配置相应的流行为 |
配置流量监管动作 |
car { cir committed-information-rate [ cbs committed-burst-size [ ebs excess-burst-size ] ] [ pir peak-information-rate ] [ red { discard | pass } ] | name global-car-name } |
|
配置流量过滤动作 |
filter { deny | permit } |
|
配置流镜像动作 |
mirror-to interface interface-type interface-number |
|
配置外层VLAN标签 |
nest top-most vlan-id vlan-id |
|
配置重定向动作 |
redirect { cpu | interface interface-type interface-number | next-hop { ipv4-add [ ipv4-add ] | ipv6-add [ interface-type interface-number ] [ ipv6-add [ interface-type interface-number ] ] } } |
|
配置标记报文的DSCP值 |
remark dscp dscp-value |
|
配置标记报文的802.1p优先级 |
remark dot1p 8021p |
|
配置标记报文的丢弃优先级 |
remark drop-precedence drop-precedence-value |
|
配置标记报文的IP优先级值 |
remark ip-precedence ip-precedence-value |
|
配置标记报文的本地优先级 |
remark local-precedence local-precedence |
|
配置标记报文的VLAN ID值 |
remark service-vlan-id vlan-id-value |
|
配置使用相应的优先级映射表为报文标记其他的优先级参数 |
primap pre-defined { dscp-lp | dscp-dp | dscp-dot1p | dscp-dscp } |
& 说明:
在定义流行为时请遵循如下约束,否则策略将不能成功应用:
accounting动作和聚合car不能同时配置。
filter deny动作与其他的所有动作都不能同时配置。
primap动作和除了remark dscp以外的其他remark动作不能同时配置。
redirect next-hop动作和remark service-vlan-id、nest动作不能同时配置。
remark service-vlan-id动作和nest动作不能同时配置。
定义流行为test,配置流量监管动作,限制报文的速率为100kbps。
配置步骤:
# 进入系统视图。
<Sysname> system-view
# 创建流行为并进入流行为视图。
[Sysname] traffic behavior test
# 配置流量监管动作。
[Sysname-behavior-test] car cir 100
定义策略指的是定义该策略中类和流行为的对应关系。
每个策略下可以配置多组类和流行为的对应关系,设备将按照配置的顺序进行应用。
表3-5 在策略中为类指定流行为
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建策略并进入策略视图 |
qos policy policy-name |
- |
在策略中为类指定采用的流行为 |
classifier classifier-name behavior behavior-name |
必选 |
表3-6 应用策略
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
应用策略 |
qos apply policy policy-name inbound |
必选 |
定义策略test,为类test_class指定流行为test_behavior,并将该策略应用到端口Ethernet 1/0/1上。
配置步骤:
# 进入系统视图。
<Sysname> system-view
# 创建策略并进入策略视图。
[Sysname] qos policy test
[Sysname-qospolicy-test]
# 为类指定流行为。
[Sysname-qospolicy-test] classifier test_class behavior test_behavior
[Sysname-qospolicy-test] quit
# 进入端口视图。
[Sysname] interface Ethernet 1/0/1
[Sysname-Ethernet1/0/1]
# 将策略应用到端口上。
[Sysname-Ethernet1/0/1] qos apply policy test inbound
完成上述配置后,在任意视图下执行display命令,可以显示配置QoS策略后的运行情况。通过查看显示信息,用户可以验证配置的效果。
表3-7 QoS策略显示
操作 |
命令 |
显示指定策略或所有策略中指定类或所有类以及与类关联的行为的配置信息 |
display qos policy user-defined [ policy-name [ classifier classifier-name ] ] |
显示指定端口或所有端口上策略的配置信息和运行情况 |
display qos policy interface [ interface-type interface-number ] [ inbound ] |
显示流行为的配置信息 |
display traffic behavior user-defined [ behavior-name ] |
显示类的配置信息 |
display traffic classifier user-defined [ classifier-name ] |
当分组到达的速度大于端口发送分组的速度时,在该端口处就会产生拥塞。如果没有足够的存储空间来保存这些分组,它们其中的一部分就会丢失。分组的丢失又可能会导致发送该分组的设备因超时而重传此分组,这将导致恶性循环。
拥塞管理的中心内容就是当拥塞发生时如何制定一个资源的调度策略,决定报文转发的处理次序。
对于拥塞管理,一般采用排队技术,使用一个队列算法对流量进行分类,之后用某种优先级别算法将这些流量发送出去。每种队列算法都是用以解决特定的网络流量问题,并对带宽资源的分配、延迟、延迟抖动等有着十分重要的影响。
这里介绍2种各具特色的队列调度算法:严格优先级SP(Strict-Priority)队列调度算法和加权轮循WRR(Weighted Round Robin)队列调度算法。
(1) SP队列调度算法
图4-1 SP队列示意图
SP队列调度算法,是针对关键业务型应用设计的。关键业务有一个重要的特点,即在拥塞发生时要求优先获得服务以减小响应的延迟。以端口有8个输出队列为例,优先队列将端口的8个输出队列分成8类,依次为7、6、5、4、3、2、1、0队列,它们的优先级依次降低。
在队列调度时,SP严格按照优先级从高到低的次序优先发送较高优先级队列中的分组,当较高优先级队列为空时,再发送较低优先级队列中的分组。这样,将关键业务的分组放入较高优先级的队列,将非关键业务(如E-Mail)的分组放入较低优先级的队列,可以保证关键业务的分组被优先传送,非关键业务的分组在处理关键业务数据的空闲间隙被传送。
SP的缺点是:拥塞发生时,如果较高优先级队列中长时间有分组存在,那么低优先级队列中的报文就会由于得不到服务而“饿死”。
(2) WRR队列调度算法
图4-2 WRR队列示意图
WRR队列调度算法在队列之间进行轮流调度,保证每个队列都得到一定的服务时间。以端口有8个输出队列为例,WRR可为每个队列配置一个加权值(依次为w7、w6、w5、w4、w3、w2、w1、w0),加权值表示获取资源的比重。如一个100M的端口,配置它的WRR队列调度算法的加权值为50、50、30、30、10、10、10、10(依次对应w7、w6、w5、w4、w3、w2、w1、w0),这样可以保证最低优先级队列至少获得5Mbit/s带宽,避免了采用SP调度时低优先级队列中的报文可能长时间得不到服务的缺点。WRR队列还有一个优点是,虽然多个队列的调度是轮询进行的,但对每个队列不是固定地分配服务时间片——如果某个队列为空,那么马上换到下一个队列调度,这样带宽资源可以得到充分的利用。
S3500-EA系列以太网交换机支持以下三种队列调度方式:
l 所有队列全部采用SP调度。
l 所有队列全部采用WRR调度。
l 部分队列采用SP调度,部分队列采用WRR调度。
表4-1 配置SP队列
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
配置SP队列 |
undo qos wrr |
可选 缺省情况下,所有端口使用SP队列调度算法 |
用户可以根据需要将队列划分到WRR调度组1和WRR调度组2中。进行队列调度时,WRR调度组之间的调度方式为SP。例如,将队列0、1、2、3划分到WRR调度组1,将队列4、5、6、7划分到WRR调度组2,系统首先在WRR调度组2中进行轮询调度;WRR调度组2中没有报文发送时,才在WRR调度组1中进行轮询调度。
表4-2 配置WRR队列
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
配置WRR队列 |
qos wrr queue-id group group-id weight queue-weight |
必选 缺省情况下,所有端口使用SP队列调度算法 |
注意:
当用户配置使用WRR队列调度算法时,必须将连续的队列划分到同一个调度组内。
l 配置端口Ethernet 1/0/1使用WRR队列调度算法
l 配置队列0、1、2、3属于为WRR调度组1,权重分别为10、20、50、70
l 配置队列4、5、6、7属于为WRR调度组2,权重分别为20、50、70、100
# 进入系统视图。
<Sysname> system-view
# 配置端口Ethernet 1/0/1使用WRR队列调度算法。
[Sysname] interface Ethernet 1/0/1
[Sysname-Ethernet1/0/1] qos wrr 0 group 1 weight 10
[Sysname-Ethernet1/0/1] qos wrr 1 group 1 weight 20
[Sysname-Ethernet1/0/1] qos wrr 2 group 1 weight 50
[Sysname-Ethernet1/0/1] qos wrr 3 group 1 weight 70
[Sysname-Ethernet1/0/1] qos wrr 4 group 2 weight 20
[Sysname-Ethernet1/0/1] qos wrr 5 group 2 weight 50
[Sysname-Ethernet1/0/1] qos wrr 6 group 2 weight 70
[Sysname-Ethernet1/0/1] qos wrr 7 group 2 weight 100
用户还可以根据需要配置部分队列使用SP队列调度,部分队列使用WRR队列调度,通过将队列分别加入SP调度组和WRR调度组,实现SP+WRR的调度功能。进行队列调度时,各个组之间的调度方式为SP。例如,将队列0、1划分到SP调度组,将队列2、3、4划分到WRR调度组1,将队列5、6、7划分到WRR调度组2,系统首先在WRR调度组2中进行轮询调度;WRR调度组2中没有报文发送时,才在WRR调度组1中进行轮询调度;最后才会处理SP调度组中的报文。
表4-3 配置SP+WRR队列
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
配置SP队列 |
qos wrr queue-id group sp |
必选 |
|
配置WRR队列 |
qos wrr queue-id group group-id weight queue-weight |
必选 |
注意:
当用户配置使用SP+WRR队列调度算法时,必须将连续的队列划分到同一个调度组内。
l 配置端口Ethernet 1/0/1使用SP+WRR队列调度算法
l 配置端口Ethernet 1/0/1上的0、1队列属于SP调度组
l 配置端口Ethernet 1/0/1上的2、3、4队列属于WRR调度组1,权重分别为20、70、100
l 配置端口Ethernet 1/0/1上的5、6、7队列属于WRR调度组2,权重分别为10、50、80
# 进入系统视图。
<Sysname> system-view
# 配置端口Ethernet 1/0/1使用SP+WRR队列调度方式。
[Sysname] interface Ethernet 1/0/1
[Sysname-Ethernet1/0/1] qos wrr 0 group sp
[Sysname-Ethernet1/0/1] qos wrr 1 group sp
[Sysname-Ethernet1/0/1] qos wrr 2 group 1 weight 20
[Sysname-Ethernet1/0/1] qos wrr 3 group 1 weight 70
[Sysname-Ethernet1/0/1] qos wrr 4 group 1 weight 100
[Sysname-Ethernet1/0/1] qos wrr 5 group 2 weight 10
[Sysname-Ethernet1/0/1] qos wrr 6 group 2 weight 50
[Sysname-Ethernet1/0/1] qos wrr 7 group 2 weight 80
完成上述配置后,在任意视图下执行display命令,可以显示配置拥塞管理后的运行情况。通过查看显示信息,用户可以验证配置的效果。
表4-4 拥塞管理显示
操作 |
命令 |
显示拥塞管理的配置信息 |
display qos wrr interface [ interface-type interface-number ] |
报文在进入交换机以后,交换机会根据自身支持的情况和相应的规则给报文分配包括802.1p优先级、DSCP优先级、IP优先级、本地优先级、丢弃优先级等在内的一系列参数。
其中,本地优先级和丢弃优先级的概念如下:
l 本地优先级:交换机为报文分配的一种具有本地意义的优先级,对应出端口队列,本地优先级值大的报文被优先处理。
l 丢弃优先级:交换机在丢弃报文时参考的参数,丢弃优先级值大的报文被优先丢弃。
对于不带有802.1Q标签头的报文,交换机将使用接收端口的优先级作为报文的802.1p优先级,然后根据该优先级为报文映射本地优先级。
对于带有802.1Q标签头的报文,交换机提供两种优先级信任模式:
l 信任报文的优先级:根据报文自身的802.1p优先级,查找802.1p优先级到本地优先级/丢弃优先级映射表,然后为报文分配本地优先级/丢弃优先级。
l 信任端口的优先级:使用接收端口的端口优先级替换报文的802.1p优先级,查找802.1p优先级到本地优先级/丢弃优先级映射表,然后为报文分配本地优先级/丢弃优先级。
交换机提供的802.1p优先级到本地优先级、802.1p优先级到丢弃优先级的映射关系缺省取值如下表所示。
表5-1 dot1p-lp,dot1p-dp缺省映射关系
映射输入索引 |
dot1p-lp映射 |
dot1p-dp映射 |
802.1p优先级(dot1p) |
本地优先级(lp) |
丢弃优先级(dp) |
0 |
2 |
0 |
1 |
0 |
0 |
2 |
1 |
0 |
3 |
3 |
0 |
4 |
4 |
0 |
5 |
5 |
0 |
6 |
6 |
0 |
7 |
7 |
0 |
交换机还提供了DSCP优先级到本地优先级/丢弃优先级/802.1p优先级/DSCP优先级的映射表,分别对应相应的优先级映射关系,各个映射表的缺省关系取值如下所示:
l dscp-lp:DSCP优先级到本地优先级映射表,仅对IP报文生效。
l dscp-dp:DSCP优先级到丢弃优先级映射表,仅对IP报文生效。
l dscp-dot1p:DSCP优先级到802.1p优先级映射表,仅对IP报文生效。
l dscp-dscp:DSCP优先级到DSCP优先级映射表,仅对IP报文生效。
表5-2 dscp-lp,dscp-dp,dscp-dot1p,dscp-dscp缺省映射关系
映射输入索引 |
dscp-lp映射 |
dscp-dp映射 |
dscp-dot1p映射 |
dscp-dscp映射 |
DSCP优先级 |
本地优先级(lp) |
丢弃优先级(dp) |
802.1p优先级(dot1p) |
DSCP优先级 |
0~7 |
0 |
0 |
0 |
0 |
8~15 |
1 |
0 |
1 |
8 |
16~23 |
2 |
0 |
2 |
16 |
24~31 |
3 |
0 |
3 |
24 |
32~39 |
4 |
0 |
4 |
32 |
40~47 |
5 |
0 |
5 |
40 |
48~55 |
6 |
0 |
6 |
48 |
56~63 |
7 |
0 |
7 |
56 |
需要注意的是:
l 802.1p优先级到本地优先级/丢弃优先级映射表和端口上的优先级信任模式相关联。配置了端口上的信任模式为信任报文的802.1p优先级后,这些映射表才能起作用。端口上的优先级信任模式配置请参见“5.4 优先级信任配置”。
l DSCP优先级映到本地优先级/丢弃优先级/802.1p优先级/DSCP优先级映射表和流行为中primap动作相关联。在流行为中配置了primap动作后,这些映射表才能起作用。流行为的配置请参见“3.4.3 定义流行为”。
用户确定了新的优先级映射关系。
表5-3 优先级映射关系配置过程
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
进入映射表视图 |
qos map-table { dot1p-lp | dot1p-dp | dscp-lp | dscp-dp | dscp-dot1p | dscp-dscp } |
必选 用户根据需要进入相应的优先级映射表视图 |
配置映射关系 |
import import-value-list export export-value |
必选 新配置的映射项将覆盖原有映射项 |
修改802.1p优先级到本地优先级映射表,修改后的映射关系如下表所示。
表5-4 802.1p优先级到本地优先级映射关系
802.1p优先级 |
本地优先级 |
0 |
0 |
1 |
0 |
2 |
1 |
3 |
1 |
4 |
2 |
5 |
2 |
6 |
3 |
7 |
3 |
# 进入系统视图。
<Sysname> system-view
# 进入802.1p优先级到本地优先级映射表视图。
[Sysname] qos map-table dot1p-lp
# 修改802.1p优先级到本地优先级映射表参数。
[Sysname-maptbl-dot1p-lp] import 0 1 export 0
[Sysname-maptbl-dot1p-lp] import 2 3 export 1
[Sysname-maptbl-dot1p-lp] import 4 5 export 2
[Sysname-maptbl-dot1p-lp] import 6 7 export 3
缺省情况下,交换机将使用端口的优先级替换该端口接收的报文本身带有的802.1p优先级,然后根据该优先级查找802.1p优先级到本地优先级映射表,将报文放入不同的端口输出队列进行调度。
端口优先级取值范围为0~7,用户可以根据需要配置端口的优先级。
用户确定了相应端口的端口优先级取值。
表5-5 配置端口优先级
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
配置端口优先级 |
qos priority priority-value |
必选 缺省情况下,端口优先级为0 |
配置端口Ethernet 1/0/1的优先级为7。
# 进入系统视图。
<Sysname> system-view
# 配置端口Ethernet 1/0/1的优先级为7。
[Sysname] interface Ethernet 1/0/1
[Sysname-Ethernet1/0/1] qos priority 7
用户可以通过配置实现交换机信任报文本身携带的802.1p优先级,而不使用接收端口的优先级来替换报文的802.1p优先级。
确定了需要信任报文的802.1p优先级。
表5-6 配置优先级信任模式
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
配置信任报文自带的802.1p优先级 |
qos trust dot1p |
必选 缺省情况下,信任模式为信任端口的优先级 |
配置端口Ethernet 1/0/1上的优先级信任模式为信任802.1p优先级。
# 进入系统视图。
<Sysname> system-view
# 进入端口视图。
[Sysname] interface Ethernet 1/0/1
[Sysname-Ethernet1/0/1]
# 配置端口Ethernet 1/0/1信任802.1p优先级。
[Sysname-Ethernet1/0/1] qos trust dot1p
完成上述配置后,在任意视图下执行display命令,可以显示配置优先级映射后的运行情况。通过查看显示信息,用户可以验证配置的效果。
表5-7 优先级映射显示
操作 |
命令 |
显示优先级映射表的配置信息 |
display qos map-table [ dot1p-lp | dot1p-dp | dscp-lp | dscp-dp | dscp-dot1p | dscp-dscp ] |
显示优先级信任模式的配置信息 |
display qos trust interface [ interface-type interface-number ] |
过度的拥塞会对网络资源造成极大危害,必须采取某种措施加以解除。拥塞避免(Congestion Avoidance)是一种流控机制,它可以通过监视网络资源(如队列或内存缓冲区)的使用情况,在拥塞有加剧的趋势时,主动丢弃报文,通过调整网络的流量来解除网络过载。
与端到端的流控相比,这里的流控具有更广泛的意义,它影响到设备中更多的业务流的负载。设备在丢弃报文时,并不排斥与源端的流控动作(比如TCP流控)的配合,更好地调整网络的流量到一个合理的负载状态。丢包策略和源端流控机制有效的组合,可以使网络的吞吐量和利用效率最大化,并且使报文丢弃和延迟最小化。
传统的丢包策略采用尾部丢弃(Tail-Drop)的方法。当队列的长度达到某一最大值后,所有新到来的报文都将被丢弃。
这种丢弃策略会引发TCP全局同步现象——当队列同时丢弃多个TCP连接的报文时,将造成多个TCP连接同时进入拥塞避免和慢启动状态以降低并调整流量,而后又会在某个时间同时出现流量高峰,如此反复,使网络流量不停震荡。
为避免TCP全局同步现象,可使用RED(Random Early Detection,随机早期检测)或WRED(Weighted Random Early Detection,加权随机早期检测)。
在RED类算法中,为每个队列都设定上限和下限,对队列中的报文进行如下处理:
l 当队列的长度小于下限时,不丢弃报文;
l 当队列的长度超过上限时,丢弃所有到来的报文;
l 当队列的长度在上限和下限之间时,开始随机丢弃到来的报文。队列越长,丢弃概率越高,但有一个最大丢弃概率。
与RED不同,WRED生成的随机数是基于优先权的,它引入IP优选权区别丢弃策略,考虑了高优先权报文的利益,使其被丢弃的概率相对较小。
RED和WRED通过随机丢弃报文避免了TCP的全局同步现象,使得当某个TCP连接的报文被丢弃、开始减速发送的时候,其他的TCP连接仍然有较高的发送速度。这样,无论什么时候,总有TCP连接在进行较快的发送,提高了线路带宽的利用率。
在下列情况下,增大队列长度可以提供更好的报文缓存功能和流量转发性能:
l 广播或者组播报文流量密集,瞬间突发流量大的网络环境中。
l 报文从高速链路进入设备,由低速链路转发出去;或者报文从相同速率的多个端口同时进入设备,由一个相同速率的端口转发出去。
用户可以通过增大队列长度,降低设备在上述特定环境中的报文丢包率,提高对报文的处理能力。需要注意的是,队列长度越大,端口处理突发流量的能力就越强,但是端口的拥塞避免功能会受到影响。
准备一个可能出现拥塞的环境。
表6-1 配置WRED
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
配置WRED |
qos wred enable |
必选 |
在端口Ethernet 1/0/1上配置WRED。
# 进入系统视图。
<Sysname> system-view
# 进入端口视图。
[Sysname] interface Ethernet 1/0/1
# 配置WRED。
[Sysname-Ethernet1/0/1] qos wred enable
确定了需要进行配置的端口/端口组以及各队列的长度取值。
表6-2 配置队列长度
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
配置队列长度 |
burst-traffic { queue queue-id length queue-length }&<1-8> |
必选 |
配置端口Ethernet 1/0/1上队列1和队列3的长度分别为8和32。
# 进入系统视图。
<Sysname> system-view
# 进入端口视图。
[Sysname] interface Ethernet 1/0/1
# 配置队列长度。
[Sysname-Ethernet1/0/1] burst-traffic queue 1 length 8 queue 3 length 32
完成上述配置后,在任意视图下执行display命令,可以显示配置拥塞避免后的运行情况。通过查看显示信息,用户可以验证配置的效果。
表6-3 拥塞避免显示
操作 |
命令 |
显示WRED的配置信息 |
display qos wred interface [ interface-type interface-number ] |
显示端口队列长度的配置信息 |
display burst-traffic interface [ interface-type interface-number ] |
聚合CAR是指能够对多个端口上的业务流使用同一个CAR进行流量监管,即如果多个端口应用同一聚合CAR,则这些端口的流量之和必须在此聚合CAR设定的流量监管范围之内。
表7-1 配置聚合CAR
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置聚合CAR |
qos car global-car-name aggregative cir committed-information-rate [ cbs committed-burst-size [ ebs excess-burst-size ] ] [ pir peak-information-rate ] [ red action ] |
必选 缺省情况下,cbs为100000字节,ebs为100000字节,pir为0,red action为discard |
l 确定了聚合CAR使用的各个参数取值
l 确定了应用聚合CAR的端口或端口组
l 确定了匹配报文的ACL规则,具体配置请参见本手册“ACL”部分的介绍
表7-2 在端口或端口组应用CAR
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
应用聚合CAR |
qos car inbound acl [ ipv6 ] acl-number name global-car-name |
必选 |
在端口Ethernet 1/0/1和端口Ethernet 1/0/2上应用聚合CAR,限制两个端口接收的匹配IPv4 ACL 2001的报文的速率为1000kbps,丢弃超出限制的报文。
配置步骤:
# 进入系统视图。
<Sysname> system-view
# 配置聚合CAR aggcar。
[Sysname] qos car aggcar-1 aggregative cir 1000
# 在端口Ethernet 1/0/1和端口Ethernet 1/0/2上应用聚合CAR。
[Sysname] interface Ethernet 1/0/1
[Sysname-Ethernet1/0/1] qos car inbound acl 2001 name aggcar-1
[Sysname-Ethernet1/0/1] quit
[Sysname] interface Ethernet 1/0/2
[Sysname-Ethernet1/0/2] qos car inbound acl 2001 name aggcar-1
l 确定了聚合CAR使用的各个参数取值
l 确定了引用聚合CAR的流行为
表7-3 在流行为中引用聚合CAR
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建并进入流行为视图 |
traffic behavior behavior-name |
必选 |
引用聚合CAR |
car name global-car-name |
必选 |
在流行为be1中引用聚合CAR aggcar-1。聚合CAR aggcar-1中CIR取值为200 kbps,CBS取值为2000byte,丢弃超出限制的报文。
配置步骤:
# 进入系统视图。
<Sysname> system-view
# 配置聚合CAR aggcar-1。
[Sysname] qos car aggcar-1 aggregative cir 200 cbs 2000
# 在流行为be1中引用聚合CAR aggcar-1。
[Sysname] traffic behavior be1
[Sysname-behavior-be1] car name aggcar-1
完成上述配置后,在任意视图下执行display命令,可以显示配置聚合CAR后的运行情况。通过查看显示信息,用户可以验证配置的效果。
在用户视图下执行reset命令,可以清除聚合CAR的统计信息。
表7-4 聚合CAR显示和维护
操作 |
命令 |
清除聚合CAR的统计信息 |
reset qos car name [ global-car-name ] |
显示聚合CAR的配置信息和统计结果 |
display qos car name [ global-car-name ] |
QoS策略支持如下的应用方式:
l 基于端口/端口组应用:QoS策略对端口/端口组接收的报文生效。
l 基于VLAN应用:QoS策略对该VLAN接收的报文生效。
基于VLAN应用的策略简称为VLAN策略。VLAN策略可以方便QoS策略在设备上的应用和管理。
需要注意的是,VLAN策略不能应用到动态VLAN上。例如,在运行GVRP协议的情况下,设备可能会动态创建VLAN,相应的VLAN策略在动态VLAN上不生效。
l VLAN策略已经配置完毕,具体配置请参见“3.4 QoS策略配置”
l 确定了应用策略的VLAN
表8-1 应用VLAN策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
应用策略到指定的VLAN |
qos vlan-policy policy-name vlan vlan-id-list inbound |
必选 vlan-id-list的形式可以为vlan-id to vlan-id,也可以输入多个不连续的VLAN ID,设备最多允许用户同时指定8个VLAN ID |
& 说明:
如果在某一端口和该端口属于的VLAN上都应用了QoS策略,端口上应用的QoS策略生效。
在完成上述配置后,在任意视图下执行display命令可以显示配置后VLAN策略的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除VLAN策略的统计信息。
表8-2 VLAN策略显示和维护
操作 |
命令 |
显示VLAN策略的配置信息 |
display qos vlan-policy { name policy-name | vlan [ vlan-id ] } |
清除VLAN策略的统计信息 |
reset qos vlan-policy [ vlan vlan-id ] |
l 配置VLAN策略test,对匹配基本IPv4 ACL 2000的报文进行流量监管,限制报文的速率为64kpbs,丢弃超出限制的报文。
l 在VLAN 200、300、400、500、600、700、800、900上应用策略test。
# 进入系统视图。
<Sysname> system-view
# 创建类并进入类视图。
[Sysname] traffic classifier cl1
# 配置分类规则。
[Sysname-classifier-cl1] if-match acl 2000
[Sysname-classifier-cl1] quit
# 创建流行为并进入流行为视图。
[Sysname] traffic behavior be1
# 配置流行为。
[Sysname-behavior-be1] car cir 64
[Sysname-behavior-be1] quit
# 创建QoS策略并进入QoS策略视图。
[Sysname] qos policy test
# 为类指定流行为。
[Sysname-qospolicy-test] classifier cl1 behavior be1
[Sysname-qospolicy-test] quit
# 应用策略到指定的VLAN。
[Sysname] qos vlan-policy test vlan 200 300 400 500 600 700 800 900 inbound
流镜像,即将指定的数据包复制到用户指定的目的地,以进行网络检测和故障排除。
流镜像分为三种:流镜像到端口、流镜像到CPU、流镜像到VLAN。
l 流镜像到端口,是把通过配置了流镜像的端口的符合要求的数据包复制一份,然后发送到目的端口。
l 流镜像到CPU,是把通过配置了流镜像的端口的符合要求的数据包复制一份,然后发送到CPU以供分析诊断。
l 流镜像到VLAN,是把通过配置了流镜像的端口的符合要求的数据包复制一份,然后发送到VLAN中广播,如果VLAN中有端口加入,那么加入的端口就可以接收到镜像报文,如果VLAN不存在,也可以预先配置,等VLAN被创建并有端口加入后,流镜像可以自动生效。
配置流镜像时,用户首先要创建一个流行为,然后进入流行为视图进行流镜像的相关配置。
& 说明:
在配置流镜像动作时,同一个流行为中流镜像类型只能为流镜像到端口和流镜像到CPU中的一种。
表9-1 配置流镜像到端口
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建并进入流行为视图 |
traffic behavior behavior-name |
必选 |
配置流镜像到端口 |
mirror-to interface interface-type interface-number |
必选 |
& 说明:
流镜像的目的端口不能为聚合组成员端口。
如果流镜像目的端口和本地端口镜像组的目的端口为不同的端口,则两者不能同时配置。关于本地端口镜像组的详细介绍请参见本手册“端口镜像”部分。
表9-2 配置流镜像到CPU
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入流行为视图 |
traffic behavior behavior-name |
- |
为流行为配置流镜像到CPU |
mirror-to cpu |
必选 |
完成上述配置后,在任意视图下执行display命令,可以显示配置流镜像后的运行情况。通过查看显示信息,用户可以验证配置的效果。
表9-3 流镜像显示
操作 |
命令 |
显示流行为的配置信息 |
display traffic behavior user-defined behavior-name |
显示策略的配置信息 |
display qos policy user-defined [ policy-name [ classifier classifier-name ] ] |
用户网络描述如下:
l Host A(IP地址为192.168.0.1)和Host B通过端口Ethernet 1/0/1接入交换机Switch。
l 数据监测设备连接在Switch的端口Ethernet 1/0/2上。
要求通过数据监测设备对Host A发出的所有报文进行分析监控。
# 进入系统视图。
<Sysname> system-view
# 配置基本IPv4 ACL 2000,匹配源IP地址为192.168.0.1的报文。
[Sysname] acl number 2000
[Sysname-acl-basic-2000] rule permit source 192.168.0.1 0
[Sysname-acl-basic-2000] quit
# 配置流分类规则,使用基本IPv4 ACL 2000进行流分类。
[Sysname] traffic classfier 1
[Sysname-classifier-1] if-match acl 2000
[Sysname-classifier-1] quit
# 配置流行为,定义流镜像到Ethernet 1/0/2的动作。
[Sysname] traffic behavior 1
[Sysname-behavior-1] mirror-to interface Ethernet 1/0/2
[Sysname-behavior-1] quit
# 配置QoS策略1,为流分类1指定流行为1。
[Sysname] qos policy 1
[Sysname-policy-1] classifier 1 behavior 1
[Sysname-policy-1] quit
# 将QoS策略应用到端口Ethernet 1/0/1上。
[Sysname] interface Ethernet 1/0/1
[Sysname-Ethernet1/0/1] qos apply policy 1 inbound
完成上述配置后,用户可以在数据监测设备上对Host A发出的所有报文进行分析监控。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!