• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

08-ACL和QoS配置指导

目录

02-QoS配置

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

docurl=/cn/Service/Document_Software/Document_Center/Switches/Catalog/S12500/S12500R/Configure/Operation_Manual/H3C_S12500R_R36xx-6090/08/202209/1692670_30005_0.htm

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配置方式

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 基于VLAN应用QoS策略

2.6.5 基于全局应用QoS策略

2.6.6 基于控制平面应用QoS策略

2.7 QoS策略显示和维护

3 优先级映射

3.1 优先级映射简介

3.1.1 优先级介绍

3.1.2 优先级映射表

3.1.3 优先级映射配置方式

3.1.4 优先级映射过程

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

3.3 配置优先级映射表

3.3.1 优先级映射表简介

3.3.2 配置优先级映射表

3.4 配置优先级信任模式

3.5 配置端口优先级

3.6 优先级映射显示和维护

3.7 优先级映射典型配置举例

3.7.1 优先级信任模式和端口优先级配置举例

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.4.1 配置接口限速

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

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.4.5 队列调度策略典型配置举例

5.5 拥塞管理显示和维护

6 拥塞避免

6.1 拥塞避免简介

6.1.1 传统的丢包策略

6.1.2 RED与WRED

6.1.3 WRED和队列机制的关系

6.1.4 拥塞通知

6.1.5 WRED的配置方式

6.1.6 WRED的参数说明

6.2 创建并应用WRED表

6.2.1 配置限制和指导

6.2.2 配置步骤

6.2.3 创建并应用WRED典型配置举例

6.3 拥塞避免显示和维护

7 流量过滤

7.1 流量过滤简介

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

7.3 配置流量过滤

7.4 流量过滤典型配置举例

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

8 协议报文限速

8.1 协议报文限速简介

8.2 配置协议报文限速

8.3 协议报文限速典型配置举例

8.3.1 协议报文限速基本组网配置举例

9 重标记

9.1 重标记简介

9.2 配置重标记

9.3 重标记典型配置举例

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

9.3.2 基于QoS策略验证重标记动作配置举例

10 Nest

10.1 Nest简介

10.2 Nest配置限制和指导

10.3 配置Nest

10.4 Nest典型配置举例

10.4.1 Nest基本功能配置举例

11 流量重定向

11.1 流量重定向简介

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

11.3 配置流量重定向

11.4 流量重定向典型配置举例

11.4.1 重定向至接口配置举例

12 聚合CAR

12.1 配置聚合CAR

12.2 聚合CAR显示和维护

13 流量统计

13.1 流量统计简介

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

13.3 配置流量统计

13.4 流量统计典型配置举例

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

14 队列统计

14.1 端口队列统计

14.1.1 端口队列统计简介

14.1.2 配置端口队列统计

14.1.3 端口队列统计显示和维护

15 QPPB

15.1 QPPB简介

15.1.1 适用场景

15.1.2 QPPB工作原理

15.2 QPPB配置任务简介

15.3 配置发送端

15.3.1 配置BGP基本功能

15.3.2 配置路由策略

15.4 配置接收端

15.4.1 配置BGP基本功能

15.4.2 配置路由策略

15.4.3 配置接口的QPPB功能并应用QoS策略

15.5 QPPB典型配置举例

15.5.1 QPPB在IPv4网络中的配置举例

15.5.2 QPPB在MPLS L3VPN中的配置举例

15.5.3 QPPB在IPv6网络中的配置举例

16 附录

16.1 附录 A 缩略语表

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

16.3 附录 C 各种优先级介绍

16.3.1 IP优先级和DSCP优先级

16.3.2 802.1p优先级

16.3.3 EXP优先级

 


1 QoS概述

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运行在从源端到目的端的每个设备上,可以监视每个流,以防止其消耗资源过多。这种体系能够明确区分并保证每一个业务流的服务质量,为网络提供最细粒度化的服务质量区分。RSVP的相关内容请参见“MPLS配置指导”中的“MPLS TE”。

但是,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功能只能使用其中一种方式来配置,有些使用两种方式都可以进行配置。在实际应用中,两种配置方式也可以结合起来使用。


2 QoS策略

2.1  QoS策略简介

QoS策略由如下部分组成:

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

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

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

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

2.2  QoS策略配置任务简介

QoS策略配置任务如下:

(1)     定义类

(2)     定义流行为

(3)     定义策略

(4)     应用策略

¡     基于接口应用QoS策略

¡     基于VLAN应用QoS策略

¡     基于全局应用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策略按照类型可以分为如下几种,各类型的策略在使用上并无严格区别:

·     统计类型QoS策略,常用于配置流量统计动作。

·     重标记类型QoS策,略常用于配置重标记动作。

·     通用类型QoS策略,可配置所有的流行为动作。

创建QoS策略时:

·     如果未指定accountingremarking,则表示通用类型的QoS策略。

·     不同类型的QoS策略不能使用相同的名称。

2. 配置步骤

(1)     进入系统视图。

system-view

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

qos [ accounting | remarking ] policy policy-name

(3)     为类指定流行为。

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

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

表2-1 参数说明

参数

说明

accounting

统计类型QoS策略,常用于配置流量统计动作

remarking

重标记类型QoS策略常用于配置重标记动作

dcbx

表示该策略为DCBX(Data Center Bridging Exchange Protocol,数据中心桥能力交换协议)模式。有关DCBX的介绍,请参见“二层技术-以太网交换配置指导”中的“LLDP”

qppb-manipulation

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

2.6  应用策略

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

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

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

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

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

·     基于控制平面应用QoS策略,仅支持在入方向应用。

2.6.2  策略应用限制和指导

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

应用引用CAR动作的QoS策略到入方向后,匹配同一QoS策略的流量通过多个接口进入设备,需要注意接口分组的使用限制。不同的单板上的接口属于不同的接口分组;同一个单板,在Probe视图执行debug port mapping命令,显示信息中Unit字段取值相同的接口为同一分组。缺省情况下,QoS策略的生效的报文传输速率等于CAR动作中配置的承诺信息速率与峰值速率的总和乘以接口所属分组个数。

应用引用CAR动作的QoS策略到出方向时,匹配同一QoS策略的流量通过位于不同单板的接口离开设备。缺省情况下,QoS策略的生效的报文传输速率等于CAR动作中配置的承诺信息速率与峰值速率的总和乘以接口所属单板的个数。

2.6.3  基于接口应用QoS策略

1. 配置限制和指导

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

·     一个QoS策略可以应用于多个接口。

·     在接口的每个方向(出和入两个方向)上,每个类型的QoS策略只能应用一个。

·     QoS策略应用在出方向时,对设备发出的协议报文不起作用,以确保这些报文在策略误配置时仍然能够正常发出,维持设备的正常运行。

·     仅在接口上应用QoS策略时才可以配置QoS和ACL资源的共享模式。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

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

qos apply [ accounting | remarking ] policy policy-name { inbound [ extension ] | outbound } [ share-mode ]

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

2.6.4  基于VLAN应用QoS策略

1. 功能简介

基于VLAN应用QoS策略可以对属于某个VLAN内的所有接口上的流量进行管理。

2. 配置限制和指导

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

·     不能应用在动态VLAN上。

·     基于VLAN应用QoS策略时,该QoS策略会被所有单板上的VLAN应用,如果某个单板QACL资源不足,将导致QoS策略应用失败。此时需要先执行undo qos vlan-policy vlan命令删除基于VLAN应用的QoS策略,待预留足够资源后,再将QoS策略应用到该VLAN上。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     在指定VLAN上应用已创建的QoS策略。

qos vlan-policy policy-name vlan vlan-id-list { inbound [ extension ] | outbound }

缺省情况下,未在指定VLAN上应用QoS策略。

2.6.5  基于全局应用QoS策略

1. 功能简介

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

2. 配置限制和指导

全局相同方向最多可以应用三种不同类型的策略,包括通用类型的QoS策略、统计类型的QoS策略和重标记类型的QoS策略。

基于全局应用QoS策略时,该QoS策略会被所有单板应用,如果某个单板QACL资源不足,将导致QoS策略应用失败。此时需要先执行undo qos apply policy global命令删除基于全局应用的QoS策略,待预留足够资源后,再将QoS策略应用到全局。

3. 配置步骤

(1)     进入系统视图。

system-view

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

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

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

 

2.6.6  基于控制平面应用QoS策略

1. 功能简介

设备上存在用户平面和控制平面:

·     用户平面(User Plane):是指对报文进行收发、交换的处理单元,它的主要工作是转发报文。在设备上,与之相对应的核心物理实体就是各种专用转发芯片,它们有极高的处理速度和很强的数据吞吐能力。

·     控制平面(Control Plane):是指运行大部分路由交换协议进程的处理单元,它的主要工作是进行协议报文的解析和协议的计算。在设备上,与之相对应的核心物理实体就是CPU,它具备灵活的报文处理能力,但数据吞吐能力有限。

用户平面接收到无法识别或处理的报文会送到控制平面进行进一步处理。如果上送控制平面的报文速率超过了控制平面的处理能力,那么上送控制平面的报文会得不到正确转发或及时处理,从而影响协议的正常运行。

为了解决此问题,用户可以把QoS策略应用在控制平面上,通过对上送控制平面的报文进行过滤或限速,达到保护控制平面正常报文的收发、维护控制平面正常处理状态的目的。

预定义的QoS策略中通过协议类型或者协议组类型来标识各种上送控制平面的报文类型,用户也可以在流分类视图下通过if-match control-plane命令引用这些协议类型或者协议组类型来进行报文分类,然后根据需要为这些报文重新配置流行为。系统预定义的QoS策略信息可以通过display qos policy control-plane pre-defined命令查看。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入控制平面视图。

control-plane slot slot-number

(3)     在控制平面上应用已创建的QoS策略。

qos apply policy policy-name inbound

缺省情况下,未在控制平面上应用QoS策略。

2.7  QoS策略显示和维护

在任意视图下执行display命令可以显示QoS策略的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除QoS策略的统计信息。

表2-2 QoS策略显示和维护

操作

命令

显示类的配置信息

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

显示流行为的配置信息

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

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

display qos-acl resource [ slot slot-number ]

显示QoS策略的配置信息

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

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

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

显示基于VLAN应用QoS策略的信息

display qos vlan-policy { name policy-name | vlan vlan-id } [ slot slot-number ] [ inbound | outbound ]

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

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

显示基于控制平面应用QoS策略的信息

display qos policy control-plane slot slot-number

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

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

清除VLAN应用QoS策略的统计信息

reset qos vlan-policy [ vlan vlan-id ] [ inbound | outbound ]

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

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

清除控制平面应用QoS策略的统计信息

reset qos policy control-plane slot slot-number

 


3 优先级映射

3.1  优先级映射简介

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

3.1.1  优先级介绍

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

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

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

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

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

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

3.1.2  优先级映射表

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

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

3.1.3  优先级映射配置方式

1. 优先级信任模式方式

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

2. 端口优先级方式

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

3.1.4  优先级映射过程

对于接收到的以太网报文,根据优先级信任模式和报文的802.1Q标签状态,设备将采用不同的方式为其标记调度优先级。如图3-1所示:

图3-1 以太网报文优先级映射过程

 

对于接收到的MPLS报文,根据优先级信任模式和报文的EXP优先级状态,设备将采用不同的方式为其标记调度优先级。如图3-2所示:

图3-2 MPLS报文优先级映射过程

 

说明

关于重标记优先级功能的介绍,请参见9 重标记

 

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

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

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

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

¡     配置优先级信任模式

¡     配置端口优先级

3.3  配置优先级映射表

3.3.1  优先级映射表简介

表3-1所示,设备提供了多张优先级映射表。

表3-1 优先级映射表

优先级映射

描述

dot1p-dp

802.1p优先级到丢弃优先级映射表

dot1p-dscp

802.1p优先级到DSCP映射表

dot1p-lp

802.1p优先级到本地优先级映射表

dscp-dot1p

DSCP到802.1p优先级映射表

dscp-dp

DSCP到丢弃优先级映射表

dscp-dscp

DSCP到DSCP映射表

dscp-exp

DSCP到EXP映射表

exp-dot1p

EXP到802.1p优先级映射表

exp-dscp

EXP到DSCP映射表

3.3.2  配置优先级映射表

(1)     进入系统视图。

system-view

(2)     (可选)根据本地队列优先级修改设备发出报文的dot1p优先级。

dot1p-trust-tc slot slot-number

缺省情况下,设备发出报文的dot1p优先级的值与设备收到报文的dot1p优先级的值保持一致。

通过QoS策略配置重标记报文dot1p优先级时,必须先配置本命令,否则重标记报文dot1p优先级的命令不会生效。关于重标记报文dot1p优先级的配置,请参见“9 重标记”。

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

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

 

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

import import-value-list export export-value

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

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

3.4  配置优先级信任模式

1. 功能简介

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

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

·     dot1p:信任报文自带的802.1p优先级,以此优先级进行优先级映射。

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

 

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

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

qos trust { dot1p | dscp }

缺省情况下,未配置端口优先级信任模式,即端口不信任任何优先级。

3.5  配置端口优先级

1. 功能简介

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

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置端口优先级。

qos priority [ dscp ] priority-value

端口优先级为0,端口DSCP优先级无缺省值。

 

3.6  优先级映射显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后优先级映射的运行情况,通过查看显示信息验证配置的效果。

表3-2 优先级映射显示和维护

操作

命令

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

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

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

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

 

3.7  优先级映射典型配置举例

3.7.1  优先级信任模式和端口优先级配置举例

1. 组网需求

Device A和Device B通过Device C实现互连。网络环境描述如下:

·     Device A通过端口HundredGigE1/0/1接入Device C,向Device C发送dot1p优先级为3的报文;

·     Device B通过端口HundredGigE1/0/2接入Device C,向Device C发送dot1p优先级值为1的报文。

要求通过配置实现如下需求:如果Device C在接口HundredGigE1/0/3的出方向发生拥塞,则优先让Device A访问Server。

2. 组网图‌

图3-3 优先级信任模式和端口优先级配置组网图

 

3. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

(1)     方法一

# 在接口HundredGigE1/0/1和HundredGigE1/0/2上分别配置优先级信任模式为dot1p

<DeviceC> system-view

[DeviceC] interface hundredgige 1/0/1

[DeviceC-HundredGigE1/0/1] qos trust dot1p

[DeviceC-HundredGigE1/0/1] quit

[DeviceC] interface hundredgige 1/0/2

[DeviceC-HundredGigE1/0/2] qos trust dot1p

[DeviceC-HundredGigE1/0/2] quit

(2)     方法二

# 在接口HundredGigE1/0/1和HundredGigE1/0/2上分别配置端口优先级,HundredGigE1/0/1上配置的端口优先级值要高于HundredGigE1/0/2上配置的端口优先级值。(同时保证在接口HundredGigE1/0/1和HundredGigE1/0/2上没有配置信任模式。)

<DeviceC> system-view

[DeviceC] interface hundredgige 1/0/1

[DeviceC-HundredGigE1/0/1] qos priority 3

[DeviceC-HundredGigE1/0/1] quit

[DeviceC] interface hundredgige 1/0/2

[DeviceC-HundredGigE1/0/2] qos priority 1

[DeviceC-HundredGigE1/0/2] quit


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策略时,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 committed-information-rate [ cbs committed-burst-size [ ebs excess-burst-size ] ] [ green action | red action | yellow action ] *

car cir committed-information-rate [ cbs committed-burst-size ] pir 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. 配置限制和指导

仅F3607P02及以上版本支持配置适配所有流的流量监管。

当采用百分比的方式在二层聚合接口、三层聚合接口和三层聚合子接口上配置适配所有流的流量监管时,需先使用bandwidth命令配置接口的期望带宽,否则本命令不生效。关于bandwidth命令的详细介绍,请参见“二层技术-以太网交换命令参考”中的“以太网链路聚合”。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

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

(绝对值配置方式)

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

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

(百分比配置方式)

qos car inbound any percent cir cir-percent [ cbs cbs-time [ ebs ebs-time ] ]

qos car inbound 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  配置限速

4.4.1  配置接口限速

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置接口限速。

qos lr outbound cir committed-information-rate [ cbs committed-burst-size ]

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

 

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

在完成上述配置后,在任意视图下执行display命令可以显示配置后流量监管、流量整形和接口限速的运行情况,通过查看显示信息验证配置的效果。

表4-1 流量监管、流量整形和限速显示和维护

操作

命令

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

display qos-acl resource [ slot slot-number ]

本命令的详细介绍,请参见“ACL和QoS命令参考”中的“ACL”

显示流量监管的相关配置信息

display traffic behavior user-defined [ behavior-name ]

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

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

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

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

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

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

 


5 拥塞管理

5.1  拥塞管理简介

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

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

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

图5-1 流量拥塞示意图

 

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

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

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

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

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

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

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

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

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

·     SP队列

·     WRR队列

·     WFQ队列

1. SP队列

图5-2 SP队列示意图

 

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

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

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

2. WRR队列

图5-3 WRR队列示意图

 

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

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

WRR队列分为:

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

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

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

3. WFQ队列

图5-4 WFQ队列

 

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

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

在进行队列调度时,首先调度WFQ组的队列中满足WFQ最小保证带宽的流量,然后按SP方式对SP组中的队列进行调度,最后再按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队列后,所有队列均属于group 1,0~7队列的调度权重分别为1~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队列后,所有队列均属于group 1,各队列调度权重均为1,最小保证带宽为64kbps。

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 group 1。

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

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

缺省情况下,接口开启WRR队列后,所有队列均属于group 1,0~7队列的调度权重分别为1~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 group 1。

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

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

缺省情况下,接口开启WFQ队列后,所有队列均属于group 1,各队列调度权重均为1。

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

qos bandwidth queue queue-id min bandwidth-value

缺省情况下,接口开启WFQ队列后,各队列最小保证带宽的缺省值为64kbps。

5.4  配置队列调度策略

 

5.4.1  队列调度策略简介

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

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

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

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

·     队列6优先级次之,队列7为空时发送本队列的报文。

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

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

·     队列0优先级最低,其它队列的报文全部发送完毕后调度本队列。

5.4.2  配置限制和指导

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

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

·     队列调度策略支持在二层以太网接口和三层以太网接口上应用。

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。

 

5.4.4  应用队列调度策略

(1)     进入系统视图。

system-view

(2)     进入已创建的队列调度策略视图。

qos qmprofile profile-name

(3)     应用队列调度策略。请至少选择其中一项进行配置。

¡     请依次执行以下命令在接口上应用队列调度策略。

interface interface-type interface-number

qos apply qmprofile profile-name

缺省情况下,接口上未应用队列调度策略。

每个接口同一方向只能应用一个队列调度策略。

 

 

 

 

 

 

 

5.4.5  队列调度策略典型配置举例

1. 配置需求

接口HundredGigE1/0/1的队列调度方式如下:

·     队列7优先级最高,该队列报文优先发送。

·     队列4、5、6之间按照权重轮询调度,属于WRR分组1,调度权重分别为1、5、10,在队列7为空时调度WRR分组1。

·     队列1、2、3之间按照权重轮询调度,属于WRR分组2,调度权重分别为1、10、20,在队列7、6、5、4为空时调度WRR分组2。

·     队列0优先级最低,其它队列的报文全部发送完毕后调度本队列。

2. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

# 进入系统视图。

<Sysname> system-view

# 创建队列调度策略qm1。

[Sysname] qos qmprofile qm1

[Sysname-qmprofile-qm1]

# 配置队列7为SP队列。

[Sysname-qmprofile-qm1] queue 7 sp

# 配置队列4、5、6属于WRR分组1,权重分别为1、5、10。

[Sysname-qmprofile-qm1] queue 4 wrr group 1 weight 1

[Sysname-qmprofile-qm1] queue 5 wrr group 1 weight 5

[Sysname-qmprofile-qm1] queue 6 wrr group 1 weight 10

# 配置队列1、2、3属于WRR分组2,权重分别为1、10、20。

[Sysname-qmprofile-qm1] queue 1 wrr group 2 weight 1

[Sysname-qmprofile-qm1] queue 2 wrr group 2 weight 10

[Sysname-qmprofile-qm1] queue 3 wrr group 2 weight 20

# 配置队列0为SP队列。

[Sysname-qmprofile-qm1] queue 0 sp

[Sysname-qmprofile-qm1] quit

# 把队列调度策略qm1应用到接口HundredGigE1/0/1上。

[Sysname] interface hundredgige 1/0/1

[Sysname-HundredGigE1/0/1] qos apply qmprofile qm1

配置完成后,接口HundredGigE1/0/1按指定方式进行队列调度。

5.5  拥塞管理显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后队列的运行情况和子接口的调度权重,通过查看显示信息验证配置的效果。

表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 ]

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

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

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

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

 


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  拥塞通知

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

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

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

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

说明

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

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

 

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

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

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

¡     如果设备接收到的报文中ECN域取值为00,表示报文发送端不支持ECN功能,转发设备按照丢弃概率计算是否丢弃该接收的报文。

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

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

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

¡     如果设备接收到的报文中ECN域取值为00,表示报文发送端不支持ECN功能,转发设备丢弃接收的报文。

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

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

6.1.5  WRED的配置方式

6.1.6  WRED的参数说明

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

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

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

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

·     计算丢弃概率的分母:以接口配置方式配置WRED时,在计算丢弃概率的公式中作为分母。取值越大,计算出的丢弃概率越小。

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

6.2  创建并应用WRED表

6.2.1  配置限制和指导

同一个表可以同时在多个接口应用。WRED表被应用到接口后,用户可以对WRED表的取值进行修改,但是不能删除该WRED表。

6.2.2  配置步骤

(1)     进入系统视图。

system-view

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

qos wred queue table table-name

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

queue queue-id weighting-constant exponent

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

 

(4)     (可选)配置基于队列的WRED表的内容。

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

缺省情况下,创建WRED表后,表中各参数有一套缺省值。队列平均长度的下限为250,队列平均长度的上限位1000,丢弃概率为10。

 

(5)     (可选)配置队列的拥塞通知功能。

queue queue-id ecn

缺省情况下,队列的拥塞通知功能处于关闭状态。

 

(6)     退回系统视图。

quit

(7)     进入接口视图。

interface interface-type interface-number

(8)     在接口应用WRED表。

qos wred apply [ table-name ]

缺省情况下,接口没有应用WRED全局表,即接口采用尾丢弃。

同一个表可以同时在多个接口应用。WRED表被应用到接口后,用户可以对WRED表的取值进行修改,但是不能删除该WRED表。

 

6.2.3  创建并应用WRED典型配置举例

1. 配置需求

接口HundredGigE1/0/2应用WRED策略,当发生报文拥塞时,采用如下丢弃方式:

·     为保证高优先级报文尽量通过,区分不同的队列,队列号越大,丢弃概率越低。为队列0、队列3、队列7三个级别配置不同的丢弃参数。

·     区分不同颜色报文的丢弃概率,对于队列0,绿色、黄色、红色报文的丢弃概率分别为25%、50%、75%;对于队列3,绿色、黄色、红色报文的丢弃概率分别为5%、10%、25%;对于队列7,绿色、黄色、红色报文的丢弃概率分别为1%、5%、10%。

·     对队列7开启拥塞通知功能。

2. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

# 配置基于队列的WRED表,并为不同队列不同丢弃优先级配置丢弃参数。

<Sysname> system-view

[Sysname] qos wred queue table queue-table1

[Sysname-wred-table-queue-table1] queue 0 drop-level 0 low-limit 128 high-limit 512 discard-probability 25

[Sysname-wred-table-queue-table1] queue 0 drop-level 1 low-limit 128 high-limit 512 discard-probability 50

[Sysname-wred-table-queue-table1] queue 0 drop-level 2 low-limit 128 high-limit 512 discard-probability 75

[Sysname-wred-table-queue-table1] queue 3 drop-level 0 low-limit 256 high-limit 640 discard-probability 5

[Sysname-wred-table-queue-table1] queue 3 drop-level 1 low-limit 256 high-limit 640 discard-probability 10

[Sysname-wred-table-queue-table1] queue 3 drop-level 2 low-limit 256 high-limit 640 discard-probability 25

[Sysname-wred-table-queue-table1] queue 7 drop-level 0 low-limit 512 high-limit 1024 discard-probability 1

[Sysname-wred-table-queue-table1] queue 7 drop-level 1 low-limit 512 high-limit 1024 discard-probability 5

[Sysname-wred-table-queue-table1] queue 7 drop-level 2 low-limit 512 high-limit 1024 discard-probability 10

[Sysname-wred-table-queue-table1] queue 7 ecn

[Sysname-wred-table-queue-table1] quit

# 在接口HundredGigE1/0/2上应用基于队列的WRED表。

[Sysname] interface hundredgige 1/0/2

[Sysname-HundredGigE1/0/2] qos wred apply queue-table1

[Sysname-HundredGigE1/0/2] quit

6.3  拥塞避免显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后WRED的运行情况,通过查看显示信息验证配置的效果。

表6-1 拥塞避免显示和维护

操作

命令

显示接口的WRED配置情况和统计信息

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

显示WRED表配置情况

display qos wred table [ name table-name ] [ slot slot-number ]

 


7 流量过滤

7.1  流量过滤简介

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

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

仅基于接口和全局应用QoS策略时,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策略。

(6)     (可选)执行display traffic behavior命令显示流量过滤的相关配置信息。

7.4  流量过滤典型配置举例

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

1. 组网需求

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

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

2. 组网图

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

3. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

# 定义高级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应用到端口HundredGigE1/0/1的入方向上。

[Device] interface hundredgige 1/0/1

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


8 协议报文限速

8.1  协议报文限速简介

网络中的协议报文会上送CPU进行处理,但是CPU处理协议报文的速度有限,如果大量的协议报文同时上送CPU,会使CPU一直忙于处理协议报文,而无法顾及其它任务,最终导致设备瘫痪。协议报文限速功能可以对上送CPU的协议报文速率进行限制,保证CPU的正常运转。

8.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.     配置协议报文限速动作。

packet-rate value

缺省情况下,未配置协议报文限速动作。

c.     退回系统视图。

quit

(4)     定义策略。

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

qos policy policy-name

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

classifier classifier-name behavior behavior-name

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

c.     退回系统视图。

quit

(5)     基于控制平面应用QoS策略。

具体配置请参见“2.6.6  基于控制平面应用QoS策略”。

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

(6)     (可选)执行display traffic behavior命令显示协议报文限速的相关配置信息。

8.3  协议报文限速典型配置举例

8.3.1  协议报文限速基本组网配置举例

1. 组网需求

多台Host通过二层交换机接入设备Device。配置协议报文限速功能,对设备CPU接收的DHCP报文限速为每秒500个。

2. 组网图

图8-1 协议报文限速基本组网图

 

3. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

# 定义类classifier_1,匹配控制平面DHCP协议。

<Device> system-view

[Device] traffic classifier classifier_1

[Device-classifier-classifier_1] if-match control-plane protocol dhcp

[Device-classifier-classifier_1] quit

# 定义流行为behavior_1,动作为报文限速,速率为500个报文每秒。

[Device] traffic behavior behavior_1

[Device-behavior-behavior_1] packet-rate 500

[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应用到控制平面。

[Device] control-plane slot 1

[Device-cp] qos apply policy policy inbound


9 重标记

9.1  重标记简介

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

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

重标记可以和优先级映射功能配合使用,具体请参见“3 优先级映射”。

9.2  配置重标记

1. 配置限制和指导

仅基于接口、VLAN、全局和控制平面应用QoS策略时,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 [ remarking ] policy policy-name

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

classifier classifier-name behavior behavior-name

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

c.     退回系统视图。

quit

(5)     应用QoS策略。

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

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

(6)     (可选)执行display traffic behavior命令显示重标记的相关配置信息。

9.3  重标记典型配置举例

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

1. 组网需求

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

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

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

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

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

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

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

2. 组网图

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

3. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

# 定义高级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,动作为重标记报文的本地优先级为4。

[Device] traffic behavior behavior_dbserver

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

[Device-behavior-behavior_dbserver] quit

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

[Device] traffic behavior behavior_mserver

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

[Device-behavior-behavior_mserver] quit

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

[Device] traffic behavior behavior_fserver

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

[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应用到端口HundredGigE1/0/1上。

[Device] interface hundredgige 1/0/1

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

[Device-HundredGigE1/0/1] quit

9.3.2  基于QoS策略验证重标记动作配置举例

1. 组网需求

Device A通过Device B访问Server,网络环境描述如下:

·     Device B端口HundredGigE1/0/1接收来自Device A的报文的源IP地址为192.168.0.1,DSCP优先级为11;

·     在Device B端口HundredGigE1/0/1入方向应用重标记类型QoS策略,重新标记报文的DSCP优先级为50。

要求在Device B上配置QoS策略,实现验证重标记动作。

2. 组网图

3. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

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

<DeviceB> system-view

[DeviceB] acl basic 2000

[DeviceB-acl-ipv4-basic-2000] rule permit source 192.168.0.1 0

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

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

[DeviceB] traffic classifier sip

[DeviceB-classifier-sip] if-match acl 2000

[DeviceB-classifier-sip] quit

# 定义类dscp50,对DSCP优先级为50的报文进行分类。

[DeviceB] traffic classifier dscp50

[DeviceB-classifier-dscp50] if-match dscp 50

[DeviceB-classifier-dscp50] quit

# 定义流行为r,动作为重标记DSCP优先级为50。

[DeviceB] traffic behavior r

[DeviceB-behavior-r] remark dscp 50

[DeviceB-behavior-r] quit

# 定义流行为a,动作为基于包进行流量统计。

[DeviceB] traffic behavior a

[DeviceB-behavior-a] accounting packet

[DeviceB-behavior-a] quit

# 定义重标记类型策略policy_r,为类sip指定流行为r。

[DeviceB] qos remarking policy policy_r

[DeviceB-qospolicy-policy_r] classifier sip behavior r

[DeviceB-qospolicy-policy_r] quit

# 定义统计类型策略policy_a,为类dscp50指定流行为a。

[DeviceB] qos accounting policy policy_a

[DeviceB-qospolicy-policy_a] classifier dscp50 behavior a

[DeviceB-qospolicy-policy_a] quit

# 在端口HundredGigE1/0/1入方向应用重标记类型QoS策略policy_r。

[DeviceB] interface HundredGigE1/0/1

[DeviceB-HundredGigE1/0/1] qos apply remarking policy policy_r inbound

[DeviceB-HundredGigE1/0/1] quit

# 在端口HundredGigE1/0/1出方向应用统计类型QoS策略policy_a。

[DeviceB] interface HundredGigE1/0/1

[DeviceB-HundredGigE1/0/1] qos apply accounting policy policy_a outbound

[DeviceB-HundredGigE1/0/1] quit

4. 验证配置

# 查看Device B重标记类型策略是否生效。

[DeviceB] display qos policy user-defined remarking

 

  User-defined QoS policy information:

 

  Marking policy: policy_r (ID 100)

   Classifier: sip (ID 0)

     Behavior: r

      Marking:

        Remark dscp 50

# 查看Device B统计类型策略,从其中的报文统计结果可以表明,重标记动作已生效。

[DeviceB] display qos policy user-defined accounting

 

  User-defined QoS policy information:

 

  Accounting policy: policy_a (ID 101)

   Classifier: dscp50 (ID 0)

     Behavior: a

      Accounting enable: Packet

        20 (Packets)


10 Nest

10.1  Nest简介

Nest用来为符合流分类的流添加一层VLAN Tag,使携带该VLAN Tag的报文通过对应VLAN。例如,为从用户网络进入运营商网络的VLAN报文添加外层VLAN Tag,使其携带运营商网络分配的VLAN Tag穿越运营商网络。

 

10.2  Nest配置限制和指导

仅基于接口、VLAN和全局的入方向应用QoS策略时,QoS策略中配置的Nest才会生效。

应用包含Nest动作的QoS策略前,设备上下行接口均需要允许匹配该QoS策略的单层VLAN tag报文通过,否则该QoS策略不会生效。成功添加外层VLAN tag后,报文是依靠内层VLAN tag在设备上进行转发。

10.3  配置Nest

(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.     配置添加报文的外层VLAN Tag的动作。

nest top-most vlan vlan-id

缺省情况下,未配置添加报文外层VLAN Tag动作。

c.     退回系统视图。

quit

(4)     定义策略。

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

qos policy policy-name

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

classifier classifier-name behavior behavior-name

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

c.     退回系统视图。

quit

(5)     应用QoS策略。

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

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

(6)     (可选)执行display traffic behavior命令显示Nest的相关配置信息。

10.4  Nest典型配置举例

10.4.1  Nest基本功能配置举例

1. 组网需求

·     VPN A中的Site 1和Site 2是某公司的两个分支机构,利用VLAN 5承载业务。由于分处不同地域,这两个分支机构采用了服务提供商(SP)所提供的VPN接入服务,SP将VLAN 100分配给这两个分支机构使用。

·     该公司希望其下属的这两个分支机构可以跨越SP的网络实现互通。

2. 组网图

图10-1 Nest基本功能组网图

3. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

(1)     配置PE 1

# 定义类test的匹配规则为:匹配从HundredGigE1/0/1收到的VLAN ID值为5的报文。

<PE1> system-view

[PE1] traffic classifier test

[PE1-classifier-test] if-match service-vlan-id 5

[PE1-classifier-test] quit

# 在流行为test上配置如下动作:添加VLAN ID为100的外层VLAN Tag。

[PE1] traffic behavior test

[PE1-behavior-test] nest top-most vlan 100

[PE1-behavior-test] quit

# 在策略test中为类test指定采用流行为test。

[PE1] qos policy test

[PE1-qospolicy-test] classifier test behavior test

[PE1-qospolicy-test] quit

# 配置下行端口HundredGigE1/0/1为Hybrid端口且允许VLAN 5的报文携带VLAN tag和允许VLAN 100的报文不携带VLAN Tag通过。

[PE1] interface hundredgige 1/0/1

[PE1-HundredGigE1/0/1] port link-type hybrid

[PE1-FortyGigE1/0/1] port hybrid vlan 5 tagged

[PE1-HundredGigE1/0/1] port hybrid vlan 100 untagged

# 在下行端口HundredGigE1/0/1的入方向上应用上行策略test。

[PE1-HundredGigE1/0/1] qos apply policy test inbound

[PE1-HundredGigE1/0/1] quit

# 配置上行端口HundredGigE1/0/2为Trunk端口且允许VLAN 5和VLAN 100通过。

[PE1] interface hundredgige 1/0/2

[PE1-HundredGigE1/0/2] port link-type trunk

[PE1-HundredGigE1/0/2] port trunk permit vlan 5 100

[PE1-HundredGigE1/0/2] quit

(2)     配置PE 2

PE 2的配置与PE 1完全一致,这里不再赘述。


11 流量重定向

11.1  流量重定向简介

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

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

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

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

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

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

·     仅基于接口、VLAN和全局的入方向应用QoS策略时,QoS策略中配置的流量重定向才会生效。

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

11.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策略。

(6)     (可选)显示流量重定向的相关配置信息。

display traffic behavior user-defined [ behavior-name ]

11.4  流量重定向典型配置举例

11.4.1  重定向至接口配置举例

1. 组网需求

网络环境描述如下:

·     Device A通过两条链路与Device B连接,同时Device A和Device B各自连接其他的设备;

·     Device A上的端口HundredGigE1/0/2的链路类型为Trunk类型,且允许VLAN200和VLAN201的报文通过;

·     Device A上的端口HundredGigE1/0/2和Device B上的端口HundredGigE1/0/2属于VLAN 200;

·     Device A上的端口HundredGigE1/0/3和Device B上的端口HundredGigE1/0/3属于VLAN 201;

·     Device A上接口Vlan-interface200的IP地址为200.1.1.1/24,接口Vlan-interface201的IP地址为201.1.1.1/24;

·     Device B上接口Vlan-interface200的IP地址为200.1.1.2/24,接口Vlan-interface201的IP地址为201.1.1.2/24。

配置重定向至接口,满足如下需求:

·     将Device A的端口HundredGigE1/0/1接收到的源IP地址为2.1.1.1的报文转发至HundredGigE1/0/2;

·     将Device A的端口HundredGigE1/0/1接收到的源IP地址为2.1.1.2的报文转发至HundredGigE1/0/3;

·     对于Device A的端口HundredGigE1/0/1接收到的其它报文,按照查找路由表的方式进行转发。

2. 组网图

图11-1 重定向至接口配置组网图

3. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

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

<DeviceA> system-view

[DeviceA] acl basic 2000

[DeviceA-acl-ipv4-basic-2000] rule permit source 2.1.1.1 0

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

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

[DeviceA] acl basic 2001

[DeviceA-acl-ipv4-basic-2001] rule permit source 2.1.1.2 0

[DeviceA-acl-ipv4-basic-2001] quit

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

[DeviceA] traffic classifier classifier_1

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

[DeviceA-classifier-classifier_1] quit

# 定义类classifier_2,匹配基本ACL 2001。

[DeviceA] traffic classifier classifier_2

[DeviceA-classifier-classifier_2] if-match acl 2001

[DeviceA-classifier-classifier_2] quit

# 定义流行为behavior_1,动作为重定向至HundredGigE1/0/2。

[DeviceA] traffic behavior behavior_1

[DeviceA-behavior-behavior_1] redirect interface hundredgige 1/0/2

[DeviceA-behavior-behavior_1] quit

# 定义流行为behavior_2,动作为重定向至HundredGigE1/0/3。

[DeviceA] traffic behavior behavior_2

[DeviceA-behavior-behavior_2] redirect interface hundredgige 1/0/3

[DeviceA-behavior-behavior_2] quit

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

[DeviceA] qos policy policy

[DeviceA-qospolicy-policy] classifier classifier_1 behavior behavior_1

[DeviceA-qospolicy-policy] classifier classifier_2 behavior behavior_2

[DeviceA-qospolicy-policy] quit

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

[DeviceA] interface hundredgige 1/0/1

[DeviceA-HundredGigE1/0/1] qos apply policy policy inbound


12 聚合CAR

12.1  配置聚合CAR

1. 配置限制和指导

仅基于接口、VLAN和全局的入方向应用QoS策略时,QoS策略中配置的聚合CAR才会生效。

应用引用聚合CAR的QoS策略到入方向后,匹配同一QoS策略的流量通过多个接口进入设备,需要注意接口分组的使用限制。不同的单板上的接口属于不同的接口分组;同一个单板,在Probe视图执行debug port mapping命令,显示信息中Unit字段取值相同的接口为同一分组。缺省情况下,QoS策略的生效的报文传输速率等于聚合CAR中配置的承诺信息速率与峰值速率的总和乘以接口分组个数。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     定义类。

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

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

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

if-match match-criteria

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

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

c.     退回系统视图。

quit

(3)     配置聚合CAR。

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

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

缺省情况下,未配置聚合CAR。

 

(4)     定义流行为。

a.     进入流行为视图。

traffic behavior behavior-name

b.     在流行为中应用聚合CAR动作。

car name car-name

缺省情况下,流行为中未应用聚合CAR动作。

(5)     定义策略。

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

qos policy policy-name

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

classifier classifier-name behavior behavior-name

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

c.     退回系统视图。

quit

(6)     应用QoS策略。

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

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

12.2  聚合CAR显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后聚合CAR的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除聚合CAR统计信息。

表12-1 聚合CAR显示和维护

操作

命令

显示聚合CAR的配置和统计信息

display qos car name [ car-name ]

清除聚合CAR的统计信息

reset qos car name [ car-name ]

 


13 流量统计

13.1  流量统计简介

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

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

仅基于接口、VLAN和控制平面应用QoS策略时,QoS策略中配置的流量统计才会生效。

13.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策略。

(6)     (可选)显示流量统计的相关配置信息。

display traffic behavior user-defined [ behavior-name ]

13.4  流量统计典型配置举例

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

1. 组网需求

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

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

2. 组网图

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

3. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

# 定义基本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

[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应用到端口HundredGigE1/0/1的入方向上。

[Device] interface hundredgige 1/0/1

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

[Device-HundredGigE1/0/1] quit

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

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

 

Interface: HundredGigE1/0/1

 

  Direction: Inbound

 

  Policy: policy

   Classifier: classifier_1

     Operator: AND

     Rule(s) :

      If-match acl 2000

     Behavior: behavior_1

      Accounting enable:

        28529 (Packets)


14 队列统计

14.1  端口队列统计

14.1.1  端口队列统计简介

端口队列统计功能可以对队列总长度、当前队列长度、转发报文总数和转发各种颜色报文数等信息进行统计。

14.1.2  配置端口队列统计

(1)     进入系统视图。

system-view

(2)     将报文统计模式配置为端口队列模式。

statistic mode queue

缺省情况下,报文统计模式配置为VSI模式。

14.1.3  端口队列统计显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示端口队列的统计情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除端口队列的统计信息。

表14-1 端口队列统计显示和维护

操作

命令

显示端口队列统计信息

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

显示设备当前生效的报文统计模式

display statistic mode

清除端口队列统计信息

reset counters interface [ interface-type [ interface-number | interface-number.subnumber ] ]

本命令的详细情况请参见“二层技术-以太网交换命令参考”中的“以太网接口”

 

 


15 QPPB

15.1  QPPB简介

QPPB(QoS Policy Propagation Through the Border Gateway Protocol,通过BGP传播QoS策略)技术是一项通过BGP路由策略部署QoS的技术,通过基于BGP路由的团体列表、AS-Paths list和ACL、Prefix list等属性进行路由分类,对不同的分类应用不同的QoS策略。

15.1.1  适用场景

在部署大型复杂网络时,需要执行大量的复杂流分类。如果网络结构不稳定时,配置修改的工作量非常大甚至难以实施。此时可以通过部署QPPB减少配置修改的工作量。

应用QPPB技术后,BGP路由发送者通过设置BGP属性预先对路由进行分类,在网络拓扑结构发生变化时只需要修改路由发送者上的路由策略就可以改变分类规则。

QPPB技术适用于如下应用场景:

·     基于目的地址或源地址进行流分类。

·     基于IBGP和EBGP,在同一个自治系统内部或者不同的自治系统之间进行流分类。

15.1.2  QPPB工作原理

QPPB技术通过对BGP传播的路由属性设置IP优先级或QoS本地ID值,针对具有相同IP优先级或QoS本地ID值的BGP路由,应用QoS策略,从而实现QoS保障。QPPB工作原理为:

(1)     路由发送者根据路由策略为BGP路由设置路由属性。

(2)     当路由接收者收到路由后,根据路由属性为不同的路由设置IP优先级和QoS本地ID值,并将IP优先级和QoS本地ID值添加到路由表中。

(3)     路由接收者接收到报文后,根据报文的源或目的地址查找路由表,获取路由表中的IP优先级和QoS本地ID值。

(4)     路由接收者根据IP优先级和QoS本地ID值对报文进行分类和执行分类对应的流行为动作。

15.2  QPPB配置任务简介

QPPB配置任务如下:

(1)     配置发送端

a.     配置BGP基本功能

b.     (可选)配置路由策略

(2)     配置接收端

a.     配置BGP基本功能

b.     配置路由策略

c.     配置接口的QPPB功能并应用QoS策略

15.3  配置发送端

路由发送端作为BGP路由的发送方,需要根据路由策略设置路由的属性。

15.3.1  配置BGP基本功能

具体配置请参见“三层技术-IP路由配置指导”中的“BGP”。

15.3.2  配置路由策略

根据路由策略对不同的路由信息进行分类,并设置不同路由属性,具体配置请参见“三层技术-IP路由配置指导”中的“路由策略”。

15.4  配置接收端

15.4.1  配置BGP基本功能

具体配置请参见“三层技术-IP路由配置指导”中的“BGP”。

15.4.2  配置路由策略

根据路由策略匹配发送方设置的路由属性,并对该路由设置IP优先级或QoS本地ID值,具体配置请参见“三层技术-IP路由配置指导”中的“路由策略”。

15.4.3  配置接口的QPPB功能并应用QoS策略

1. 配置限制和指导

QoS策略使用路由策略中设置的IP优先级和QoS本地ID值进行分类,并且为类指定流行为时必须指定mode qppb-manipulation关键字,否则QPPB功能无法生效。关于QoS策略的具体配置请参见“2 QoS策略”。

 

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     定义类。

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

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

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

if-match { ip-precedence ip-precedence-value | qos-local-id local-id-value }

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

命令中的IP优先级、QoS本地ID就是“15.4.2  配置路由策略”中设置的值。

c.     退回系统视图。

quit

(3)     定义流行为。

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

traffic behavior behavior-name

b.     配置流行为动作。

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

配置流行为动作的具体命令,请查看QoS命令。

c.     退回系统视图。

quit

(4)     定义策略。

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

qos policy policy-name

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

classifier classifier-name behavior behavior-name  mode qppb-manipulation

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

c.     退回系统视图。

quit

(5)     进入接口视图。

interface interface-type interface-number

(6)     配置QPPB功能。

bgp-policy { destination | source } { ip-prec-map | ip-qos-map } *

缺省情况下,未配置QPPB功能。

本命令只在流量的入方向生效。

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

qos apply policy policy-name inbound

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

15.5  QPPB典型配置举例

15.5.1  QPPB在IPv4网络中的配置举例

1. 组网需求

图15-1所示,所有设备均运行BGP协议。Device B接收路由,根据路由策略对报文进行IP优先级和QoS本地ID值的设置,并结合QoS策略进行512000kbps的限速。

2. 组网图

图15-1 QPPB路由IPv4应用配置举例组网图

3. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

(1)     配置各接口的IP地址(略)

(2)     配置Device A

# 配置BGP连接。

<DeviceA> system-view

[DeviceA] bgp 1000

[DeviceA-bgp] peer 168.1.1.2 as-number 2000

[DeviceA-bgp] peer 168.1.1.2 connect-interface hundredgige 1/0/2

[DeviceA-bgp] address-family ipv4

[DeviceA-bgp-ipv4] import-route direct

[DeviceA-bgp-ipv4] peer 168.1.1.2 enable

[DeviceA-bgp-ipv4] quit

[DeviceA-bgp] quit

(3)     配置Device B

# 配置BGP连接。

<DeviceB> system-view

[DeviceB] bgp 2000

[DeviceB-bgp] peer 168.1.1.1 as-number 1000

[DeviceB-bgp] peer 168.1.1.1 connect-interface hundredgige 1/0/2

[DeviceB-bgp] address-family ipv4

[DeviceB-bgp-ipv4] peer 168.1.1.1 enable

[DeviceB-bgp-ipv4] peer 168.1.1.1 route-policy qppb import

[DeviceB-bgp-ipv4] quit

[DeviceB-bgp] quit

# 配置路由策略。

[DeviceB] route-policy qppb permit node 0

[DeviceB-route-policy-qppb-0] apply ip-precedence 1

[DeviceB-route-policy-qppb-0] apply qos-local-id 3

[DeviceB-route-policy-qppb-0] quit

# 接口开启QPPB能力。

[DeviceB] interface hundredgige 1/0/2

[DeviceB-HundredGigE1/0/2] bgp-policy source ip-prec-map ip-qos-map

[DeviceB-HundredGigE1/0/2] quit

# 配置QoS策略。

[DeviceB] traffic classifier qppb

[DeviceB-classifier-qppb] if-match ip-precedence 1

[DeviceB-classifier-qppb] if-match qos-local-id 3

[DeviceB-classifier-qppb] quit

[DeviceB] traffic behavior qppb

[DeviceB-behavior-qppb] car cir 512000 green pass red discard

[DeviceB-behavior-qppb] quit

[DeviceB] qos policy qppb

[DeviceB-qospolicy-qppb] classifier qppb behavior qppb mode qppb-manipulation

[DeviceB-qospolicy-qppb] quit

# 接口应用QoS策略。

[DeviceB] interface hundredgige 1/0/2

[DeviceB-HundredGigE1/0/2] qos apply policy qppb inbound

[DeviceB-HundredGigE1/0/2] quit

4. 验证配置

# 查看Device B相关路由是否生效。

[DeviceB] display bgp routing-table ipv4 1.1.1.0

 BGP local router ID: 168.1.1.2

 Local AS number: 2000

 Paths:   1 available, 1 best

 BGP routing table information of 168.1.1.0/24:

 From            : 168.1.1.1 (168.1.1.1)

 Rely nexthop    : 168.1.1.1

 Original nexthop: 168.1.1.1

 Out interface   : HundredGigE1/0/2

 Route age       : 00h30m12s

 OutLabel        : NULL

 RxPathID        : 0x0

 TxPathID        : 0x0

 AS-path         : 1000

 Origin          : incomplete

 Attribute value : MED 0, pref-val 0

 State           : valid, external, best

 IP precedence   : 1

 QoS local ID    : 3

 Traffic index   : N/A

 Tunnel policy   : NULL

 Rely tunnel IDs : N/A

# 查看Device B的接口HundredGigE1/0/2上QoS策略的配置信息和运行情况。

[DeviceB] display qos policy interface hundredgige 1/0/2

Interface: HundredGigE1/0/2

  Direction: Inbound

  Policy: qppb

   Classifier: default-class

         Mode: qppb-manipulation

     Matched : 51 (Packets) 4022 (Bytes)

     5-minute statistics:

      Forwarded: 0/28 (pps/bps)

      Dropped  : 0/0 (pps/bps)

     Operator: AND

     Rule(s) :

      If-match any

     Behavior: be

      -none-

   Classifier: qppb

         Mode: qppb-manipulation

     Matched : 0 (Packets) 0 (Bytes)

     5-minute statistics:

      Forwarded: 0/0 (pps/bps)

      Dropped  : 0/0 (pps/bps)

     Operator: AND

     Rule(s) :

      If-match ip-precedence 1

      If-match qos-local-id 3

     Behavior: qppb

      Committed Access Rate:

        CIR 512000 (kbps), CBS 32000000 (Bytes), EBS 0 (Bytes)

        Green action  : pass

        Yellow action : pass

        Red action    : discard

        Green packets : 0 (Packets) 0 (Bytes)

        Yellow packets: 0 (Packets) 0 (Bytes)

        Red packets   : 0 (Packets) 0 (Bytes)

15.5.2  QPPB在MPLS L3VPN中的配置举例

1. 组网需求

图15-2所示,所有设备均运行BGP路由协议。Device C接收路由,进行QoS本地ID值的设置,并结合QoS策略进行双向200000kbps的限速。

2. 组网图

图15-2 QPPB在MPLS L3VPN中的配置举例组网图

设备

接口

IP地址

设备

接口

IP地址

Device A

HGE1/0/1

192.168.1.2/24

Device B

HGE1/0/1

167.1.1.2/24

HGE1/0/2

167.1.1.1/24

HGE1/0/2

168.1.1.2/24

Device C

HGE1/0/1

169.1.1.2/24

Device D

HGE1/0/2

169.1.1.1/24

HGE1/0/2

168.1.1.1/24

HGE1/0/1

192.168.3.2/24

 

3. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

(1)     配置各接口的IP地址(略)

(2)     配置Device A

# 配置BGP连接。

<DeviceA> system-view

[DeviceA] bgp 100

[DeviceA-bgp] peer 167.1.1.2 as-number 200

[DeviceA-bgp] peer 167.1.1.2 connect-interface hundredgige 1/0/2

[DeviceA-bgp] address-family ipv4

[DeviceA-bgp-ipv4] import-route direct

[DeviceA-bgp-ipv4] peer 167.1.1.2 enable

[DeviceA-bgp-ipv4] quit

[DeviceA-bgp] quit

(3)     配置Device B

# 配置VPN实例。

<DeviceB> system-view

[DeviceB] ip vpn-instance vpn1

[DeviceB-vpn-instance-vpn1] route-distinguisher 200:1

[DeviceB-vpn-instance-vpn1] vpn-target 200:1 export-extcommunity

[DeviceB-vpn-instance-vpn1] vpn-target 200:1 import-extcommunity

[DeviceB-vpn-instance-vpn1] quit

# 配置BGP连接。

[DeviceB] router id 1.1.1.1

[DeviceB] bgp 200

[DeviceB-bgp] peer 2.2.2.2 as-number 200

[DeviceB-bgp] peer 2.2.2.2 connect-interface loopback 0

[DeviceB-bgp] ip vpn-instance vpn1

[DeviceB-bgp-vpn1] peer 167.1.1.1 as-number 100

[DeviceB-bgp-vpn1] address-family ipv4

[DeviceB-bgp-ipv4-vpn1] peer 167.1.1.1 enable

[DeviceB-bgp-ipv4-vpn1] quit

[DeviceB-bgp] address-family vpnv4

[DeviceB-bgp-vpnv4] peer 2.2.2.2 enable

[DeviceB-bgp-vpnv4] quit

[DeviceB-bgp] quit

# 配置MPLS。

[DeviceB] mpls lsr-id 1.1.1.1

[DeviceB] mpls ldp

[DeviceB-mpls-ldp] quit

# 配置OSPF。

[DeviceB] ospf

[DeviceB-ospf-1] area 0

[DeviceB-ospf-1-area-0.0.0.0] network 1.1.1.1 0.0.0.0

[DeviceB-ospf-1-area-0.0.0.0] network 168.1.1.0 0.0.0.255

[DeviceB-ospf-1-area-0.0.0.0] quit

[DeviceB-ospf-1] quit

# 接口HundredGigE1/0/1绑定VPN。

[DeviceB] interface hundredgige 1/0/1

[DeviceB-HundredGigE1/0/1] ip binding vpn-instance vpn1

[DeviceB-HundredGigE1/0/1] ip address 167.1.1.2 24

[DeviceB-HundredGigE1/0/1] quit

# 接口HundredGigE1/0/2开启MPLS。

[DeviceB] interface hundredgige 1/0/2

[DeviceB-HundredGigE1/0/2] mpls enable

[DeviceB-HundredGigE1/0/2] mpls ldp enable

[DeviceB-HundredGigE1/0/2] quit

(4)     配置Device C

# 配置VPN实例。

<DeviceC> system-view

[DeviceC] ip vpn-instance vpn1

[DeviceC-vpn-instance-vpn1] route-distinguisher 200:1

[DeviceC-vpn-instance-vpn1] vpn-target 200:1 export-extcommunity

[DeviceC-vpn-instance-vpn1] vpn-target 200:1 import-extcommunity

[DeviceC-vpn-instance-vpn1] quit

# 配置BGP连接。

[DeviceC] router id 2.2.2.2

[DeviceC] bgp 200

[DeviceC-bgp] peer 1.1.1.1 as-number 200

[DeviceC-bgp] peer 1.1.1.1 connect-interface loopback 0

[DeviceC-bgp] ip vpn-instance vpn1

[DeviceC-bgp-vpn1] peer 169.1.1.1 as-number 300

[DeviceC-bgp-vpn1] address-family ipv4

[DeviceC-bgp-ipv4-vpn1] peer 169.1.1.1 enable

[DeviceC-bgp-ipv4-vpn1] peer 169.1.1.1 route-policy qppb import

[DeviceC-bgp-ipv4-vpn1] quit

[DeviceC-bgp-vpn1] quit

[DeviceC-bgp] address-family vpnv4

[DeviceC-bgp-vpnv4] peer 1.1.1.1 enable

[DeviceC-bgp-vpnv4] peer 1.1.1.1 route-policy qppb import

[DeviceC-bgp-vpnv4] quit

[DeviceC-bgp] quit

# 配置路由策略。

[DeviceC] route-policy qppb permit node 0

[DeviceC-route-policy-qppb-0] apply qos-local-id 3

[DeviceC-route-policy-qppb-0] quit

# 配置MPLS。

[DeviceC] mpls lsr-id 2.2.2.2

[DeviceC] mpls ldp

[DeviceC-mpls-ldp] quit

# 配置OSPF。

[DeviceC] ospf

[DeviceC-ospf-1] area 0

[DeviceC-ospf-1-area-0.0.0.0] network 2.2.2.2 0.0.0.0

[DeviceC-ospf-1-area-0.0.0.0] network 168.1.1.0 0.0.0.255

[DeviceC-ospf-1-area-0.0.0.0] quit

[DeviceC-ospf-1] quit

# 配置QoS策略。

[DeviceC] traffic classifier qppb

[DeviceC-classifier-qppb] if-match qos-local-id 3

[DeviceC-classifier-qppb] quit

[DeviceC] traffic behavior qppb

[DeviceC-behavior-qppb] car cir 200000 green pass red discard

[DeviceC-behavior-qppb] quit

[DeviceC] qos policy qppb

[DeviceC-qospolicy-qppb] classifier qppb behavior qppb mode qppb-manipulation

[DeviceC-qospolicy-qppb] quit

# 接口HundredGigE1/0/2开启MPLS。

[DeviceC] interface hundredgige 1/0/2

[DeviceC-HundredGigE1/0/2] mpls enable

[DeviceC-HundredGigE1/0/2] mpls ldp enable

# 接口开启QPPB能力。

[DeviceC-HundredGigE1/0/2] bgp-policy source ip-qos-map

[DeviceC-HundredGigE1/0/2] quit

[DeviceC] interface hundredgige 1/0/1

[DeviceC-HundredGigE1/0/1] bgp-policy source ip-qos-map

[DeviceC-HundredGigE1/0/1] quit

# 接口HundredGigE1/0/1绑定VPN。

[DeviceC] interface hundredgige 1/0/1

[DeviceC-HundredGigE1/0/1] ip binding vpn-instance vpn1

[DeviceC-HundredGigE1/0/1] ip address 169.1.1.2 24

# 接口HundredGigE1/0/1入方向应用QoS策略。

[DeviceC-HundredGigE1/0/1] qos apply policy qppb inbound

[DeviceC-HundredGigE1/0/1] quit

# 接口HundredGigE1/0/2入方向应用QoS策略。

[DeviceC] interface hundredgige 1/0/2

[DeviceC-HundredGigE1/0/2] qos apply policy qppb inbound

(5)     配置Device D

# 配置BGP连接。

<DeviceD> system-view

[DeviceD] bgp 300

[DeviceD-bgp] peer 169.1.1.2 as-number 200

[DeviceD-bgp] peer 169.1.1.2 connect-interface hundredgige 1/0/2

[DeviceD-bgp] address-family ipv4

[DeviceD-bgp-ipv4] peer 169.1.1.2 enable

[DeviceD-bgp-ipv4] import-route direct

[DeviceD-bgp-ipv4] quit

4. 验证配置

# 查看Device A相关路由是否生效。

[DeviceA] display ip routing-table

 

Destinations : 16        Routes : 16

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

167.1.1.0/24        Direct 0    0            167.1.1.1       HGE1/0/2

167.1.1.0/32        Direct 0    0            167.1.1.1       HGE1/0/2

167.1.1.1/32        Direct 0    0            127.0.0.1       InLoop0

167.1.1.255/32      Direct 0    0            167.1.1.1       HGE1/0/2

169.1.1.0/24        BGP    255  0            167.1.1.2       HGE1/0/2

192.168.1.0/24      Direct 0    0            192.168.1.2     HGE1/0/1

192.168.1.0/32      Direct 0    0            192.168.1.2     HGE1/0/1

192.168.1.2/32      Direct 0    0            127.0.0.1       InLoop0

192.168.1.255/32    Direct 0    0            192.168.1.2     HGE1/0/1

192.168.3.0/24      BGP    255  0            167.1.1.2       HGE1/0/2

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

# 查看Device B相关路由是否生效。

[DeviceB] display ip routing-table

 

Destinations : 12        Routes : 12

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

1.1.1.1/32          Direct 0    0            127.0.0.1       InLoop0

2.2.2.2/32          OSPF   10   1            168.1.1.1       HGE1/0/2

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

168.1.1.0/24        Direct 0    0            168.1.1.2       HGE1/0/2

168.1.1.0/32        Direct 0    0            168.1.1.2       HGE1/0/2

168.1.1.2/32        Direct 0    0            127.0.0.1       InLoop0

168.1.1.255/32      Direct 0    0            168.1.1.2       HGE1/0/2

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

[DeviceB] display ip routing-table vpn-instance vpn1

 

Destinations : 14        Routes : 14

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

167.1.1.0/24        Direct 0    0            167.1.1.2       HGE1/0/1

167.1.1.0/32        Direct 0    0            167.1.1.2       HGE1/0/1

167.1.1.2/32        Direct 0    0            127.0.0.1       InLoop0

167.1.1.255/32      Direct 0    0            167.1.1.2       HGE1/0/1

169.1.1.0/24        BGP    255  0            2.2.2.2         HGE1/0/2

192.168.1.0/24      BGP    255  0            167.1.1.1       HGE1/0/1

192.168.2.0/24      BGP    255  0            167.1.1.1       HGE1/0/1

192.168.3.0/24      BGP    255  0            2.2.2.2         HGE1/0/2

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

# 查看Device C相关路由是否生效。

[DeviceC] display ip routing-table

 

Destinations : 12        Routes : 12

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

1.1.1.1/32          OSPF   10   1            168.1.1.2       HGE1/0/2

2.2.2.2/32          Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

168.1.1.0/24        Direct 0    0            168.1.1.1       HGE1/0/2

168.1.1.0/32        Direct 0    0            168.1.1.1       HGE1/0/2

168.1.1.1/32        Direct 0    0            127.0.0.1       InLoop0

168.1.1.255/32      Direct 0    0            168.1.1.1       HGE1/0/2

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

[DeviceC] display ip routing-table vpn-instance vpn1

 

Destinations : 14        Routes : 14

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

167.1.1.0/24        BGP    255  0            1.1.1.1         HGE1/0/2

169.1.1.0/24        Direct 0    0            169.1.1.2       HGE1/0/1

169.1.1.0/32        Direct 0    0            169.1.1.2       HGE1/0/1

169.1.1.2/32        Direct 0    0            127.0.0.1       InLoop0

169.1.1.255/32      Direct 0    0            169.1.1.2       HGE1/0/1

192.168.1.0/24      BGP    255  0            1.1.1.1         HGE1/0/2

192.168.2.0/24      BGP    255  0            169.1.1.1       HGE1/0/1

192.168.3.0/24      BGP    255  0            169.1.1.1       HGE1/0/1

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

# 查看Device D相关路由是否生效。

[DeviceD] display ip routing-table

 

Destinations : 16        Routes : 16

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

167.1.1.0/24        BGP    255  0            169.1.1.2       HGE1/0/2

169.1.1.0/24        Direct 0    0            169.1.1.1       HGE1/0/2

169.1.1.0/32        Direct 0    0            169.1.1.1       HGE1/0/2

169.1.1.1/32        Direct 0    0            127.0.0.1       InLoop0

169.1.1.255/32      Direct 0    0            169.1.1.1       HGE1/0/2

192.168.1.0/24      BGP    255  0            169.1.1.2       HGE1/0/2

192.168.3.0/24      Direct 0    0            192.168.3.2     HGE1/0/1

192.168.3.0/32      Direct 0    0            192.168.3.2     HGE1/0/1

192.168.3.2/32      Direct 0    0            127.0.0.1       InLoop0

192.168.3.255/32    Direct 0    0            192.168.3.2     HGE1/0/1

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

# 查看Device C的接口入方向上QoS策略的配置信息和运行情况。

[DeviceC] display qos policy interface inbound

Interface: HundredGigE1/0/1

  Direction: Inbound

  Policy: qppb

   Classifier: default-class

         Mode: qppb-manipulation

     Matched : 312 (Packets) 18916 (Bytes)

     5-minute statistics:

      Forwarded: 0/24 (pps/bps)

      Dropped  : 0/0 (pps/bps)

     Operator: AND

     Rule(s) :

      If-match any

     Behavior: be

      -none-

   Classifier: qppb

         Mode: qppb-manipulation

     Matched : 0 (Packets) 0 (Bytes)

     5-minute statistics:

      Forwarded: 0/0 (pps/bps)

      Dropped  : 0/0 (pps/bps)

     Operator: AND

     Rule(s) :

      If-match qos-local-id 3

     Behavior: qppb

      Committed Access Rate:

        CIR 200000 (kbps), CBS 1250000 (Bytes), EBS 0 (Bytes)

        Green action  : pass

        Yellow action : pass

        Red action    : discard

        Green packets : 0 (Packets) 0 (Bytes)

        Yellow packets: 0 (Packets) 0 (Bytes)

        Red packets   : 0 (Packets) 0 (Bytes)

 

Interface: HundredGigE1/0/2

  Direction: Inbound

  Policy: qppb

   Classifier: default-class

         Mode: qppb-manipulation

     Matched : 311 (Packets) 23243 (Bytes)

     5-minute statistics:

      Forwarded: 0/24 (pps/bps)

      Dropped  : 0/0 (pps/bps)

     Operator: AND

     Rule(s) :

      If-match any

     Behavior: be

      -none-

   Classifier: qppb

         Mode: qppb-manipulation

     Matched : 0 (Packets) 0 (Bytes)

     5-minute statistics:

      Forwarded: 0/0 (pps/bps)

      Dropped  : 0/0 (pps/bps)

     Operator: AND

     Rule(s) :

      If-match qos-local-id 3

     Behavior: qppb

      Committed Access Rate:

        CIR 200000 (kbps), CBS 12500480 (Bytes), EBS 0 (Bytes)

        Green action  : pass

        Yellow action : pass

        Red action    : discard

        Green packets : 0 (Packets) 0 (Bytes)

        Yellow packets: 0 (Packets) 0 (Bytes)

        Red packets   : 0 (Packets) 0 (Bytes)

15.5.3  QPPB在IPv6网络中的配置举例

1. 组网需求

表15-1所示,所有设备均运行BGP协议。Device B接收路由,进行IP优先级设置,并结合QoS策略进行512000kbps的限速。

2. 组网图

表15-1 QPPB在IPv6网络中的配置举例组网图

3. 配置步骤

说明

缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。

 

(1)     配置各接口的IPv6地址(略)

(2)     配置Device A

# 配置BGP

<DeviceA> system-view

[DeviceA] bgp 1000

[DeviceA] peer 168::2 as-number 2000

[DeviceA] peer 168::2 connect-interface hundredgige 1/0/2

[DeviceA-bgp] address-family ipv6

[DeviceA-bgp-ipv6] peer 168::2 enable

[DeviceA-bgp-ipv6] import-route direct

[DeviceA-bgp-ipv6] quit

[DeviceA-bgp] quit

(3)     配置Device B

# 配置BGP

<DeviceB> system-view

[DeviceB] bgp 2000

[DeviceB] peer 168::1 as-number 1000

[DeviceB] peer 168::1 connect-interface hundredgige 1/0/2

[DeviceB-bgp] address-family ipv6

[DeviceB-bgp-ipv6] peer 168::1 enable

[DeviceB-bgp-ipv6] peer 168::1 route-policy qppb import

[DeviceB-bgp-ipv6] quit

[DeviceB-bgp] quit

# 配置路由策略

[DeviceB] route-policy qppb permit node 0

[DeviceB-route-policy-qppb-0] apply ip-precedence 4

[DeviceB-route-policy-qppb-0] apply qos-local-id 3

[DeviceB-route-policy-qppb-0] quit

# 接口开启QPPB能力

[DeviceB] interface hundredgige 1/0/2

[DeviceB-HundredGigE1/0/2] bgp-policy source ip-prec-map ip-qos-map

# 配置QoS策略。

[DeviceB] traffic classifier qppb

[DeviceB-classifier-qppb] if-match ip-precedence 4

[DeviceB-classifier-qppb] if-match qos-local-id 3

[DeviceB-classifier-qppb] quit

[DeviceB] traffic behavior qppb

[DeviceB-behavior-qppb] car cir 512000 red discard

[DeviceB-behavior-qppb] quit

[DeviceB] qos policy qppb

[DeviceB-qospolicy-qppb] classifier qppb behavior qppb mode qppb-manipulation

[DeviceB-qospolicy-qppb] quit

# 接口应用QoS策略。

[DeviceB] interface hundredgige 1/0/2

[DeviceB-HundredGigE1/0/2] qos apply policy qppb inbound

[DeviceB-HundredGigE1/0/2] quit

4. 验证配置

# 查看Device A相关路由是否生效。

[DeviceA] display bgp routing-table ipv6 2:: 64

 BGP local router ID: 0.0.0.0

 Local AS number: 1000

 Paths:   1 available, 1 best

 BGP routing table information of 168::/64:

 Imported route.

 Original nexthop: ::

 Out interface   : HundredGigE1/0/2

 Route age       : 00h17m18s

 OutLabel        : NULL

 RxPathID        : 0x0

 TxPathID        : 0x0

 AS-path         : (null)

 Origin          : incomplete

 Attribute value : MED 0, pref-val 32768

 State           : valid, local, best

 IP precedence   : N/A

 QoS local ID    : N/A

 Traffic index   : N/A

 Tunnel policy   : NULL

 Rely tunnel IDs : N/A

# 查看Device B相关路由是否生效。

[DeviceB] display bgp routing-table ipv6 1:: 64

 BGP local router ID: 0.0.0.0

 Local AS number: 2000

 Paths:   1 available, 1 best

 BGP routing table information of 168::/64:

 Imported route.

 Original nexthop: ::

 Out interface   : HundredGigE1/0/2

 Route age       : 00h05m17s

 OutLabel        : NULL

 RxPathID        : 0x0

 TxPathID        : 0x0

 AS-path         : (null)

 Origin          : incomplete

 Attribute value : MED 0, pref-val 32768

 State           : valid, local, best

 IP precedence   : 4

 QoS local ID    : 3

 Traffic index   : N/A

 Tunnel policy   : NULL

 Rely tunnel IDs : N/A

# 查看Device B的接口HundredGigE1/0/2上QoS策略的配置信息和运行情况。

[DeviceC] display qos policy interface hundredgige 1/0/2

Interface: HundredGigE1/0/2

  Direction: Inbound

  Policy: qppb

   Classifier: default-class

         Mode: qppb-manipulation

     Matched : 0 (Packets) 0 (Bytes)

     5-minute statistics:

      Forwarded: 0/0 (pps/bps)

      Dropped  : 0/0 (pps/bps)

     Operator: AND

     Rule(s) :

      If-match any

     Behavior: be

      -none-

   Classifier: qppb

         Mode: qppb-manipulation

     Matched : 0 (Packets) 0 (Bytes)

     5-minute statistics:

      Forwarded: 0/0 (pps/bps)

      Dropped  : 0/0 (pps/bps)

     Operator: AND

     Rule(s) :

      If-match ip-precedence 4

      If-match qos-local-id 3

     Behavior: qppb

      Committed Access Rate:

        CIR 512000 (kbps), CBS 32000000 (Bytes), EBS 0 (Bytes)

        Green action  : pass

        Yellow action : pass

        Red action    : discard

        Green packets : 0 (Packets) 0 (Bytes)

        Yellow packets: 0 (Packets) 0 (Bytes)

        Red packets   : 0 (Packets) 0 (Bytes)

 


16 附录

16.1  附录 A 缩略语表

表16-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

加权轮询队列

 

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

 

说明

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

 

表16-2 dot1p-lp、dot1p-dp、dot1p-dscp缺省映射关系

映射输入索引

dot1p-lp映射

dot1p-dp映射

dot1p-dscp映射

dot1p

lp

dp

dscp

0

2

0

0

1

0

0

8

2

1

0

16

3

3

0

24

4

4

0

32

5

5

0

40

6

6

0

48

7

7

0

56

 

表16-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

表16-4 exp-dscp缺省映射关系

映射输入索引

exp-dscp映射

exp优先级

dscp

0

0

1

8

2

16

3

24

4

32

5

40

6

48

7

56

表16-5 端口优先级和LP映射关系

端口优先级

LP

0

0

1

1

2

2

3

3

4

4

5

5

6

6

7

7

16.3  附录 C 各种优先级介绍

16.3.1  IP优先级和DSCP优先级

图16-1 ToS和DS域

 

图16-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位)是保留位。

表16-6 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

表16-7 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)

16.3.2  802.1p优先级

802.1p优先级位于二层报文头部,适用于不需要分析三层报头,而需要在二层环境下保证QoS的场合。

图16-2 带有802.1Q标签头的以太网帧

 

图16-2所示,4个字节的802.1Q标签头包含了2个字节的TPID(Tag Protocol Identifier,标签协议标识符)和2个字节的TCI(Tag Control Information,标签控制信息),TPID取值为0x8100,图16-3显示了802.1Q标签头的详细内容,Priority字段就是802.1p优先级。之所以称此优先级为802.1p优先级,是因为有关这些优先级的应用是在802.1p规范中被详细定义的。

图16-3 802.1Q标签头

 

表16-8 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

16.3.3  EXP优先级

EXP优先级位于MPLS标签内,用于标记MPLS QoS。

图16-4 MPLS标签的封装结构

 

图16-4中,Exp字段就是EXP优先级,长度为3比特,取值范围为0~7。

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

新华三官网
联系我们