前言
随着Internet市场的不断发展,用户对通信的需求已从传统的电话、传真、电报等低速业务逐渐向高速的Internet接入、可视电话、视频点播VOD(Video On Demand)等宽带业务领域延伸,Internet以其低廉的价格和全球范围内的可用性使其成为传统广域网的替代品。但是,在IP网络中所有的数据包都是根据所谓尽力(Best-Effort)的原则传送的,因此目前的Internet可以很好的支持Web浏览和E-Mail服务,但却不能很好的支持实时的语音和图像的传递。IP网络对QoS能力的需求越来越迫切。Quidway S8500系列路由交换机是华为3Ccom公司自主开发的大容量、模块化的L2/L3线速交换设备,主要面向大型企业网及园区网的网络骨干、交换核心、汇聚中心和宽带城域网。它提供丰富的业务功能,可以满足高端用户对多业务、高可靠、大容量和模块化的需求。同时,S8500交换机所选用的芯片具有足够强大而灵活的QOS能力,足以能满足现代运营商构建智能城域网的需求。
名词解释
1.QoS,Quality of Service,服务质量是指允许用户在吞吐量、延迟抖动、延迟,丢包率等方面获得可预期的服务水平的一系列技术的集合。
2.流,即业务流(traffic),指所有通过交换机的报文。
3.流分类(traffic classification),是指管理员采用一定的规则,识别出符合某类特征的报文,以备QOS之用。
4.流量监管(traffic policing),为了使有限的网络资源可以更好地为用户服务,QoS在输入端口上可以对特定用户的业务流进行监管,使之适应分配给它的那部分网络资源。
5.优先级标记(priority marking):以太网交换机可为特定报文提供优先级标记的服务,标记内容包括TOS、DSCP、802.1p等。
6.流量整形(traffic shaping):使业务流中的分组延时输出以符合业务模型的规定。
7.队列调度(Congestion Management):把交换机的输出队列进行排队,以使高优先级的报文能够被优先发送。
8.拥塞避免(Congestion Avoidance):交换机发生拥塞时丢包释放队列资源的算法。包括尾丢弃、WRED等。
9.本地优先级(Local-precdence):交换机为报文分配的一种具有本地意义的优先级。其仅在本交换机内部起作用。具有不同的LP的报文进入到不同的队列。
10.遵守级别(Conform-Level):交换机为报文分配的一种具有本地意义的服务参数。其本身不对QOS直接作用,但是交换机会根据它而生成各种服务参数,从而影响QOS。在本文中也就是丢弃优先级(Drop-precedence)。
11.丢弃优先级(Drop-precedence):队形调度中,在进行报文丢弃的时候会参考的参数。分为0、1、2三个等级,也可称为报文的着色,分别对应红、黄、绿三种颜色。
S8500QOS特点
● 每端口8个优先级队列,每个队列又可分3个丢弃优先级
● 支持基于输出端口队列的shapping
● 队列管理:支持Three color RED(GRED)和Tail Drop
● 调度:支持SP和WRR的可编程组合
● 支持TOS、EXP、802.1p字段的标记和重标记
● 支持802.1p优先级到本地优先级、丢弃优先级的映射
● 支持IPv4 TOS到本地优先级、丢弃优先级的映射
S8500QOS特点分析
S8500是一款高性能路由交换机,为使其达到二、三层的转发线速,故其QOS特性主要由芯片来保证。其选取的芯片是Prestera芯片组,是Galileo公司(现被美国Mavell公司收购)今年推出的可用于企业网\城域网\骨干网的L3+解决方案的系列芯片。
在8500交换机上,QOS实现流程如下:
入接口流分类----服务参数自动分配或流量监管和优先级标记----出接口输出队列----队列调度与拥塞避免----流量整形
下面我们按照以上顺序来进行QOS8500交换机上特性及配置的分析。
1.流分类
对于QOS来说,第一步是进行流分类。8500的流分类是比较丰富的,它可以基于数据流报文中的VLAN标签、基于以太网报文中携带的MAC信息、基于IP报文头部的IPv4子网和协议信息,以及可以根据报文流经的物理端口来分类。分类所使用的工具是ACL,在交换机的入口处通过ACL将报文流分为不同的类别,为在后面交换机进行QOS打下一个良好的基础。
2.服务参数自动分配
服务参数是一套QoS相关的参数,包括802.1p优先级(也称为COS优先级)、DSCP优先级、本地优先级、遵守级别。在这些参数中,802.1p优先级是位于报文的VLAN TAG上,是报文的二层信息;DSCP优先级是在IP首部中,是报文的三层信息;而本地优先级和遵守级别则是在交换机内部给交换机分配的一种信息,仅在交换机内部有效,报文出此交换机时,此信息就丢失了。
交换机在接收到报文之后,会参考一定的规则自动给报文分配一套服务参数。分配的依据是报文的802.1p优先级及在交换机端口上可配置的端口优先级。首先交换机会根据报文的802.1p优先级查找下面的映射表来获取报文的丢弃优先级和本地优先级:“COS―>Drop-precedence”映射表和“COS ―>Local-precdence”映射表。在这里,“Drop-precedence”也对应于我们前面提到的遵守级别,意即我们有后面进行流量监管和优先级标记时所需要的遵守级别是从这里获得的。如果没有做其它配置的话,这里获得的丢弃优先级也就是报文着色的结果,其值0、1、2分别对应于着色的红、黄、绿。交换机提供这些映射表的缺省取值,用户可以根据需要重新配置这些映射表;如果没有成功为报文分配到本地优先级或丢弃优先级,交换机就会使用报文接收端口的缺省本地优先级作为报文的本地优先级,使用报文接收端口的缺省Drop-precedence做报文的着色处理。
系统提供缺省的“COS ―>Local-precdence”及“COS―>Drop-precedence”映射表。
缺省的“COS ―>Local-precdence”映射表
缺省的“COS―>Drop-precedence”映射表
3.流量监管和优先级标记
报文进入交换机后,就按照服务参数自动分配的规则分配了服务参数。但如果这些自动分配的服务参数不符合我们的QOS要求,则需要采用流量监管或优先级标记来达到我们的目的了。
流量监管是基于流的速率限制,它可以监督某一流量的速率,如果流量超出指定的规格,就采用相应的措施,如丢弃那些超出规格的报文或重新设置它们的优先级。注意在8500中,只能对进入交换机的流进行流量监管的配置。
以下为流量监管的命令:
traffic-limit inbound { link-group { acl-number | acl-name } [ rule rule ] | ip-group { acl-number | acl-name } [ rule rule ] } cir cbs ebs [ pir ] [ conform { [ remark-cos ] [ remark-drop-priority ] | remark-policed-service } ] [ exceed { forward | drop } ]
从命令中可以看出,交换机的流量监管动作中不但包括了限制流量,还可以实现限定流量内的流与超出流量的流分别对待。因为报文在进入交换机后已经着色,也就是已经有了遵守级别,所以对于在限制流量内的流,可根据报文的Conform-Level重新设置丢弃优先级,也可根据“Local-precedence + Conform-level―>802.1p优先级”映射表来重新设置报文的802.1p优先级。或者,根据“DSCP+Conform-Level―>服务参数”映射表来重新分配流的服务参数。我们还可以配置对超出流量的报文是继续发送还是丢弃。此外,流量监管动作中本身也包含了报文的着色处理,其主要是根据流的流量来进行,规则是:小于CIR的报文为绿色,介于CIR与PIR之间的为黄色,大于PIR的为红色。包的不同颜色分别对应于不同的丢弃优先级。
以下为一个“DSCP+Conform-Level―>服务参数”映射表的例子:
“DSCP + Conform-level―>服务参数”映射表
从上图可以看,交换机依据报文的DSCP和Conform-level重新给报文分配DSCP值、802.1p值、LP值以及丢弃优先级。
相对于上个映射表,“Local-precedence + Conform-level―>802.1p优先级”映射表就简单一些了:
“Local-precedence + Conform-level―>802.1p优先级”映射表
从上表可看出,交换机依据报文的LP和CL重新给报文分配802.1p值。
在默认情况下,交换机并没有启用流量监管,所以上述两个映射表是不起作用的。如果根据需要启用了流量监管,则需要我们根据具体情况合理配置这两个表,以达到我们想要的结果。
优先级标记配置就是为匹配设定ACL的报文重新分配一套服务参数。我们在前面看到,报文一进入交换机就被自动分配了服务参数,但优先级标记所能分配的服务参数更加丰富。
以下为优先级标记的命令:
traffic-priority inbound { link-group { acl-number | acl-name } [ rule rule ] | ip-group { acl-number | acl-name } [ rule rule ] } { auto | remark-policed-service { trust-dscp | dscp
dscp-value | untrusted dscp dscp-value cos cos-value local-precedence local-precedence drop-priority drop-level } }
可以看出,优先级标记配置包括如下动作:使用交换机自动分配的服务参数、根据报文的DSCP值查找映射表为报文重新分配服务参数、根据用户设定的DSCP值查找映射表为报文重新分配