QoS基础
QoS(质量服务)是一项非常复杂的技术,但应用广泛。可实现的主要功能包括流量监管(对进入接口的,超出限制速率的报文进行丢弃)、流量整形(对接口发送的,超出限制速率的报文先进行缓存,等待流量不超出速率时发送)、拥塞避免(在出现网络拥塞时对符合条件的报文进行丢弃)、拥塞管理(在出现网络拥塞时采用队列调度的方法对符合条件的队列中的报文优先发送)、流策略(可根据不同的流分类实现诸如禁止/允许通过,重标记报文优先级、重标记报文VLAN标签、重定向流量、过滤报文、流量镜像、启用流量统计功能等行为)。
QoS基础
QoS(Quality ofService,服务质量)是一种可以为不同类型业务流提供差分(即“不同”)服务等级的技术。通过QoS可以给那些对带宽、时延、时延抖动、丢包率等敏感的业务流提供更加优先的服务等级,使业务能满足用户正常、高性能使用的需求。
一、QoS概述
在传统的IP网络中,所有的报文都被无区别的同等对待。即每个网络设备对所有的报文均采用FIFO(First In First Out,先进先出)的策略进行处理,依照报文到达时间的先后次序分配所需的资源,尽最大的努力(Best-Effort)将报文送到目的地。这种方式下,对报文传送的可靠性、传递延迟、丢包率等性能不能提供任何保证,仅适用于对服务性能不敏感的普通业务,如WWW、FTP、Email等。
随着IP互联网上新型应用不断出现,对IP网络的服务质量提出新要求,如远程教学、远程医疗,可视电话、视频点播等,对实时性和连续性方面要求更加苛刻,如果报文传送延时太长将是用户无法接受的,这类应用中不能容忍中间停顿现象。为支持具有不同服务需求的话音、视频以及数据等业务,要求网络能够区分出不同的业务类型,进而为之提供相应等级的服务。QoS正是这样一种可以为不同业务类型报文提供差分服务的技术,通过对网络流量进行调控,可避免并管理网络拥塞,减少报文丢包率。
QoS服务等级就是指对业务流所需的带宽、时延、时延抖动、丢包率等核心需求的评估。不同类型的业务所需要评估的因素并不一样,如普通数据流在带宽、丢包率方面要求更高,而视屏通讯之类的业务流则在时延和时延抖动方面要求更高。
1、带宽
“带宽”又称为吞吐量,表示在一定时间内业务流的平均速率,单位通常是kbit/s。QoS可以为不同业务流分配不同的端口带宽,以实现高优先级,或者对带宽需求更高的业务流(如视频流等)分配到更大的端口带宽,实现更加快速的数据传输。
2、时延
“时延”表示业务流穿过网络时需要的平均时间。对于网络中的一个设备来说,一般将时延的需求理解为几种等级。通过优先队列(端口有几个优先级不同的数据发送队列)的调度方法使得高优先级的队列业务尽可能的获得传输服务,而低优先级的队列业务则需要等待没有高优先级业务时才能获得传输服务。
3、延时抖动
“延时抖动”表示业务流穿过网络的时间的变化。不同的业务流对时延抖动的敏感度也不一样,像话音、视频类实时要求比较高的业务要求延时抖动更小,否则可能出现话音、视频流断断续续,不连续或失真现象。
4、丢包率
“丢包率”表示业务流在传送过程中的丢失比率。信息的丢失往往发生在网络出现拥塞时。不同业务流对丢包率的敏感度不一样,如话音、视频流对丢包率不是很敏感,而对于数据文件来说就非常敏感,可能导致数据最终无法使用。
在QoS的分类流程中最关键的是对各种不同业务流配置不同的优先级,对流入设备的业务流按其优先级进行分类,然后为不同类型业务流定义一个相应的流行为,设备就会为对应的业务流执行相应的QoS行为。
不同的报文使用不同的QoS优先级,例如二层VLAN报文使用802.1p优先级,三层IP报文使用DSCP优先级,MPLS报文使用EXP优先级。
二、二层VLAN帧中的优先级
二层帧中的优先级是专门针对VLAN帧的,因为普通二层帧中是不携带优先级字段的。VLAN帧中的优先级就是我们常说的802.1p优先级(由IEEE802.1p协议定义),位于VLAN帧中的“802.1Q Tag”字段的“PRI”子字段中,如下图:
IEEE802.1p是IEEE802.1Q(VLAN标签技术)标准的扩充协议,它们协同工作。IEEE802.1p的出现,使得第二层交换机能够提供流量优先级和动态组播过滤服务,其中流量优先级规范工作在媒体访问控制(MAC)层,组播流量过滤功能可确保该流量不超出第二层交换网络范围。
IEEE802.1Q标准定义了为以太网MAC帧添加的标签,但并没有定义和使用优先级字段,而使用IEEE 802.1p修改后的以太网MAC帧的以太网协议头中则定义了该字段。802.1p优先级位于二层VLAN帧头部,适用于不需要分析三层报文头,而需要在二层环境下保证QoS的场合。4个字节的802.1Q标签头包含了2个字节的TPID(Tag Protocol Identifier,标签协议标识,取值为0x8100)和2个字节的TCI(Tag ControlInformation,标签控制信息)。
TCI部分中PRI子字段就是802.1p优先级,也称为CoS优先级。它由3位组成,取值范围为0~7,共可表示8个优先级。其中,最高优先级为7,应用于网络管理和关键性网络流量,如路由选择信息协议(RIP)和开放最短路径优先(OSPF)协议的路由表更新;优先级6和5主要用于延迟敏感(delay-sensitive)应用程序,分别对应交互式话音和视频;优先级4到1主要用于受控负载(controlled-load)应用程序、流式多媒体(streaming multimedia)、关键性业务流量(business-scritical traffic),如SAP数据和后台流量。优先级0是缺省值,并在没有设置其他优先级值的情况下自动启用。
三、三层IP报文中的优先级
二层VLAN帧优先级比较简单,就是由PRI子字段的三位来标识,共有8中优先级,但在三层IP报文中,优先级的描述就要复杂许多,并且在不同时期出现了两种不同的优先级类型和不同的标识方法。
1、ToS字段标的IP优先级
在早期的RFC791标准中,IP数据包是依赖ToS(Type ofService,服务类型)字段来标识数据优先级值的。ToS是IP数据包中的IP报头中的一个字段(共1个字节),用来指定IP包的优先级,设备会优先转发ToS值高的数据包。
ToS字段共一个字节(8位),包括3个部分:0~2共3位用来定义数据包的IP优先级(IP Precedence)、ToS(4位)和最后一个固定为0的位,如下图:
(1)IPPrecedence部分
IP优先级部分共3位,取值范围为0~7(值越大,优先级越高)。用名称表示时,这8个取值分别为routine(普通,值为000)、priority(优先,值为001)、immediate(快速,值为010)、flash(闪速,值为011)、flash-override(急速,值为100)、critical(关键,值为101)、internetwork control(网间控制,值为110)和network control(网络控制,值为111),分别对应于数字0~7。
以上IP优先级中,6和7一般保留给网络控制数据使用,比如路由;5推荐给话音数据使用;4推荐由视频会议和视频流使用;3推荐给话音控制数据使用;1和2推荐给数据业务使用;0为缺省标记值。在IP优先级配置时,既可以使用0~7这样的数值,也可使用上述对应的优先级名称。
(2)ToS
在IP报头的ToS字段中紧接着IP优先级字段后面的四位是ToS部分,代表需要为对应报文提供的服务类型(标识报文所注重的特性要求)。一开始,RFC791中只用到了第3~5位,分别代表IP包在Delay(延时),Throughput(吞吐量),Reliability(可靠性)这三方面的特性要求(每个报文在这三位中只有一位可能置1,此时表示IP包在对应方面有特别要求)。后来在RFC1349标准中又宽展到第6位,表示IP包在路径开销(cost)方面的特性要求。
要注意的是,虽然ToS部分共有4位,但每个IP包中这4位中只能有一位为1,所以实际上只有5个取值(包括全为0的值)。这5个值所对应的名称和数值分别为normal(一般服务,取值为0000)、min-monetary-cost(最小开销,取值为0001,确保路径开销最小)、max-reliability(最高可靠性,取值为0010,确保可靠性最高)、max-throughput(最大吞吐量,取值为0100,确保传输速率最高)、min-delay(最小时延,取值为1000,确保传输时延最小)。
2、DS字段的DSCP优先级和PHB
在新的RFC2474标准中,重新定义了原来IP包头部的ToS字段,并改称为DS(DifferentiatedServices,差分服务)字段,也是共一个字节(8位)。总的来说,第0~5位(共6位)用来表示DSCP(Differentiated Services Code Point,差分服务代码点)优先级,取值范围为0~63,共能标识出64个优先级值(值越大,优先级越高),最后两位保留,用于显示拥塞通知(Explicit Congestion Notification,ECN),如下图:
后来在IETF RFC2597标准中定义了PHB(Per-HopBehavior,逐跳行为),通过PHB值可以确定在网关处对IP包的转发行为。这个PHB值是通过DSCP优先级部分的第0~4位来标识的,其中第0~2位用来标识PHB类别(PHB Class)值,共8个值,对应表示为CS0~CS7,对应在RFC791定义的8个IP优先级,而第3~4位用来标识PHB类别选择(PHB Class Selector)值,见上图。PHB类别值和PHB类别选择值共同组成PHB值。DSCP值是由PHB的5位再加上第5位(固定为0),但在PHB类别中的3位不能全为0。
在RFC2597中定义了4种确保转发(AssureForwarding,AF)PHB组(称为AF PHB)。它使用了DS字段中的第0~2位定义PHB类别,而使用DS字段中的第3和4位代表报文的“丢弃优先级”,用AF(x,y)表示,其中x表示流分类,y表示对应的丢弃优先级。
所谓“确保转发”就是允许管理员在没有超过线路允许速率的情况下提供尽可能的传输质量保证,但如果超出用户线路速率则可能在出现拥塞时丢弃数据包。
在确保转发PHB中,定义了4种PHB类别(也即“流分类”),它们的值分别为001、010、011、和100(对应CS1~CS4),它们本身代表了流的不同优先级(值越大转发优先级越高),然后通过第3和4位的丢弃优先级值(取非0的3个值,分别为01、10和11,值越大丢弃优先级越高)进一步区分同一类流不同IP包的丢弃优先级。它们共同针对4种PHB分类组成了4组AF等级,它们所对应的AF值和对应的DSCP值如下表所示(此时第5位的值固定为0)。
再后来在RFC3246标准中,又定义一个加速转发(Expedited Forwarding,EF)PHB,对应CS5,即在DS字段中的第0~2位取值为101,第3~4位取值固定为11,第5位固定为0,这样一来对应的DSCP值就为46(101110)。EF PHB具有低延时、低开销和低抖动特性,适用于话音、视频和其他实时服务,一般具有比其他通信类型更加优先的队列。
除了AF和EF外,还有一个缺省的PHB,那就是尽力服务类型,它所对应的DSCP值为000000,即十进制的0。另外还定义了CS6和CS7,CS6用于网间控制,对应的DSCP为110000,即十进制的48;CS7用于网内控制,对应的DSCP值为111000,即十进制的56。
在配置DSCP优先级时,既可以使用对应的DSCP名称,如CS6、CS7、AF11、AF12(在CS1~CS4中每个包含了一组DSCP值,所以要指定具体的DSCP名称),又可以使用对应的DSCP十进制值,如48、56等。
3、IP优先级与DSCP优先级的对应关系
DSCP优先级是向后兼容IP优先级的,当支持DSCP的设备收到仅支持ToS中的IP优先级的报文时,缺省情况下它们之间是有一种映射关系的,具体如下表。当然,如果设备仅支持ToS的IP优先级,缺省情况下是不能识别报文中的DSCP优先级值的,这时需要事先在接收设备配置好DSCP优先级与IP优先级的映射关系。
四、三种QoS服务模型
“服务模型”就是设备为不同业务流提供服务的一种模式。总体来说,包括Best Effort、IntServ和DiffServ三种服务模型。
1、Best Effort模型
Best Effort(尽力而为)模型是一种为所有业务流提供相同服务等级的服务模型,也是最简单的服务模型。在Best Effort模型中,应用程序可以在任何时候发出任意数量的报文,而且不需要事先获得批准,也不需要通知网络,网络尽最大的可能性发送每一个数据报文,但对时延、可靠性等性能不提供任何保证。
Best Effort模型是Internet的缺省服务模型,它适用于绝大多数网络,如FTP、Email等,通过先进先出(FIFO)调度方式来实现。
2、IntServ模型
IntServ(IntegratedService,综合服务)模型的主要特点是在发送报文前要先向网络提出申请。这个请求是通过协议信令来完成的,如RSVP(Resource Reservation Protocol,资源预留协议)。应用程序首先通过RSVP信令通知网络它的QoS需求(如时延、带宽、丢包率等指标),在收到资源预留请求后,传送路径上的网络节点实施许可控制(Admission control),验证用户的合法性并检查资源的可用性,决定是否为应用程序预留资源。一旦认可并为应用程序的报文分配了资源,则只要应用程序的报文控制在流量参数描述的范围内,网络节点将承若满足应用程序的QoS需求。传输路径上的网路节点可以通过执行报文的分类、流量监管、低延迟的排队调度等行为,来满足对应程序的承诺。
IntServ模型常与组播应用结合,使用于需要保证带宽、低延迟的实时多媒体应用,如电视会议、视频点播等。当前,采用RSVP协议的IntServ模型定义了两种业务类型:
(1)保证型服务(GuaranteedService):提供保证的带宽和时延限制来满足应用程序的要求。如VoIP应用可预留10MB带宽和要求不超过1s的时延。
(2)负载控制型服务(Controlled-LoadService):保证即使在网络过载(overload)的情况下,仍能对报文提供类似Best Effort模型在未过载时的服务质量,保证某些应用程序报文的低时延和低丢包率需求。
IntServ模型的最大优点是可以提供端到端的QoS传输服务,最大缺点是可扩展性不好:网络节点需要为每个资源预留维护一些必要的软状态(Soft State)信息;在与组播应用相结合时,还要定期地向网络发资源请求和路径刷新信息,以支持组播成员的动态加入和退出。而这些操作要耗费网络节点较多的处理时间和内存资源。在网络规模扩大时,维护的开销幅度增加,对网络节点特别是核心节点线速处理报文的性能造成严重影响。因此IntServ模型不适宜于在流量汇集的骨干网上大量应用。
3、DiffServ模型
为了在Internet上针对不同的业务提供有差别的服务,IETF定义了DiffServ(Differentiated Service,差分服务)模型。
DiffServ模型是一种多服务模型,可以满足不同用户业务流的QoS需求。它与IntServ模型不同的是应用程序在发出报文前通过设置报文头部的优先级字段,向网络中各设备通告自己的QoS需求,而不需要通知途径的网络设备为其预留资源,网络不需要为每个流维护状态,仅根据每个报文携带的优先级就可确定所需为对应流提供的服务等级。
DiffServ模型一般用来为一些重要的应用提供端到端的QoS。通常在配置DiffServ模型后,边界设备通过报文的源地址和目的地址等信息对报文进行分类,对不同的报文设置不同的优先级,并标记在报文头部,而其他设备只需要根据设置的优先级来进行报文的调度。
在DiffServ模型中,流分类、流量监管、流量整形、拥塞管理和拥塞避免是对不同类型报文提供有区别服务的基石,它们主要完成如下功能:
(1)流分类:依据一定的匹配规则识别出不同类型的报文,是有区别地实施服务的前提。
(2)流量监管:对进入交换机的特定流量的规格进行监管。当流量超出规格时,可以采取限制或惩罚措施,以保护运营商的商业利益和网络资源不受损害。
(3)流量整形:一种主动调整流的输出速率的措施,使流量适配下游交换机可供给的网络资源,避免不必要的报文丢弃和拥塞。
(4)拥塞管理:在发生网络拥塞时必须采取解决资源竞争的措施。通常是将报文放入队列缓存,并采取某种调度算法安排报文的转发次序。
(5)拥塞避免:过渡的拥塞会对网络资源造成损害。拥塞避免功能可以监督网络资源的使用情况,在发现拥塞有加剧的趋势时采取主动丢弃报文的策略,通过调整流量措施来解除网络的过载。
在这些功能组件中:流分类是基础,它依据一定的匹配规则识别出报文,是有区别地实施服务的前提;流量监管、流量整形、拥塞管理和拥塞避免从不同方面对网络流量及其分配的资源实施控制,是有区别的提供服务具体体现。
五、DiffServ模型体系结构
DiffServ体系结构定义了实现差分服务的系统模型和基本功能组件,如下图:
在一个网络节点上,实现差分服务的基本功能组件包括“逐跳行为”(PHB)、业务流分类和流量调整(包括流量监管与流量整形、拥塞避免与拥塞管理)等功能。差分服务建立在DS(差分服务)域模型之上,并规定了一个DS域的边界点和内部节点。在DS域边界节点上,对进入网络的业务流进行分类、流量调整和优先级标记,并按照DS域所支持的PHB组中的一个PHB进行转发。在内部节点上,将根据边界节点标记的DSCP或802.1p优先级所定义的PHB来选择该业务流的转发行为,为业务流分配带宽资源。
1、DS域
DiffServ模型的现实基于DS域,DS域由一组采用相同的服务提供策略和实现了相同PHB组集合的相连DS节点组成。一个DS域由DS边界节点和DS内部节点组成,边界节点构成了DS域的边界,内部节点构成了DS域的核心。
2、DS节点
DS节点指实现DiffServ功能的网络节点。DS节点可分为DS边界节点和DS内部节点。
(1)DS边界节点
DS边界节点负责连接另一个DS域或者连接一个没有DS功能的域的节点。DS边界节点负责将进入此DS域的业务流进行分类和可能的流量调整,以保证穿过此DS域的业务流被适当标记,并按照DS域所支持的PHB组中的一个PHB进行转发。
对于不同方向的业务流,DS边界节点既可以是DS域的输入(Ingress)节点,又可以是DS域的输出(Egress)节点。业务流在Ingress节点处进入DS域,在Egress节点处离开DS域。Ingress节点负责保证进入DS域的业务流符合本域和此节点直连的另一个域之间的SLA(Service Level Agreement,服务等级协议)或TCA(TrafficConditioning Agreement,流量控制协议)。Egress节点依据两个域之间的TCA细节,对转发到其直连的对等域的业务流执行流量调整功能。
(2)DS内部节点
DS内部节点负责连接同一DS域中的其他DS内部节点或DS边界节点。DS内部节点负责根据IP报头中的DS字段或VLAN报文的802.1p字段所定义的PHB来为该业务流选择转发行为。无论是DS边界节点还是DS内部节点都必须根据业务流的DSCP或802.1p选择相应的PHB进行转发操作。
3、SLA
SLA(服务等级协定)指用户(个人、企业、有业务往来的相邻ISP等)和服务提供商签署的关于业务流在网络中国传递时所应当获得的待遇。SLA包括很多方面,例如付费协议,其中的技术说明部分被称为SLS(Service Level Specification,服务等级规范)。
4、TCA
TCA(流量控制协定)指用户与服务提供商签署的关于业务分类准则、业务模型及相应处理的协定。去掉了商业条款的TCA称为TCS(Traffic Conditioning Specification,流量控制规范),一个SLA中可以包含TCA。对于业务的处理而言,SLA或SLS指明的是比较一般的内容,例如采用什么样的机制,而TCA或TCS则比较具体,例如具体的带宽要求。
5、DS区
一个或多个邻接的DS域统称为DS区。DS区可以支持贯穿区内多个DS域的分类业务。DS区中的DS域可能支持不同的PHB组,和QoS优先级到PHB的映射规则。不同DS域可有不同的PHB,以实现不同的服务提供策略。它们之间通过SLA和TCA协调提供跨区域服务。SLA/TCA指明了如何在DS域边界节点调整从一个DS域传向另一个DS域的业务流。
QoS优先级映射
优先级映射用来实现报文携带的QoS优先级与设备内部优先级(又称为本地优先级,是设备为报文分配的具有本地意义的优先级)之间的转换,从而使设备根据内部优先级为不同报文提供有差别的QoS服务质量。不同S系列交换机所支持的优先级信任模式和优先级映射模式都有所不同。
一、优先级映射
不同网络中的报文使用不同类型的QoS优先级字段,例如VLAN网络中的报文使用802.1p优先级,IP网络中的报文使用IP优先级或DSCP优先级。当报文经过不同网络时,为了保持报文的优先级,需要在连接不同网络的设备上配置这些优先级字段的映射关系。当设备连接不同网络时,所有进入设备的报文优先级(包括802.1p和DSCP,统称为“外部优先级”)字段根据所配置优先级映射表都被转换为交换机端口的内部优先级;当设备发出报文时,又需要根据优先级映射表将报文中携带的内部优先级恢复为原来的对应外部优先级。
这里涉及到设备信任报文的哪种优先级,也就是优先级信任模式,以及对应的内、外部优先级映射模式。
1、优先级信任模式
配置优先级信任模式可以确定设备根据哪种优先级进行映射。相当于你说你有多种身份,但最终要确定以哪种身份来衡量你的地位。
(1)三种优先级信任模式
在华为S系列交换机中,有三种优先级信任模式
①信任报文的802.1p优先级:配置信任802.1p优先级时,设备根据报文的802.1p优先级对报文进行分类并进行后续的优先级映射,得到报文映射后的802.1p优先级,IP优先级,或DSCP优先级。缺省情况下,端口信任报文的802.1p优先级。
②信任报文的DSCP优先级:配置信任DSCP优先级时,设备根据报文的DSCP优先级对报文进行分类并进行后续的优先级映射,得到报文映射后的802.1p优先级,或DSCP优先级,或丢弃优先级(只有支持DSCP优先级的IP报文才可映射丢弃优先级,因为只有这类报文才有这样的数据位。)
③信任报文的IP优先级:配置交换机端口信任IP优先级,此时将按照报文中所携带的IP优先级查找对应的IP优先级映射表,得到报文映射后的802.1p优先级或IP优先级。
在报文进入设备端口之后,如果报文携带了VLAN标签,则可以选择信任802.1p优先级;如果报文没有携带VLAN标签,则报文或根据端口缺省的802.1p优先级进行转发,该端口优先级即报文转发时进入的端口队列号。在三层转发时,可以选择信任DSCP优先级。
2、优先级映射模式
为了保证不同报文的服务质量,对于进入设备的报文,设备可以根据配置将报文携带的优先级映射为内部优先级,并根据内部优先级与队列之间的映射关系确定报文进入的队列,从而针对队列进行流量整形、拥塞避免、队列调度等处理;报文从设备发送出去时,设备可以根据配置修改报文发送出去时所携带的优先级,以便其他设备根据报文的优先级提供相应的QoS服务。配置优先级映射模式可以确定报文优先级与内部优先级的映射关系,以便设备在后续转发中根据内部优先级提供有差别的QoS服务。
(1)优先级映射模式
总体来说,华为S系列交换机所支持的所有优先级映射模式包括以下几种:
①内部优先级和队列之间的映射
②DSCP优先级到802.1p、新的DSCP优先级、丢弃优先级的映射
③IP优先级到802.1p、新的IP优先级的映射
④802.1p优先级到PHB行为/颜色的映射
⑤PHB行为/颜色到802.1p优先级的映射
⑥DSCP优先级到PHB行为/颜色的映射
⑦PHB行为/颜色到DSCP优先级的映射
(2)华为S系列交换机对优先级信任模式的支持
①在S2700SI/2700EI/2700SI系列交换机中仅支持“内部优先级和队列之间的映射”模式。
②在S2700-52P-EI/2700-52P-PWR-EI/S3700SI/3700EI/5700SI/5700EI/5700LI/5700S-LI系列交换机中支持以下3种优先级映射模式。
- 内部优先级和队列之间的映射
- DSCP优先级到802.1p、新的DSCP优先级、丢弃优先级的映射
- IP优先级到802.1p、新的IP优先级的映射
③在S5700HI/5710EI/6700/7700/9300/9300E/9700系列交换机中,支持以下几种优先级映射模式。
- 在接口入方向,将802.1p优先级映射为PHB行为/颜色
- 在接口出方向,将PHB行为/颜色映射为802.1p优先级
- 在接口入方向,将DSCP优先级映射为PHB行为/颜色
- 在接口出方向,将PHB行为/颜色映射为DSCP优先级。
在S5700HI/5710EI/6700/7700/9300/9300E/9700系列交换机中,支持RFC2597和RFC3246标准中的PHB,用户可以根据DiffServ域中定义逇报文优先级与PHB行为/颜色之间的映射关系对报文进行分类。对于来自上游设备的报文,在设备的入接口上绑定DiffServ域,在DiffServ域中将报文携带的优先级信息映射到相应的PHB行为/颜色,然后根据内部优先级与队列之间的映射关系确定报文进入的队列;在设备的出接口上,根据报文的PHB行为进行拥塞管理,根据报文的颜色进行拥塞避免;然后对于流向下游设备的报文,在设备的出接口上绑定DiffServ域,在DiffServ域中将报文的PHB行为/颜色映射为相应的优先级,下游设备根据报文的优先级提供相应的QoS服务。
二、内部优先级与802.1p和入队列索引的映射扮戏
“内部优先级”是指设备对报文进行处理的优先级,报文中携带的优先级只有在与内部优先级进行了映射后,才能体现报文在对应设备的最终优先级,设备对报文的处理优先级不是直接按照报文中所携带的各种优先级进行的,而是按照设备中配置的内部优先级进行的。不同PHB行为定义了8种“内部优先级”,从低到高的顺序依次是:BE、AF1、AF2、AF3、AF4、EF、CS6和CS7(不区分大小写)。
1、802.1p优先级与内部优先级的映射关系
缺省情况下,所有华为S系列交换机的802.1p优先级与内部优先级的映射关系是一样的,如下表。这些交换机中802.1p优先级与内部优先级的缺省映射关系是按等级一一对应的,即最低的802.1p优先级0对应最低的内部优先级BE,最高的802.1p优先级7对应最高的内部优先级CS7。
2、内部优先级与入队列索引的映射关系
在实际部署时有时需要调整服务等级与入端口队列的映射关系,或者将不同的服务等级放入同一入端口队列中进行调度,从而有效地节约设备缓存。设备按照内部优先级将报文送入不同的入端口队列,从而针对队列进行流量整形、拥塞避免、队列调度等处理。不同S系列交换机的内部优先级与入队列的索引关系也有所不同。
内部优先级与入队列的映射配置仅在S2700SI/3700/5700/6700系列交换机上支持,其他系列仅可采用缺省映射关系。
不同S系列交换机中内部优先级与队列索引之间的映射关系有所不同。在S2700-52P-EI/2700-52P-PWR-EI/3700SI/3700EI/5700HI/5710EI系列交换机中,缺省情况下,8个内部优先级与8个入队列索引号之间是由低到高(指优先级和入队列索引号)一一对应的映射关系,如下表左。但在S2700SI系列,以及除S2700-52P-EI和S2700-52P-PWR-EI之外的其他S2700EI系列交换机中,仅支持4个入队列,所以每两个内部优先级映射同一个入队列(如BE和AF1这两个最低的内部优先级同时映射最小的0号队列,而CS6和CS7这两个最高的内部优先级同时映射最大的3号队列),但总体上也是由低到高一一对应的。
在S6700系列以及S7700系列的ES1D2X40SFC0单板、ES1D2L02QFC0单板,S9300系列的LE0DX40SFC00单板、LE1D2L02QFC0单板和S9300E的LE0DX40SFC00单板和LH2D2L02QFC0单板,S9700系列的EH1D2X40SFC0单板、EH1D2L02QFC0单板中内部优先级与各队列之间的对应关系如下表,从中可见,内部优先级和入队列的映射关系还要看报文是否是已知的单播报文,如果是已知单播报文,则与上表左部一样,只是针对非已知单播报文情况下的映射关系有所不同。