20-QOS操作
本章节下载 (576.56 KB)
目 录
QoS(Quality of Service,服务质量)是各种存在服务供需关系的场合中普遍存在的概念,它评估服务方满足客户服务需求的能力。评估通常不是精确的评分,而是注重分析在什么条件下服务是好的,在什么情况下还存在着不足,以便有针对性地作出改进。
在因特网中,QoS所评估的就是网络投递分组的服务能力。由于网络提供的服务是多样的,因此对QoS的评估可以基于不同方面。通常所说的QoS,是对分组投递过程中为延迟、延迟抖动、丢包率等核心需求提供支持的服务能力的评估。
传统的IP网络无区别地对待所有的报文,设备处理报文采用的策略是FIFO(First In First Out,先入先出),它依照报文到达时间的先后顺序分配转发所需要的资源。所有报文共享网络和设备的资源,至于得到资源的多少完全取决于报文到达的时机。
这种服务策略称作Best-Effort,它尽最大的努力将报文送到目的地,但对分组投递的延迟、延迟抖动、丢包率和可靠性等需求不提供任何承诺和保证。
传统的Best-Effort服务策略只适用于对带宽、延迟性能不敏感的WWW、FTP、E-mail等业务。
随着计算机网络的高速发展,越来越多的网络接入因特网。Internet无论从规模、覆盖范围和用户数量上都拓展得非常快。越来越多的用户使用Internet作为数据传输的平台,开展各种应用。
除了传统的WWW、FTP、E-Mail应用外,用户还尝试在Internet上拓展新业务,比如远程教学、远程医疗、可视电话、电视会议、视频点播等。企业用户也希望通过VPN技术,将分布在各地的分支机构连接起来,开展一些事务性应用:比如访问公司的数据库或通过Telnet管理远程设备。
这些新业务有一个共同特点,即对带宽、延迟、延迟抖动等传输性能有着特殊的需求。比如电视会议、视频点播需要高带宽、低延迟和低延迟抖动的保证。事务处理、Telnet等关键任务虽然不一定要求高带宽,但非常注重低延迟,在拥塞发生时要求优先获得处理。
新业务的不断涌现对IP网络的服务能力提出了更高的要求,用户已不再满足于能够简单地将报文送达目的地,而是还希望在投递过程中得到更好的服务,诸如支持为用户提供专用带宽、减少报文的丢失率、管理和避免网络拥塞、调控网络的流量、设置报文的优先级。所有这些,都要求网络应当具备更为完善的服务能力。
传统网络所面临的服务质量问题,主要是由网络拥塞引起的。所谓拥塞,是指由于供给资源的相对不足而造成服务速率下降、引入额外的延迟的一种现象。
在因特网分组交换的复杂环境下,拥塞极为常见。以下图中的两种情况为例:
(1) 分组流从高速链路进入设备,由低速链路转发出去。
(2) 分组流从相同速率的多个接口同时进入网络设备,由一个相同速率的接口转发出去。
如果流量以线速到达,那么就会遭遇资源的瓶颈而导致拥塞。
不仅仅是链路带宽的瓶颈会导致拥塞,任何用以正常转发处理的资源的不足,如可分配的处理器时间、缓冲区、内存资源的不足,都会造成拥塞。此外,在某个时间内对所到达的流量控制不力,使之超出了可分配的网络资源,也是引发网络拥塞的一个因素。
拥塞有可能会引发一系列的负面影响:
l 拥塞增加了报文传输的延迟和延迟抖动。
l 过高的延迟会引起报文重传。
l 拥塞使网络的有效吞吐率降低,造成网络资源的利用率降低。
l 拥塞加剧会耗费大量的网络资源(特别是存储资源),不合理的资源分配甚至可能导致系统陷入资源死锁而崩溃。
可见,拥塞使流量不能及时获得资源,是造成服务性能下降的源头。然而在分组交换以及多用户业务并存的复杂环境下,拥塞又是常见的,因此必须慎重加以对待。
增加网络带宽是解决资源不足的一个直接途径,然而它并不能解决所有导致网络拥塞的问题。
解决网络拥塞问题的一个更有效的办法是增加网络层在流量控制和资源分配上的功能,为有不同服务需求的业务提供有区别的服务,正确地分配和使用资源。在进行资源分配和流量控制的过程中,尽可能地控制好那些可能引发网络拥塞的直接或间接因素,减少拥塞发生的概率;在拥塞发生时,依据业务的性质及其需求特性权衡资源的分配,将拥塞对QoS的影响减到最小。
流分类、流量监管、流量整形、拥塞管理和拥塞避免是构造有区别地实施服务的基石,它们主要完成如下功能:
l 流分类:依据一定的匹配规则识别出对象。流分类是有区别地实施服务的前提。
l 流量监管:对进入设备的特定流量的规格进行监管。当流量超出规格时,可以采取限制或惩罚措施,以保护运营商的商业利益和网络资源不受损害。
l 流量整形:一种主动调整流的输出速率的流控措施,通常是为了使流量适配下游设备可供给的网络资源,避免不必要的报文丢弃和拥塞。
l 拥塞管理:拥塞管理是必须采取的解决资源竞争的措施。通常是将报文放入队列中缓存,并采取某种调度算法安排报文的转发次序。
l 拥塞避免:过度的拥塞会对网络资源造成损害。拥塞避免监督网络资源的使用情况,当发现拥塞有加剧的趋势时采取主动丢弃报文的策略,通过调整流量来解除网络的过载。
在这些流量管理技术中,流分类是基础,它依据一定的匹配规则识别出报文,是有区别地实施服务的前提;而流量监管、流量整形、拥塞管理和拥塞避免从不同方面对网络流量及其分配的资源实施控制,是有区别地提供服务思想的具体体现。
S5500-SI系列以太网交换机支持以下功能:
l 流分类
l 访问控制
l 流量监管
l 拥塞管理
流分类采用一定的规则识别符合某类特征的报文,它是有区别地进行服务的前提和基础。
流分类规则可以使用IP报文头的ToS(Type of Service,服务类型)字段的优先级位,识别出有不同优先级特征的流量;也可以由网络管理者设置流分类的策略,例如综合源地址、目的地址、MAC地址、IP协议或应用程序的端口号等信息对流进行分类。一般的分类依据都局限在封装报文的头部信息,使用报文的内容作为分类的标准是比较少见的。分类的结果是没有范围限制的,它可以是一个由五元组(源地址、源端口号、协议号、目的地址、目的端口号)确定的狭小范围,也可以是到某网段的所有报文。
一般在网络边界对报文分类时,同时设置报文IP头的ToS字段中的优先级位。这样,在网络的内部就可以直接使用IP优先级作为分类标准。而队列技术也可以使用这个优先级来对报文进行不同的处理。下游网络可以选择接收上游网络的分类结果,也可以按照自己的标准重新进行分类。
进行流分类是为了有区别地提供服务,它必须与某种流控或资源分配动作关联起来才有意义。具体采取何种流控动作,与所处的阶段以及网络当前的负载状况有关。例如,当报文进入网络时依据承诺速率对它进行监管;流出结点之前进行整形;拥塞时进行队列调度管理;拥塞加剧时要采取拥塞避免措施等。
下面介绍一下几种优先级。
(1) IP优先级、ToS优先级和DSCP优先级
如图1-2所示,IP header的ToS字段有8个bit,其中前3个bit表示的就是IP优先级,取值范围为0~7;第3~6这4个bit表示的是ToS优先级,取值范围为0~15;在RFC2474中,重新定义了IP报文头部的ToS域,称之为DS域,其中DSCP(Differentiated Services Codepoint Priority,差分服务编码点优先级)用该域的前6位(0-5位)表示,取值范围为0~63,后2位(6、7位)是保留位。
(2) 802.1p优先级
802.1p优先级位于二层报文头部,适用于不需要分析三层报头,而需要在二层环境下保证QoS的场合。
如图1-3所示,每一个支持802.1Q协议的主机,在发送数据包时,都在原来的以太网帧头中的源地址后增加了一个4字节的802.1Q标签头。
这4个字节的802.1Q标签头包含了2个字节的标签协议标识(TPID--Tag Protocol Identifier,它的值是8100),和2个字节的标签控制信息(TCI--Tag Control Information),TPID是IEEE定义的新的类型,表明这是一个加了802.1Q标签的报文,图1-4显示了802.1Q标签头的详细内容。
在上图中,TCI字节中Priority字段就是802.1p优先级,它由3个bit组成,取值范围为0~7。这3位指明帧的优先级,一共有8种优先级,主要用于当交换机阻塞时,优先发送哪个数据包。之所以称此优先级为802.1p优先级,是因为有关这些优先级的应用是在802.1p规范中被详细定义。
如果不限制用户发送的流量,那么大量用户不断突发的数据只会使网络更拥挤。为了使有限的网络资源能够更好地发挥效用,更好地为更多的用户服务,必须对用户的流量加以限制。比如限制每个时间间隔某个流只能得到承诺分配给它的那部分资源,防止由于过分突发所引发的网络拥塞。
流量监管就是一种通过对流量规格的监督,来限制流量及其资源使用的流控策略。进行流量监管有一个前提条件,就是要知道流量是否超出了规格,然后才能根据评估结果实施调控策略。一般采用令牌桶(Token Bucket)对流量的规格进行评估。
令牌桶可以看作是一个存放令牌的容器,它有一定的容量。系统按设定的速度向桶中放置令牌,当桶中令牌满时,多出的令牌溢出,桶中令牌不再增加。
在用令牌桶评估流量规格时,是以令牌桶中的令牌数量是否足够满足报文的转发为依据的。如果桶中存在足够的令牌,满足转发报文的需要,称流量遵守或符合(conforming)这个规格,否则称为不符合或超标(excess)。
评估流量时令牌桶的参数设置包括:
l 平均速率:向桶中放置令牌的速率,即允许的流的平均速度。通常设置为CIR(Committed Information Rate,承诺信息速率)。
l 突发尺寸:令牌桶的容量,即每次突发所允许的最大的流量尺寸。通常设置为CBS(Committed Burst Size,承诺突发尺寸),设置的突发尺寸必须大于最大报文长度。
每到达一个报文就进行一次评估。每次评估,如果桶中有足够的令牌可供使用,则说明流量控制在允许的范围内,此时要从桶中取走与报文转发权限相当的令牌数量;否则说明已经耗费太多令牌,流量超标了。
流量监管的典型应用是监督进入网络的某一流量的规格,把它限制在一个合理的范围之内,或对超出的部分流量进行“惩罚”,以保护网络资源和运营商的利益。例如可以限制HTTP报文不能占用超过50%的网络带宽。如果发现某个连接的流量超标,流量监管可以选择丢弃报文,或重新设置报文的优先级。
流量监管广泛的用于监管进入因特网服务提供商ISP的网络流量。流量监管还包括对所监管流量的流分类服务,并依据不同的评估结果,实施预先设定好的监管动作。这些动作可以是:
l 转发:比如对评估结果为“不符合”的报文继续正常转发。
l 丢弃:比如对评估结果为“不符合”的报文进行丢弃。
l 改变DSCP优先级并转发:比如对评估结果为“不符合”的报文,将之标记为其它的DSCP优先级后再进行转发。
利用LR(Line Rate,物理接口限速)可以在一个端口上限制发送报文(包括紧急报文)的总速率。
LR也是采用令牌桶进行流量控制。如果在设备的某个端口上配置了针对发送报文的限速,所有经由该端口发送的报文首先要经过LR的令牌桶进行处理。如果令牌桶中有足够的令牌,则报文可以发送;否则,报文将进入QoS队列进行拥塞管理。这样,就可以对通过该端口的报文流量进行控制。
由于采用了令牌桶控制流量,当令牌桶中存有令牌时,可以允许报文的突发性传输;当令牌桶中没有令牌时,报文必须等到桶中生成了新的令牌后才可以继续发送。这就限制了报文的流量不能大于令牌生成的速度,达到了限制流量,同时允许突发流量通过的目的。
与流量监管相比,端口限速能够限制在端口上通过的所有报文。当用户只要求对所有报文限速时,使用端口限速比较简单。
表2-1 端口限速配置
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
配置端口限速 |
qos lr outbound cir committed-information-rate [ cbs committed-burst-size ] |
必选 |
|
显示端口限制配置和统计信息 |
display qos lr interface [ interface-type interface-number ] |
display命令可以在任意视图下执行 |
将端口GigabitEthernet 1/0/1发送报文的速率限制为640kbps。
# 进入系统视图
<Sysname> system-view
# 进入端口视图
[Sysname] interface GigabitEthernet 1/0/1
# 配置限速参数,将端口发送报文的速率限制为640kbps
[Sysname- GigabitEthernet1/0/1] qos lr outbound cir 640
QoS策略包含了三个要素:类、流行为、策略。用户可以通过QoS策略将指定的类和流行为绑定起来,方便的进行QoS配置。
类是用来识别流的。
类的要素包括:类的名称和类的规则。
用户可以通过命令定义一系列的规则,来对报文进行分类。同时用户可以通过命令指定规则之间的关系:and和or。
l and:报文只有匹配了所有的规则,设备才认为报文属于这个类。
l or:报文只要匹配了类中的一个规则,设备就认为报文属于这个类。
流行为用来定义针对报文所做的QoS动作。
流行为的要素包括:流行为的名称和流行为中定义的动作。
用户可以通过命令在一个流行为中定义多个动作。
策略用来将指定的类和指定的流行为绑定起来。
策略的要素包括:策略名称、绑定在一起的类和流行为的名称。
QoS策略的配置步骤如下:
(1) 定义类,并在类视图中定义一组流分类规则;
(2) 定义流行为,并在流行为视图中定义一组QoS动作;
(3) 定义策略,在策略视图下为使用的类指定对应的流行为;
(4) 在以太网端口视图或端口组视图下应用QoS策略。
表3-1 QoS策略介绍
策略名称 |
绑定的类 |
定义流行为的命令 |
统计 |
用户根据需要使用if-match match-criteria定义类 |
accounting |
CAR(流量监管) |
用户根据需要使用if-match match-criteria定义类 |
car |
流量过滤 |
用户根据需要使用if-match match-criteria定义类 |
filter |
流镜像 |
用户根据需要使用if-match match-criteria定义类 |
mirror-to |
流量重定向 |
用户根据需要使用if-match match-criteria定义类 |
redirect |
优先级重标记 |
用户根据需要使用if-match match-criteria定义类 |
remark |
l 确定了策略中类的名称、类的规则
l 确定了策略中流行为的名称、流行为中包含的动作
l 确定了策略的名称
l 确定了应用策略的端口或端口组
定义类首先要创建一个类名称,然后在此类视图下配置其匹配规则。
表3-2 定义类
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建类并进入类视图 |
traffic classifier tcl-name [ operator { and | or } ] |
必选 缺省情况下,匹配规则之间的关系为and,即逻辑与 |
配置匹配数据包的规则 |
if-match match-criteria |
必选 |
显示类信息 |
display traffic classifier user-defined [ tcl-name ] |
display命令可以在任意视图下执行 |
match-criteria:类的匹配规则,取值范围如下表所示。
表3-3 类的匹配规则取值
取值 |
描述 |
acl access-list-number |
定义匹配ACL的规则,access-list-number取值范围是2000~4999 |
acl ipv6 access-list-number |
定义匹配IPv6 ACL的规则,access-list-number取值范围是2000~3999 IPv6的规则只能通过引用ACL6规则来实现 |
any |
定义匹配所有数据包的规则 |
customer-vlan-id vlan-id-list |
定义匹配用户网络VLAN ID的规则,vlan-id-list为VLAN ID的列表,VLAN ID取值范围为1~4094 |
destination-mac mac-address |
定义匹配目的MAC地址的规则 |
dot1p |
定义匹配802.1p协议的规则,dot1p-list为COS取值的列表,COS取值范围为0~7 |
dscp dscp-list |
定义匹配DSCP的规则,dscp-list为DSCP取值的列表,DSCP取值范围为0~63 |
ip-precedence ip-precedence-list |
定义匹配IP优先级的规则,ip-precedencee-list为ip-precedence的列表,ip-precedence取值范围为0~7 |
service-vlan-id vlan-id-list |
定义匹配运营商网络VLAN ID的规则,vlan-id-list为VLAN ID的列表,VLAN ID取值范围为1~4094 |
source-mac mac-address |
定义匹配源MAC地址的规则 |
& 说明:
在定义匹配规则的时候请遵循如下约束,否则策略将不能成功应用:
l 使用if-match命令定义匹配规则的时候,如果匹配项为customer-vlan-id、dot1p、dscp、ip-precedence和service-vlan-id,则不能在一条匹配规则中同时配置多个值。
l 当指定类的逻辑关系为AND时,只能配置一条ACL匹配规则。
l 当指定类的逻辑关系为AND时,如果配置了ACL IPv6匹配规则,则不能同时配置除if-match any之外的其他所有规则。
(1) 组网需求
配置一个类test,分类规则是满足IP优先级为6的数据包。
(2) 配置步骤
# 进入系统视图。
<Sysname> system-view
# 定义类并进入类映射视图。
[Sysname] traffic classifier test
# 配置分类规则。
[Sysname-classifier-test] if-match ip-precedence 6
定义流行为首先需要创建一个流行为名称,然后在此流行为视图下配置其特性。
表3-4 定义流行为
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建流行为并进入流行为视图 |
traffic behavior behavior-name |
必选 behavior-name:流行为名 |
配置统计动作 |
accounting |
可选 用户根据需要配置相应的流行为 |
配置使用流量监管 |
car cir committed-information-rate [ cbs committed-burst-size ] [ red action ] |
|
配置流量过滤动作 |
filter { deny | permit } |
|
配置流镜像动作 |
mirror-to interface-type interface-number |
|
配置流量重定向动作 |
redirect interface interface-type interface-number |
|
配置标记报文的802.1p优先级 |
remark dot1p dot1p |
|
配置标记报文的DSCP值 |
remark dscp dscp-value |
|
配置标记报文的IP优先级值 |
remark ip-precedence ip-precedence-value |
|
配置标记报文的本地优先级 |
remark local-precedence local-precedence |
|
显示流行为信息 |
display traffic behavior user-defined [ behavior-name ] |
display命令可以在任意视图下执行 |
流行为的car动作中red action为数据包的流量不符合承诺速率时对数据包采取的动作,有以下几种:
l discard:丢弃数据包。
l pass:发送数据包。
l remark-dscp-pass new-dscp:设置报文新的DSCP值,并发送数据包到目的地址。new-dscp用数字表示时,取值范围为0~63;用文字表示时,可以选取af11、af12、af13、af21、af22、af23、af31、af32、af33、af41、af42、af43、cs1、cs2、cs3、cs4、cs5、cs6、cs7、default、ef。
注意:
在定义流行为时请遵循如下约束,否则策略将不能成功应用:
l remark dot1p和remark local-precedence不能同时配置。
l filter deny与除了accounting动作外的其他的所有动作都不能同时配置。
& 说明:
l 当用户配置了流行为中的car或者accounting动作时,流分类中定义的每一条规则都执行流行为中定义的动作,而不是所有规则都执行同一个动作。例如,定义了car限速为64Kbps,对于一个包含10条规则的流分类,执行结果是匹配每条规则的报文限速为64Kbps,而不是匹配这10条规则的报文总限速和为64Kbps。
l 经过流镜像的报文将不能再被端口镜像,即将流镜像的目的端口配置为端口镜像组的源端口时,在端口镜像组的目的端口收不到流镜像的报文。
l 将报文的入端口(对于VLAN策略则是属于该VLAN的端口)同时配置为流镜像的源端口和端口镜像组的源端口时,端口镜像将会被流镜像覆盖。匹配流规则的报文将被镜像到流镜像的目的端口,没有匹配流规则的报文将被镜像到端口镜像组的目的端口。
l 用户配置重定向前配置了多个STP实例,如果重定向的源端口与重定向的目的端口所属vlan分属不同实例则重定向不能成功,此时的现象为报文被丢弃,不会从任何端口转发。
(1) 组网需求
配置一个流行为test,使用流量监管,流的承诺速率是6400kbps。
(2) 配置步骤
# 进入系统视图。
<Sysname> system-view
# 创建流并进入流行为视图。
[Sysname] traffic behavior test
# 配置分类规则。
[Sysname-behavior-test] car cir 6400
策略定义该策略中类和流行为的对应关系,而每个流行为由一组QoS动作组成。
表3-5 在策略中为类指定流行为
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
定义策略并进入策略视图 |
qos policy policy-name |
- |
在策略中为类指定流行为 |
classifier tcl-name behavior behavior-name |
必选 tcl-name:类名,必须是已经定义的类 behavior-name:流行为名,必须是已经定义的流行为 |
显示指定策略中指定类以及与类关联的流行为的配置信息 |
display qos policy user-defined [ policy-name ] [ classifier tcl-name ] |
display命令可以在任意视图下执行 |
qos apply policy命令将一个策略应用到具体的端口。一个策略可以在多个端口或端口组上得到应用。
表3-6 在端口上应用策略
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
应用关联的策略 |
qos apply policy policy-name inbound |
必选 |
|
显示指定端口或所有端口上策略的配置信息和运行情况 |
display qos policy interface [ interface-type interface-number ] [ inbound ] |
display命令可以在任意视图下执行 |
|
显示指定策略或所有策略中指定类或所有类以及与类关联的行为的配置信息 |
display qos policy user-defined [ policy-name ] [ classifier tcl-name ] |
注意:
配置策略基于端口组的应用时,如果用户定义的流行为中不包含car或accounting动作,则多个端口的策略只占用一份硬件资源,即实现资源复用。如果用户定义的流行为中包含car或accounting动作,策略将占有n份硬件资源,其中n是端口组中端口的数量。
(1) 组网需求
配置一个策略test,策略里指定类为test_class的数据的流行为是test_behavior,并把该策略应用到端口GigabitEthernet 1/0/1的入方向上
(2) 配置步骤
# 进入系统视图。
<Sysname> system-view
# 定义策略并进入策略视图。
[Sysname]qos policy test
# 为类指定流行为。
[Sysname-qospolicy-test] classifier test_class behavior test_behavior
[Sysname-qospolicy-test] quit
# 进入以太网端口视图。
[Sysname] interface GigabitEthernet 1/0/1
# 将策略应用到端口上。
[Sysname-GigabitEthernet1/0/1] qos apply policy test inbound
当分组到达的速度大于端口发送分组的速度时,在该端口处就会产生拥塞。如果没有足够的存储空间来保存这些分组,它们其中的一部分就会丢失。分组的丢失又可能会导致发送该分组的设备因超时而重传此分组,这将导致恶性循环。
拥塞管理的中心内容就是当拥塞发生时如何制定一个资源的调度策略,决定报文转发的处理次序。
对于拥塞管理,一般采用排队技术,使用一个队列算法对流量进行分类,之后用某种优先级别算法将这些流量发送出去。每种队列算法都用来解决特定的网络流量问题,并对带宽资源的分配、延迟、延迟抖动等有着十分重要的影响。
这里介绍2种各具特色的队列调度算法:严格优先级SP(Strict-Priority)调度算法和加权轮循WRR(Weighted Round Robin)调度算法。
(1) SP调度算法
SP队列调度算法,是针对关键业务型应用设计的。关键业务有一重要的特点,即在拥塞发生时要求优先获得服务以减小响应的延迟。以端口有4个输出队列为例,优先队列将端口的4个输出队列分成4类,分别为高优先队列、中优先队列、正常优先队列和低优先队列(依次为3、2、1、0队列),它们的优先级依次降低。
在队列调度时,SP队列调度算法严格按照优先级从高到低的次序优先发送较高优先级队列中的分组,当较高优先级队列为空时,再发送较低优先级队列中的分组。这样,将关键业务的分组放入较高优先级的队列,将非关键业务(如E-Mail)的分组放入较低优先级的队列,可以保证关键业务的分组被优先传送,非关键业务的分组在处理关键业务数据的空闲间隙被传送。
SP队列调度算法的缺点是:拥塞发生时,如果较高优先级队列中长时间有分组存在,那么低优先级队列中的报文就会由于得不到服务而“饿死”。
(2) WRR调度算法
交换机的端口支持8个输出队列(即本地优先级队列),WRR队列调度算法在队列之间进行轮流调度,保证每个队列都得到一定的服务时间。以端口有8个优先级队列为例,WRR可为每个队列配置一个加权值(依次为w7、w6、w5、w4、w3、w2、w1、w0),加权值表示获取资源的比重。如一个100M的端口,配置它的WRR队列调度算法的加权值为50、30、10、10、50、30、10、10(依次对应w7、w6、w5、w4、w3、w2、w1、w0),这样可以保证最低优先级队列至少获得5Mbit/s带宽,避免了采用SP调度时低优先级队列中的报文可能长时间得不到服务的缺点。WRR队列还有一个优点是,虽然多个队列的调度是轮循进行的,但对每个队列不是固定地分配服务时间片——如果某个队列为空,那么马上换到下一个队列调度,这样带宽资源可以得到充分的利用。
S5500-SI系列以太网交换机支持下面三种队列调度方式:
l 所有队列全部采用SP队列调度。
l 所有队列全部采用WRR队列调度。
SP队列包含多个队列,分别对应不同的优先级,按优先级递减进行调度。
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
配置SP队列 |
qos sp |
必选 |
|
显示SP队列的配置 |
display qos sp interface [ interface-type interface-number ] |
display命令可以在任意视图下执行 |
配置端口GigabitEthernet1/0/1使用SP队列调度方式。
# 进入系统视图
<Sysname> system-view
# 配置端口GigabitEthernet1/0/1使用SP队列调度方式。
[Sysname] interface GigabitEthernet 1/0/1
[Sysname-GigabitEthernet1/0/1] qos sp
缺省情况下,所有端口使用WRR队列调度方式,端口上未被配置的队列使用缺省的WRR优先级。
表4-2 WRR队列配置过程
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
使能端口的WRR队列 |
qos wrr |
必选 |
|
配置WRR队列 |
qos wrr queue-id group 1 weight schedule-value |
必选 |
|
显示WRR队列的配置 |
display qos wrr interface [ interface-type interface-number ] |
display命令可以在任意视图下执行 |
l 配置GigabitEthernet1/0/1上的队列1、3、4使用WRR队列调度方式,权重分别为1、5、10
l 配置GigabitEthernet1/0/1上的队列5、6使用WRR队列调度方式,权重分别为2、10
# 进入系统视图。
<Sysname> system-view
# 配置GigabitEthernet1/0/1的WRR队列。
[Sysname] interface GigabitEthernet 1/0/1
[Sysname-GigabitEthernet1/0/1] qos wrr 1 group 1 weight 1
[Sysname-GigabitEthernet1/0/1] qos wrr 3 group 1 weight 5
[Sysname-GigabitEthernet1/0/1] qos wrr 4 group 1 weight 10
[Sysname-GigabitEthernet1/0/1] qos wrr 5 group 1 weight 2
[Sysname-GigabitEthernet1/0/1] qos wrr 6 group 1 weight 10
用户可以根据需要配置端口上的部分队列使用SP队列调度,部分队列使用WRR队列调度,通过将端口上的队列分别加入SP调度组和WRR调度组(即group 1),实现SP+WRR的调度功能。在队列调度时,系统会优先保证SP调度组内的队列调度,当SP调度组内的队列中没有报文发送时,才会服务WRR调度组内的队列。SP调度组内各个队列执行严格调度方式,WRR调度组内各个队列执行加权轮循调度方式。
表4-3 SP+WRR队列配置过程
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入端口视图或端口组视图 |
进入端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口生效 |
进入端口组视图 |
port-group { manual port-group-name | aggregation agg-id } |
||
使能端口的WRR队列 |
qos wrr |
必选 |
|
配置SP队列 |
qos wrr queue-id group sp |
必选 |
|
配置WRR队列 |
qos wrr queue-id group 1 weight schedule-value |
必选 |
|
显示WRR队列的配置 |
display qos wrr interface [ interface-type interface-number ] |
display命令可以在任意视图下执行 |
l 配置GigabitEthernet 1/0/1使用SP+WRR队列调度方式
l 配置GigabitEthernet 1/0/1上的0、1队列属于SP调度组
l 配置GigabitEthernet 1/0/1上的2、3、4队列属于WRR调度组,权重分别为2、7、10;其他队列使用缺省值
# 进入系统视图。
<Sysname> system-view
# 配置GigabitEthernet1/0/1使用SP+WRR队列调度方式。
[Sysname] interface GigabitEthernet 1/0/1
[Sysname-GigabitEthernet1/0/1] qos wrr 0 group sp
[Sysname-GigabitEthernet1/0/1] qos wrr 1 group sp
[Sysname-GigabitEthernet1/0/1] qos wrr 2 group 1 weight 2
[Sysname-GigabitEthernet1/0/1] qos wrr 3 group 1 weight 7
[Sysname-GigabitEthernet1/0/1] qos wrr 4 group 1 weight 10
报文在进入交换机以后,交换机会根据自身支持的情况和相应的规则给报文分配包括802.1p优先级、本地优先级等在内的参数。其中,本地优先级是交换机为报文分配的一种具有本地意义的优先级,对应出端口队列序号。
S5500-SI系列以太网交换机始终信任报文的优先级,不支持对端口的优先级信任模式进行配置。对于带tag的报文,交换机将根据报文携带的tag中的802.1p优先级进行dot1p-lp的映射;对于untag的报文,进入交换机后将被打上tag,其802.1p优先级为端口优先级,然后根据此优先级进行dot1p-lp的映射。
系统提供802.1p优先级到本地优先级(dot1p-lp)映射表,取值如表5-1所示。
802.1p优先级(dot1p) |
本地优先级(lp) |
0 |
2 |
1 |
0 |
2 |
1 |
3 |
3 |
4 |
4 |
5 |
5 |
6 |
6 |
7 |
7 |
& 说明:
S5500-SI系列以太网交换机不支持编辑802.1p优先级到本地优先级(dot1p-lp)映射表。
对于untag的报文,进入交换机后将被打上tag,其802.1p优先级为端口优先级。用户可以根据需要设置端口的优先级,将报文分配到不同的出端口队列。端口优先级取值范围为0~7。
& 说明:
端口优先级设置仅对于untag报文有效,对于带tag的报文不生效。
用户确定了相应端口的端口优先级取值。
表5-2 端口优先级配置过程
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入相应的端口视图 |
interface interface-type interface-number |
- |
配置端口优先级 |
qos priority priority-value |
必选 缺省情况下,端口优先级为0 |
l 公司企业网通过以太网交换机实现部门1和部门2之间的互连;
l 要求交换机根据接入端口的优先级,为部门1和部门2进入交换机的报文映射生成不同的本地优先级。
图5-1 配置端口优先级组网图
# 进入系统视图。
<Sysname> system-view
# 配置GigabitEthernet 1/0/1的端口优先级为3,将部门1发出的报文映射生成本地优先级为3。
[Sysname] interface GigabitEthernet 1/0/1
[Sysname-GigabitEthernet1/0/1] qos priority 3
# 配置GigabitEthernet 1/0/2的端口优先级为7,将部门2发出的报文映射生成本地优先级为7。
[Sysname] interface GigabitEthernet 1/0/2
[Sysname-GigabitEthernet1/0/2] qos priority 7
用户可以使用display qos map-table命令,显示优先级映射表的详细信息。
表5-3 优先级映射显示
操作 |
命令 |
显示优先级映射表的详细信息 |
display qos map-table [ dot1p-lp ] |
QoS策略支持如下的应用方式:
l 基于端口应用:QoS策略对端口接收的流量生效
l 基于VLAN应用:QoS策略对该VLAN接收的流量生效
基于VLAN应用的策略简称为VLAN策略。VLAN策略可以方便QoS策略在交换机上的应用管理。
VLAN策略不会应用到动态VLAN上。例如,在运行GVRP协议的情况下,设备可能会动态创建VLAN,相应的VLAN策略在动态VLAN上不生效。
l VLAN策略已经配置完毕,定义策略的描述请参见“3.4 QoS策略配置”
l 确定了应用VLAN策略的VLAN
表6-1 应用VLAN策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
应用VLAN策略到指定的VLAN |
qos vlan-policy policy-name vlan vlan-id-list inbound |
必选 vlan-id-list:VLAN ID列表,可以是vlan-id to vlan-id的形式,也可以输入多个不连续的VLAN ID;设备最多允许用户同时指定8个VLAN ID |
显示VLAN策略信息 |
display qos vlan-policy { name policy-name | vlan [ vlan-id ] } |
display命令可以在任意视图下执行 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后VLAN策略的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除VLAN策略统计信息。
表6-2 VLAN策略显示和维护
操作 |
命令 |
显示VLAN策略信息 |
display qos vlan-policy { name policy-name | vlan vlan-id } [ slot slot-id ] |
清除VLAN策略的统计信息 |
reset qos vlan-policy [ vlan vlan-id ] |
l VLAN策略test的配置为对匹配ACL 2000的报文进行流量监管,CIR为64;
l 在VLAN 200、300、400、500、600、700、800、900的inbound方向上应用VLAN策略test。
<Sysname> system-view
[Sysname] traffic classifier cl1 operator or
[Sysname-classifier-cl1] if-match acl 2000
[Sysname-classifier-cl1] quit
[Sysname] traffic behavior be1
[Sysname-behavior-be1] car cir 64
[Sysname-behavior-be1] quit
[Sysname] qos policy test
[Sysname-qospolicy-test] classifier cl1 behavior be1
[Sysname-qospolicy-test] quit
[Sysname] qos vlan-policy test vlan 200 300 400 500 600 700 800 900 inbound
流镜像,即将指定的数据包复制到用户指定的目的地,以进行网络检测和故障排除。
流镜像分为三种:流镜像到端口、流镜像到CPU、流镜像到VLAN。
l 流镜像到端口,是把通过配置了流镜像的端口的并且满足一定要求的数据包复制到目的端口。
l 流镜像到CPU,是通过把配置了流镜像的端口的并且满足一定要求的数据包复制一份,然后发送到CPU以供分析诊断,这里的CPU指的是配置了流镜像的端口所在板上的CPU。
l 流镜像到VLAN,是通过把配置了流镜像的端口的并且满足一定要求的数据包复制一份,然后发送到VLAN中广播,如果VLAN中有端口加入,那么加入的端口就可以接收到镜像报文,如果VLAN不存在,也可以预先配置,等VLAN被创建并有端口加入后,流镜像可以自动生效。
& 说明:
S5500-SI系列以太网交换机目前只支持流镜像到端口的操作。
配置流镜像时,需要一个已经存在的流行为,用户在流行为视图进行流镜像的配置。
表7-1 配置流镜像到端口
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入流行为视图 |
traffic behavior behavior-name |
必选 |
为流行为配置流镜像目的端口 |
mirror-to interface interface-type interface-number |
必选 |
完成上述配置后,在任意视图下执行display命令,可以显示配置流镜像后的运行情况,通过查看显示信息,用户可以验证配置的效果。
表7-2 流镜像显示
操作 |
命令 |
显示用户自定义流行为的配置内容 |
display traffic behavior user-defined [ behavior-name ] |
显示用户自定义策略的配置内容 |
display qos policy user-defined [ policy-name ] |
用户网络描述如下:
l PC A通过端口GigabitEthernet 1/0/1接入设备Switch A。
l 数据检测设备Server接在Switch A的GigabitEthernet 1/0/2端口上。
需求为:通过Server对PC A发出的所有报文进行分析监控。
配置Switch A:
# 进入系统视图。
<Sysname> system-view
# 配置ACL 2000,允许所有报文通过。
[Sysname] acl number 2000
[Sysname-acl-basic-2000] rule 1 permit
[Sysname-acl-basic-2000] quit
# 配置流分类规则,使用ACL 2000进行流分类。
[Sysname] traffic classfier 1
[Sysname-classifier-1] if-match acl 2000
[Sysname-classifier-1] quit
# 配置流行为,定义流镜像到GigabitEthernet 1/0/2的动作。
[Sysname] traffic behavior 1
[Sysname-behavior-1] mirror-to interface GigabitEthernet 1/0/2
[Sysname-behavior-1] quit
# 配置QoS策略,流分类1匹配流行为1。
[Sysname] qos policy 1
[Sysname-policy-1] classifier 1 behavior 1
[Sysname-policy-1] quit
# 把策略应用到端口GigabitEthernet 1/0/1的入方向上。
[Sysname] interface GigabitEthernet 1/0/1
[Sysname-GigabitEthernet1/0/1] qos apply policy 1 inbound
配置完成后,用户就可以在Server上对PC A发出的所有报文进行分析监控。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!