选择区域语言: EN CN HK

11-ACL和QoS配置指导

02-QoS配置

本章节下载  (1.04 MB)

docurl=/cn/Service/Document_Software/Document_Center/Routers/Catalog/MSR/MSR_5600/Configure/Operation_Manual/H3C_MSR_CG(V7)-E0302-6W104/11/201506/872721_30005_0.htm

02-QoS配置

目  录

1 QoS简介

1.1 概述

1.2 QoS服务模型简介

1.2.1 Best-Effort服务模型

1.2.2 IntServ服务模型

1.2.3 DiffServ服务模型

1.3 QoS技术综述

1.3.1 QoS技术在网络中的位置

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

2 QoS配置方式

2.1 配置方式介绍

2.1.1 非QoS策略配置方式

2.1.2 QoS策略配置方式

2.2 QoS策略配置方式的步骤

2.2.1 定义类

2.2.2 定义流行为

2.2.3 定义策略

2.2.4 应用策略

2.2.5 配置接口流速统计时间

2.2.6 QoS策略显示和维护

3 优先级映射

3.1 优先级映射简介

3.1.1 优先级介绍

3.1.2 优先级映射表

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

3.3 配置优先级映射

3.3.1 配置优先级映射表

3.3.2 配置优先级信任模式

3.3.3 配置端口优先级

3.4 优先级映射显示和维护

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

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

3.5.2 全局优先级配置举例

3.5.3 优先级映射表和重标记配置举例

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

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

4.1.1 流量评估与令牌桶

4.1.2 流量监管

4.1.3 流量整形

4.1.4 限速

4.2 配置流量监管

4.2.1 QoS策略配置方式

4.2.2 非QoS策略配置方式

4.3 配置流量整形

4.3.1 QoS策略配置方式

4.3.2 非QoS策略配置方式

4.4 配置限速

4.4.1 配置接口限速

4.4.2 配置PW限速

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

4.6 流量监管与流量整形典型配置举例

4.6.1 流量监管与流量整形典型配置举例

4.6.2 IP限速典型配置举例

5 拥塞管理

5.1 拥塞管理简介

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

5.1.2 拥塞管理策略

5.1.3 拥塞管理技术的对比

5.2 配置先进先出队列的长度

5.3 配置优先队列

5.3.1 优先队列配置过程

5.3.2 优先队列配置举例

5.4 配置定制队列

5.5 配置加权公平队列

5.6 配置基于类的队列

5.6.1 配置概述

5.6.2 定义类

5.6.3 定义流行为

5.6.4 定义策略

5.6.5 应用策略

5.6.6 配置接口最大可用带宽

5.6.7 配置最大预留带宽占可用带宽的百分比

5.6.8 基于类的队列典型配置举例

5.7 配置RTP优先队列

5.8 配置报文信息预提取功能

5.9 配置QoS令牌

5.10 拥塞管理的显示和维护

6 拥塞避免

6.1 拥塞避免简介

6.1.1 传统的丢包策略

6.1.2 RED与WRED

6.1.3 WRED和队列机制的关系

6.2 WRED配置说明

6.2.1 WRED的配置方式

6.2.2 WRED的参数说明

6.3 以接口配置方式配置WRED

6.3.1 配置过程

6.3.2 配置举例

6.4 WRED显示和维护

7 流量过滤

7.1 流量过滤简介

7.2 配置流量过滤

7.3 流量过滤配置举例

7.3.1 流量过滤配置举例

8 重标记

8.1 重标记简介

8.2 配置重标记

8.3 重标记配置举例

8.3.1 重标记配置举例

9 流量重定向

9.1 流量重定向简介

9.2 配置流量重定向

9.3 流量重定向配置举例

9.3.1 重定向至接口配置举例

10 QPPB

10.1 QPPB简介

10.1.1 QPPB概述

10.1.2 QPPB原理

10.2 QPPB配置任务简介

10.2.2 配置发送端

10.2.3 配置接收端

10.3 QPPB典型配置举例

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

10.3.2 QPPB在MPLS L3VPN中的配置举例

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

11 附录

11.1 附录 A 缩略语表

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

11.3 附录 C 各种优先级介绍

11.3.1 IP优先级和DSCP优先级

11.3.2 802.1p优先级

11.3.3 EXP优先级

 


1 QoS简介

说明

MSR 2630/3610/3620/3640/3660/3600-28/3600-51路由器使用集中式命令行,MSR 5660/5680路由器使用分布式命令行。

 

1.1  概述

QoS即服务质量。对于网络业务,影响服务质量的因素包括传输的带宽、传送的时延、数据的丢包率等。在网络中可以通过保证传输的带宽、降低传送的时延、降低数据的丢包率以及时延抖动等措施来提高服务质量。

网络资源总是有限的,只要存在抢夺网络资源的情况,就会出现服务质量的要求。服务质量是相对网络业务而言的,在保证某类业务的服务质量的同时,可能就是在损害其它业务的服务质量。例如,在网络总带宽固定的情况下,如果某类业务占用的带宽越多,那么其他业务能使用的带宽就越少,可能会影响其他业务的使用。因此,网络管理者需要根据各种业务的特点来对网络资源进行合理的规划和分配,从而使网络资源得到高效利用。

下面从QoS服务模型出发,对目前使用最多、最成熟的一些QoS技术逐一进行描述。在特定的环境下合理地使用这些技术,可以有效地提高服务质量。

1.2  QoS服务模型简介

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

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

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

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

1.2.1  Best-Effort服务模型

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

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

1.2.2  IntServ服务模型

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

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

1.2.3  DiffServ服务模型

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

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

1.3  QoS技术综述

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

1.3.1  QoS技术在网络中的位置

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

 

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

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

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

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

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

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

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

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

 

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

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

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

 


2 QoS配置方式

2.1  配置方式介绍

QoS的配置方式分为QoS策略配置方式和非QoS策略配置方式两种。

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

2.1.1  非QoS策略配置方式

非QoS策略配置方式是指不通过QoS策略来进行配置。例如,限速功能可以通过直接在接口上配置来实现。

2.1.2  QoS策略配置方式

QoS策略配置方式是指通过配置QoS策略来实现QoS功能。

QoS策略包含了三个要素:类、流行为、策略。用户可以通过QoS策略将指定的类和流行为绑定起来,灵活地进行QoS配置。

1. 类

类的要素包括:类的名称和类的规则。

用户可以通过命令定义一系列的规则来对报文进行分类。

2. 流行为

流行为用来定义针对报文所做的QoS动作。

流行为的要素包括:流行为的名称和流行为中定义的动作。

用户可以通过命令在一个流行为中定义多个动作。

3. 策略

策略用来将指定的类和流行为绑定起来,对符合分类条件的报文执行流行为中定义的动作。

策略的要素包括:策略名称、绑定在一起的类和流行为的名称。

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

2.2  QoS策略配置方式的步骤

图2-1所示:

图2-1 QoS策略配置方式的步骤

 

 

2.2.1  定义类

定义类首先要创建一个类名称,然后在此类视图下配置其匹配规则。

表2-1 定义类

操作

命令

说明

进入系统视图

system-view

-

定义一个类,并进入类视图

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

缺省情况下,没有定义类

定义匹配数据包的规则

if-match [ not ] match-criteria

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

具体规则请参见QoS命令参考中的命令if-match的介绍

 

2.2.2  定义流行为

定义流行为首先需要创建一个流行为名称,然后可以在此流行为视图下根据需要配置相应的流行为。每个流行为由一组QoS动作组成。

表2-2 定义流行为

操作

命令

说明

进入系统视图

system-view

-

定义一个流行为,并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置流行为的动作

流行为就是对应符合流分类的报文做出相应的QoS动作,例如流量监管、流量过滤、重标记等,具体情况请参见本文相关章节

缺省情况下,没有配置流行为的动作

 

2.2.3  定义策略

1. 配置父策略

在策略视图下为类指定对应的流行为。以某种匹配规则将流区分为不同的类,再结合不同的流行为就能很灵活的实现各种QoS功能。

表2-3 定义策略

操作

命令

说明

进入系统视图

system-view

-

定义一个策略,并进入策略视图

qos policy policy-name

缺省情况下,没有定义策略

为类指定流行为

classifier classifier-name behavior behavior-name

缺省情况下,没有为类指定流行为

 

2. 配置子策略

提示

·     如果子策略中配置了CBQ,那么父策略中必须配置GTS,并且配置的父策略GTS带宽必须大于等于子策略CBQ带宽,否则配置失败。

·     嵌套策略时,如果父策略的GTS配置采用百分比形式,则子策略CBQ带宽配置必须采用百分比形式,不允许采用绝对值形式;如果父策略的GTS配置采用绝对值形式,则子策略CBQ带宽配置既可以采用百分比形式,也可以采用绝对值形式。

·     子策略中不允许配置GTS。

 

通过在流行为视图下应用子策略,可以实现策略嵌套功能。即由traffic classifier命令定义的某一类流量,除了执行父策略中定义的行为外,还由子策略再次对该类流量进行分类,并执行子策略中定义的行为。

表2-4 配置子策略

操作

命令

说明

进入系统视图

system-view

-

定义一个类,并进入类视图

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

缺省情况下,没有定义类

定义匹配数据包的规则

if-match [ not ] match-criteria

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

具体规则请参见QoS命令参考中的命令if-match的介绍

退回系统视图

quit

-

定义一个流行为,并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置子策略

traffic-policy policy-name

缺省情况下,没有配置嵌套策略

退出流行为视图

quit

-

定义一个策略,并进入策略视图

qos policy policy-name

缺省情况下,没有定义策略

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

classifier classifier-name behavior behavior-name

缺省情况下,没有为类指定流行为

 

2.2.4  应用策略

QoS策略支持以下应用方式:

·     基于接口或PVC应用QoS策略:QoS策略对通过接口或PVC接收或发送的流量生效。

·     基于PW应用QoS策略:QoS策略对PW上发送的流量生效。

·     基于控制平面应用QoS策略:QoS策略对通过控制平面接收的流量生效。

·     基于管理口控制平面应用QoS策略:QoS策略对通过管理口接收的流量生效。

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

1. 基于接口或PVC应用QoS策略

一个策略可以应用于多个接口或PVC。接口或PVC的每个方向(出和入两个方向)只能应用一个策略。

如果QoS策略应用在接口或PVC的出方向,则QoS策略对本地协议报文不起作用。本地协议报文是设备内部发起的某些报文,它是维持设备正常运行的重要协议报文。为了确保这些报文能够被不受影响的发送出去,即便在接口或PVC的出方向应用了QoS策略,本地协议报文也不会受到QoS策略的限制,从而降低了因配置QoS而误将这些报文丢弃或进行其他处理的风险。一些常见的本地协议报文如下:链路维护报文、IS-IS、OSPF、RIP、BGP、LDP、RSVP、SSH等。

表2-5 在接口或PVC上应用策略

操作

命令

说明

进入系统视图

system-view

-

进入接口视图或PVC视图

进入接口视图

interface interface-type interface-number

二者选其一

进入接口视图后,下面进行的配置只在当前接口生效;进入PVC视图后,下面进行的配置只在当前PVC生效

进入PVC视图

interface atm interface-number

pvc vpi/vci

在接口或PVC上应用QoS策略

qos apply policy policy-name { inbound | outbound }

缺省情况下,没有在接口或PVC上应用QoS策略

 

2. 基于PW应用QoS策略

一个策略可以应用于多条PW。只能在PW的出方向上应用QoS策略。

表2-6 在PW上应用QoS策略

操作

命令

说明

进入系统视图

system-view

-

进入PW视图

进入交叉连接PW视图

xconnect-group group-name

三者选其一

connection connection-name

peer ip-address pw-id pw-id [ in-label label-value out-label label-value ] [ pw-class class-name | tunnel-policy tunnel-policy-name ] *

进入VSI LDP PW视图

vsi vsi-name [ hub-spoke ]

pwsignaling ldp

peer ip-address [ pw-id pw-id ] [ hub | no-split-horizon | pw-class class-name | tunnel-policy tunnel-policy-name ] *

进入VSI 静态 PW视图

vsi vsi-name [ hub-spoke ]

pwsignaling static

peer ip-address [ pw-id pw-id ] [ in-label label-value out-label label-value [ hub | no-split-horizon | pw-class class-name | tunnel-policy tunnel-policy-name ] * ]

在PW上应用QoS策略

qos apply policy policy-name outbound

缺省情况下,没有在PW上应用QoS策略

 

3. 基于控制平面应用QoS策略

提示

当某个单板资源不足导致控制平面应用QoS策略失败时,用户可以执行undo qos apply policy命令进行手工删除。

 

设备上存在数据平面和控制平面:

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

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

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

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

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

表2-7 应用控制平面策略

操作

命令

说明

进入系统视图

system-view

-

进入控制平面视图(集中式设备)

control-plane

-

进入控制平面视图(分布式设备-独立运行模式/集中式IRF设备)

control-plane slot slot-number

-

进入控制平面视图(分布式设备-IRF模式)

control-plane chassis chassis-number slot slot-number

-

在控制平面上应用QoS策略

qos apply policy policy-name inbound

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

 

4. 基于管理口控制平面应用QoS策略

设备各款型对于本节所描述的特性支持情况有所不同,详细差异信息如下:

型号

特性

描述

MSR 2630

基于管理口控制平面应用QoS策略

不支持

MSR3600-28/3600-51

不支持

MSR 3610/3620/3640/3660

不支持

MSR 5660/5680

支持

 

管理口控制平面仅针对管理口上送给控制平面的报文。

如果管理口上送给控制平面的报文速率超过其处理能力,报文会得不到正确转发或及时处理,从而影响协议的正常运行。

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

缺省情况下,会在管理口上应用预定义的QoS限速策略,并默认生效。预定义的QoS策略中通过协议类型或者协议组类型来标识各种上送管理口的报文类型,用户也可以在流分类视图下通过if-match命令引用这些协议类型或者协议组类型来进行报文分类,然后根据需要为这些报文重新配置流行为。系统预定义的QoS策略信息可以通过display qos policy control-plane management pre-defined命令查看。

表2-8 应用管理口控制平面策略

操作

命令

说明

进入系统视图

system-view

-

进入管理口控制平面视图

control-plane management

-

在管理口控制平面上应用QoS策略

qos apply policy policy-name inbound

缺省情况下,没有在管理口控制平面上应用QoS策略

 

2.2.5  配置接口流速统计时间

提示

·     ATM PVC的流速统计时间采用所在ATM接口上设置的统计时间。

·     子接口的流速统计时间采用主接口上设置的统计时间。

 

我们可以统计经过QoS策略流分类后每类报文的发送和丢弃速率。假设流速统计时间为t(t默认为5分钟),则系统将统计最近t时间内每类报文发送和丢弃的平均速率,且每t/5分钟刷新一次统计速率。流速统计的结果可以通过命令display qos policy interface查看。

表2-9 配置接口流速统计时间

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

配置接口流速统计时间

qos flow-interval interval

缺省情况下,接口流速统计时间为5分钟

 

2.2.6  QoS策略显示和维护

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

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

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

操作

命令

显示类的配置信息(集中式设备)

display traffic classifier { system-defined | user-defined } [ classifier-name ]

显示类的配置信息(分布式设备-独立运行模式/集中式IRF设备)

display traffic classifier { system-defined | user-defined } [ classifier-name ] [ slot slot-number ]

显示类的配置信息(分布式设备-IRF模式)

display traffic classifier { system-defined | user-defined } [ classifier-name ] [ chassis chassis-number slot slot-number ]

显示流行为的配置信息(集中式设备)

display traffic behavior { system-defined | user-defined } [ behavior-name ]

显示流行为的配置信息(分布式设备-独立运行模式/集中式IRF设备)

display traffic behavior { system-defined | user-defined } [ behavior-name ] [ slot slot-number ]

显示流行为的配置信息(分布式设备-IRF模式)

display traffic behavior { system-defined | user-defined } [ behavior-name ] [ chassis chassis-number slot slot-number ]

显示QoS策略的配置信息(集中式设备)

display qos policy { system-defined | user-defined } [ policy-name [ classifier classifier-name ] ]

显示QoS策略的配置信息(分布式设备-独立运行模式/集中式IRF设备)

display qos policy { system-defined | user-defined } [ policy-name [ classifier classifier-name ] ] [ slot slot-number ]

显示QoS策略的配置信息(分布式设备-IRF模式)

display qos policy { system-defined | user-defined } [ policy-name [ classifier classifier-name ] ] [ chassis chassis-number slot slot-number ]

显示接口上QoS策略的配置信息和运行情况(集中式设备)

display qos policy interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ] [ inbound | outbound ]

显示接口上QoS策略的配置信息和运行情况(分布式设备-独立运行模式/集中式IRF设备)

display qos policy interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ] [ slot slot-number ] [ inbound | outbound ]

显示接口上QoS策略的配置信息和运行情况(分布式设备-IRF模式)

display qos policy interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ] [ chassis chassis-number slot slot-number ] [ inbound | outbound ]

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

display qos policy l2vpn-pw [ peer ip-address pw-id pw-id ] [ outbound ]

显示基于控制平面应用QoS策略的信息(集中式设备)

display qos policy control-plane

显示基于控制平面应用QoS策略的信息(分布式设备-独立运行模式/集中式IRF设备)

display qos policy control-plane slot slot-number

显示基于控制平面应用QoS策略的信息(分布式设备-IRF模式)

display qos policy control-plane chassis chassis-number slot slot-number

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

display qos policy control-plane management

显示系统预定义的控制平面应用QoS策略的信息(集中式设备)

display qos policy control-plane pre-defined

显示系统预定义的控制平面应用QoS策略的信息(分布式设备-独立运行模式/集中式IRF设备)

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

显示系统预定义的控制平面应用QoS策略的信息(分布式设备-IRF模式)

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

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

display qos policy control-plane management pre-defined

清除控制平面应用QoS策略的统计信息(集中式设备)

reset qos policy control-plane

清除控制平面应用QoS策略的统计信息(分布式设备-独立运行模式/集中式IRF设备)

reset qos policy control-plane slot slot-number

清除控制平面应用QoS策略的统计信息(分布式设备-IRF模式)

reset qos policy control-plane chassis chassis-number slot slot-number

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

reset qos policy control-plane management

 


3 优先级映射

3.1  优先级映射简介

报文在进入设备以后,设备会根据映射规则分配或修改报文的各种优先级的值,为队列调度和拥塞控制服务。

优先级映射功能通过报文所携带的优先级字段来映射其他优先级字段值,就可以获得决定报文调度能力的各种优先级字段,从而为全面有效的控制报文的转发调度等级提供依据。

3.1.1  优先级介绍

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

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

设备调度优先级是指报文在设备内转发时所使用的优先级,只对当前设备自身有效。设备调度优先级为本地优先级(LP),即设备为报文分配的一种具有本地意义的优先级,每个本地优先级对应一个队列,本地优先级值越大的报文,进入的队列优先级越高,从而能够获得优先的调度。

3.1.2  优先级映射表

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

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

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

常用的方式有两种:配置优先级信任模式和配置端口优先级。

如果配置了优先级信任模式,即表示设备信任所接收报文的优先级,会自动解析报文的优先级或者标志位,然后按照映射表映射到报文的优先级参数。

如果没有配置优先级信任模式,并且配置了端口优先级值,则表明设备不信任所接收报文的优先级,而是使用端口优先级,按照映射表映射到报文的优先级参数。

表3-1 优先级映射配置任务简介

配置任务

说明

详细配置

配置优先级映射表

可选

3.3.1 

配置优先级信任模式

二者必选其一

3.3.2 

配置端口优先级

3.3.3 

 

3.3  配置优先级映射

3.3.1  配置优先级映射表

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

表3-2 优先级映射表

优先级映射

描述

dot1p-lp

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

dscp-lp

DSCP到本地优先级映射表

 

表3-3 配置优先级映射表

操作

命令

说明

进入系统视图

system-view

-

进入指定的优先级映射表视图

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

用户根据需要进入相应的优先级映射表视图

配置指定优先级映射表的映射关系

import import-value-list export export-value

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

新配置的映射关系将覆盖原有映射关系

 

3.3.2  配置优先级信任模式

说明

目前,本特性仅在安装了二层以太网交换卡的款型以及MSR3600-28/MSR3600-51的固定二层接口上支持。

 

根据报文自身的优先级,查找优先级映射表,为报文分配优先级参数,可以通过配置优先级信任模式的方式来实现。

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

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

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

表3-4 配置优先级信任模式

操作

命令

说明

进入系统视图

system-view

-

进入二层以太网接口视图

interface interface-type interface-number

-

配置优先级信任模式

qos trust { dot1p | dscp }

缺省情况下,没有配置优先级信任模式

dscp参数仅在安装了SIC-4GSW、HMIM-24GSW/24GSWP和HMIM-8GSW交换卡的款型以及MSR3600-28/MSR3600-51的固定二层接口上支持

 

3.3.3  配置端口优先级

说明

目前,本特性仅在安装了二层以太网交换卡的款型以及MSR3600-28/MSR3600-51的固定二层接口上支持。

 

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

表3-5 配置端口优先级

操作

命令

说明

进入系统视图

system-view

-

进入二层以太网接口视图

interface interface-type interface-number

-

配置端口优先级

qos priority priority-value

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

 

3.4  优先级映射显示和维护

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

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

操作

命令

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

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

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

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

 

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

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

1. 组网需求

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

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

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

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

2. 组网图

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

 

3. 配置步骤

# 在接口GigabitEthernet2/1/1和GigabitEthernet2/1/2上分别配置端口优先级,GigabitEthernet2/1/1上配置的端口优先级值要高于GigabitEthernet2/1/2上配置的端口优先级值。

<DeviceC> system-view

[DeviceC] interface gigabitethernet 2/1/1

[DeviceC-GigabitEthernet2/1/1] qos priority 3

[DeviceC-GigabitEthernet2/1/1] quit

[DeviceC] interface gigabitethernet 2/1/2

[DeviceC-GigabitEthernet2/1/2] qos priority 1

[DeviceC-GigabitEthernet2/1/2] quit

3.5.2  全局优先级配置举例

1. 组网需求

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

l     Device A向Device C发送源IP地址为192.168.0.1/24,DSCP优先级为10的报文;

l     Device B向Device C发送源IP地址为192.168.1.2/24,DSCP优先级为20的报文。

要求通过配置实现如下需求:重标记Device A发出的报文的DSCP优先级值为50,如果Device C在接口GigabitEthernet2/1/3的出方向发生拥塞,则优先让Device A访问Server。

2. 组网图

图3-1 全局优先级配置组网图

 

3. 配置步骤

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

[DeviceC] acl basic 2001

[DeviceC-acl-ipv4-basic-2001] rule permit source 192.168.0.1 0

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

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

[DeviceC] traffic classifier classifier_a

[DeviceC-classifier-classifier_a] if-match acl 2001

[DeviceC-classifier-classifier_a] quit

# 定义流行为behavior_a,动作为remark。

[DeviceC] traffic behavior behavior_a

[DeviceC-behavior-behavior_a] remark dscp 50

[DeviceC-behavior-behavior_a] quit

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

[DeviceC] qos policy policy_server1

[DeviceC-qospolicy-policy_server1] classifier classifier_a behavior behavior_a

[DeviceC-qospolicy-policy_server1] quit

# 将策略policy_server1应用到端口GigabitEthernet2/1/1上。

[DeviceC] interface gigabitethernet 2/1/1

[DeviceC-GigabitEthernet2/1/1] qos apply policy policy_server1 inbound

[DeviceC-GigabitEthernet2/1/1] quit

3.5.3  优先级映射表和重标记配置举例

1. 组网需求

公司企业网通过Device实现各部门之间的互连。网络环境描述如下:

l     市场部门通过端口GigabitEthernet2/1/1接入Device,标记市场部门发出的报文的802.1p优先级为3;

l     研发部门通过端口GigabitEthernet2/1/2接入Device,标记研发部门发出的报文的802.1p优先级为4;

l     管理部门通过端口GigabitEthernet2/1/3接入Device,标记管理部门发出的报文的802.1p优先级为5。

实现如下需求:

访问公共服务器的时候,研发部门 > 管理部门 > 市场部门。

l     通过优先级映射将研发部门发出的报文放入出队列6中,优先进行处理;

l     通过优先级映射将管理部门发出的报文放入出队列4中,次优先进行处理;

l     通过优先级映射将市场部门发出的报文放入出队列2中,最后进行处理。

访问Internet的时候,管理部门 > 市场部门 > 研发部门。

l     管理部门优先进行处理;

l     重标记市场部门发出的报文的本地优先级为3,次优先进行处理;

l     重标记研发部门发出的报文的本地优先级为2,最后进行处理。

2. 组网图

图3-2 优先级映射表和重标记配置组网图

 

3. 配置步骤

(2)     配置端口的端口优先级

# 配置端口GigabitEthernet2/1/1的端口优先级为3。

<Device> system-view

[Device] interface gigabitethernet 2/1/1

[Device-GigabitEthernet2/1/1] qos priority 3

[Device-GigabitEthernet2/1/1] quit

# 配置端口GigabitEthernet2/1/2的端口优先级为4。

[Device] interface gigabitethernet 2/1/2

[Device-GigabitEthernet2/1/2] qos priority 4

[Device-GigabitEthernet2/1/2] quit

# 配置端口GigabitEthernet2/1/3的端口优先级为5。

[Device] interface gigabitethernet 2/1/3

[Device-GigabitEthernet2/1/3] qos priority 5

[Device-GigabitEthernet2/1/3] quit

(3)     配置优先级映射表

# 配置802.1p优先级到本地优先级映射表,将802.1p优先级3、4、5对应的本地优先级配置为2、6、4。保证访问服务器的优先级为研发部门(6)>管理部门(4)>市场部门(2)。

[Device] qos map-table dot1p-lp

[Device-maptbl-dot1p-lp] import 3 export 2

[Device-maptbl-dot1p-lp] import 4 export 6

[Device-maptbl-dot1p-lp] import 5 export 4

[Device-maptbl-dot1p-lp] quit

(4)     配置重标记

# 将本地优先级6、2重标记为2、3,本地优先级4保持不变。保证访问Internet的优先级为管理部门(4)>市场部门(3)>研发部门(2)。

[Device] traffic classifier rd

[Device-classifier-rd] if-match local-precedence 6

[Device-classifier-rd] quit

[Device] traffic classifier market

[Device-classifier-market] if-match local-precedence 2

[Device-classifier-market] quit

[Device] traffic behavior rd

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

[Device-behavior-rd] quit

[Device] traffic behavior market

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

[Device-behavior-market] quit

[Device] qos policy policy1

[Device-qospolicy-policy1] classifier rd behavior rd

[Device-qospolicy-policy1] classifier market behavior market

[Device-qospolicy-policy1] quit

[Device] interface gigabitethernet 2/1/5

[Device-GigabitEthernet2/1/5] qos apply policy policy1 outbound

 


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 TP示意图

 

流量监管广泛的用于监管进入Internet服务提供商ISP的网络流量。流量监管还包括对所监管流量的流分类服务,并依据不同的评估结果,实施预先设定好的监管动作。这些动作可以是:

·     转发:比如对评估结果为“符合”的报文继续转发。

·     丢弃:比如对评估结果为“不符合”的报文进行丢弃。

·     改变优先级并转发:比如对评估结果为“符合”的报文,将其优先级进行重标记后再进行转发。

·     改变优先级并进入下一级监管:比如对评估结果为“符合”的报文,将其优先级进行重标记后再进入下一级的监管。

·     进入下一级的监管:流量监管可以进行分级,每级关注和监管更具体的目标。

4.1.3  流量整形

说明

 

流量整形是一种主动调整流量输出速率的措施。一个典型应用是基于下游网络节点的流量监管指标来控制本地流量的输出。

流量整形与流量监管的主要区别在于:

·     流量整形对流量监管中需要丢弃的报文进行缓存——通常是将它们放入缓冲区或队列内,如图4-2所示。当令牌桶有足够的令牌时,再均匀的向外发送这些被缓存的报文。

·     流量整形可能会增加延迟,而流量监管几乎不引入额外的延迟。

图4-2 流量整形示意图

 

例如,在图4-3所示的应用中,设备Router A向Router B发送报文。Router B要对Router A发送来的报文进行流量监管,对超出规格的流量直接丢弃。

图4-3 流量整形的应用

 

为了减少报文的无谓丢失,可以在Router A的出口对报文进行流量整形处理。将超出流量整形特性的报文缓存在Router A中。当可以继续发送下一批报文时,流量整形再从缓冲队列中取出报文进行发送。这样,发向Router B的报文将都符合Router B的流量规定。

4.1.4  限速

说明

限速支持入/出两个方向,为了方便描述,下文以出方向为例。

 

利用限速可以在一个接口或PW上限制发送报文(包括紧急报文)的总速率。

限速也是采用令牌桶进行流量控制。假如在设备的某个接口上配置了限速,所有经由该接口发送的报文首先要经过限速的令牌桶进行处理。如果令牌桶中有足够的令牌,则报文可以发送;否则,报文将进入QoS队列进行拥塞管理。这样,就可以对该接口的报文流量进行控制。

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

 

由于采用了令牌桶控制流量,当令牌桶中存有令牌时,可以允许报文的突发性传输;当令牌桶中没有令牌时,报文必须等到桶中生成了新的令牌后才可以继续发送。这就限制了报文的流量不能大于令牌生成的速度,达到了限制流量,同时允许突发流量通过的目的。

与流量监管相比,限速能够限制所有报文。当用户只要求对所有报文限速时,使用限速比较简单。

4.2  配置流量监管

流量监管的配置有两种方式:QoS策略配置方式和非QoS策略配置方式。

如果接口上同时采用了QoS策略配置方式和非QoS策略配置方式配置了流量监管,那么只有前者会生效。

4.2.1  QoS策略配置方式

表4-1 配置流量监管(QoS策略配置方式)

操作

命令

说明

进入系统视图

system-view

-

定义一个类,并进入类视图

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

缺省情况下,没有定义类

定义匹配数据包的规则

if-match [ not ] match-criteria

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

具体规则请参见QoS命令参考中的命令if-match的介绍

退回系统视图

quit

-

定义一个流行为,并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置流量监管动作

·     绝对值配置方式

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

·     百分比配置方式

car cir percent cir-percent [ cbs cbs-time [ ebs ebs-time ] ] [ green action | red action | yellow action ] *

car cir percent cir-percent [ cbs cbs-time ] pir percent pir-percent [ ebs ebs-time ] [ green action | red action | yellow action ] *

缺省情况下,没有配置流量监管动作

退回系统视图

quit

-

定义一个策略,并进入策略视图

qos policy policy-name

缺省情况下,没有定义策略

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

classifier classifier-name behavior behavior-name

缺省情况下,没有为类指定流行为

退回系统视图

quit

-

应用QoS策略

基于接口或PVC

2.2.4  1. 基于接口或PVC应用QoS策略

三者选其一

缺省情况下,没有应用QoS策略

基于控制平面

2.2.4  3. 基于控制平面应用QoS策略

基于管理口控制平面

2.2.4  4. 基于管理口控制平面应用QoS策略

 

4.2.2  非QoS策略配置方式

1. 基于CAR列表的流量监管配置

表4-2 基于CAR列表的流量监管配置

操作

命令

说明

进入系统视图

system-view

-

配置CAR列表

qos carl carl-index { dscp dscp-list | mac mac-address | mpls-exp mpls-exp-value | precedence precedence-value | { destination-ip-address | source-ip-address } { range start-ip-address to end-ip-address | subnet ip-address mask-length } [ per-address [ shared-bandwidth ] ] }

缺省情况下,没有配置CAR列表

进入接口视图

interface interface-type interface-number

-

在接口应用基于CAR列表的CAR策略

·     绝对值配置方式

qos car { inbound | outbound } carl carl-index cir committed-information-rate [ cbs committed-burst-size [ ebs excess-burst-size ] ] [ green action | red action | yellow action ] *

qos car { inbound | outbound } carl carl-index cir committed-information-rate [ cbs committed-burst-size ] pir peak-information-rate [ ebs excess-burst-size ] [ green action | red action | yellow action ] *

·     百分比配置方式

qos car { inbound | outbound } carl carl-index percent cir cir-percent [ cbs cbs-time [ ebs ebs-time ] ] [ green action | red action | yellow action ] *

qos car { inbound | outbound } carl carl-index percent cir cir-percent [ cbs cbs-time ] pir pir-percent [ ebs ebs-time ] [ green action | red action | yellow action ] *

缺省情况下,接口上没有配置CAR

 

2. 基于ACL的流量监管配置

表4-3 基于ACL的流量监管配置

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

在接口应用基于ACL规则的CAR策略

·     绝对值配置方式

qos car { inbound | outbound } acl [ ipv6 ] acl-number cir committed-information-rate [ cbs committed-burst-size [ ebs excess-burst-size ] ] [ green action | red action | yellow action ] *

qos car { inbound | outbound } acl [ ipv6 ] acl-number cir committed-information-rate [ cbs committed-burst-size ] pir peak-information-rate [ ebs excess-burst-size ] [ green action | red action | yellow action ] *

·     百分比配置方式

qos car { inbound | outbound } acl [ ipv6 ] acl-number percent cir cir-percent [ cbs cbs-time [ ebs ebs-time ] ] [ green action | red action | yellow action ] *

qos car { inbound | outbound } acl [ ipv6 ] acl-number percent cir cir-percent [ cbs cbs-time ] pir pir-percent [ ebs ebs-time ] [ green action | red action | yellow action ] *

缺省情况下,接口上没有配置CAR

 

3. 适配所有流的流量监管配置

表4-4 适配所有流的流量监管配置

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

在接口应用CAR策略

·     绝对值配置方式

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

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

·     百分比配置方式

qos car { inbound | outbound } any percent cir cir-percent [ cbs cbs-time [ ebs ebs-time ] ] [ green action | red action | yellow action ] *

qos car { inbound | outbound } any percent cir cir-percent [ cbs cbs-time ] pir pir-percent [ ebs ebs-time ] [ green action | red action | yellow action ] *

缺省情况下,接口上没有配置CAR

 

4.3  配置流量整形

4.3.1  QoS策略配置方式

表4-5 配置流量整形(QoS策略配置方式)

操作

命令

说明

进入系统视图

system-view

-

定义一个类,并进入类视图

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

缺省情况下,没有定义类

定义匹配数据包的规则

if-match [ not ] match-criteria

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

具体规则请参见QoS命令参考中的命令if-match的介绍

退回系统视图

quit

-

定义一个流行为,并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置流量整形动作

gts cir committed-information-rate [ cbs committed-burst-size [ ebs excess-burst-size ] ] [ queue-length queue-length ]

gts percent cir cir-percent [ cbs cbs-time [ ebs ebs-time ] ] [ queue-length queue-length ]

缺省情况下,没有配置流量整形动作

退回系统视图

quit

-

定义一个策略,并进入策略视图

qos policy policy-name

缺省情况下,没有定义策略

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

classifier classifier-name behavior behavior-name

缺省情况下,没有为类指定流行为

退回系统视图

quit

-

应用QoS策略

基于接口或PVC

2.2.4  1. 基于接口或PVC应用QoS策略

二者选其一

缺省情况下,没有应用QoS策略

基于控制平面

2.2.4  3. 基于控制平面应用QoS策略

 

4.3.2  非QoS策略配置方式

非QoS策略流量整形配置分为以下两种:

·     基于ACL的流量整形配置:为匹配某一ACL的流设置整形参数,使用不同的ACL可以为不同的流设置流量整形参数。

·     适配所有流的流量整形配置:为所有的流设置流量整形参数。

1. 基于ACL的流量整形配置

表4-6 基于ACL的流量整形配置

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

在接口配置流量整形

qos gts acl [ ipv6 ] acl-number cir committed-information-rate [ cbs committed-burst-size [ ebs excess-burst-size ] ] [ queue-length queue-length ]

缺省情况下,接口上没有配置流量整形

 

2. 适配所有流的流量整形配置

表4-7 适配所有流的流量整形配置

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

在接口配置流量整形

qos gts any cir committed-information-rate [ cbs committed-burst-size [ ebs excess-burst-size ] ] [ queue-length queue-length ]

缺省情况下,接口上没有配置流量整形

 

4.4  配置限速

4.4.1  配置接口限速

配置接口限速就是限制接口向外发送数据或者接收数据的速率。

表4-8 配置接口限速

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

配置接口限速

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

缺省情况下,接口上没有配置接口限速

 

4.4.2  配置PW限速

配置PW限速就是限制PW上向外发送数据或者接收数据的速率。有关PW的相关内容,请参见“MPLS配置指导”中的“MPLS L2VPN”和“VPLS”。

表4-9 配置PW限速

操作

命令

说明

进入系统视图

system-view

-

进入PW视图

进入交叉连接PW视图

xconnect-group group-name

三者选其一

connection connection-name

peer ip-address pw-id pw-id [ in-label label-value out-label label-value ] [ pw-class class-name | tunnel-policy tunnel-policy-name ] *

进入VSI LDP PW视图

vsi vsi-name [ hub-spoke ]

pwsignaling ldp

peer ip-address [ pw-id pw-id ] [ hub | no-split-horizon | pw-class class-name | tunnel-policy tunnel-policy-name ] *

进入VSI 静态 PW视图

vsi vsi-name [ hub-spoke ]

pwsignaling static

peer ip-address [ pw-id pw-id ] [ in-label label-value out-label label-value [ hub | no-split-horizon | pw-class class-name | tunnel-policy tunnel-policy-name ] * ]

配置PW限速

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

缺省情况下,没有配置PW限速

 

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

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

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

操作

命令

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

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

显示CAR列表(集中式设备)

display qos carl [ carl-index ]

显示CAR列表(分布式设备-独立运行模式/集中式IRF设备)

display qos carl [ carl-index ] [ slot slot-number ]

显示CAR列表(分布式设备-IRF模式)

display qos carl [ carl-index ] [ chassis chassis-number slot slot-number ]

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

display traffic behavior user-defined [ behavior-name ]

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

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

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

display qos lr interface { interface [ interface-type interface-number ] | l2vpn-pw [ peer ip-address pw-id pw-id ] ]

 

4.6  流量监管与流量整形典型配置举例

4.6.1  流量监管与流量整形典型配置举例

1. 配置需求

·     设备Router A通过接口GigabitEthernet2/0/3和设备Router B的接口GigabitEthernet2/0/1互连

·     Server、Host A、Host B可经由Router A和Router B访问Internet

·     Server、Host A与Router A的GigabitEthernet2/0/1接口在同一网段

·     Host B与Router A的GigabitEthernet2/0/2接口在同一网段

要求在设备Router A上对接口GigabitEthernet2/0/1接收到的源自Server和Host A的报文流分别实施流量控制如下:

·     来自Server的报文流量约束为54kbps,流量小于54kbps时可以正常发送,流量超过54kbps时则将违规报文的优先级设置为0后进行发送;

·     来自Host A的报文流量约束为8kbps,流量小于8kbps时可以正常发送,流量超过8kbps时则丢弃违规报文;

对设备Router B的GigabitEthernet2/0/1和GigabitEthernet2/0/2接口收发报文有如下要求:

·     Router B的GigabitEthernet2/0/1接口接收报文的总流量限制为500kbps,如果超过流量限制则将违规报文丢弃;

·     经由Router B的GigabitEthernet2/0/2接口进入Internet的报文流量限制为1000kbps,如果超过流量限制则将违规报文丢弃。

2. 组网图

图4-5 流量监管、流量整形配置组网图

 

3. 配置步骤

(1)     配置设备Router A

# 在GigabitEthernet2/0/3接口上对发送的报文进行流量整形(对超过500kbps的报文流进行整形),以降低在Router B接口GigabitEthernet2/0/1处的丢包率。

<RouterA> system-view

[RouterA] interface gigabitethernet 2/0/3

[RouterA-GigabitEthernet2/0/3] qos gts any cir 500

[RouterA-GigabitEthernet2/0/3] quit

# 配置ACL规则列表,分别匹配来源于Server和Host A的报文流。

[RouterA] acl basic 2001

[RouterA-acl-ipv4-basic-2001] rule permit source 1.1.1.1 0

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

[RouterA] acl basic 2002

[RouterA-acl-ipv4-basic-2002] rule permit source 1.1.1.2 0

[RouterA-acl-ipv4-basic-2002] quit

# 在GigabitEthernet2/0/1接口上对接收到的不同报文流进行相应流量控制。

[RouterA] interface gigabitethernet 2/0/1

[RouterA-GigabitEthernet2/0/1] qos car inbound acl 2001 cir 54 cbs 4000 ebs 0 green pass red remark-prec-pass 0

[RouterA-GigabitEthernet2/0/1] qos car inbound acl 2002 cir 8 cbs 1875 ebs 0 green pass red discard

[RouterA-GigabitEthernet2/0/1] quit

(2)     配置设备Router B

# 在GigabitEthernet2/0/1接口上对接收的报文进行流量控制,报文流量不能超过500kbps,如果超过流量限制则将违规报文丢弃。

<RouterB> system-view

[RouterB] interface gigabitethernet 2/0/1

[RouterB-GigabitEthernet2/0/1] qos car inbound any cir 500 cbs 32000 ebs 0 green pass red discard

[RouterB-GigabitEthernet2/0/1] quit

# 在GigabitEthernet2/0/2接口上对发送的报文进行流量控制,报文流量不能超过1Mbps,如果超过流量限制则将违规报文丢弃。

[RouterB] interface gigabitethernet 2/0/2

[RouterB-GigabitEthernet2/0/2] qos car outbound any cir 1000 cbs 65000 ebs 0 green pass red discard

4.6.2  IP限速典型配置举例

1. 配置需求

要求在设备Router上对接口GigabitEthernet2/0/2接收到的报文流进行限速:对HostA~HostZ(源地址属于IP地址段2.1.1.1~2.1.1.100)进行IP限速,逐IP地址流量限速5kbps,网段内各IP地址的流量共享剩余带宽。

2. 组网图

图4-6 IP限速配置组网图

 

3. 配置步骤

# 在接口GigabitEthernet2/0/2上对源地址属于IP地址段2.1.1.1~2.1.1.100内所有PC进行限速,网段内各IP地址的流量共享剩余带宽。

<Router> system-view

[Router] qos carl 1 source-ip-address range 2.1.1.1 to 2.1.1.100 per-address shared-bandwidth

[Router] interface gigabitethernet 2/0/2

[Router-GigabitEthernet2/0/2] qos car inbound carl 1 cir 500 cbs 1875 ebs 0 green pass red discard

[Router-GigabitEthernet2/0/2] quit

 


5 拥塞管理

5.1  拥塞管理简介

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

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

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

图5-1 流量拥塞示意图

 

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

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

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

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

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

拥塞管理的中心内容就是当拥塞发生时如何制定一个资源的调度策略,以决定报文转发的处理次序。

5.1.2  拥塞管理策略

对于拥塞管理,一般采用队列技术,使用一个队列算法对流量进行分类,之后用某种优先级别算法将这些流量发送出去。每种队列算法都是用以解决特定的网络流量问题,并对带宽资源的分配、延迟、抖动等有着十分重要的影响。

拥塞管理的处理包括队列的创建、报文的分类、将报文送入不同的队列、队列调度等。

下面介绍几种常用的队列。

1. FIFO队列

图5-2 先入先出队列示意图

 

图5-2所示,FIFO按照时间到达的先后决定分组的转发次序,先进的先出,后进的后出,不需要进行流分类和队列调度,FIFO关心的只是队列的长度,队列的长度对延迟和丢包率的影响。用户的业务流在某个设备能够获得的资源取决于分组的到达时机及当时的负载情况。Best-Effort报文转发方式采用的就是FIFO的排队策略。

如果设备的每个端口只有一个基于FIFO的输入或输出队列,那么恶性的应用可能会占用所有的网络资源,严重影响关键业务数据的传送。所以还需要配置一些其他的队列调度机制与FIFO配合对流量进行调度和拥塞控制。

每个队列内部报文的发送次序缺省是FIFO

2. PQ队列

图5-3 PQ队列示意图

 

 

PQ队列是针对关键业务应用设计的。关键业务有一个重要的特点,即在拥塞发生时要求优先获得服务以减小响应的延迟。PQ可以根据网络协议(比如IP、IPX)、数据流入接口、报文长度、源地址/目的地址等灵活地为数据流指定优先次序。如图5-3所示,PQ的4个队列分别为高优先队列(top)、中优先队列(middle)、正常优先队列(normal)和低优先队列(bottom)。所有报文将被分成4类,并按所属类别进入4个队列中的一个。缺省情况下,数据流进入normal队列。每个队列内部又遵循FIFO原则。

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

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

3. CQ队列

图5-4 CQ队列示意图

 

CQ队列包含16个队列,1到16号队列是用户队列,如图5-4所示。用户可以配置流分类的规则,指定16个队列占用接口或PVC带宽的比例关系。

在队列调度时,采用轮询的方式按照预先配置的轮询字节数依次从1到16号用户队列中取出一定数量的分组发送出去。这样,就可以使不同业务的分组获得不同的带宽,既可以保证关键业务能获得较多的带宽,又不至于使非关键业务得不到带宽。每个队列所占的带宽比例为:该队列的轮询字节数/所有队列的轮询字节数之和。缺省情况下,数据流进入1号队列。

CQ队列的另一个优点是:可根据业务的繁忙程度分配带宽,适用于对带宽有特殊需求的应用。虽然16个用户队列的调度是轮询进行的,但对每个队列不是固定地分配服务时间片——如果某个队列为空,那么马上换到下一个队列调度。因此,当没有某些类别的报文时,CQ调度机制能自动增加现存类别的报文可占的带宽。

4. WFQ队列

图5-5 WFQ队列示意图

 

在介绍加权公平队列前,先要理解FQ队列。FQ队列是为了公平地分享网络资源,尽可能使所有流的延迟和抖动达到最优而推出的。它照顾了各方面的利益,主要表现在:

·     不同的队列获得公平的调度机会,从总体上均衡各个流的延迟。

·     短报文和长报文获得公平的调度:如果不同队列间同时存在多个长报文和短报文等待发送,应当顾及短报文的利益,让短报文优先获得调度,从而在总体上减少各个流的报文间的抖动。

FQ相比,WFQ在计算报文调度次序时增加了优先权方面的考虑。从统计上,WFQ使高优先权的报文获得优先调度的机会多于低优先权的报文。WFQ能够按流的“会话”信息(协议类型、源和目的TCP或UDP端口号、源和目的IP地址、ToS域中的优先级位等)自动进行流分类,并且尽可能多地提供队列,以将每个流均匀地放入不同队列中,从而在总体上均衡各个流的延迟。在出队的时候,WFQ按流的优先级来分配每个流应占有出口的带宽。优先级的数值越小,所得的带宽越少。优先级的数值越大,所得的带宽越多。

例如:接口中当前共有5个流,它们的优先级分别为0、1、2、3、4,则带宽总配额为所有(流的优先级+1)的和,即1+2+3+4+5=15。

每个流所占带宽比例为:(自己的优先级数+1)/(所有(流的优先级+1)的和)。即每个流可得的带宽分别为:1/15,2/15,3/15,4/15,5/15。

由于WFQ在拥塞发生时能均衡各个流的延迟和抖动,所以WFQ在一些特殊场合得到了有效的应用。比如在使用RSVP协议的保证型业务中,通常就是采用WFQ作为调度策略;在流量整形中,也采用WFQ调度缓存的报文。

5. CBQ队列

图5-6 基于类的队列示意图

 

CBQ是对WFQ功能的扩展,为用户提供了定义类的支持。在网络拥塞时,CBQ根据用户定义的类规则对报文进行匹配,并使其进入相应的队列,在入队列之前必须进行拥塞避免机制和带宽限制的检查。在报文出队列时,加权公平调度每个类对应的队列中的报文。

CBQ包括以下队列:

l     紧急队列:CBQ提供一个紧急队列,紧急报文入该队列,该队列采用FIFO调度,没有带宽限制。

l     LLQ:即EF队列。如果CBQ加权公平对待所有类的队列,实时业务报文(包括语音与视频业务,对延迟比较敏感)就可能得不到及时发送。为此引入一个EF队列,为实时业务报文提供严格优先发送服务。LLQ将严格优先队列机制与CBQ结合起来使用,用户在定义类时可以指定其享受严格优先服务,这样的类称作优先类。所有优先类的报文将进入同一个优先队列,在入队列之前需对各类报文进行带宽限制的检查。报文出队列时,将首先发送优先队列中的报文,直到发送完后才发送其他类对应的队列的报文。为了不让其他队列中的报文延迟时间过长,在使用LLQ时将会为每个优先类指定可用最大带宽,该带宽值用于拥塞发生时监管流量。如果拥塞未发生,优先类允许使用超过分配的带宽。如果拥塞发生,优先类超过分配带宽的数据包将被丢弃。最多支持64个EF队列。

l     BQ:即AF队列。为AF业务提供严格、精确的带宽保证,并且保证各类AF业务之间按一定的比例关系进行队列调度。最多支持64个AF队列。

l     缺省队列:一个WFQ队列,用来支撑BE业务,使用接口剩余带宽进行发送。

系统在为报文匹配规则时,规则如下:

l     先匹配优先类,然后再匹配其他类;

l     对多个优先类,按照配置顺序逐一匹配;

l     对其他类,也是按照配置顺序逐一匹配;

l     对类中多个规则,按照配置顺序逐一匹配。

6. RTP优先队列

RTP优先队列是一种保证实时业务(包括语音与视频业务)服务质量的简单的队列技术。其原理就是将承载语音或视频的RTP报文送入高优先级队列,使其得到优先发送,保证时延和抖动降低为最低限度,从而保证了语音或视频这种对时延敏感业务的服务质量。

图5-7 RTP优先队列示意图

 

图5-7所示,RTP优先队列将RTP报文送入一个具有较高优先级的队列。RTP报文是端口号在一定范围内为偶数的UDP报文,端口号的范围可以配置。RTP优先队列可以同其他队列(包括FIFO、PQ、CQ和WFQ)结合使用,而它的优先级是最高的。

说明

RTP和CBQ互斥,不能结合使用。CBQ可以通过LLQ来保证实时业务数据的转发。

 

5.1.3  拥塞管理技术的对比

设备上提供了以上拥塞管理技术,突破了传统IP设备的单一FIFO拥塞管理策略,提供了强大的QoS能力,使得IP设备可以满足不同业务所要求的不同服务质量的要求。为了用户更好地利用拥塞管理技术,现对各种队列技术做一比较。

表5-1 拥塞管理技术对比

类型

队列数

优点

缺点

FIFO

1

·     不需要配置,易于使用

·     处理简单,延迟小

·     所有的报文均进入一个“先进先出”的队列,发送报文所占用的带宽、延迟时间、丢失的概率均由报文到达队列的先后顺序决定

·     对不匹配的数据源(即没有流控机制的流,如UDP报文发送)无约束力,不匹配的数据源会造成匹配的数据源(如TCP报文发送)带宽受损失

·     对时间敏感的实时应用(如VoIP)的延迟得不到保证

PQ

4

可对优先级高的业务提供绝对的优先,对时间敏感的实时应用(如VoIP)的延迟可以得到保证

·     需配置,处理速度慢

·     如果较高优先级队列中总有报文存在,那么低优先级队列中的报文将一致得不到服务

CQ

16

·     可对不同业务的报文按带宽比例分配带宽

·     当没有某些类别的报文时,能自动增加现存类别的报文可占的带宽

需配置,处理速度慢

WFQ

可配置

·     配置容易

·     可以保护配合(交互)的数据源(如TCP报文发送)的带宽

·     可以减小抖动

·     可以减小数据量小的交互式应用的延迟

·     可以为不同优先级的流分配不同的带宽

·     当流的数目减少时,能自动增加现存流可占的带宽

处理速度比FIFO要慢

CBQ

可配置

·     可以对数据根据灵活、多样的分类规则进行划分,分别为EF(加速转发)、AF(确保转发)、BE(尽力转发)业务提供不同的队列调度机制

·     可以为AF业务提供严格、精确的带宽保证,并且保证各类AF业务之间根据权值按一定的比例关系进行队列调度

·     可以为EF业务提供绝对优先的队列调度,确保实时数据的时延满足要求;同时通过对高优先级数据流量的限制,克服了PQ的低优先级队列可能得不到服务的弊病

·     对于尽力转发的缺省类数据,提供WFQ队列调度

系统开销比较大

RTP

1

·     保证了实时业务优先处理

·     在入队前进行流量监管的处理,避免出现其他队列得不到处理的情况

适用范围较窄,一般仅适用于对时延敏感的业务(如语音和视频业务)

 

说明

 

5.2  配置先进先出队列的长度

FIFO是接口缺省使用的队列调度机制,可以通过配置命令改变其队列长度。

若是子接口,则接口需要使能LR功能以保证队列功能生效。

 

表5-2 配置先进先出队列的长度(接口和PVC

操作

命令

说明

进入系统视图

system-view

-

进入接口视图或PVC视图

进入接口视图

interface interface-type interface-number

二者选其一

进入PVC视图

interface atm interface-number

pvc vpi/vci

配置先进先出队列的长度

qos fifo queue-length queue-length

缺省情况下,FIFO队列的长度为75

如果流量突发较大,可以通过增加队列长度的方法来改善队列调度的准确率

 

表5-3 配置先进先出队列的长度(PW

操作

命令

说明

进入系统视图

system-view

-

进入PW视图

进入交叉连接PW视图

xconnect-group group-name

三者选其一

connection connection-name

peer ip-address pw-id pw-id [ in-label label-value out-label label-value ] [ pw-class class-name | tunnel-policy tunnel-policy-name ] *

进入VSI LDP PW视图

vsi vsi-name [ hub-spoke ]

pwsignaling ldp

peer ip-address [ pw-id pw-id ] [ hub | no-split-horizon | pw-class class-name | tunnel-policy tunnel-policy-name ] *

进入VSI 静态 PW视图

vsi vsi-name [ hub-spoke ]

pwsignaling static

peer ip-address [ pw-id pw-id ] [ in-label label-value out-label label-value [ hub | no-split-horizon | pw-class class-name | tunnel-policy tunnel-policy-name ] * ]

配置先进先出队列的长度

qos fifo queue-length queue-length

缺省情况下,FIFO队列的长度为75

如果流量突发较大,可以通过增加队列长度的方法来改善队列调度的准确率

 

5.3  配置优先队列

可以给一个优先列表定义多条规则,然后把该组规则应用在某接口或PVC上。在进行流分类时,数据流按照配置顺序进行匹配,如果匹配上某规则,则进入相应的队列,匹配结束;如果分组不与任何规则匹配,则进入缺省队列。

5.3.1  优先队列配置过程

将一组优先列表应用到接口或PVC上。对于同一个接口或PVC,若优先队列的应用命令的重复使用,则最新的配置生效。

表5-4 优先队列配置过程

操作

命令

说明

进入系统视图

system-view

-

配置优先列表

qos pql pql-index protocol { ip | ipv6 } [ queue-key key-value ] queue { bottom | middle | normal | top }

或者

qos pql pql-index inbound-interface interface-type interface-number queue { bottom | middle | normal | top }

或者

qos pql pql-index local-precedence local-precedence-list queue { bottom | middle | normal | top }

或者

qos pql pql-index protocol mpls exp exp-list queue { bottom | middle | normal | top }

可以根据需要选择优先列表的配置命令

(可选)配置缺省队列

qos pql pql-index default-queue { bottom | middle | normal | top }

本配置用来指明不匹配规则的数据包的入队队列

缺省情况下,缺省队列为normal

(可选)配置队列长度

qos pql pql-index queue { bottom | middle | normal | top } queue-length queue-length

缺省情况下,高优先队列的缺省长度值为20,中优先队列的缺省长度值为40,正常优先队列的缺省长度值为60,低优先队列的缺省长度值为80

进入接口视图或PVC视图

进入接口视图

interface interface-type interface-number

二者选其一

进入PVC视图

interface atm interface-number

pvc vpi/vci

应用优先列表

qos pq pql pql-index

缺省情况下,接口或PVC不使用PQ,而使用FIFO

 

说明

如指定接口为Virtual-Template接口,将显示继承该Virtual-Template接口的所有Virtual-Access接口下的QoS CQ的信息,Virtual-Template本身无QoS信息显示。

若是Tunnel接口、子接口、三层聚合接口、HDLC捆绑接口,或是封装了PPPoE、PPPoA、PPPoEoA协议的VT、Dialer接口,则接口需要使能LR功能以保证队列功能生效。

 

5.3.2  优先队列配置举例

1. 配置需求

如图所示,Server和Host A通过Router A向Host B发送数据(其中Server发送关键业务数据,Host A发送非关键业务数据)时,由于Router A入接口GigabitEthernet2/0/1的速率大于出接口GigabitEthernet2/0/2的速率,在GigabitEthernet2/0/2接口处可能发生拥塞,导致丢包。要求在网络拥塞时保证Server发送的关键业务数据得到优先处理。

2. 组网图

图5-8 优先队列配置组网图

 

3. 配置步骤

# 配置ACL规则列表,分别匹配来源于Server和Host A的报文。

[RouterA] acl basic 2001

[RouterA-acl-ipv4-basic-2001] rule permit source 1.1.1.1 0

[RouterA] acl basic 2002

[RouterA-acl-ipv4-basic-2002] rule permit source 1.1.1.2 0

# 配置优先队列规则组,使得网络拥塞发生时,源自Server的报文能够进入PQ的top队列缓存,源自Host A的报文能够进入bottom队列缓存,并且设定top队列的最大队列长度为50、bottom队列的最大队列长度为100。

[RouterA] qos pql 1 protocol ip acl 2001 queue top

[RouterA] qos pql 1 protocol ip acl 2002 queue bottom

[RouterA] qos pql 1 queue top queue-length 50

[RouterA] qos pql 1 queue bottom queue-length 100

# 在接口GigabitEthernet2/0/2上启用优先队列规则组1。

[RouterA] interface gigabitethernet 2/0/2

[RouterA-GigabitEthernet2/0/2] qos pq pql 1

5.4  配置定制队列

定制列表共可分为16个组(1~16),每个组指明了什么样的分组进入什么样的队列、各队列的长度和每次轮询各队列所能连续发送的字节数等信息。在一个接口或PVC上只能应用一个组。

表5-5 定制队列配置过程

操作

命令

说明

进入系统视图

system-view

-

配置定制列表

qos cql cql-index protocol { ip | ipv6 } [ queue-key key-value ] queue queue-id  

或者

qos cql cql-index inbound-interface interface-type interface-number queue queue-id

或者

qos cql cql-index local-precedence local-precedence-list queue queue-id

或者

qos cql cql-index protocol mpls exp exp-list queue queue-id

可以根据需要选择定制列表的配置命令

(可选)配置缺省队列

qos cql cql-index default-queue queue-id

本配置指明不匹配规则的数据包的入队队列。

缺省情况下,缺省队列号为1

(可选)配置队列长度

qos cql cql-index queue queue-id queue-length queue-length

缺省情况下,队列长度值是20

(可选)配置各队列每次轮询所发送数据包的字节数

qos cql cql-index queue queue-id serving byte-count

缺省情况下,发送数据包的字节数为1500

进入接口视图或PVC视图

进入接口视图

interface interface-type interface-number

二者选其一

进入PVC视图

interface atm interface-number

pvc vpi/vci

应用定制列表

qos cq cql cql-index

缺省情况下,接口或PVC不使用CQ,而使用FIFO

 

说明

如指定接口为Virtual-Template接口,将显示继承该Virtual-Template接口的所有Virtual-Access接口下的QoS CQ的信息,Virtual-Template本身无QoS信息显示。

若是Tunnel接口、子接口、三层聚合接口、HDLC捆绑接口,或是封装了PPPoE、PPPoA、PPPoEoA协议的VT、Dialer接口,则接口需要使能LR功能以保证队列功能生效。

 

5.5  配置加权公平队列

提示

若是Tunnel接口、子接口、三层聚合接口、HDLC捆绑接口,或是封装了PPPoE、PPPoA、PPPoEoA、PPPoFR、MPoFR(FR接口未使能帧中继流量整形功能)协议的VT、Dialer接口,则接口需要使能LR功能以保证队列功能生效。

 

当接口或PVC没有使用WFQ策略时,使用qos wfq命令可以使接口或PVC使用WFQ策略,同时指定WFQ的参数。如果接口或PVC已经使用了WFQ策略,使用qos wfq命令可以修改WFQ的参数。

表5-6 加权公平队列配置过程(接口和PVC

操作

命令

说明

进入系统视图

system-view

-

进入接口视图或PVC视图

进入接口视图

interface interface-type interface-number

二者选其一

进入PVC视图

interface atm interface-number

pvc vpi/vci

配置加权队列

qos wfq [ dscp | precedence ] [ queue-length max-queue-length | queue-number total-queue-number ] *

缺省情况下,接口或PVC上没有配置WFQ队列

 

表5-7 加权公平队列配置过程(PW

操作

命令

说明

进入系统视图

system-view

-

进入PW视图

进入交叉连接PW视图

xconnect-group group-name

三者选其一

connection connection-name

peer ip-address pw-id pw-id [ in-label label-value out-label label-value ] [ pw-class class-name | tunnel-policy tunnel-policy-name ] *

进入VSI LDP PW视图

vsi vsi-name [ hub-spoke ]

pwsignaling ldp

peer ip-address [ pw-id pw-id ] [ hub | no-split-horizon | pw-class class-name | tunnel-policy tunnel-policy-name ] *

进入VSI 静态 PW视图

vsi vsi-name [ hub-spoke ]

pwsignaling static

peer ip-address [ pw-id pw-id ] [ in-label label-value out-label label-value [ hub | no-split-horizon | pw-class class-name | tunnel-policy tunnel-policy-name ] * ]

配置加权队列

qos wfq [ dscp | precedence ] [ queue-length max-queue-length | queue-number total-queue-number ] *

缺省情况下,PW上没有配置WFQ队列

 

5.6  配置基于类的队列

5.6.1  配置概述

基于类的队列CBQ的配置步骤如下:

(1)     定义类

(2)     定义流行为

(3)     定义策略

(4)     在接口视图下应用QoS策略

为方便用户使用,系统预定义了一些类、流行为以及策略,具体如下。

2. 系统预定的类

系统预定义了一些类,并为这些类定义了通用的规则,用户定义策略时可直接使用这些类,这些类包括:

(1)     缺省类

default-class:匹配的是缺省数据流。

(2)     基于DSCP的预定义类

ef、af1、af2、af3、af4:分别匹配IP DSCP值ef、af1、af2、af3、af4

(3)     基于IP优先级的预定义类

ip-prec0,ip-prec1,…ip-prec7:分别匹配IP优先级0,1,…7

(4)     基于MPLS EXP的预定义类

mpls-exp0,mpls-exp1,…mpls-exp7:分别匹配MPLS EXP值0,1,…7

3. 系统预定义的流行为

系统预定义了一些流行为,并为这些流行为定义了QoS特性:

l     ef:定义了一个特性为入EF队列,占用带宽为接口可用带宽的20%

l     af:定义了一个特性为入AF队列,占用带宽为接口可用带宽的20%

l     be:不定义任何特性

l     be-flow-based:定义了一个特性为入WFQ队列,其中WFQ默认有256条队列

4. 系统预定义的策略

系统预定义了一个策略,为该策略指定了使用的预定义类,并为这些类指定预定义的动作。该策略名为default,具有缺省的CBQ动作。

default策略的具体规则如下:

l     预定义类ef,采用预定义流行为ef

l     预定义类af1~af4,采用预定义流行为af

l     default-class类,采用预定义流行为be

5.6.2  定义类

定义类首先要创建一个类名称,然后在此类视图下配置其匹配规则。

表5-8 定义类

操作

命令

说明

进入系统视图

system-view

-

定义一个类,并进入类视图

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

缺省情况下,没有定义类

定义匹配数据包的规则

if-match [ not ] match-criteria

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

具体规则请参见QoS命令参考中的命令if-match的介绍

 

5.6.3  定义流行为

定义流行为首先需要创建一个流行为名称,然后在此流行为视图下配置其特性。

1. 配置AF队列,并配置最小可保证带宽

l     该行为只能应用在接口的出方向。

l     在同一流行为视图下queue af不能与queue ef命令同时使用。

l     在同一策略下各个类需用同一单位配置queue af,或者用bandwidth,或者用百分比,或者用剩余百分比进行配置。

l     在同一策略下各个类需用同一单位配置queue efqueue af,或者用bandwidth,或者用百分比进行配置。当AF使用剩余百分比配置的时候,EF可以使用绝对值或百分比进行配置。

 

表5-9 配置AF队列,并配置最小可保证带宽

操作

命令

说明

进入系统视图

system-view

-

定义一个流行为,并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置AF队列,并配置最小可保证带宽

queue af bandwidth { bandwidth | pct percentage | remaining-pct remaining-percentage }

缺省情况下,没有配置类采用AF队列

 

2. 配置EF队列,并配置最大带宽

l     在同一流行为视图下queue ef不能与queue afqueue-length命令同时使用。

l     缺省类不能与包含EF队列的行为关联。

l     在同一策略下各个类需用同一单位配置queue af,或者用bandwidth,或者用百分比,或者用剩余百分比进行配置。

l     在同一策略下各个类需用同一单位配置queue efqueue af,或者用bandwidth,或者用百分比进行配置。当AF使用剩余百分比配置的时候,EF可以使用绝对值或百分比进行配置。

 

表5-10 配置EF队列,并配置最大带宽

操作

命令

说明

进入系统视图

system-view

-

定义一个流行为,并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置EF队列,并配置最大带宽

queue ef bandwidth { bandwidth [ cbs burst ] | pct percentage [ cbs-ratio ratio] }

缺省情况下,没有配置类采用EF队列

 

3. 配置采用公平队列

 

表5-11 配置采用公平队列

操作

命令

说明

进入系统视图

system-view

-

定义一个流行为,并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置采用公平队列

queue wfq [ queue-number total-queue-number ]

缺省情况下,没有为缺省类配置采用公平队列

 

4. 配置最大队列长度

最大队列长度命令必须在配置了queue afqueue wfq后使用;执行undo queue afundo queue wfq命令,则queue-length也同时被取消。

 

配置最大队列长度,丢弃方式为尾丢弃。

表5-12 配置最大队列长度

操作

命令

说明

进入系统视图

system-view

-

定义一个流行为,并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置最大队列长度

queue-length queue-length

缺省情况下,丢弃方式为尾部丢弃方式,队列长度为64

如果流量突发较大,可以通过增加队列长度的方法来改善队列调度的准确率

 

5. 配置丢弃方式为随机丢弃方式

提示

l     在同一流行为视图下wred不能与queue-length命令同时使用。

l     必须在配置了queue afqueue wfq后使用。

l     删除WRED时将删除在该随机丢弃下的其他配置。

 

表5-13 配置丢弃方式为随机丢弃方式

操作

命令

说明

进入系统视图

system-view

-

定义一个流行为,并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置丢弃方式为随机丢弃方式

wred [ dscp | ip-precedence ]

缺省情况下,没有配置WRED动作

 

6. 配置WRED计算平均队列长度的指数

提示

必须在配置了queue afqueue wfq,并已用wred使能了WRED丢弃方式后才可以进行配置。

 

表5-14 配置WRED计算平均队列长度的指数

操作

命令

说明

进入系统视图

system-view

-

定义一个流行为并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置WRED计算平均队列长度的指数

wred weighting-constant exponent

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

 

7. 配置WRED各DSCP的下限、上限和丢弃概率分母

提示

l     进行本配置前需已用wred dscp使能了基于DSCP的WRED丢弃方式。

l     取消WRED配置,wred dscp配置同时被取消。

l     取消queue afqueue wfq配置,丢弃参数的配置同时被取消。

 

表5-15 配置WRED各DSCP的下限、上限和丢弃概率分母

操作

命令

说明

进入系统视图

system-view

-

定义一个流行为并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置WRED各DSCP的下限、上限和丢弃概率分母

wred dscp dscp-value low-limit low-limit high-limit high-limit [ discard-probability discard-prob ]

缺省情况下,下限缺省值为10,上限缺省值为30,丢弃概率缺省值为10

 

8. 配置WRED各IP优先级的下限、上限和丢弃概率分母

提示

l     进行本配置前需已用wred ip-precedence使能了基于IP优先级的WRED丢弃方式。

l     取消WRED配置,wred ip-precedence配置同时被取消。

l     取消queue afqueue wfq配置,丢弃参数的配置同时被取消。

 

表5-16 配置WRED各IP优先级的下限、上限和丢弃概率分母

操作

命令

说明

进入系统视图

system-view

-

定义一个流行为并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置WRED各优先级的下限、上限和丢弃概率分母

wred ip-precedence precedence low-limit low-limit high-limit high-limit [ discard-probability discard-prob ]

缺省情况下,下限缺省值为10,上限缺省值为30,丢弃概率缺省值为10

 

5.6.4  定义策略

表5-17 在策略中为类指定流行为

操作

命令

说明

进入系统视图

system-view

-

定义策略,并进入策略视图

qos policy policy-name

缺省情况下,没有定义策略

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

classifier classifier-name behavior behavior-name

缺省情况下,没有为类指定流行为

 

5.6.5  应用策略

qos apply policy命令将一个策略映射到具体的物理接口或ATM PVC。一个策略映射可以在多个物理端口或ATM PVC上得到应用。

表5-18 将接口或ATM PVC与所设置的策略相关联

操作

命令

说明

进入系统视图

system-view

-

进入接口视图或PVC视图

进入接口视图

interface interface-type interface-number

二者选其一

进入接口视图后,下面进行的配置只在当前接口生效;进入PVC视图后,下面进行的配置只在当前PVC生效

进入PVC视图

interface atm nterface-number

pvc vpi/vci

在接口或PVC上应用关联的策略

qos apply policy policy-name { inbound | outbound }

缺省情况下,没有在接口或PVC上应用QoS策略

 

策略在接口或ATM PVC视图下应用的规格如下:

·     普通物理接口,可以应用配置了各种特性(包括remark、car、queue af、queue ef、queue wfq等)的策略。

·     配置了队列(queue ef、queue af、queue wfq)特性的策略,不能作为入方向策略应用在入接口上。

·     若是子接口,则接口需要使能LR功能以保证CBQ队列功能生效。

5.6.6  配置接口最大可用带宽

 

最大可用带宽指CBQ中报文入队列带宽检查时使用的最大接口带宽,并非指物理接口的实际带宽。

表5-19 配置接口最大可用带宽

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

配置接口最大可用带宽

bandwidth bandwidth-value

具体情况请参见接口分册命令参考中的介绍

 

在未配置各种接口的最大可用带宽的条件下,计算CBQ时实际使用的基准带宽如下:

·     对于物理接口,其取值为物理接口实际的速率;

·     对于其他虚接口(如Tunnel接口、三层聚合接口、HDLC捆绑接口),取值为0kbps。

5.6.7  配置最大预留带宽占可用带宽的百分比

为队列分配带宽时,考虑到部分带宽用于控制协议报文、二层帧头等,通常配置的最大预留带宽不大于可用带宽的80%。

建议慎重使用该命令修改最大预留带宽。如果配置的最大预留带宽过大,发送的报文加上链路层的帧头有可能大于接口最大可用带宽,导致接口无法满足需求,建议使用缺省最大预留带宽。

表5-20 配置最大预留带宽占可用带宽的百分比

操作

命令

说明

进入系统视图

system-view

-

进入接口视图或PVC

进入接口视图

interface interface-type interface-number

二者选其一

进入PVC视图

interface atm interface-number

pvc vpi/vci

配置最大预留带宽占可用带宽的百分比

qos reserved-bandwidth pct percent

最大预留带宽占可用带宽的百分比为80

 

5.6.8  基于类的队列典型配置举例

1. 组网需求

在下面的组网图中,从Router C发出的数据流经过Router A和Router B到达Router D,需求如下:

l     Router C发出的数据流根据IP报文的DSCP域分为3类,要求配置QoS策略,对于DSCP域为AF11和AF21的流进行确保转发(AF),最小带宽为5%;

l     对于DSCP域为EF的流进行加速转发(EF),最大带宽为30%。

在进行配置之前,应保证:

l     Router C发出的流能够通过Router A和Router B可达Router D。

l     报文的DSCP域在进入Router A之前已经设置完毕。

2. 组网图

图5-9 基于类的队列配置组网图

 

3. 配置步骤

Router A上的配置如下。

# 定义三个类,分别匹配DSCP域为AF11、AF21和EF的IP报文。

<RouterA> system-view

[RouterA] traffic classifier af11_class

[RouterA-classifier-af11_class] if-match dscp af11

[RouterA-classifier-af11_class] quit

[RouterA] traffic classifier af21_class

[RouterA-classifier-af21_class] if-match dscp af21

[RouterA-classifier-af21_class] quit

[RouterA] traffic classifier ef_class

[RouterA-classifier-ef_class] if-match dscp ef

[RouterA-classifier-ef_class] quit

# 定义流行为,配置AF,并分配最小可用带宽。

[RouterA] traffic behavior af11_behav

[RouterA-behavior-af11_behav] queue af bandwidth pct 5

[RouterA-behavior-af11_behav] quit

[RouterA] traffic behavior af21_behav

[RouterA-behavior-af21_behav] queue af bandwidth pct 5

[RouterA-behavior-af21_behav] quit

# 定义流行为,配置EF,并分配最大可用带宽(对于EF流,将同时保证带宽和时延)。

[RouterA] traffic behavior ef_behav

[RouterA-behavior-ef_behav] queue ef bandwidth pct 30

[RouterA-behavior-ef_behav] quit

# 定义QoS策略,将已配置的流行为指定给不同的类。

[RouterA] qos policy dscp

[RouterA-qospolicy-dscp] classifier af11_class behavior af11_behav

[RouterA-qospolicy-dscp] classifier af21_class behavior af21_behav

[RouterA-qospolicy-dscp] classifier ef_class behavior ef_behav

[RouterA-qospolicy-dscp] quit

# 将已定义的QoS策略应用在Router A的GigabitEthernet2/0/1出方向。

[RouterA] interface gigabitethernet 2/0/1

[RouterA-GigabitEthernet2/0/1] ip address 1.1.1.1 255.255.255.0

[RouterA-GigabitEthernet2/0/1] qos apply policy dscp outbound

配置完成后,当发生拥塞时,可以观察到EF流以较高的优先级转发。

5.7  配置RTP优先队列

表5-21 RTP队列配置过程

操作

命令

说明

进入系统视图

system-view

-

进入接口视图或PVC视图

进入接口视图

interface interface-type interface-number

二者选其一

进入PVC视图

interface atm interface-number

pvc vpi/vci

应用RTP队列

qos rtpq start-port first-rtp-port-number end-port last-rtp-port-number bandwidth bandwidth [ cbs cbs ]

缺省情况下,接口或PVC上没有启动RTP队列特性

 

说明

若是Tunnel接口、子接口、三层聚合接口、HDLC捆绑接口,或是封装了PPPoE、PPPoA、PPPoEoA协议的VT、Dialer接口,则接口需要使能LR功能以保证队列功能生效。

 

5.8  配置报文信息预提取功能

对于Tunnel接口,如果到达对应物理接口的IP数据报文已经进行了处理,比如,Tunnel接口进行了GRE封装,此时QoS处理的是GRE封装后的IP数据报文,QoS无法识别出原始报文的IP数据,无法基于原始报文信息对报文进行分类。

使能报文信息预提取功能后,系统在逻辑接口获取原始报文的IP数据,并在物理接口应用此IP数据,可以基于原始报文信息进行分类,从而进行各种QoS处理。

表5-22 报文信息预提取功能配置过程

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface tunnel number [ mode { advpn { gre | udp } [ ipv6 ] | ds-lite-aftr | evi [ ipv6 ] | gre [ ipv6 ] | ipv4-ipv4 | ipv6 | ipv6-ipv4 [ 6to4 | auto-tunnel | isatap ] | mpls-te | nve | vxlan } ]

接口的支持情况和产品相关,请以设备的实际情况为准

使能报文信息预提取功能

qos pre-classify

缺省情况下,报文信息预提取功能处于关闭状态

 

说明

Tunnel接口的具体内容请参见“三层技术-IP业务配置指导”中的“隧道”。

 

5.9  配置QoS令牌

QoS的发送令牌功能提供了一种底层队列的流量控制机制,它可以根据配置的令牌的数量控制向底层接口队列发送的报文数量。适用场景如下:

·     在使用CBQ队列时,由于底层队列的缓存,接口拥塞时EF队列的时延可能无法满足要求,使用该功能可降低接口拥塞时EF队列的时延。

·     进行FTP传输等工作时,由于上层TCP协议提供了流控功能,QoS的队列可能失效,使用该功能可以改善队列失效的情况。

可以根据实际情况对该功能的参数token-number进行调整,以达到更好的效果。

如果上层协议(如UDP)没有流控功能,建议不要使用QoS令牌功能,以提高数据传输的效率。

表5-23 QoS令牌配置过程

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

目前只有串口支持本配置

配置QoS令牌功能

qos qmtoken token-number

必选

缺省情况下,未启用QoS令牌功能

关闭接口

shutdown

必选

需要用shutdown/undo shutdown命令将接口重新启动,QoS发送令牌功能才能生效

激活接口

undo shutdown

 

5.10  拥塞管理的显示和维护

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

表5-24 拥塞管理的显示和维护

操作

命令

显示接口或PVC上所有队列配置情况和统计信息

display qos queue interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ]

显示PW上所有队列配置情况和统计信息

display qos queue l2vpn-pw [ peer ip-address pw-id pw-id ]

显示接口、PVC或PW上先进先出队列配置信息和运行情况

display qos queue fifo { interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ] | l2vpn-pw [ peer ip-address pw-id pw-id ] }

显示接口、PVC优先级队列配置信息和运行情况

display qos queue pq interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ]

显示优先列表的内容

display qos pql [ pql-index]

显示接口、PVC定制队列配置信息和运行情况

display qos queue cq interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ]

显示定制列表的内容

display qos cql [ cql-index ]

显示接口、PVC或PW上加权公平队列的配置统计信息

display qos queue wfq { interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ] | l2vpn-pw [ peer ip-address pw-id pw-id ] }

显示接口、PVC实时传输协议队列配置信息和运行情况

display qos queue rtpq interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ]

显示设备配置的类信息

display traffic classifier { system-defined | user-defined } [ classifier-name ]

显示设备配置的流行为信息

display traffic behavior { system-defined | user-defined } [ behavior-name ]

显示指定策略中指定类及与类关联的流行为的配置信息

display qos policy { system-defined | user-defined } [ policy-name [ classifier classifier-name ] ]

显示接口或PVC上策略的配置信息和运行情况(集中式设备)

display qos policy interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ] [ inbound | outbound ]

显示接口或PVC上策略的配置信息和运行情况(分布式设备-独立运行模式/集中式IRF设备)

display qos policy interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ] [ slot slot-number ] [ inbound | outbound ]

显示接口或PVC上策略的配置信息和运行情况(分布式设备-IRF模式)

display qos policy interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ] [ chassis chassis-number slot slot-number ] [ inbound | outbound ]

显示接口、PVC或PW上基于类的队列配置信息和运行情况

display qos queue cbq { interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ] | l2vpn-pw [ peer ip-address pw-id pw-id ] }

清除PW下QoS的统计信息

reset qos statistics l2vpn-pw [ peer ip-address pw-id pw-id ]

 

 


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.2  WRED配置说明

6.2.1  WRED的配置方式

WRED有两种配置方式:

·     接口配置方式:在接口配置WRED的各种参数,并使能WRED。

·     WRED表配置方式:在系统视图下配置WRED表,然后在接口上应用WRED表。

目前,MSR系列路由器仅支持以接口配置方式配置WRED。

6.2.2  WRED的参数说明

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

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

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

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

·     计算丢弃概率的分母:在计算丢弃概率的公式中作为分母。取值越大,计算出的丢弃概率越小。

6.3  以接口配置方式配置WRED

6.3.1  配置过程

提示

qos wred enable命令在接口配置时需要先在接口上应用WFQ队列。

 

表6-1 以接口配置方式配置WRED配置过程

操作

命令

说明

进入系统视图

system-view

-

进入接口视图或PVC视图

进入接口视图

interface interface-type interface-number

二者选其一

进入PVC视图

interface atm interface-number

pvc vpi/vci

使能WRED

qos wred [ dscp | ip-precedence ] enable

缺省情况下,队列丢弃方法为尾丢弃

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

qos wred weighting-constant exponent

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

(可选)配置各优先级对应的参数

qos wred { ip-precedence ip-precedence | dscp dscp-value } low-limit low-limit high-limit high-limit discard-probability discard-prob

缺省情况下,下限缺省值为10,上限缺省值为30,丢弃概率缺省值为10

 

6.3.2  配置举例

1. 组网需求

·     在接口GigabitEthernet2/0/1上配置基于IP优先级的WRED。

·     配置IP优先级为3的报文的队列下限为20、上限为40、丢弃概率分母为15。

·     配置计算平均队列长度的指数为6。

2. 配置步骤

# 进入系统视图。

<Sysname> system-view

# 进入接口视图。

[Sysname] interface gigabitethernet 2/0/1

# 使能基于IP优先级的WRED。

[Sysname-GigabitEthernet2/0/1] qos wfq

[Sysname-GigabitEthernet2/0/1] qos wred ip-precedence enable

# 配置优先级为3的报文的队列下限为20,上限为40,丢弃概率分母为15。

[Sysname-GigabitEthernet2/0/1] qos wred ip-precedence 3 low-limit 20 high-limit 40 discard-probability 15

# 配置计算平均队列长度的指数为6。

[Sysname-GigabitEthernet2/0/1] qos wred weighting-constant 6

6.4  WRED显示和维护

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

表6-2 WRED显示和维护

操作

命令

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

display qos wred interface [ interface-type interface-number [ pvc { pvc-name | vpi/vci } ] ]

 

 


7 流量过滤

7.1  流量过滤简介

流量过滤是指对符合流分类的流进行过滤的动作。

例如,可以根据网络的实际情况禁止从某个源IP地址发送的报文通过。

7.2  配置流量过滤

表7-1 配置流量过滤

操作

命令

说明

进入系统视图

system-view

-

定义一个类,并进入类视图

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

缺省情况下,没有定义类

定义匹配数据包的规则

if-match [ not ] match-criteria

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

具体规则请参见QoS命令参考中的命令if-match的介绍

退回系统视图

quit

-

定义一个流行为,并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置流量过滤动作

filter { deny | permit }

缺省情况下,没有配置流量统计动作

退回系统视图

quit

-

定义一个策略,并进入策略视图

qos policy policy-name

缺省情况下,没有定义策略

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

classifier classifier-name behavior behavior-name

缺省情况下,没有为类指定流行为

退回系统视图

quit

-

应用QoS策略

基于接口或PVC

2.2.4  1. 基于接口或PVC应用QoS策略

二者选其一

缺省情况下,没有应用QoS策略

基于控制平面

2.2.4  3. 基于控制平面应用QoS策略

(可选)显示流量过滤的相关配置信息

display qos policy user-defined [ policy-name ]

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

 

7.3  流量过滤配置举例

7.3.1  流量过滤配置举例

1. 组网需求

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

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

2. 组网图

图7-1 流量过滤配置组网图

 

3. 配置步骤

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

<Device> system-view

[Device] acl advanced 3000

[Device-acl-ipv4-adv-3000] rule 0 permit tcp source-port neq 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应用到端口GigabitEthernet2/0/1的入方向上。

[Device] interface gigabitethernet 2/0/1

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

 


8 重标记

8.1  重标记简介

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

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

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

8.2  配置重标记

表8-1 配置重标记

操作

命令

说明

进入系统视图

system-view

-

定义一个类,并进入类视图

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

缺省情况下,没有定义类

定义匹配数据包的规则

if-match [ not ] match-criteria

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

具体规则请参见QoS命令参考中的命令if-match的介绍

退回系统视图

quit

-

定义一个流行为,并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

重新标记报文的动作

重新标记报文的802.1p优先级

remark dot1p dot1p-value

五者选其一

缺省情况下,没有配置重新标记报文的动作

重新标记报文的DSCP

remark dscp dscp-value

重新标记报文的IP优先级

remark ip-precedence ip-precedence-value

重新标记报文的本地优先级

remark local-precedence local-precedence-value

重新标记报文的QoS本地ID值

remark qos-local-id local-id-value

退回系统视图

quit

-

定义一个策略,并进入策略视图

qos policy policy-name

缺省情况下,没有定义策略

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

classifier classifier-name behavior behavior-name

缺省情况下,没有为类指定流行为

退回系统视图

quit

-

应用QoS策略

基于接口或PVC

2.2.4  1. 基于接口或PVC应用QoS策略

二者选其一

缺省情况下,没有应用QoS策略

基于控制平面

2.2.4  3. 基于控制平面应用QoS策略

(可选)显示重标记的相关配置信息

display qos policy user-defined [ policy-name ]

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

 

8.3  重标记配置举例

8.3.1  重标记配置举例

1. 组网需求

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

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

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

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

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

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

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

2. 组网图

图8-1 重标记配置组网图

 

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,动作为重标记报文的本地优先级为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应用到端口GigabitEthernet2/0/1上。

[Device] interface gigabitethernet 2/0/1

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

[Device-GigabitEthernet2/0/1] quit

 


9 流量重定向

说明

本特性仅在安装了二层以太网交换卡的款型以及MSR3600-28/MSR3600-51的固定二层接口上支持。

 

9.1  流量重定向简介

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

目前,仅支持将流量重定向到接口,即对于收到需要由某个接口处理的报文时,可以通过配置重定向到此接口。

9.2  配置流量重定向

表9-1 配置流量重定向

操作

命令

说明

进入系统视图

system-view

-

定义一个类,并进入类视图

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

缺省情况下,没有定义类

定义匹配数据包的规则

if-match [ not ] match-criteria

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

具体规则请参见QoS命令参考中的命令if-match的介绍

退回系统视图

quit

-

定义一个流行为,并进入流行为视图

traffic behavior behavior-name

缺省情况下,没有定义流行为

配置流量重定向动作

redirect interface interface-type interface-number

缺省情况下,没有配置流量重定向动作

退回系统视图

quit

-

定义一个策略,并进入策略视图

qos policy policy-name

缺省情况下,没有定义策略

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

classifier classifier-name behavior behavior-name

缺省情况下,没有为类指定流行为

退回系统视图

quit

-

应用QoS策略

基于接口或PVC

2.2.4  1. 基于接口或PVC应用QoS策略

二者选其一

缺省情况下,没有应用QoS策略

基于控制平面

2.2.4  3. 基于控制平面应用QoS策略

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

display qos policy user-defined [ policy-name ]

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

 

9.3  流量重定向配置举例

9.3.1  重定向至接口配置举例

1. 组网需求

有两个源网段地址分别为2.2.2.0/24、3.3.3.0/24的报文都从GigabitEthernet2/1/0接口进入设备,要求做重定向功能,使得这两个网段的报文分别转发至GigabitEthernet2/1/1接口和GigabitEthernet2/1/2接口。

1. 组网图

图9-1 配置重定向至指定接口

 

2.  配置步骤

# 定义基本ACL 2000,对源网段地址为2.2.2.0/24报文进行分类。

<Device> system-view

[Device] acl basic 2000

[Device-acl-ipv4-basic-2000] rule permit source 2.2.2.0 0.0.0.255

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

# 定义基本ACL 2001,对源网段地址为3.3.3.0/24报文进行分类。

[Device] acl basic 2001

[Device-acl-ipv4-basic-2001] rule permit source 3.3.3.0 0.0.0.255

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

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

[Device] traffic classifier classifier_1

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

[Device-classifier-classifier_1] quit

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

[Device] traffic classifier classifier_2

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

[Device-classifier-classifier_2] quit

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

[Device] traffic behavior behavior_1

[Device-behavior-behavior_1] redirect interface GigabitEthernet 2/1/1

[Device-behavior-behavior_1] quit

# 定义流行为behavior_2,动作为重定向至GigabitEthernet 2/1/2。

[Device] traffic behavior behavior_2

[Device-behavior-behavior_2] redirect interface GigabitEthernet 2/1/2

[Device-behavior-behavior_2] quit

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

[Device] qos policy policy

[Device-qospolicy-policy] classifier classifier_1 behavior behavior_1

[Device-qospolicy-policy] classifier classifier_2 behavior behavior_2

[Device-qospolicy-policy] quit

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

[Device] interface gigabitethernet 2/1/0

[Device-GigabitEthernet 2/1/0] qos apply policy policy inbound


10 QPPB

说明

 

10.1  QPPB简介

10.1.1  QPPB概述

在部署大型复杂网络时,需要执行大量的复杂流分类,而且无法按照团体属性、ACL、Prefix或AS-Path对报文进行分类。如果网络结构不稳定,需经常变化网络结构时,配置修改的工作量非常大甚至难以实施,可以通过部署QPPB减少配置修改的工作量。

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

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

QPPB技术适用于基于目的地址或源地址进行流分类的应用场合,适用于IBGP和EBGP,可以在同一个自治系统内部或者不同的自治系统之间实现。

10.1.2  QPPB原理

QPPB技术主要通过BGP传播的路由属性设置QoS参数,应用QoS策略,从而实现QoS保障,分为对路由发送者的设置和对路由接收者的设置。

BGP路由发送者在向邻居发送路由时,先匹配路由策略,为发送的不同路由信息设置不同的BGP路由属性。

BGP邻居在接收到路由后,匹配路由策略,QPPB可以根据报文的源IP地址或目的IP地址为接收到的BGP路由设置IP优先级和QoS本地ID。配置QoS策略,根据IP优先级和QoS本地ID对报文进行分类,应用不同的QoS策略,从而实现QoS保证。

10.2  QPPB配置任务简介

QPPB的配置可以分为对路由发送者和对路由接收者的配置。

表10-1 QPPB配置任务简介

配置任务

说明

详细配置

配置发送端

配置发送端的BGP路由

必选

10.2.2  (1)

配置发送端的路由策略

可选

10.2.2  (2)

配置接收端

配置接收端的BGP路由

必选

10.2.3  (1)

配置接收端的路由策略

必选

10.2.3  (2)

使能QPPB

必选

10.2.3  (3)

配置QoS策略

必选

10.2.3  (4)

基于接口应用QoS策略

必选

10.2.3  (5)

 

10.2.2  配置发送端

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

(1)     配置BGP基本功能

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

(2)     创建路由策略,根据路由策略对不同的路由信息进行分类,并设置不同路由属性

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

10.2.3  配置接收端

路由接收端作为BGP路由的接收方,匹配发送方设置的路由属性,设置QPPB相关属性。

(1)     配置BGP基本功能

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

(2)     配置路由策略,匹配发送方设置的路由属性,设置IP优先级或QoS本地ID

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

(3)     在接口上配置QPPB功能

(4)     配置QoS策略

QoS策略的流分类包含路由策略设置的IP优先级和QoS本地ID。

(5)     基于接口应用QoS策略

2. 配置QPPB功能

表10-2 配置QPPB功能

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

配置QPPB功能

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

缺省情况下,没有配置QPPB功能

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

 

3. 基于接口应用QOS策略

表10-3 基于接口应用QOS策略

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

应用QoS策略到指定的接口

qos apply policy policy-name { inbound | outbound }

缺省情况下,没有在接口上应用QoS策略

 

10.3  QPPB典型配置举例

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

1. 组网需求

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

2. 组网图

表10-4 QPPB路由IPv4应用配置举例组网图

 

 

3. 配置步骤

(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 gigabitethernet 2/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 gigabitethernet 2/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 gigabitethernet 2/0/2

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

[DeviceB-GigabitEthernet2/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 512 green pass red discard

[DeviceB-behavior-qppb] quit

[DeviceB] qos policy qppb

[DeviceB-qospolicy-qppb] classifier qppb behavior qppb

[DeviceB-qospolicy-qppb] quit

# 接口应用QoS策略。

[DeviceB] interface gigabitethernet 2/0/2

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

[DeviceB-GigabitEthernet2/0/2] quit

4. 验证配置

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

[DeviceB] display ip routing-table 1.1.1.0 24 verbose

 

Summary Count : 1

 

Destination: 1.1.1.0/24

   Protocol: BGP             Process ID: 0

  SubProtID: 0x2                    Age: 00h00m33s

       Cost: 0               Preference: 255

      IpPre: 1               QosLocalID: 3

        Tag: 0                    State: Active Adv

  OrigTblID: 0x0                OrigVrf: default-vrf

    TableID: 0x2                 OrigAs: 1000

      NibID: 0x15000000          LastAs: 1000

     AttrID: 0x0               Neighbor: 168.1.1.1

      Flags: 0x10060        OrigNextHop: 168.1.1.1

      Label: NULL           RealNextHop: 168.1.1.1

    BkLabel: NULL             BkNextHop: N/A

  Tunnel ID: Invalid          Interface: GigabitEthernet2/0/2

BkTunnel ID: Invalid        BkInterface: N/A

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

[DeviceB] display qos policy interface gigabitethernet 2/0/2

 

Interface: GigabitEthernet2/0/2

 

  Direction: Inbound

 

  Policy: qppb

   Classifier: default-class

     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

     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 512 (kbps), CBS 32000 (Bytes), EBS 512 (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)

10.3.2  QPPB在MPLS L3VPN中的配置举例

1. 组网需求

表10-5所示,所有路由器均运行BGP路由协议。Device C接收路由,进行QoS本地ID的设置,并结合QoS策略进行双向2Mbps的限速。

2. 组网图

表10-5 QPPB在MPLS L3VPN中的配置举例组网图

设备

接口

IP地址

设备

接口

IP地址

Device A

GE2/0/1

192.168.1.2/24

Device B

GE2/0/1

167.1.1.2/24

GE2/0/2

167.1.1.1/24

GE2/0/2

168.1.1.2/24

Device C

GE2/0/1

169.1.1.2/24

Device D

GE2/0/2

169.1.1.1/24

GE2/0/2

168.1.1.1/24

GE2/0/1

192.168.3.2/24

 

3. 配置步骤

(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 gigabitethernet 2/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

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

[DeviceB] interface gigabitethernet 2/0/1

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

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

[DeviceB-GigabitEthernet2/0/1] quit

# 接口GigabitEthernet2/0/2使能MPLS。

[DeviceB] interface gigabitethernet 2/0/2

[DeviceB-GigabitEthernet2/0/2] mpls enable

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

[DeviceB-GigabitEthernet2/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 1023

[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 1023

[DeviceC-classifier-qppb] quit

[DeviceC] traffic behavior qppb

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

[DeviceC-behavior-qppb] quit

[DeviceC] qos policy qppb

[DeviceC-qospolicy-qppb] classifier qppb behavior qppb

[DeviceC-qospolicy-qppb] quit

# 接口GigabitEthernet2/0/2使能MPLS。

[DeviceC] interface gigabitethernet 2/0/2

[DeviceC-GigabitEthernet2/0/2] mpls enable

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

# 接口使能QPPB能力。

[DeviceC-GigabitEthernet2/0/2] bgp-policy destination ip-qos-map

[DeviceC-GigabitEthernet2/0/2] quit

[DeviceC] interface gigabitethernet 2/0/1

[DeviceC-GigabitEthernet2/0/1] bgp-policy destination ip-qos-map

[DeviceC-GigabitEthernet2/0/1] quit

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

[DeviceC] interface gigabitethernet 2/0/1

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

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

# 接口GigabitEthernet2/0/1应用QoS策略。

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

[DeviceC-GigabitEthernet2/0/1] qos apply policy qppb outbound

(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 gigabitethernet 2/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 : 18        Routes : 18

 

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       GE2/0/2

167.1.1.0/32        Direct 0    0            167.1.1.1       GE2/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       GE2/0/2

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

192.168.1.0/24      Direct 0    0            192.168.1.2     GE2/0/1

192.168.1.0/32      Direct 0    0            192.168.1.2     GE2/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     GE2/0/1

192.168.3.0/24      BGP    255  0            167.1.1.2       Eth1/2

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

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

[DeviceB] display ip routing-table

 

Destinations : 14        Routes : 14

 

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       GE2/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       GE2/0/2

168.1.1.0/32        Direct 0    0            168.1.1.2       GE2/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       GE2/0/2

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

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

 

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.2       GE2/0/1

167.1.1.0/32        Direct 0    0            167.1.1.2       GE2/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       GE2/0/1

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

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

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

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

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

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

[DeviceC] display ip routing-table

 

Destinations : 14        Routes : 14

 

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       GE2/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       GE2/0/2

168.1.1.0/32        Direct 0    0            168.1.1.1       GE2/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       GE2/0/2

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

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

 

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            1.1.1.1         GE2/0/2

169.1.1.0/24        Direct 0    0            169.1.1.2       GE2/0/1

169.1.1.0/32        Direct 0    0            169.1.1.2       GE2/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       GE2/0/1

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

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

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

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

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

[DeviceD] display ip routing-table

 

Destinations : 18        Routes : 18

 

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       GE2/0/2

169.1.1.0/24        Direct 0    0            169.1.1.1       GE2/0/2

169.1.1.0/32        Direct 0    0            169.1.1.1       GE2/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       GE2/0/2

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

192.168.3.0/24      Direct 0    0            192.168.3.2     GE2/0/1

192.168.3.0/32      Direct 0    0            192.168.3.2     GE2/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     GE2/0/1

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

# 查看Device C的接口GigabitEthernet2/0/1上QoS策略的配置信息和运行情况。

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

 

Interface: GigabitEthernet2/0/1

 

  Direction: Inbound

 

  Policy: qppb

   Classifier: default-class

     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

     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 1023

     Behavior: qppb

      Committed Access Rate:

        CIR 2000 (kbps), CBS 125000 (Bytes), EBS 512 (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)

 

  Direction: Outbound

 

  Policy: qppb

   Classifier: default-class

     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

     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 1023

     Behavior: qppb

      Committed Access Rate:

        CIR 2000 (kbps), CBS 125000 (Bytes), EBS 512 (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) 

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

1. 组网需求

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

2. 组网图

表10-6 QPPB在IPv6网络中的配置举例组网图

 

3. 配置步骤

(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 gigabitethernet 2/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 gigabitethernet 2/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] quit

# 接口使能QPPB能力

[DeviceB] interface gigabitethernet 2/0/1

[DeviceB-GigabitEthernet2/0/1] bgp-policy destination ip-prec-map

# 配置QoS策略。

[DeviceB] traffic classifier qppb

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

[DeviceB-classifier-qppb] quit

[DeviceB] traffic behavior qppb

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

[DeviceB-behavior-qppb] quit

[DeviceB] qos policy qppb

[DeviceB-qospolicy-qppb] classifier qppb behavior qppb

[DeviceB-qospolicy-qppb] quit

# 接口应用QoS策略。

[DeviceB] interface gigabitethernet 2/0/1

[DeviceB-GigabitEthernet2/0/1] qos apply policy qppb inbound

[DeviceB-GigabitEthernet2/0/1] quit

4. 验证配置

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

[DeviceA] display ipv6 routing-table

 

Destinations : 7        Routes : 7

 

Destination: ::1/128                                     Protocol  : Direct

NextHop    : ::1                                         Preference: 0

Interface  : InLoop0                                     Cost      : 0

 

Destination: 1::/64                                      Protocol  : Direct

NextHop    : ::                                          Preference: 0

Interface  : Eth1/1                                      Cost      : 0

 

Destination: 1::1/128                                    Protocol  : Direct

NextHop    : ::1                                         Preference: 0

Interface  : InLoop0                                     Cost      : 0

 

Destination: 168::/64                                    Protocol  : Direct

NextHop    : ::                                          Preference: 0

Interface  : Eth1/2                                      Cost      : 0

 

Destination: 168::1/128                                  Protocol  : Direct

NextHop    : ::1                                         Preference: 0

Interface  : InLoop0                                     Cost      : 0

 

Destination: FE80::/10                                   Protocol  : Direct

NextHop    : ::                                          Preference: 0

Interface  : NULL0                                       Cost      : 0

 

Destination: FF00::/8                                    Protocol  : Direct

NextHop    : ::                                          Preference: 0

Interface  : NULL0                                       Cost      : 0

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

[DeviceB] display ipv6 routing-table

 

Destinations : 9 Routes : 9

 

Destination: ::1/128                                     Protocol  : Direct

NextHop    : ::1                                         Preference: 0

Interface  : InLoop0                                     Cost      : 0

 

Destination: 1::/64                                      Protocol  : BGP4+

NextHop    : 168::1                                      Preference: 255

Interface  : Eth1/2                                      Cost      : 0

 

Destination: 2::/64                                      Protocol  : Direct

NextHop    : ::                                          Preference: 0

Interface  : Eth1/1                                      Cost      : 0

 

Destination: 2::1/128                                    Protocol  : Direct

NextHop    : ::1                                         Preference: 0

Interface  : InLoop0                                     Cost      : 0

 

Destination: 2::2/128                                    Protocol  : Direct

NextHop    : ::1                                         Preference: 0

Interface  : InLoop0                                     Cost      : 0

 

Destination: 168::/64                                    Protocol  : Direct

NextHop    : ::                                          Preference: 0

Interface  : Eth1/2                                      Cost      : 0

 

Destination: 168::2/128                                  Protocol  : Direct

NextHop    : ::1                                         Preference: 0

Interface  : InLoop0                                     Cost      : 0

 

Destination: FE80::/10                                   Protocol  : Direct

NextHop    : ::                                          Preference: 0

Interface  : NULL0                                       Cost      : 0

 

Destination: FF00::/8                                    Protocol  : Direct

NextHop    : ::                                          Preference: 0

Interface  : NULL0                                       Cost      : 0

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

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

 

Interface: GigabitEthernet2/0/1

 

  Direction: Inbound

 

  Policy: qppb

   Classifier: default-class

     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

     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

     Behavior: qppb

      Committed Access Rate:

        CIR 512 (kbps), CBS 32000 (Bytes), EBS 512 (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)

 

 


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 dot1p-lp缺省映射关系

映射输入索引

dot1p-lp映射

dot1p

lp

0

2

1

0

2

1

3

3

4

4

5

5

6

6

7

7

 

表11-3 dscp-lp缺省映射关系

映射输入索引

dscp-lp映射

dscp

lp

0~7

0

8~15

1

16~23

2

24~31

3

32~39

4

40~47

5

48~55

6

56~63

7

 

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

端口优先级

LP

0

0

1

1

2

2

3

3

4

4

5

5

6

6

7

7

 

表11-5 up-dot1p、up-dscp、up-exp、up-dp、up-lp、up-rpr、up-fc缺省映射关系

映射输入索引

up-dot1p映射

up-dscp映射

up-exp映射

up-dp映射

up-lp映射

up-rpr映射

up-fc(4)映射

up-fc(8)映射

up

dot1p

dscp

exp

dp

lp

rpr

fc(4)

fc(8)

0

0

0

0

0

0

0

0

0

1

1

8

1

0

1

0

0

1

2

2

16

2

0

2

1

1

2

3

3

24

3

0

3

1

1

3

4

4

32

4

0

4

2

2

4

5

5

40

5

0

5

2

2

5

6

6

48

6

0

6

2

3

6

7

7

56

7

0

7

2

3

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

 

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

 

11.3.2  802.1p优先级

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

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

 

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

图11-3 802.1Q标签头

 

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

 

11.3.3  EXP优先级

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

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

 

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

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