• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 关于我们

07-ACL和QoS配置指导

目录

02-QoS配置

本章节下载 02-QoS配置  (744.70 KB)

02-QoS配置

目 

1 QoS概述

1.1 QoS服务模型简介

1.1.1 Best-Effort服务模型

1.1.2 IntServ服务模型

1.1.3 DiffServ服务模型

1.2 QoS技术在网络中的位置

1.3 QoS技术在设备中的处理顺序

1.4 QoS配置方式

1.5 QoS与硬件适配关系

2 QoS策略

2.1 QoS策略简介

2.2 QoS策略配置任务简介

2.3 定义类

2.4 定义流行为

2.5 定义策略

2.6 应用策略

2.6.1 设备支持的策略应用位置

2.6.2 策略应用限制和指导

2.6.3 基于接口应用QoS策略

2.6.4 基于全局应用QoS策略

2.7 QoS策略显示和维护

2.7.1 显示QoS策略配置

2.7.2 显示QoS策略运行状况

2.7.3 显示QoS和ACL资源使用情况

2.7.4 清除QoS策略统计信息

3 优先级映射

3.1 优先级映射简介

3.1.1 优先级介绍

3.1.2 优先级映射表

3.1.3 优先级映射配置方式

3.2 优先级映射配置任务简介

3.3 配置优先级映射表

3.4 配置优先级信任模式

3.5 配置端口优先级

3.6 优先级映射显示和维护

4 流量监管、流量整形和限速

4.1 流量监管、流量整形和限速简介

4.1.1 流量评估与令牌桶

4.1.2 流量监管

4.1.3 流量整形

4.1.4 限速

4.2 配置流量监管

4.2.1 配置流量监管(MQC方式)

4.2.2 配置适配所有流的流量监管

4.3 配置流量整形

4.3.1 配置基于队列的流量整形

4.4 配置限速

4.5 流量监管、流量整形和限速显示和维护

4.5.1 显示流量监管配置(MQC方式)

4.5.2 显示流量监管、流量整形和限速配置及统计信息(非MQC方式)

4.5.3 显示QoS和ACL资源使用情况

5 拥塞管理

5.1 拥塞管理简介

5.1.1 拥塞的产生、影响和对策

5.1.2 设备支持的拥塞管理方法

5.2 拥塞管理配置任务简介

5.3 配置接口队列

5.3.1 配置SP队列

5.3.2 配置WRR队列

5.3.3 配置WFQ队列

5.3.4 配置SP+WRR队列

5.3.5 配置SP+WFQ队列

5.4 配置队列调度策略

5.4.1 队列调度策略简介

5.4.2 配置限制和指导

5.4.3 创建队列调度策略

5.4.4 应用队列调度策略

5.5 拥塞管理显示和维护

5.5.1 显示接口队列配置

5.5.2 显示队列调度策略配置及运行状况

5.5.3 显示接口队列统计信息

6 拥塞避免

6.1 拥塞避免简介

6.1.1 传统的丢包策略

6.1.2 RED与WRED

6.1.3 WRED和队列机制的关系

6.1.4 拥塞通知(ECN功能)

6.1.5 WRED的参数说明

6.2 配置队列的WRED参数

6.2.1 配置全局队列的WRED参数

6.3 拥塞避免显示和维护

7 流量过滤

7.1 流量过滤简介

7.2 流量过滤配置限制和指导

7.3 配置流量过滤

7.4 流量过滤显示和维护

7.5 流量过滤典型配置举例

7.5.1 流量过滤基本组网配置举例

8 重标记

8.1 重标记简介

8.2 配置重标记

8.3 配置镜像报文的本地优先级

8.4 重标记典型配置举例

8.4.1 重标记基本组网配置举例

9 流量重定向

9.1 流量重定向简介

9.2 流量重定向配置限制和指导

9.3 配置流量重定向

9.4 流量重定向显示和维护

10 流量统计

10.1 流量统计简介

10.2 流量统计配置限制和指导

10.3 配置流量统计

10.4 流量统计显示和维护

10.5 流量统计典型配置举例

10.5.1 流量统计基本组网配置举例

11 附录

11.1 附录 A 缩略语表

11.2 附录 B 缺省优先级映射表

11.2.1 优先级映射表

11.3 附录 C 各种优先级介绍

11.3.1 IP优先级和DSCP优先级

 


1 QoS概述

说明

本文以VOQ的4队列工作模式为例。有关VOQ工作模式的详细介绍,请参见“设备管理配置指导”中的“硬件资源管理”。

 

QoS即服务质量。对于网络业务,影响服务质量的因素包括传输的带宽、传送的时延、数据的丢包率等。在网络中可以通过保证传输的带宽、降低传送的时延、降低数据的丢包率以及时延抖动等措施来提高服务质量。网络资源总是有限的,在保证某类业务的服务质量的同时,可能就是在损害其它业务的服务质量。因此,网络管理者需要根据各种业务的特点来对网络资源进行合理的规划和分配,从而使网络资源得到高效利用。

1.1  QoS服务模型简介

通常QoS提供以下三种服务模型:

·     Best-Effort service(尽力而为服务模型)

·     Integrated service(综合服务模型,简称IntServ)

·     Differentiated service(区分服务模型,简称DiffServ)

1.1.1  Best-Effort服务模型

Best-Effort是一个单一的服务模型,也是最简单的服务模型。对Best-Effort服务模型,网络尽最大的可能性来发送报文。但对时延、可靠性等性能不提供任何保证。

Best-Effort服务模型是网络的缺省服务模型,通过FIFO队列来实现。它适用于绝大多数网络应用,如FTP、E-Mail等。

1.1.2  IntServ服务模型

IntServ是一个综合服务模型,它可以满足多种QoS需求。该模型使用RSVP协议,RSVP运行在从源端到目的端的每个设备上,可以监视每个流,以防止其消耗资源过多。这种体系能够明确区分并保证每一个业务流的服务质量,为网络提供最细粒度化的服务质量区分。

但是,IntServ模型对设备的要求很高,当网络中的数据流数量很大时,设备的存储和处理能力会遇到很大的压力。IntServ模型可扩展性很差,难以在Internet核心网络实施。

1.1.3  DiffServ服务模型

DiffServ是一个多服务模型,它可以满足不同的QoS需求。与IntServ不同,它不需要通知网络为每个业务预留资源。区分服务实现简单,扩展性好。

本文提到的技术都是基于DiffServ服务模型。

1.2  QoS技术在网络中的位置

QoS技术包括流分类、流量监管、流量整形、限速、拥塞管理、拥塞避免等。下面对常用的技术进行简单地介绍。

图1-1 常用QoS技术在网络中的位置

 

图1-1所示,流分类、流量监管、流量整形、拥塞管理和拥塞避免主要完成如下功能:

·     流分类:采用一定的规则识别符合某类特征的报文,它是对网络业务进行区分服务的前提和基础。

·     流量监管:对进入或流出设备的特定流量进行监管,以保护网络资源不受损害。可以作用在接口入方向和出方向。

·     流量整形:一种主动调整流的输出速率的流量控制措施,用来使流量适配下游设备可供给的网络资源,避免不必要的报文丢弃,通常作用在接口出方向。

·     拥塞管理:当拥塞发生时制定一个资源的调度策略,决定报文转发的处理次序,通常作用在接口出方向。

·     拥塞避免:监督网络资源的使用情况,当发现拥塞有加剧的趋势时采取主动丢弃报文的策略,通过调整队列长度来解除网络的过载,通常作用在接口出方向。

1.3  QoS技术在设备中的处理顺序

图1-2简要描述了各种QoS技术在网络设备中的处理顺序。

(1)     首先通过流分类对各种业务进行识别和区分,它是后续各种动作的基础;

(2)     通过各种动作对特定的业务进行处理。这些动作需要和流分类关联起来才有意义。具体采取何种动作,与所处的阶段以及网络当前的负载状况有关。例如,当报文进入网络时进行流量监管;流出节点之前进行流量整形;拥塞时对队列进行拥塞管理;拥塞加剧时采取拥塞避免措施等。

图1-2 各QoS技术在同一网络设备中的处理顺序

 

1.4  QoS配置方式

QoS的配置方式分为MQC方式(模块化QoS配置,Modular QoS Configuration)和非MQC方式。

MQC方式通过QoS策略定义不同类别的流量要采取的动作,并将QoS策略应用到不同的目标位置(例如接口)来实现对业务流量的控制。

非MQC方式则通过直接在目标位置上配置QoS参数来实现对业务流量的控制。例如,在接口上配置限速功能来达到限制接口流量的目的。

有些QoS功能只能使用其中一种方式来配置,有些使用两种方式都可以进行配置。在实际应用中,两种配置方式也可以结合起来使用。

1.5  QoS与硬件适配关系

仅NCP支持QoS功能。

 

 


2 QoS策略

2.1  QoS策略简介

QoS策略由如下部分组成:

·     类,定义了对报文进行识别的规则。

·     流行为,定义了一组针对类识别后的报文所做的QoS动作。

通过将类和流行为关联起来,QoS策略可对符合分类规则的报文执行流行为中定义的动作。

用户可以在一个策略中定义多个类与流行为的绑定关系。

2.2  QoS策略配置任务简介

QoS策略配置任务如下:

(1)     定义类

(2)     定义流行为

(3)     定义策略

(4)     应用策略

¡     基于接口应用QoS策略

¡     基于全局应用QoS策略

2.3  定义类

(1)     进入系统视图。

system-view

(2)     创建类,并进入类视图。

traffic classifier classifier-name [ operator { and | or } ]

(3)     (可选)配置类的描述信息。

description text

缺省情况下,未配置类的描述信息。

(4)     定义匹配数据包的规则。

if-match match-criteria

缺省情况下,未定义匹配数据包的规则。

具体规则的介绍,请参见“QoS命令”中的if-match命令。

2.4  定义流行为

(1)     进入系统视图。

system-view

(2)     创建流行为,并进入流行为视图。

traffic behavior behavior-name

(3)     配置流行为的动作。

缺省情况下,未配置流行为的动作。

流行为动作就是对符合流分类的报文做出相应的QoS动作,例如流量监管、流量过滤、重标记、流量统计等,具体情况请参见本文相关章节。同一个流行为下可以配置多个转发动作。

2.5  定义策略

1. 配置限制和指导

QoS策略下可以存在多个CB(Classifier-Behavior)对,应用QoS策略之后,报文按顺序逐个匹配QoS策略中CB对,如果匹配到某个CB对,则报文直接执行该CB对中指定流行为的所有转发动作,报文不再继续匹配其他CB对。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     创建QoS策略,并进入策略视图。

qos [ accounting | mirroring | remarking ] policy policy-name

(3)     为类指定流行为,即配置CB(Classifier-Behavior)对。

classifier classifier-name behavior behavior-name [ mode { loose | qppb-manipulation } | insert-before before-classifier-name ] *

缺省情况下,未指定类对应的流行为。

参数

说明

loose

(暂不支持)表示该流分类与流行为的关联模式为宽松模式。仅基于控制平面应用QoS策略时,本模式才会生效

未配置宽松模式(mode loose)时,流分类仅支持匹配上送控制面的部分协议报文,而ARP等报文无法识别和匹配。如果需要对这类报上送控制平面的协议报文应用QoS策略进行流量限速,则可以配置宽松模式

qppb-manipulation

设置类和流行为对应关系用于匹配BGP路由策略中apply qos-local-id的信息。类中if-match qos-local-id对应路由策略命令中apply qos-local-id命令,具体内容请参见“三层技术-IP路由配置指导”中的“路由策略”

 

2.6  应用策略

2.6.1  设备支持的策略应用位置

QoS策略支持应用在如下位置:

·     基于接口应用QoS策略,支持在入方向和出方向应用。

·     基于全局应用QoS策略,支持在入方向和出方向应用。

2.6.2  策略应用限制和指导

QoS策略应用后:

·     用户仍然可以修改QoS策略中的流分类规则和流行为,以及二者的对应关系。当流分类规则中使用ACL匹配报文时,允许删除或修改该ACL(包括向该ACL中添加、删除和修改匹配规则)。

·     如果一个流行为中配置了多个动作,而其中某个动作未生效,则该CB对(即通过classifier behavior命令关联的一个流分类和一个流行为)都不会生效。

2.6.3  基于接口应用QoS策略

1. 配置限制和指导

基于接口应用QoS策略时需要注意的是:

·     一个QoS策略可以应用于多个接口,但在接口的每个方向(出和入两个方向)只能应用一个策略。

·     QoS策略应用在出方向时,对设备发出的协议报文不起作用,以确保这些报文在策略误配置时仍然能够正常发出,维持设备的正常运行。常见的本地协议报文如下:链路维护报文、RIP、LDP、SSH等。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     在接口上应用已创建的QoS策略。

qos apply [ accounting | mirroring | remarking ] policy policy-name { inbound | outbound }

缺省情况下,未在接口上应用QoS策略。

2.6.4  基于全局应用QoS策略

1. 功能简介

基于全局应用QoS策略后可以对设备所有接口上的流量进行管理。

2. 配置限制和指导

基于全局应用QoS策略时需要注意的是,当某个成员设备资源不足导致全局应用QoS策略失败时,用户可以执行undo qos apply policy global命令进行手工删除。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     全局应用已创建的QoS策略。

qos apply [ accounting | mirroring | remarking ] policy policy-name global { inbound | outbound }

缺省情况下,未在全局应用QoS策略。

2.7  QoS策略显示和维护

2.7.1  显示QoS策略配置

可在任意视图下执行以下命令:

·     显示类的配置信息。

display traffic classifier user-defined [ classifier-name ] [ slot slot-number ]

·     显示流行为的配置信息。

display traffic behavior user-defined [ behavior-name ] [ slot slot-number ]

·     显示QoS策略的配置信息。

display qos policy user-defined [ accounting | mirroring | remarking ] [ policy-name [ classifier classifier-name ] ] [ slot slot-number ]

·     显示系统预定义的控制平面应用QoS策略的信息。

display qos policy control-plane pre-defined [ slot slot-number ]

2.7.2  显示QoS策略运行状况

可在任意视图下执行以下命令:

·     显示接口上QoS策略的配置信息和运行情况。

display qos [ accounting | mirroring | remarking ] policy interface [ interface-type interface-number ] [ slot slot-number ] [ inbound | outbound ]

·     显示基于全局应用QoS策略的信息。

display qos [ accounting | mirroring | remarking ] policy global [ slot slot-number ] [ inbound | outbound ]

2.7.3  显示QoS和ACL资源使用情况

可在任意视图下执行以下命令,显示QoS和ACL资源的使用情况。

display qos-acl resource [ advance ] [ slot slot-number ]

2.7.4  清除QoS策略统计信息

请在用户视图下执行以下命令:

·     清除全局应用QoS策略的统计信息。

reset qos [ accounting | mirroring | remarking ] policy global [ inbound | outbound ]


3 优先级映射

3.1  优先级映射简介

优先级映射可以将报文携带的优先级字段映射成指定优先级字段值,设备根据映射后的优先级字段,为报文提供有差别的QoS服务,从而为全面有效的控制报文的转发调度等级提供依据。

3.1.1  优先级介绍

优先级用于标识报文传输的优先程度,可以分为两类:报文携带优先级和设备调度优先级。

报文携带优先级包括:802.1p优先级、DSCP优先级、IP优先级、EXP优先级等。这些优先级都是根据公认的标准和协议生成,体现了报文自身的优先等级。相关介绍请参见“11.3  附录 C 各种优先级介绍”。

设备调度优先级是指报文在设备内转发时所使用的优先级,只对当前设备自身有效。设备调度优先级包括以下几种:

·     本地优先级(LP):设备为报文分配的一种具有本地意义的优先级,每个本地优先级对应一个队列,本地优先级值越大的报文,进入的队列优先级越高,从而能够获得优先的调度。

·     丢弃优先级(DP):在进行报文丢弃时参考的参数,丢弃优先级值越大的报文越被优先丢弃。

·     用户优先级(UP):设备对于进入的流量,会自动获取报文的优先级作为后续转发调度的参数,这种报文优先级称为用户优先级。对于不同类型的报文,用户优先级所代表的优先级字段不同。对于二层报文,用户优先级取自802.1p优先级;对于三层报文,用户优先级取自IP优先级;对于MPLS报文,用户优先级取自EXP。

设备仅支持以本地优先级(LP)和丢弃优先级(DP)作为设备调度优先级。

3.1.2  优先级映射表

设备提供了多张优先级映射表,分别对应不同的优先级映射关系。

通常情况下,设备可以通过查找缺省优先级映射表(11.2  附录 B 缺省优先级映射表)来为报文分配相应的优先级。如果缺省优先级映射表无法满足用户需求,可以根据实际情况对映射表进行修改。

3.1.3  优先级映射配置方式

优先级映射配置方式包括:优先级信任模式方式、端口优先级方式。

1. 优先级信任模式方式

配置端口的优先级信任模式后,设备将信任报文自身携带的优先级。通过优先级映射表,使用所信任的报文携带优先级进行优先级映射,根据映射关系完成对报文优先级的修改,以及实现报文在设备内部的调度。

2. 端口优先级方式

未配置端口的优先级信任模式时,设备会将端口优先级作为报文自身的优先级。通过优先级映射表,对报文进行映射。用户可以配置端口优先级,通过优先级映射,使不同端口收到的报文进入对应的队列,以此实现对不同端口收到报文的差异化调度。

3.2  优先级映射配置任务简介

优先级映射配置任务如下:

(1)     (可选)配置优先级映射表

(2)     配置优先级映射方式。

¡     配置优先级信任模式

¡     配置端口优先级

3.3  配置优先级映射表

(1)     进入系统视图。

system-view

(2)     进入指定的优先级映射表视图。

qos map-table { dot1p-dp | dscp-dot1p| dscp-dp | dscp-dscp | dscp-exp | exp-dot1p | exp-dscp }

(3)     配置指定优先级映射表的映射关系。

import import-value-list export export-value

缺省情况下,优先级映射表的映射关系请参见“附录B”。

多次执行本命令,最后一次执行的命令生效。

3.4  配置优先级信任模式

1. 功能简介

配置优先级信任模式后,设备将根据报文自身的优先级,查找优先级映射表,为报文分配优先级参数。

在配置接口上的优先级模式时,用户可以选择下列信任模式:

·     dscp:信任IP报文自带的DSCP优先级,以此优先级进行优先级映射。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置优先级信任模式。

qos trust dscp

缺省情况下,三层以太网接口优先级信任模式为dscp

3.5  配置端口优先级

1. 功能简介

按照接收端口的端口优先级,设备通过一一映射为报文分配相应的优先级。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置端口优先级。

qos priority priority-value

缺省情况下,端口优先级为0。

3.6  优先级映射显示和维护

可在任意视图下执行以下命令:

·     显示指定优先级映射表配置情况。

display qos map-table [ dot1p-dp | dscp-dot1p| dscp-dp | dscp-dscp | dscp-exp | exp-dot1p | exp-dscp ]

·     显示端口优先级信任模式信息。

display qos trust interface [ interface-type interface-number ]


4 流量监管、流量整形和限速

4.1  流量监管、流量整形和限速简介

为了使有限的网络资源能够更好地发挥效用,更好地为更多用户提供服务,就必须对流量加以限制。流量监管、流量整形和限速可以实现流量的速率限制功能,而要实现此功能就必须对通过设备的流量进行度量。一般采用令牌桶(Token Bucket)对流量进行度量。

4.1.1  流量评估与令牌桶

1. 令牌桶

令牌桶可以看作是一个存放一定数量令牌的容器。系统按设定的速度向桶中放置令牌,当桶中令牌满时,多出的令牌溢出,桶中令牌不再增加。

2. 用令牌桶评估流量

在用令牌桶评估流量规格时,是以令牌桶中的令牌数量是否足够满足报文的转发为依据的。如果桶中存在足够的令牌可以用来转发报文,称流量遵守或符合这个规格,否则称为不符合或超标。

评估流量时令牌桶的参数包括:

·     平均速率:向桶中放置令牌的速率,即允许的流的平均速度。通常配置为CIR。

·     突发尺寸:令牌桶的容量,即每次突发所允许的最大的流量尺寸。通常配置为CBS,突发尺寸必须大于最大报文长度。

每到达一个报文就进行一次评估。每次评估,如果桶中有足够的令牌可供使用,则说明流量控制在允许的范围内,此时要从桶中取走满足报文的转发的令牌;否则说明已经耗费太多令牌,流量超标了。

3. 复杂评估

为了评估更复杂的情况,实施更灵活的调控策略,可以使用两个令牌桶(分别称为C桶和E桶)对流量进行评估。主要有如下三种算法。

(1)     单速率单桶双色算法

¡     CIR:表示向C桶中投放令牌的速率,即C桶允许传输或转发报文的平均速率;

¡     CBS:表示C桶的容量,即C桶瞬间能够通过的承诺突发流量。

每次评估时,依据下面的情况,可以分别实施不同的流控策略:

¡     如果C桶有足够的令牌,报文被标记为green,即绿色报文;

¡     如果C桶令牌不足,报文被标记为red,即红色报文。

(2)     单速率双桶三色算法

¡     CIR:表示向C桶中投放令牌的速率,即C桶允许传输或转发报文的平均速率;

¡     CBS:表示C桶的容量,即C桶瞬间能够通过的承诺突发流量;

¡     EBS:表示E桶的容量的增量,即E桶瞬间能够通过的超出突发流量,取值不为0。E桶的容量等于CBS与EBS的和。

每次评估时,依据下面的情况,可以分别实施不同的流控策略:

¡     如果C桶有足够的令牌,报文被标记为green,即绿色报文;

¡     如果C桶令牌不足,但E桶有足够的令牌,报文被标记为yellow,即黄色报文;

¡     如果C桶和E桶都没有足够的令牌,报文被标记为red,即红色报文。

(3)     双速率双桶三色算法

¡     CIR:表示向C桶中投放令牌的速率,即C桶允许传输或转发报文的平均速率;

¡     CBS:表示C桶的容量,即C桶瞬间能够通过的承诺突发流量;

¡     PIR:表示向E桶中投放令牌的速率,即E桶允许传输或转发报文的最大速率;

¡     EBS:表示E桶的容量,即E桶瞬间能够通过的超出突发流量。

每次评估时,依据下面的情况,可以分别实施不同的流控策略:

¡     如果C桶有足够的令牌,报文被标记为green,即绿色报文;

¡     如果C桶令牌不足,但E桶有足够的令牌,报文被标记为yellow,即黄色报文;

¡     如果C桶和E桶都没有足够的令牌,报文被标记为red,即红色报文。

4.1.2  流量监管

流量监管就是对流量进行控制,通过监督本节点中的流量速率,对超出规格部分的流量进行“惩罚”,使流量被限制在一个合理的范围之内,以保护网络资源和运营商的利益。例如,可以限制HTTP报文不能占用50%以上的网络带宽。如果发现流量超出规格,则丢弃超规格部分的流量。

图4-1 流量监管示意图

 

流量监管还可以对所监管流量进行差异化处理,依据不同的评估结果,实施不同的监管动作。这些动作包括转发、丢弃。

4.1.3  流量整形

流量整形是一种主动调整流量输出速率的措施,它可以对超规格部分的流量进行缓存(通常是将它们放入缓冲区或队列内,如图4-2所示),当令牌桶有足够的令牌时,再均匀的向外发送这些被缓存的报文。流量整形与流量监管相比,有如下两点差异:

·     流量整形会将超规格部分的流量进行缓存,可以解决流量监管中的丢包问题。

·     由于流量整形会将超规格部分的流量进行缓存,所以会增加这部分流量的延迟。

图4-2 流量整形示意图

 

流量整形的一个典型应用是,参照下游网络节点的流量监管指标,合理配置流量整形速率,控制本节点流量的输出速率,以避免过多流量发往下游网络节点、在下游网络节点上被监管并丢弃超规格流量。例如,在图4-3所示的网络中,Device A向Device B发送报文。Device B要对Device A发送来的报文进行流量监管,对超出规格的流量直接丢弃。

图4-3 流量整形的应用

 

为了减少报文在Device B上的无谓丢失,可以在Device A的出口配置流量整形,将超出流量整形速率的报文缓存在Device A中。当可以继续发送下一批报文时,流量整形再从缓冲队列中取出报文进行发送。这样,发向Device B的报文将都符合Device B的流量规格。

4.1.4  限速

限速可以限制报文(除紧急报文)的总速率。

限速也是采用令牌桶进行流量评估的。当令牌桶中有足够的令牌时,则允许报文通过;否则,超规格部分的报文将进入QoS队列进行拥塞管理。这样,就实现了流量的速率限制。

图4-4 限速处理过程示意图

 

由于采用了令牌桶进行流量评估,当令牌桶中存有令牌时,可以允许流量通过甚至突发,当令牌桶中没有令牌时,报文必须等到桶中生成了新的令牌后才可以通过。这就限制了流速不能大于令牌生成的速度,达到了限制流量,同时允许突发流量通过的目的。

与流量监管和流量整形相比,限速能够限制所有报文。所以当用户只需要对所有报文进行限速时,使用限速比较简单。

4.2  配置流量监管

4.2.1  配置流量监管(MQC方式)

1. 配置限制和指导

设备目前支持基于接口、全局应用QoS策略配置流量监管。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     定义类。

a.     创建类,并进入类视图。

traffic classifier classifier-name [ operator { and | or } ]

b.     定义匹配数据包的规则。

if-match match-criteria

缺省情况下,未定义匹配数据包的规则。

具体规则的介绍,请参见“QoS命令”中的if-match命令。

c.     退回系统视图。

quit

(3)     定义流行为。

a.     创建一个流行为并进入流行为视图。

traffic behavior behavior-name

b.     配置流量监管动作。

car cir [ pps ] committed-information-rate [ cbs committed-burst-size [ ebs excess-burst-size ] ] [ green action | red action | yellow action ] *

car cir [ pps ] committed-information-rate [ cbs committed-burst-size ] pir [ pps ] peak-information-rate [ ebs excess-burst-size ] [ green action | red action | yellow action ] *

缺省情况下,未配置流量监管动作。

c.     退回系统视图。

quit

(4)     定义策略。

a.     创建策略并进入策略视图。

qos policy policy-name

b.     在策略中为类指定采用的流行为。

classifier classifier-name behavior behavior-name

缺省情况下,未指定类对应的流行为。

c.     退回系统视图。

quit

(5)     应用QoS策略。

具体配置请参见“2.6  应用策略”。

缺省情况下,未应用QoS策略。

4.2.2  配置适配所有流的流量监管

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     在接口应用CAR策略。

绝对值配置方式:

qos car { inbound | outbound } any cir committed-information-rate [ cbs committed-burst-size [ ebs excess-burst-size ] ]

qos car { inbound | outbound } any cir committed-information-rate [ cbs committed-burst-size ] pir peak-information-rate [ ebs excess-burst-size ]

百分比配置方式:

qos car { inbound | outbound } any percent cir cir-percent [ cbs cbs-time [ ebs ebs-time ] ]

qos car { inbound | outbound } any percent cir cir-percent [ cbs cbs-time ] pir pir-percent [ ebs ebs-time ]

缺省情况下,接口上没有应用CAR策略。

4.3  配置流量整形

4.3.1  配置基于队列的流量整形

1. 配置限制和指导

基于队列的流量整形仅对出方向指定队列中的流量生效。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置基于队列的流量整形。

qos gts queue queue-id cir committed-information-rate [ cbs committed-burst-size ]

缺省情况下,接口队列上未配置流量整形。

4.4  配置限速

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置接口限速。

绝对值配置方式:

qos lr { inbound | outbound } cir committed-information-rate [ cbs committed-burst-size ]

百分比配置方式:

qos lr { inbound | outbound } percent cir cir-percent [ cbs cbs-time ]

缺省情况下,接口上未配置接口限速。

4.5  流量监管、流量整形和限速显示和维护

4.5.1  显示流量监管配置(MQC方式)

可在任意视图下执行以下命令,显示流量监管的相关配置信息。

display traffic behavior user-defined [ behavior-name ]

4.5.2  显示流量监管、流量整形和限速配置及统计信息(非MQC方式)

可在任意视图下执行以下命令:

·     显示接口的流量监管配置情况和统计信息。

display qos car interface [ interface-type interface-number ]

·     显示接口的流量整形配置情况和统计信息。

display qos gts interface [ interface-type interface-number ]

·     显示限速配置情况和统计信息。

display qos lr interface [ interface-type interface-number ]

4.5.3  显示QoS和ACL资源使用情况

可在任意视图下执行以下命令,显示QoS和ACL资源的使用情况。

display qos-acl resource [ advance ] [ slot slot-number ]


5 拥塞管理

5.1  拥塞管理简介

5.1.1  拥塞的产生、影响和对策

所谓拥塞,是指当前供给资源相对于正常转发处理需要资源的不足,从而导致服务质量下降的一种现象。

在复杂的Internet分组交换环境下,拥塞极为常见。以下图中的两种情况为例:

图5-1 流量拥塞示意图

 

拥塞有可能会引发一系列的负面影响:

·     拥塞增加了报文传输的延迟和抖动,可能会引起报文重传,从而导致更多的拥塞产生。

·     拥塞使网络的有效吞吐率降低,造成网络资源的利用率降低。

·     拥塞加剧会耗费大量的网络资源(特别是存储资源),不合理的资源分配甚至可能导致系统陷入资源死锁而崩溃。

在分组交换以及多用户业务并存的复杂环境下,拥塞又是不可避免的,因此必须采用适当的方法来解决拥塞。

拥塞管理的中心内容就是当拥塞发生时如何制定一个资源的调度策略,以决定报文转发的处理次序。拥塞管理的处理包括队列的创建、报文的分类、将报文送入不同的队列、队列调度等。

5.1.2  设备支持的拥塞管理方法

对于拥塞管理,一般采用队列技术,使用一个队列算法对流量进行分类,之后用某种优先级别算法将这些流量发送出去。

目前设备支持如下几种队列:

·     SP队列

·     WRR队列

·     WFQ队列

1. SP队列

图5-2 SP队列示意图

SP队列是针对关键业务类型应用设计的。关键业务有一个重要的特点,即在拥塞发生时要求优先获得服务以减小响应的延迟。以图5-2为例,优先队列将端口的4个输出队列分成4类,依次为3、2、1、0队列,它们的优先级依次降低。

在队列调度时,SP严格按照优先级从高到低的次序优先发送较高优先级队列中的分组,当较高优先级队列为空时,再发送较低优先级队列中的分组。这样,将关键业务的分组放入较高优先级的队列,将非关键业务的分组放入较低优先级的队列,可以保证关键业务的分组被优先传送,非关键业务的分组在处理关键业务数据的空闲间隙被传送。

SP的缺点是:拥塞发生时,如果较高优先级队列中长时间有分组存在,那么低优先级队列中的报文将一直得不到服务。

2. WRR队列

图5-3 WRR队列示意图

WRR队列在队列之间进行轮流调度,保证每个队列都得到一定的服务时间。以端口有4个输出队列为例,WRR可为每个队列配置一个加权值(依次为w3、w2、w1、w0),加权值表示获取资源的比重。如一个100Mbps的端口,配置它的WRR队列的加权值为50、30、10、10(依次对应w3、w2、w1、w0),这样可以保证最低优先级队列至少获得10Mbps的带宽,解决了采用SP调度时低优先级队列中的报文可能长时间得不到服务的问题。

WRR队列还有一个优点是,虽然多个队列的调度是轮询进行的,但对每个队列不是固定地分配服务时间片——如果某个队列为空,那么马上换到下一个队列调度,这样带宽资源可以得到充分的利用。

WRR队列分为:

·     基本WRR队列:基本WRR队列包含多个队列,用户可以定制各个队列的权重,WRR按用户设定的参数进行加权轮询调度。

·     分组WRR队列:所有队列全部采用WRR调度,用户可以根据需要将输出队列划分为WRR优先级队列组1和WRR优先级队列组2。进行队列调度时,设备首先在WRR优先级队列组1中进行轮询调度;优先级队列组1中没有报文发送时,设备才在优先级队列组2中进行轮询调度。当前设备仅支持WRR优先级队列组1。

在分组WRR队列中,也可以配置队列加入SP分组,采用严格优先级调度算法。调度时先调度SP组,然后调度其他WRR优先组。

3. WFQ队列

图5-4 WFQ队列

WFQ和WRR队列调度算法类似,同样分为基本WFQ队列和分组WFQ队列。当前设备仅支持WFQ优先级队列组1。

在分组WFQ队列中,也可以配置队列加入SP分组,采用严格优先级调度算法。两者差异如下:WFQ支持带宽保证,可以保证端口流量拥塞时能够获得的最小队列带宽。

在进行队列调度时,首先按SP方式对SP组中的队列进行调度,然后调度WFQ组的队列中满足WFQ最小保证带宽的流量,最后再按WFQ组中各队列的调度权重进行轮询调度。

5.2  拥塞管理配置任务简介

·     拥塞管理配置任务如下:

·     配置接口队列

请选择以下一项任务进行配置:

¡     配置SP队列

¡     配置WRR队列

¡     配置WFQ队列

¡     配置SP+WRR队列

¡     配置SP+WFQ队列

·     配置队列调度策略

5.3  配置接口队列

5.3.1  配置SP队列

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置SP队列。

qos sp

缺省情况下,接口采用SP调度算法。

5.3.2  配置WRR队列

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     开启WRR队列。

qos wrr { byte-count | weight }

缺省情况下,接口采用SP调度算法。

(4)     配置分组WRR队列的参数。

qos wrr queue-id group 1 { byte-count | weight } schedule-value

缺省情况下,接口上开启WRR队列后,所有队列均属于WRR分组1,VOQ的工作模式为4队列模式时,0~3队列的调度权重分别为1、2、3、4。VOQ的工作模式为8队列模式时,0~7队列的调度权重分别为1、2、3、4、5、6、7、8。

5.3.3  配置WFQ队列

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     开启WFQ队列。

qos wfq { byte-count | weight }

缺省情况下,接口采用SP调度算法。

(4)     配置分组WFQ队列的参数。

qos wfq queue-id group 1 { byte-count | weight } schedule-value

缺省情况下,当接口使用WFQ队列时,所有队列都处于WFQ调度组1中,各队列的调度权重均为1。

5.3.4  配置SP+WRR队列

1. 配置限制和指导

在配置WRR队列的调度权重值时需要注意的是,选择的调度单位(字节数或报文个数)需要与使能WRR时使用的调度单位保持一致,否则将无法正常配置。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     开启WRR队列。

qos wrr { byte-count | weight }

缺省情况下,接口采用SP调度算法。

(4)     配置队列加入SP组,采用严格优先级调度算法。

qos wrr queue-id group sp

当接口使用WRR队列时,所有队列均处于WRR调度组1中。

(5)     配置队列加入WRR调度组。

qos wrr queue-id group 1 { byte-count | weight } schedule-value

缺省情况下,接口上开启WRR队列后,所有队列均属于WRR分组1,VOQ的工作模式为4队列模式时,0~3队列的调度权重分别为1、2、3、4。VOQ的工作模式为8队列模式时,0~7队列的调度权重分别为1、2、3、4、5、6、7、8。

5.3.5  配置SP+WFQ队列

1. 配置指导和限制

在配置WFQ队列的调度权重值时,选择的调度单位(字节数或报文个数)需要与使能WFQ时使用的调度单位保持一致,否则将无法正常配置。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     开启WFQ队列 。

qos wfq { byte-count | weight }

缺省情况下,接口采用SP调度算法。

(4)     配置队列加入SP组,采用严格优先级调度算法。

qos wfq queue-id group sp

当接口使用WFQ队列时,所有队列均处于WFQ调度组1中。

(5)     配置队列加入WFQ调度组。

qos wfq queue-id group 1 { byte-count | weight } schedule-value

当接口使用WFQ队列时,所有队列都处于WFQ调度组1中,各队列的调度权重均为1。

(6)     (可选)配置WFQ队列的最小保证带宽值。

qos bandwidth queue queue-id min bandwidth-value

在使用WFQ队列时,每个队列的最小带宽保证为780kbps。

5.4  配置队列调度策略

5.4.1  队列调度策略简介

队列调度策略配置是在一个策略中配置各个队列的调度参数,最后通过在接口应用该策略来实现拥塞管理功能。

队列调度策略中的队列支持三种调度方式:SP、WRR、WFQ。在一个队列调度策略中支持SP和WRR、SP和WFQ的混合配置。具体调度方式,可参见5.1.2  设备支持的拥塞管理方法中介绍的内容。以SP和WRR分组混合配置为例,调度关系如图5-5所示。

图5-5 SP和WRR混合配置图

·     设备优先调度SP组队列中的报文。

·     队列3(即图中的Q3,下同)在SP组中优先级最高,该队列的报文优先发送。

·     队列2在SP组中优先级次之,队列3为空时发送本队列的报文。

·     队列1、0之间按照权重轮询调度,在队列3、2为空时调度WRR分组1。

5.4.2  配置限制和指导

在配置队列调度策略时需要注意的是:

·     队列调度策略中队列的调度参数支持动态修改,从而方便修改已经应用的队列调度策略。

·     当VOQ工作在4队列模式时,可配置的队列编号范围为0~3;当VOQ工作在8队列模式时,可配置的队列编号范围为0~7。

5.4.3  创建队列调度策略

(1)     进入系统视图。

system-view

(2)     创建队列调度策略,并进入相应的队列调度策略视图。

qos qmprofile profile-name

(3)     (可选)配置队列调度参数。请选择其中一项进行配置。

¡     配置严格优先级调度:

queue queue-id sp

¡     配置加权轮询调度:

queue queue-id wrr group group-id { weight | byte-count } schedule-value

¡     配置加权公平队列调度:

queue queue-id wfq group group-id { weight | byte-count } schedule-value

缺省情况下,所有队列使用SP调度算法。

(4)     (可选)配置队列调度策略下队列的最小带宽保证。

bandwidth queue queue-id min bandwidth-value

缺省情况下,当队列调度策略中有队列配置为WFQ队列时,最小带宽保证均为780kbps。

5.4.4  应用队列调度策略

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     应用队列调度策略。

qos apply qmprofile profile-name

缺省情况下,接口上未应用队列调度策略,所有队列使用SP调度算法。

5.5  拥塞管理显示和维护

5.5.1  显示接口队列配置

可在任意视图下执行以下命令:

·     显示接口上队列配置情况和统计信息。

display qos queue interface [ interface-type interface-number ]

·     显示接口的SP队列配置情况。

display qos queue sp interface [ interface-type interface-number ]

·     显示接口的WRR队列配置情况。

display qos queue wrr interface [ interface-type interface-number ]

·     显示接口的WFQ配置情况。

display qos queue wfq interface [ interface-type interface-number ]

5.5.2  显示队列调度策略配置及运行状况

可在任意视图下执行以下命令:

·     显示队列调度策略的配置信息。

display qos qmprofile configuration [ profile-name ] [ slot slot-number ]

·     显示接口的队列调度策略应用信息。

display qos qmprofile interface [ interface-type interface-number ]

5.5.3  显示接口队列统计信息

可在任意视图下执行以下命令,显示端口队列出方向的统计信息。

display qos queue-statistics interface [ interface-type interface-number ] outbound


6 拥塞避免

6.1  拥塞避免简介

拥塞避免是一种流量控制机制,它通过监视网络资源(如队列或内存缓冲区)的使用情况,在拥塞产生或有加剧的趋势时主动丢弃报文,通过调整网络的流量来避免网络过载。设备在丢弃报文时,需要与源端的流量控制动作(比如TCP流量控制)相配合,调整网络的流量到一个合理的负载状态。丢包策略和源端的流量控制相结合,可以使网络的吞吐量和利用效率最大化,并且使报文丢弃和延迟最小化。

6.1.1  传统的丢包策略

传统的丢包策略采用尾部丢弃(Tail-Drop)的方法。当队列的长度达到最大值后,所有新到来的报文都将被丢弃。

这种丢弃策略会引发TCP全局同步现象:当队列同时丢弃多个TCP连接的报文时,将造成多个TCP连接同时进入拥塞避免和慢启动状态以降低并调整流量,而后又会在某个时间同时出现流量高峰。如此反复,使网络流量忽大忽小,网络不停震荡。

6.1.2  RED与WRED

为避免TCP全局同步现象,可使用RED或WRED。

RED和WRED通过随机丢弃报文避免了TCP的全局同步现象,使得当某个TCP连接的报文被丢弃、开始减速发送的时候,其他的TCP连接仍然有较高的发送速度。这样,无论什么时候,总有TCP连接在进行较快的发送,提高了线路带宽的利用率。

在RED类算法中,为每个队列都设定上限和下限,对队列中的报文进行如下处理:

·     当队列的长度小于下限时,不丢弃报文;

·     当队列的长度超过上限时,丢弃所有到来的报文;

·     当队列的长度在上限和下限之间时,开始随机丢弃到来的报文。队列越长,丢弃概率越高,但有一个最大丢弃概率。

直接采用队列的长度和上限、下限比较并进行丢弃,将会对突发性的数据流造成不公正的待遇,不利于数据流的传输。WRED采用平均队列和设置的队列上限、下限比较来确定丢弃的概率。

队列平均长度既反映了队列的变化趋势,又对队列长度的突发变化不敏感,避免了对突发性数据流的不公正待遇。

当队列机制采用WFQ时,可以为不同优先级的报文设定计算队列平均长度时的指数、上限、下限、丢弃概率,从而对不同优先级的报文提供不同的丢弃特性。

当队列机制采用FIFO、PQ、CQ时,可以为每个队列设定计算队列平均长度时的指数、上限、下限、丢弃概率,为不同类别的报文提供不同的丢弃特性。

6.1.3  WRED和队列机制的关系

WRED和队列机制的关系如下图所示。

图6-1 WRED和队列机制关系示意图

当WRED和WFQ配合使用时,可以实现基于流的WRED。在进行分类的时候,不同的流有自己的队列,对于流量小的流,由于其队列长度总是比较小,所以丢弃的概率将比较小。而流量大的流将会有较大的队列长度,从而丢弃较多的报文,保护了流量较小的流的利益。

6.1.4  拥塞通知(ECN功能)

WRED采用的丢弃报文的动作虽然缓解了拥塞对网络的影响,但将报文从发送端转发到被丢弃位置之间所消耗的网络资源已经被浪费了。因此,在拥塞发生时,如果能将网络的拥塞状况告知发送端,使其主动降低发送速率或减小报文窗口大小,便可以更高效的利用网络资源。

RFC 2481定义了一种端到端的拥塞通知机制,称为ECN功能。ECN功能利用IP报文头中的DS域来标记报文传输路径上的拥塞状态。支持该功能的终端设备可以通过报文内容判断出传输路径上发生了拥塞,从而调整报文的发送方式,避免拥塞加剧。ECN功能对IP报文头中DS域的最后两个比特位(称为ECN域)进行了如下定义:

·     比特位6用于标识发送端设备是否支持ECN功能,称为ECT位(ECN-Capable Transport)

·     比特位7用于标识报文在传输路径上是否经历过拥塞,称为CE位(Congestion Experienced)

说明

·     关于DS域的介绍,请参见“11.3.1  IP优先级和DSCP优先级”。

·     在实际应用中,设备将ECT位为1、CE位为0的报文,以及ECT位为0,CE位为1的报文都识别为由支持ECN功能的终端发出的报文。

 

图6-2所示,没有开启ECN功能的WRED策略按照一定的丢弃策略随机丢弃队列中的报文,WRED策略为每个队列都设定上限长度QL_max和下限长度QL_min,对队列中的报文进行如下处理:

·     当队列的长度小于下限QL_min时,不丢弃报文;

·     当队列的长度超过上限QL_max时,丢弃所有到来的报文;

·     当队列的长度在上限QL_max和下限QL_min之间时,开始随机丢弃到来的报文。队列越长,丢弃概率越高,队列丢弃概率随队列长度线性增长,不超出最大丢弃概率x%。

图6-2 WRED丢弃概率与队列长度示意图

 

图6-3所示,在部署了ECN功能的组网图中,存在三类设备角色:

·     转发设备(Congestion Point):报文在网络中转发路径上经过的设备,转发设备支持ECN功能,可以识别报文中ECN域的取值。报文在转发设备的接口上可能发生拥塞,所以转发设备又称为Congestion Point,转发设备需要部署ECN功能的WRED策略。

·     报文接收端(Notification Point):接收端设备网卡支持ECN功能,可以识别报文中取值为01、10或者11的ECN域。接收端同时作为拥塞通知的发起设备,收到ECN域取值为11的报文时,将每隔时间周期T1发送拥塞通知报文给报文发送端,要求发送端降低报文发送速率。

·     报文发送端(Reaction Point):发送端设备网卡支持ECN功能,从发送端发出报文的ECN域的取值为01或者10。发送端同时作为拥塞通知的应答设备,收到拥塞通知时,将以一定的降速比率降低当前自身发送报文的发送速率,并开启计时器,当计时器超出时间T2(T2>T1)后,发送端设备未再次收到拥塞通知,则发送端认为网络中不存在拥塞,恢复之前的报文发送速率。当计时器在时间T2(T2>T1)内,发送端设备再次收到拥塞通知,则发送端进一步降低报文发送速率。

图6-3 部署ECN功能的组网图

 

部署了ECN功能的转发设备(Congestion Point)对接收到的数据报文进行识别和处理的具体处理方式如下:

·     当转发设备的报文在出方向进入队列排队,该队列的长度小于下限QL_min(QL_min也称为ECN低门限)时,不对报文进行任何处理,转发设备直接将报文从出接口转发。

·     当转发设备的报文在出方向进入队列排队,该队列的长度大于下限QL_min但小于上限QL_max(QL_max也称为ECN高门限)时:

¡     如果设备接收到的报文中ECN域取值为00,表示报文发送端不支持ECN功能,转发设备按照未开启ECN功能的WRED策略处理,即随机丢弃接收的报文。

¡     如果设备接收到的报文中ECN域取值为01或者10,表示报文发送端支持ECN功能,将按照WRED策略中的线性丢弃概率来修改部分入方向报文的ECN域为11后继续转发该报文,所有入方向接收到的报文均不丢弃。

¡     如果设备接收到的报文中ECN域取值为11,表示该报文在之前的转发设备上已经出现拥塞,此时转发设备不处理报文,直接将报文从出接口转发。

·     当转发设备的报文在出方向进入队列排队,该队列的长度大于上限QL_max时:

¡     如果设备接收到的报文中ECN域取值为00,表示报文发送端不支持ECN功能,转发设备按照未开启ECN功能的WRED策略处理,即丢弃接收的报文。

¡     如果设备接收到的报文中ECN域取值为01或者10,表示报文发送端支持ECN功能,将按照WRED策略100%的概率来修改部分入方向报文的ECN域为11后继续转发该报文,所有入方向接收到的报文均不丢弃。

¡     如果设备接收到的报文中ECN域取值为11,表示该报文在之前的转发设备上已经出现拥塞,此时转发设备不处理报文,直接将报文从出接口转发。

合理设置ECN门限可以缓解拥塞同时保证网络的时延和吞吐率。

6.1.5  WRED的参数说明

在进行WRED配置时,需要事先确定如下参数:

·     队列上限和下限:当队列平均长度小于下限时,不丢弃报文。当队列平均长度在上限和下限之间时,设备随机丢弃报文,队列越长,丢弃概率越高。当队列平均长度超过上限时,丢弃所有到来的报文。

·     丢弃优先级:在进行报文丢弃时参考的参数,0对应绿色报文、1对应黄色报文、2对应红色报文,红色报文将被优先丢弃。

·     计算平均队列长度的指数:指数越大,计算平均队列长度时对队列的实时变化越不敏感。计算队列平均长度的公式为:平均队列长度=(以前的平均队列长度×(1-1/2n))+(当前队列长度×(1/2n))。其中n表示指数。

·     丢弃概率:配置接口应用WRED表时,使用百分数的形式表示丢弃报文的概率,取值越大,报文被丢弃的机率越大。

6.2  配置队列的WRED参数

6.2.1  配置全局队列的WRED参数

(1)     进入系统视图。

system-view

(2)     配置队列的WRED参数。

qos wred queue queue-id low-limit low-limit high-limit high-limit [ discard-probability discard-prob ] [ ecn ] [ weighting-constant exponent ]

qos wred queue queue-id [ drop-level drop-level ] low-limit low-limit high-limit high-limit [ discard-probability discard-prob ]

缺省情况下,未配置队列的WRED参数。

(3)     开启指定队列的拥塞通知功能。

qos wred queue queue-id ecn

缺省情况下,对任何队列都未开启拥塞通知功能。

(4)     配置计算平均队列长度的指数。

qos wred queue queue-id weighting-constant exponent

缺省情况下,计算平均队列长度的指数为0。

6.3  拥塞避免显示和维护

可在任意视图下执行以下命令:

·     显示全局WRED配置情况和统计信息。

display qos wred global

 


7 流量过滤

7.1  流量过滤简介

流量过滤是指对符合流分类的流进行过滤的动作。例如,可以根据网络的实际情况禁止从某个源IP地址发送的报文通过。

7.2  流量过滤配置限制和指导

设备目前支持基于接口、全局应用QoS策略配置流量过滤。

7.3  配置流量过滤

(1)     进入系统视图。

system-view

(2)     定义类。

a.     创建一个类,并进入类视图。

traffic classifier classifier-name [ operator { and | or } ]

b.     定义匹配数据包的规则。

if-match match-criteria

缺省情况下,未定义匹配数据包的规则。

具体规则的介绍,请参见“QoS命令”中的if-match命令。

c.     退回系统视图。

quit

(3)     定义流行为。

a.     创建一个流行为,并进入流行为视图。

traffic behavior behavior-name

b.     配置流量过滤动作。

filter { deny | permit }

缺省情况下,未配置流量过滤动作。

c.     退回系统视图。

quit

(4)     定义策略。

a.     创建策略并进入策略视图。

qos policy policy-name

b.     在策略中为类指定采用的流行为。

classifier classifier-name behavior behavior-name

缺省情况下,未指定类对应的流行为。

c.     退回系统视图。

quit

(5)     应用QoS策略。

具体配置请参见“2.6  应用策略

缺省情况下,未应用QoS策略。

7.4  流量过滤显示和维护

可在任意视图下执行以下命令,显示流量过滤的相关配置信息。

display traffic behavior user-defined [ behavior-name ]

7.5  流量过滤典型配置举例

7.5.1  流量过滤基本组网配置举例

1. 组网需求

Host通过接口FourHundredGigE1/0/1接入设备Device。

配置流量过滤功能,对接口FourHundredGigE1/0/1接收的目的端口号等于21的TCP报文进行丢弃。

2. 组网图

图7-1 流量过滤基本组网图

 

表7-1 组网图示例接口与设备实际接口对应关系

组网图示例接口

设备实际接口

Interface1

FourHundredGigE1/0/1

 

3. 配置步骤

# 定义高级ACL 3000,匹配目的端口号等于21的数据流。

<Device> system-view

[Device] acl advanced 3000

[Device-acl-ipv4-adv-3000] rule 0 permit tcp destination-port eq 21

[Device-acl-ipv4-adv-3000] quit

# 定义类classifier_1,匹配高级ACL 3000。

[Device] traffic classifier classifier_1

[Device-classifier-classifier_1] if-match acl 3000

[Device-classifier-classifier_1] quit

# 定义流行为behavior_1,动作为流量过滤(deny),对数据包进行丢弃。

[Device] traffic behavior behavior_1

[Device-behavior-behavior_1] filter deny

[Device-behavior-behavior_1] quit

# 定义策略policy,为类classifier_1指定流行为behavior_1。

[Device] qos policy policy

[Device-qospolicy-policy] classifier classifier_1 behavior behavior_1

[Device-qospolicy-policy] quit

# 将策略policy应用到端口FourHundredGigE1/0/1的入方向上。

[Device] interface fourhundredgige 1/0/1

[Device-FourHundredGigE1/0/1] qos apply policy policy inbound

 

 


8 重标记

8.1  重标记简介

重标记是将报文的优先级或者标志位进行设置,重新定义报文的优先级等。例如,对于IP报文来说,可以利用重标记对IP报文中的IP优先级或DSCP值进行重新设置,控制IP报文的转发。

重标记动作的配置,可以通过与类关联,将原来报文的优先级或标志位重新进行标记。

重标记可以和优先级映射功能配合使用,具体请参见“3 优先级映射”。目前可以通过MQC方式重标记方式配置重标记。

8.2  配置重标记

1. 配置限制和指导

设备目前支持基于接口、全局应用QoS策略配置重标记。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     定义类。

a.     创建一个类,并进入类视图。

traffic classifier classifier-name [ operator { and | or } ]

b.     定义匹配数据包的规则。

if-match match-criteria

缺省情况下,未定义匹配数据包的规则。

具体规则的介绍,请参见“QoS命令”中的if-match命令。

c.     退回系统视图。

quit

(3)     定义流行为

a.     创建一个流行为,并进入流行为视图。

traffic behavior behavior-name

b.     重新标记报文的动作。

具体重标记动作的介绍,请查看“QoS命令”中的remark命令。

c.     退回系统视图。

quit

(4)     定义策略。

a.     创建一个策略,并进入策略视图。

qos policy [ remarking ] policy-name

b.     在策略中为类指定采用的流行为。

classifier classifier-name behavior behavior-name

缺省情况下,未指定类对应的流行为。

c.     退回系统视图。

quit

(5)     应用QoS策略。

具体配置请参见“2.6  应用策略

缺省情况下,未应用QoS策略。

3. 显示和维护

可在任意视图下执行以下命令,显示重标记的相关配置信息。

display traffic behavior user-defined [ behavior-name ]

8.3  配置镜像报文的本地优先级

1. 功能简介

在镜像源设备上,报文的转发出接口上可能同时存在非镜像的业务流量和镜像流量。如果希望优先调度业务流量,可以通过本功能设置镜像报文的本地优先级为较低值,例如0,设备出接口发生拥塞时,也可以减少业务流量的丢包率。反之亦然。

本功能对端口镜像和流镜像报文均生效。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置镜像报文的本地优先级。

qos mirroring local-precedence local-precedence-value

缺省情况下,镜像报文的本地优先级与镜像源收到的原始报文的本地优先级相同。

8.4  重标记典型配置举例

8.4.1  重标记基本组网配置举例

1. 组网需求

公司企业网通过Device实现互连。网络环境描述如下:

·     Host A和Host B通过端口FourHundredGigE1/0/1接入Device;

·     数据库服务器、邮件服务器和文件服务器通过端口FourHundredGigE1/0/2接入Device。

通过配置重标记功能,Device上实现如下需求:

·     优先处理Host A和Host B访问数据库服务器的报文;

·     其次处理Host A和Host B访问邮件服务器的报文;

·     最后处理Host A和Host B访问文件服务器的报文。

2. 组网图

图8-1 重标记基本组网图

表8-1 组网图示例接口与设备实际接口对应关系

组网图示例接口

设备实际接口

Interface1

FourHundredGigE1/0/1

Interface2

FourHundredGigE1/0/2

 

3. 配置步骤

# 定义高级ACL 3000,对目的IP地址为192.168.0.1的报文进行分类。

<Device> system-view

[Device] acl advanced 3000

[Device-acl-ipv4-adv-3000] rule permit ip destination 192.168.0.1 0

[Device-acl-ipv4-adv-3000] quit

# 定义高级ACL 3001,对目的IP地址为192.168.0.2的报文进行分类。

[Device] acl advanced 3001

[Device-acl-ipv4-adv-3001] rule permit ip destination 192.168.0.2 0

[Device-acl-ipv4-adv-3001] quit

# 定义高级ACL 3002,对目的IP地址为192.168.0.3的报文进行分类。

[Device] acl advanced 3002

[Device-acl-ipv4-adv-3002] rule permit ip destination 192.168.0.3 0

[Device-acl-ipv4-adv-3002] quit

# 定义类classifier_dbserver,匹配高级ACL 3000。

[Device] traffic classifier classifier_dbserver

[Device-classifier-classifier_dbserver] if-match acl 3000

[Device-classifier-classifier_dbserver] quit

# 定义类classifier_mserver,匹配高级ACL 3001。

[Device] traffic classifier classifier_mserver

[Device-classifier-classifier_mserver] if-match acl 3001

[Device-classifier-classifier_mserver] quit

# 定义类classifier_fserver,匹配高级ACL 3002。

[Device] traffic classifier classifier_fserver

[Device-classifier-classifier_fserver] if-match acl 3002

[Device-classifier-classifier_fserver] quit

# 定义流行为behavior_dbserver,动作为重标记报文的本地优先级为3。

[Device] traffic behavior behavior_dbserver

[Device-behavior-behavior_dbserver] remark local-precedence 3

[Device-behavior-behavior_dbserver] quit

# 定义流行为behavior_mserver,动作为重标记报文的本地优先级为2。

[Device] traffic behavior behavior_mserver

[Device-behavior-behavior_mserver] remark local-precedence 2

[Device-behavior-behavior_mserver] quit

# 定义流行为behavior_fserver,动作为重标记报文的本地优先级为1。

[Device] traffic behavior behavior_fserver

[Device-behavior-behavior_fserver] remark local-precedence 1

[Device-behavior-behavior_fserver] quit

# 定义策略policy_server,为类指定流行为。

[Device] qos policy policy_server

[Device-qospolicy-policy_server] classifier classifier_dbserver behavior behavior_dbserver

[Device-qospolicy-policy_server] classifier classifier_mserver behavior behavior_mserver

[Device-qospolicy-policy_server] classifier classifier_fserver behavior behavior_fserver

[Device-qospolicy-policy_server] quit

# 将策略policy_server应用到端口FourHundredGigE1/0/1上。

[Device] interface fourhundredgige 1/0/1

[Device-FourHundredGigE1/0/1] qos apply policy policy_server inbound

[Device-FourHundredGigE1/0/1] quit


9 流量重定向

9.1  流量重定向简介

流量重定向就是将符合流分类的流重定向到其他地方进行处理。

目前支持的流量重定向包括以下几种:

·     重定向到CPU:对于需要CPU处理的报文,可以通过配置上送给CPU。

·     重定向到接口:对于收到需要由某个接口处理的报文时,可以通过配置重定向到此接口。

9.2  流量重定向配置限制和指导

配置流量重定向时需要注意的是:

·     当前设备支持基于接口、全局应用QoS策略配置流量重定向。

·     在配置重定向动作时,同一个流行为中,多次配置重定向命令,最后一次配置的生效。

·     配置重定向到指定的以太网接口后,如果该以太网接口所在的接口板或接口模块扩展卡被拔出,设备将不显示流行为下的重定向到该以太网接口的配置,重定向动作失效;当接口板或接口模块扩展卡重新插回设备后,此时设备可以显示流行为下的重定向到该以太网接口的配置,重定向动作会继续生效。

9.3  配置流量重定向

(1)     进入系统视图。

system-view

(2)     定义类。

a.     创建一个类,并进入类视图。

traffic classifier classifier-name [ operator { and | or } ]

b.     定义匹配数据包的规则。

if-match match-criteria

缺省情况下,未定义匹配数据包的规则。

具体规则的介绍,请参见“QoS命令”中的if-match命令。

c.     退回系统视图。

quit

(3)     定义流行为

a.     创建一个流行为,并进入流行为视图。

traffic behavior behavior-name

b.     配置流量重定向动作。

redirect { cpu | interface interface-type interface-number }

缺省情况下,未配置流量重定向动作。

c.     退回系统视图。

quit

(4)     定义策略。

a.     创建一个策略,并进入策略视图。

qos policy policy-name

b.     在策略中为类指定采用的流行为。

classifier classifier-name behavior behavior-name

缺省情况下,未指定类对应的流行为。

c.     退回系统视图。

quit

(5)     应用QoS策略。

具体配置请参见“2.6  应用策略

缺省情况下,未应用QoS策略。

9.4  流量重定向显示和维护

可在任意视图下执行以下命令,显示流量重定向的相关配置信息。

display traffic behavior user-defined [ behavior-name ]


10 流量统计

10.1  流量统计简介

流量统计就是通过与类关联,对符合匹配规则的流进行统计。例如,可以统计从某个源IP地址发送的报文,然后管理员对统计信息进行分析,根据分析情况采取相应的措施。

10.2  流量统计配置限制和指导

设备当前支持基于接口、全局应用QoS策略配置流量统计。

10.3  配置流量统计

(1)     进入系统视图。

system-view

(2)     定义类。

a.     创建一个类,并进入类视图。

traffic classifier classifier-name [ operator { and | or } ]

b.     定义匹配数据包的规则。

if-match match-criteria

缺省情况下,未定义匹配数据包的规则。

具体规则的介绍,请参见“QoS命令”中的if-match命令。

c.     退回系统视图。

quit

(3)     定义流行为。

a.     创建一个流行为,并进入流行为视图。

traffic behavior behavior-name

b.     为流行为配置流量统计动作。

accounting { byte | packet }

缺省情况下,未配置流量统计动作。

c.     退回系统视图。

quit

(4)     定义策略。

a.     创建一个策略,并进入策略视图。

qos [ accounting ] policy policy-name

b.     在策略中为类指定采用的流行为。

classifier classifier-name behavior behavior-name

缺省情况下,未指定类对应的流行为。

c.     退回系统视图。

quit

(5)     应用QoS策略。

具体配置请参见“2.6  应用策略

缺省情况下,未应用QoS策略。

10.4  流量统计显示和维护

可在任意视图下执行以下命令:

·     显示基于全局应用QoS策略的配置信息和运行情况。

display qos [ accounting ] policy global

·     显示接口上QoS策略的配置信息和运行情况。

display qos [ accounting ] policy interface

10.5  流量统计典型配置举例

10.5.1  流量统计基本组网配置举例

1. 组网需求

用户网络描述如下:Host通过接口FourHundredGigE1/0/1接入设备Device。

配置流量统计功能,对接口FourHundredGigE1/0/1接收的源IP地址为1.1.1.1/24的报文进行统计。

2. 组网图

图10-1 流量统计基本组网图

表10-1 组网图示例接口与设备实际接口对应关系

组网图示例接口

设备实际接口

Interface1

FourHundredGigE1/0/1

 

3. 配置步骤

# 定义基本ACL 2000,对源IP地址为1.1.1.1的报文进行分类。

<Device> system-view

[Device] acl basic 2000

[Device-acl-ipv4-basic-2000] rule permit source 1.1.1.1 0

[Device-acl-ipv4-basic-2000] quit

# 定义类classifier_1,匹配基本ACL 2000。

[Device] traffic classifier classifier_1

[Device-classifier-classifier_1] if-match acl 2000

[Device-classifier-classifier_1] quit

# 定义流行为behavior_1,动作为流量统计。

[Device] traffic behavior behavior_1

[Device-behavior-behavior_1] accounting packet

[Device-behavior-behavior_1] quit

# 定义策略policy,为类classifier_1指定流行为behavior_1。

[Device] qos policy policy

[Device-qospolicy-policy] classifier classifier_1 behavior behavior_1

[Device-qospolicy-policy] quit

# 将策略policy应用到端口FourHundredGigE1/0/1的入方向上。

[Device] interface fourhundredgige 1/0/1

[Device-FourHundredGigE1/0/1] qos apply policy policy inbound

[Device-FourHundredGigE1/0/1] quit

# 查看配置后流量统计的情况。

[Device] display qos policy interface fourhundredgige 1/0/1

Interface: FourHundredGigE1/0/1

  Direction: Inbound

  Policy: policy

   Classifier: classifier_1

     Operator: AND

     Rule(s) :

      If-match acl 2000

     Behavior: behavior_1

      Accounting enable:

        28529 (Packets)

 

 


11 附录

11.1  附录 A 缩略语表

表11-1 附录 A 缩略语表

缩略语

英文全名

中文解释

AF

Assured Forwarding

确保转发

BE

Best Effort

尽力转发

BQ

Bandwidth Queuing

带宽队列

CAR

Committed Access Rate

承诺访问速率

CBQ

Class Based Queuing

基于类的队列

CBS

Committed Burst Size

承诺突发尺寸

CBWFQ

Class Based Weighted Fair Queuing

基于类的加权公平队列

CE

Customer Edge

用户边缘设备

CIR

Committed Information Rate

承诺信息速率

CQ

Custom Queuing

定制队列

DAR

Deeper Application Recognition

深度应用识别

DCBX

Data Center Bridging Exchange Protocol

数据中心桥能力交换协议

DiffServ

Differentiated Service

区分服务

DoS

Denial of Service

拒绝服务

DSCP

Differentiated Services Code Point

区分服务编码点

EACL

Enhanced ACL

增强型ACL

EBS

Excess Burst Size

超出突发尺寸

ECN

Explicit Congestion Notification

显式拥塞通知

EF

Expedited Forwarding

加速转发

FEC

Forwarding Equivalance Class

转发等价类

FIFO

First in First out

先入先出

FQ

Fair Queuing

公平队列

GMB

Guaranteed Minimum Bandwidth

最小带宽保证队列

GTS

Generic Traffic Shaping

通用流量整形

IntServ

Integrated Service

综合服务

ISP

Internet Service Provider

互联网服务提供商

LFI

Link Fragmentation and Interleaving

链路分片与交叉

LLQ

Low Latency Queuing

低时延队列

LR

Line Rate

限速

LSP

Label Switched Path

标签交换路径

MPLS

Multiprotocol Label Switching

多协议标签交换

P2P

Peer-to-Peer

对等

PE

Provider Edge

服务提供商网络边缘

PHB

Per-hop Behavior

单中继段行为

PIR

Peak Information Rate

峰值信息速率

PQ

Priority Queuing

优先队列

PW

Pseudowire

伪线

QoS

Quality of Service

服务质量

QPPB

QoS Policy Propagation Through the Border Gateway Protocol

通过BGP传播QoS策略

RED

Random Early Detection

随机早期检测

RSVP

Resource Reservation Protocol

资源预留协议

RTP

Real-time Transport Protocol

实时传输协议

SLA

Service Level Agreement

服务水平协议

SP

Strict Priority

严格优先级队列

TE

Traffic Engineering

流量工程

ToS

Type of Service

服务类型

TP

Traffic Policing

流量监管

TS

Traffic Shaping

流量整形

VoIP

Voice over IP

在IP网络上传送语音

VPN

Virtual Private Network

虚拟专用网络

VSI

Virtual Station Interface

虚拟服务器接口

WFQ

Weighted Fair Queuing

加权公平队列

WRED

Weighted Random Early Detection

加权随机早期检测

WRR

Weighted Round Robin

加权轮询队列

 

11.2  附录 B 缺省优先级映射表

11.2.1  优先级映射表

说明

dscp-dscp映射表的缺省映射关系为:映射输出值等于输入值。

表11-2 dot1p-dp缺省映射关系

映射输入索引

dot1p-dp映射

dot1p

dp

0

0

1

0

2

0

3

0

4

0

5

0

6

0

7

0

 

表11-3 dscp-dp、dscp-dot1p、dscp-exp缺省映射关系

映射输入索引

dscp-dp映射

dscp-dot1p映射

dscp-exp映射

dscp

dp

dot1p

exp

0~7

0

0

0

8~15

0

1

1

16~23

0

2

2

24~31

0

3

3

32~39

0

4

4

40~47

0

5

5

48~55

0

6

6

56~63

0

7

7

 

表11-4 端口优先级和LP映射关系

端口优先级

LP

0

0

1

1

2

2

3

3

4

4

5

5

6

6

7

7

 

 

11.3  附录 C 各种优先级介绍

11.3.1  IP优先级和DSCP优先级

图11-1 ToS和DS域

 

图11-1所示,IP报文头的ToS字段有8个bit,其中前3个bit表示的就是IP优先级,取值范围为0~7。RFC 2474中,重新定义了IP报文头部的ToS域,称之为DS(Differentiated Services,差分服务)域,其中DSCP优先级用该域的前6位(0~5位)表示,取值范围为0~63,后2位(6、7位)是保留位。

表11-5 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

 

表11-6 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)

 

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们