华为认证HCIE Datacom培训理论技术学习关于中队列技术
关注WOLFLAB网络技术实验室,讲师:崔志鹏,杨广成。关注我,每周都会更新,华为认证WOLFLAB网络技术实验室!
华为认证HCIE
(1) FIFO:先进先出队列,是单队列技术,不会引入额外延迟,延迟只与队列长度有关,不提供任何差分服务。
(2) RR:轮询调度,采用轮询的方式,对多个队列进行调度RR以环形的方式 轮询多个队列。如果轮询的队列不为空,则从该队列取走一个报文; 如果该队列为空,则直接跳过该队列,调度器并不等待。单队列里还是先进先出。
(3) WRR:加权轮询调度,在队列之间进行轮流调度,根据每个队列的权重来调度各队列中的报文流。在进行WRR调度时,设备根据每个队列的权值进行轮循调度。调度一轮权值减一,权值减到零的队列不参加调度,当所有队列的权限减到0时,开始下一轮的调度。从统计上看,各队列中的报文流被调度的次数与该队列的权值成正比,权值越大被调度的次数相对越多。由于WRR调度的以报文为单位,因此每个队列没有固定的带宽,同等调度机会下大尺寸报文获得的实际带宽要大于小尺寸报文获得的带宽。
(4) DRR:差额轮询调度,类似于CQ。解决了WRR只关心报文,同等调度机会下大尺寸报文获得的实际带宽要大于小尺寸报文获得的带宽的问题, 通过调度过程中考虑了包长的因素,从而达到调度的速率公平性。
DRR调度中,Deficit表示队列的带宽赤字,初始值为0。每次调度前, 系统按权重为各队列分配带宽,计算Deficit值,如果队列的Deficit值大于0,则参与此轮调度,发送一个报文,并根据所发送报文的长度计算调度后Deficit值,作为下一轮调度的依据;如果队列的Deficit值小于0,则不参与此轮调度,当前Deficit值作为下一轮调度的依据。
(5) PQ:PQ调度算法维护一个优先级递减的队列系列并且只有当更高优先级的所有队列为空时才服务低优先级的队列,PQ调度算法对低时延业务非常有用,然而PQ调度机制会使低优先级队列中的报文由于得不到服务而“饿死”。
(6) FQ:公平队列,目的是尽可能公平地分享网络资源,使所有流的延迟和抖动达到最优。不同的队列获得公平的调度机会,从总体上均衡各个流的延迟。短报文和长报文获得公平的调度:如果不同队列间同时存在多个长报文和短报文等待发送,让短报文优先获得调度,从而在总体上减少各个流的报文间的抖动。
(7) WFQ:与FQ相比,WFQ(Weighted Fair Queue)在计算报文调度次序时增加了优先权方面的考虑。从统计上,WFQ使高优先权的报文获得优先调度的机会多于低优先权的报文,短报文的调度机会多于长报文的调度机会。WFQ调度在报文入队列之前,先对流量进行分类,有两种分类方式:
○ 1 按流的“会话”信息分类:
根据报文的协议类型、源和目的TCP或UDP端口号、源和目的
IP地址、ToS域中的优先级位等自动进行流分类,并且尽可能多地提供队列,以将每个流均匀地放入不同队列中,从而在总体上均衡各个流的延迟。在出队的时候,WFQ按流的优先级
(precedence)来分配每个流应占有带宽。优先级的数值越小, 所得的带宽越少。优先级的数值越大,所得的带宽越多。这种方式只有CBQ的default-class支持。
○ 2 按优先级分类:
通过优先级映射把流量标记为本地优先级,每个本地优先级对应一个队列号。每个接口预分配4个或8个队列,报文根据队列号进入队列。默认情况,队列的WFQ权重相同,流量平均分配接口带宽。用户可以通过配置修改权重,高优先权和低优先权按权重比例分配带宽。
(8) CBQ(EF(包含LLQ)、AF、BE)
○ 1 EF队列:满足低时延业务EF队列是具有高优先级的队列,一个或多个类的报文可以被设定进入EF队列,不同类别的报文可设定占用不同的带宽。
在调度出队的时候,若EF队列中有报文,会优先得到调度,以保证其获得低时延。当接口发生拥塞时,EF队列的报文会优先发送,但为了防止低优先级队列(AF、BE队列)得不到调度,
EF队列以设置的带宽限速。当接口不拥塞时,EF队列可以占用AF、BE的空闲带宽。这样,属于EF队列的报文既可以获得空闲的带宽,又不会占用超出规定的带宽,保护了其他报文的应得带宽。
设备除了提供普通的EF队列,还支持一种特殊的EF队列——
LLQ队列。两种队列都采用绝对优先调度,但是LLQ队列使用流量监管实现,不论接口是否拥塞,流量都不会超过设置的带宽,LLQ队列不缓存报文,可以将报文被发送的时延降低为最低限度。这为对时延敏感的应用(如VoIP业务)提供了良好的服务质量保证
○ 2 AF队列:满足需要带宽保证的关键数据业务
每个AF队列分别对应一类报文,用户可以设定每类报文占用的带宽。在系统调度报文出队的时候,按用户为各类报文设定的带宽将报文出队发送,可以实现各个类的队列的公平调度。当接口有剩余带宽时,AF队列按照权重分享剩余带宽。同时, 在接口拥塞的时候,仍然能保证各类报文得到用户设定的最小带宽
对于AF队列,当队列的长度达到队列的最大长度时,缺省采用尾丢弃的策略,但用户还可以选择用WRED丢弃策略
○ 3 BE队列:满足不需要严格QoS保证的尽力发送业务
当报文不匹配用户设定的所有类别时,报文被送入系统定义的缺省类。虽然允许为缺省类配置AF队列,并配置带宽,但是更多的情况是为缺省类配置BE队列。BE队列使用WFQ调度, 使所有进入缺省类的报文进行基于流的队列调度。
对于BE队列,当队列的长度达到队列的最大长度时,缺省采用尾丢弃的策略,但用户还可以选择用WRED丢弃策略。
扩展问题1:拥塞管理和拥塞避免那个优先使用?
控制层面上:要先有队列调度技术,才能针对不同的队列使用WRED,即使用拥塞避免技术;
数据层面上:从进入队列的数据的角度来讲,不被WRED丢弃的数据才有资格被队列调度技术调度;
即先进行拥塞避免技术,将能够转发的数据留着队列中,再由队列调度技术来进行调度;
扩展问题2:MQC全称是什么,怎么使用,有什么内容? 模块化QOS命令行;
在要求针对不同的业务流量进行整形或者配置WRED的时候使用;
MQC的三要素包括:流分类、流行为、流策略,最后应用流策略;
扩展问题3:FIFO机制是不是不区分流量的优先级? 答:是的;
扩展问题4:那为什么还需要FIFO这个机制呢?
答:1、在网络没有发生拥塞的时候,使用的就是FIFO的方式转发数据的;
2、在不使用任何Qos服务模型的时候,也就是使用尽力而为模型的时候, 也就是使用FIFO的方式的;
3、网络发生拥塞时,单个队列中使用的就是FIFO的方式发送数据的;
感谢关注WOLFLAB网络技术实验室!我们一直都会更新!
标签:Datacom,优先级,队列,HCIE,报文,EF,调度,带宽,华为 From: https://blog.51cto.com/u_14530179/6188377