QOS的队列及拥塞管理
QoS培训--3-4 拥塞管理与拥塞避免

Page9
CQ:Custom Queuing
CQ
0
1
10%
2
10%
3
5%
调度
4
10%
一共17个队列
16
20%
round robin,每次从 一个队列取定制的字 节数目(队列0为高优 先级)
CQ(custom Queuing)可以支持17个队列,队列0用于系统队列,队列0和其
他队列之间是SP的关系,只有队列0排空以后才能为其他队列提供服务,队
学完本课程后,您应该能:
理解拥塞管理与拥塞避免的原理。 掌握拥塞管理与拥塞避免的方法。
Page2
目录
拥塞管理 拥塞避免
Page3
拥塞与拥塞管理
流量从高速端口流向低速端口会在低速端口上产生拥塞,如图A; 流量从多个端口流向同一个端口会在汇聚端口上产生拥塞,如图B 拥塞管理是指网络在发生拥塞时,如何进行管理和控制。处理的 方法是使用队列调度技术。将所有要从一个接口发出的报文进入 多个队列,按照各个队列的优先级进行处理。通过适当的队列调 度机制,可以优先保证某种类型的报文的QoS 参数,例如带宽、 时延、抖动等。
拥塞管理与拥塞避免
前言
当网络中间歇性的出现拥塞,时延敏感业务要求得到比非时延敏感业务更 高质量的QoS服务时,需要进行拥塞管理。拥塞避免是指通过监视网络资 源(如队列或内存缓冲区)的使用情况,在拥塞发生或有加剧的趋势时主 动丢弃报文,通过调整网络的流量来解除网络过载的一种流量控制机制。
Page1
培训目标
Page8
PQ:Priority Queuing
需由此接口 发送的报文
分类
队列 high
medium nomorl
sqmqos列队规则

sqmqos列队规则SQMQOS列队规则是一种用于网络流量管理的算法,它可以帮助网络管理员更好地控制网络中的数据流动。
SQMQOS是“Strict Priority Queueing with Multilevel Queueing and Over-subscription”的缩写,意为“严格优先级队列与多级队列和超额订阅”。
在传统的网络中,数据包是按照先到先服务(FIFO)的原则进行处理的。
这意味着所有的数据包都会按照它们到达的顺序进行处理,而不考虑它们的优先级。
然而,在某些情况下,一些数据包可能具有更高的优先级,需要更快地处理。
这就是SQMQOS列队规则的用武之地。
SQMQOS列队规则将网络流量分为多个队列,并为每个队列分配一个优先级。
每个队列都有自己的缓冲区,用于存储数据包。
当数据包到达时,它们会根据其优先级被放入相应的队列中。
具有更高优先级的数据包将被放入优先级较高的队列中,而具有较低优先级的数据包则被放入优先级较低的队列中。
在SQMQOS列队规则中,每个队列都有自己的服务级别(SLA)。
服务级别定义了每个队列可以使用的带宽和资源。
具有更高优先级的队列将被分配更多的带宽和资源,以确保其数据包能够更快地被处理。
而具有较低优先级的队列则被分配较少的带宽和资源,以保证高优先级队列的数据包能够优先处理。
此外,SQMQOS列队规则还支持超额订阅。
超额订阅是指当网络中的带宽资源不足时,允许某些队列使用超过其分配的带宽。
这意味着具有更高优先级的队列可以使用其他队列未使用的带宽,以确保其数据包能够及时处理。
然而,超额订阅也可能导致较低优先级队列的数据包被延迟处理。
SQMQOS列队规则的应用范围广泛。
它可以用于各种网络环境,包括企业网络、数据中心和云计算环境等。
通过使用SQMQOS列队规则,网络管理员可以更好地管理网络流量,提高网络的性能和可靠性。
总之,SQMQOS列队规则是一种用于网络流量管理的重要算法。
网络服务质量(QoS)策略

网络服务质量(QoS)策略随着互联网的普及和发展,网络服务质量(Quality of Service,QoS)成为了一个重要的议题。
QoS策略旨在提供网络用户更好的网络连接质量和服务体验。
在本文中,我们将探讨网络服务质量的重要性以及一些常见的QoS策略。
第一部分:网络服务质量的重要性在当今社会,网络已经成为生活中不可或缺的一部分。
人们依赖网络工作、学习、娱乐、购物等方方面面的活动,而这些活动都需要一个高品质的网络连接。
然而,网络的负载量和用户需求的增加导致了网络拥塞的问题,从而影响了用户的上网体验。
网络服务质量(QoS)的重要性在于它可以解决网络拥塞和带宽不足的问题,确保用户能够获得稳定、快速和可靠的网络连接。
通过合理地管理网络资源,QoS策略可以保证不同类型的数据传输(如实时音视频、在线游戏、文件下载等)按照其重要性、延迟敏感性和带宽需求进行优先级处理,以实现用户的个性化需求。
第二部分:常见的QoS策略1. 流量分类和标记:QoS策略的第一步是对网络流量进行分类和标记。
根据应用类型、服务要求等因素,将流量分为不同的类别,然后为每个类别分配相应的优先级和带宽资源。
常见的流量分类标记方法包括DiffServ和802.1p。
2. 队列管理:为了保证不同类别的流量都能够得到合理的处理,QoS策略需要实施队列管理机制。
这可以通过使用先进先出(FIFO)队列、公平队列(Fair Queuing)、加权公平队列(Weighted Fair Queuing)等算法来实现。
队列管理可以根据流量的优先级和带宽需求进行数据调度,确保高优先级的流量能够得到及时处理。
3. 带宽限制和形状化:为了防止某些流量占用过多的带宽资源,QoS策略可以通过带宽限制和形状化来控制流量的传输速率。
这可以通过实施流量控制和流量整形策略,限制某些流量的速率,并使其符合网络的带宽约束。
4. 故障恢复和保护机制:网络中的故障和异常情况可能会导致服务质量的下降。
局域网组建方法中的网络QoS配置与管理

局域网组建方法中的网络QoS配置与管理在局域网的组建和管理中,网络QoS(Quality of Service,服务质量)的配置和管理起着至关重要的作用。
通过合理配置和管理网络QoS,可以提高局域网的性能,保证数据传输的稳定性和可靠性。
本文将介绍局域网中网络QoS配置与管理的方法和技巧。
一、网络QoS的概念和作用网络QoS是指在网络传输过程中,根据不同的应用和服务类型,对网络资源进行合理调度和分配,以保证特定应用或服务的性能要求得到满足的一种技术手段。
网络QoS的配置和管理能够有效地提高数据传输的效率和质量,降低网络延迟和拥塞情况的发生,从而提升用户的网络体验。
二、网络QoS配置与管理的方法1. 流量分类和标记:在局域网中,不同的应用和服务对网络的需求是不同的。
通过对流量进行分类和标记,可以根据不同的应用类型和特点进行针对性的配置和调整。
常见的流量分类标记技术有DSCP (Differentiated Services Code Point)、IP Precedence等。
2. 带宽管理和分配:合理的带宽管理和分配是网络QoS的关键。
根据不同的应用需求和用户数量,对局域网的带宽进行合理的划分,确保重要应用和服务能够获得足够的带宽资源,避免因为网络拥塞引起的性能下降。
3. 建立优先级队列:设置优先级队列可以保证高优先级流量在网络传输中获得更高的优先级,从而提高其传输速率和稳定性。
通过合理设置队列的优先级和权重,可以保证关键应用的网络性能,确保其正常运行。
4. 流量整形和控制:通过流量整形和控制技术,可以对流量进行限制和调整,防止网络资源被某一应用或服务长时间占用。
合理设置流量整形和控制策略,可以有效地平衡不同应用间的带宽利用率,提高网络的整体性能。
5. 建立QoS策略:根据局域网的具体需求和应用场景,制定合适的QoS策略。
QoS策略需要根据网络现状和用户需求来确定,可以结合流量统计和监控数据,根据实际情况进行动态调整和优化。
通信网络中的QoS保障技术

通信网络中的QoS保障技术随着通信网络的普及和发展,我们离不开它的存在。
人们通过网络交流、学习、工作、娱乐等,网络的价值与重要性越来越凸显。
但是,随着网络用户数量的增加以及数据流量的增大,通信网络的质量(QoS)保障变得越来越重要。
QoS保障是指通信网络在保证一定服务质量的前提下,按需分配网络资源,确保网络上的各种数据包能够稳定、高效地传输。
目的是为了更好地利用网络带宽、避免网络拥塞、降低延迟和丢包率等问题。
QoS保障技术是实现QoS保障的关键技术。
一、传输优先级技术传输优先级技术是QoS保障技术的基础。
它通过为不同类型的数据包分配优先级,使得高优先级的数据包能够优先被传输。
这些数据包包括音频和视频等需要实时传输的数据,以及关键数据,例如财务数据和电子邮件等。
传输优先级技术采用了基于优先级的调度算法,通过对不同等级的数据包进行排队,保证高优先级的数据包能够优先传输。
这样可以避免低优先级的数据包持续占用网络资源,从而提高整体的网络传输效率。
二、流控制技术流控制技术是另一个重要的QoS保障技术。
它通过限制单个流的速率,从而避免网络拥塞。
流控制技术通常用于保障流量性质要求高的服务,如语音和视频等实时流媒体服务,和数据传输率要求高的企业中心网络等环境。
流控制技术通过限制单个流的数据量和速率,避免了网络资源被单个流占用的情况。
当流量达到限制值时,路由器或交换机会在数据包中添加信号,告知源设备减慢数据发送速度。
三、拥塞控制技术拥塞控制技术是一种基于反馈的QoS保障技术。
它通过检测数据包的延迟时间和丢包率,评估网络的拥塞状态,并采取相应的控制措施,防止网络发生拥塞。
拥塞控制技术通常包括主动队列管理(AQM)和反馈控制机制。
AQM通过对网络请求进行严格的队列管理,从而避免了网络拥塞的问题。
反馈控制机制基于路由器和交换机之间的通信进行决策,根据数据包的响应时间和网络带宽等因素,控制流程来保证网络的稳定性。
四、差错控制技术差错控制技术是QoS保障技术的一部分,它通过控制数据包的可靠传输,避免因数据包丢失而导致的服务中断。
网络服务质量QoS的评估与控制

网络服务质量QoS的评估与控制在当今信息化社会中,网络已经成为了人们生活和工作中不可或缺的一部分。
从早期的狭窄带宽到如今的高速宽带,网络服务质量QoS (Quality of Service)得到了极大的提升。
然而,随着网络应用的不断增加和用户数量的剧增,如何评估和控制网络服务质量成为一个亟待解决的问题。
一、评估网络服务质量QoS的标准评估网络服务质量QoS需要确定一些度量标准,以便对其进行定量的衡量和比较。
主要的评估标准包括带宽、时延、抖动和丢包率。
1.带宽:带宽是指网络传输数据的速率,通常以bps(bit per second)为单位。
2.时延:时延是指数据从发送端到接收端所需的时间。
它包括传输时延、排队时延、处理时延和传播时延等。
3.抖动:抖动指的是网络数据传输时延的变化程度。
如果时延变化较大,会导致实时应用(如语音和视频)的质量下降。
4.丢包率:丢包率是指网络在传输过程中丢失的数据包的比例。
较高的丢包率会导致数据传输不完整,影响用户体验。
二、评估网络服务质量QoS的方法为了评估网络服务质量QoS,可以采用一些常用的方法和工具。
1. Ping测试:Ping测试是一种常用的测量网络延迟的方法。
通过发送ICMP回显请求消息,然后记录数据包的往返时间,从而评估网络的时延。
2. Traceroute测试:Traceroute测试可用于确定数据包在互联网中的路径,并测量每个节点的往返时间。
这可以帮助我们找出网络中的瓶颈点。
3. 带宽测试:带宽测试可以测量网络的传输速率,常见的工具有Speedtest和iPerf等。
4. 视频和音频质量评估:对于实时应用,如视频和音频,可以通过评估图像和声音的清晰度、卡顿和回音等指标来判断其质量。
三、控制网络服务质量QoS的方法为了提高网络服务质量QoS,可以采取一些控制措施来改善网络性能。
1. 智能路由器:智能路由器可以根据流量的特性动态调整路由,从而平衡网络负载和控制时延。
qos处理流程

qos处理流程QoS(Quality of Service)是指网络中对不同类型网络流量进行优先级处理的一种机制。
在网络通信中,不同的应用对网络的要求是不同的,有些应用对实时性要求较高,如视频通话、在线游戏等,而有些应用对带宽要求较高,如大文件传输等。
为了满足这些不同应用的需求,需要对网络流量进行合理的调度和管理。
下面将介绍QoS的处理流程。
一、流量分类在QoS处理流程中,首先需要对流量进行分类。
一般可以按照不同的标准进行分类,如源IP地址、目的IP地址、端口号、协议等。
根据不同的应用需求,将流量划分为不同的类别,以便后续的处理。
二、流量标记在流量分类之后,需要对不同类别的流量进行标记。
标记可以用不同的方式进行,如设置优先级、DSCP(Differentiated Services Code Point)值等。
标记的目的是为了在后续的处理中能够根据标记信息进行相应的操作,如优先级调度、带宽分配等。
三、拥塞控制拥塞是网络中常见的问题之一,当网络中的流量超过了网络的处理能力时,就会发生拥塞,导致网络的性能下降。
为了避免拥塞的发生,需要进行拥塞控制。
拥塞控制可以通过流量限速、流量整形、流量调度等方式来实现。
流量限速可以限制流量的速率,防止网络中某个应用占用过多的带宽。
流量整形可以对流量进行缓存和调整,使得流量的速率符合网络的处理能力。
流量调度可以根据不同流量的优先级进行调度,保证高优先级流量的传输。
四、带宽分配在网络中,带宽是有限的资源,不同的应用对带宽的需求也是不同的。
为了合理利用带宽资源,需要进行带宽分配。
带宽分配可以根据应用的需求和流量的优先级进行,优先满足高优先级流量的需求。
常见的带宽分配方式有固定带宽分配和动态带宽分配。
固定带宽分配是指为不同的应用分配固定的带宽,不受其他应用的影响。
动态带宽分配是指根据流量的实际情况进行带宽的分配,根据流量的优先级和网络的状况动态调整带宽的分配。
五、流量调度流量调度是QoS处理流程中的重要环节之一。
网络拥塞管理机制技术介绍

PQ队列原理
按类别入队,队列满后尾丢弃
优先级高的队列先调度
准备发送
是否拥塞 否
是
是否高优 是 先 否
top 队满
是
否
top队列
丢弃
是否中 是 优先
middle 否 队满
middle队列
队
列
否
是
丢弃
调
度
是否普通 是
normal 否 队满
normal队列
否
是
丢弃
是否低 是 优先
bottom 否 队满
[sysname-Ethernet6/0] qos fifo queue-length queue-length
增加FIFO队列的长度可以减少丢包,但同时也 会增加延迟
9
FIFO队列的显示
[sysname-Ethernet9/0]display interface Ethernet 9/0 Ethernet9/0 current state: UP Line protocol current state: UP Output flow-control is disabled, input flow-control is disabled Output queue : (Urgent queuing : Size/Length/Discards) 1/100/0 Output queue : (Protocol queuing : Size/Length/Discards) 0/500/0 Output queue : (FIFO queuing : Size/Length/Discards) 1011/1024/4291923 Last clearing of counters: Never
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
队列及拥塞管理队列及拥塞管理拥塞管理的中心内容是当拥塞发生时如何制定一个策略,用于决定报文转发的处理次序和丢弃原则,一般采用队列技术。
队列指的是在缓存中对报文进行排序的逻辑。
当流量的速率超过接口带宽或超过为该流量设置的带宽时,报文就以队列的形式暂存在缓存中。
报文离开队列的时间、顺序,以及各个队列之间报文离开的相互关系则由队列调度算法决定。
说明:路由器转发平面的流量管理器TM(Traffic Manager)上有一些高速缓存,用于报文的缓冲和转发,缓存由所有端口共享,各端口竞争使用。
为了避免有的端口长时间抢不到缓存而出现断流,路由器给每个端口分配了一块最小可用缓存,并且分配到端口的各个队列上,保证每个队列均有缓存可用。
当TM收到报文时,将报文放入缓存,网络不拥塞时,报文能被及时转发,不会在缓存中产生堆积。
这种情况下报文在缓存中的时间为μs级,延迟时间可以忽略不计。
当网络拥塞时,报文在缓存中产生堆积,被延迟处理,延迟时间会大幅增加。
延迟时间的大小主要取决于队列的缓存长度以及该队列获得的输出带宽,可以使用如下公式计算时延:队列时延 = 队列缓存长度 / 队列输出带宽华为路由器设备的每个端口上都有8个下行队列,称为CQ(Class Queue)队列,也叫端口队列(Port-queue),分别为BE、AF1、AF2、AF3、AF4、EF、CS6和CS7。
单个队列的报文采用FIFO(First In First Out)原则入队和出队。
图1 报文入队出队方式队列调度算法本文介绍几种常见队列调度算法:∙先进先出FIFO(First In First Out)∙严格优先级SP(Strict Priority)∙轮询RR(Round Robin)∙加权轮询WRR(Weighted Round Robin)∙差分轮询DRR(Deficit Round Robin)∙差分加权轮询DWRR(Deficit Weighted Round Robin)∙加权公平队列WFQ(Weighted Fair Queuing)FIFOFIFO不对报文进行分类。
FIFO按报文到达接口的先后顺序让报文进入队列,在队列的出口让报文按进队的顺序出队,先进的报文将先出队,后进的报文将后出队,如图1。
SPSP(Strict Priority)调度就是严格按照队列优先级的高低顺序进行调度。
只有高优先级队列中的报文全部调度完毕后,低优先级队列才有调度机会。
假设端口有3个采用SP调度算法的队列,分别为高优先(High)队列、中优先(Medium)队列、和低优先(Low)队列,它们的优先级依次降低。
如图2,其中报文编号表示报文到达顺序。
图2 SP调度在报文出队的时候,首先让高优先队列中的报文出队并发送,直到高优先队列中的报文发送完,然后发送中优先队列中的报文,直到发送完,接着是低优先队列。
在调度低优先级队列时,如果高优先级队列又有报文到来,则会优先调度高优先级队列。
这样,较高优先级队列的报文将会得到优先发送,而较低优先级的报文后发送。
SP调度的缺点是:拥塞发生时,如果较高优先级队列中长时间有报文存在,那么低优先级队列中的报文就会由于得不到服务而“饿死”。
RRRR调度采用轮询的方式,对多个队列进行调度。
RR以环形的方式轮询多个队列。
如果轮询的队列不为空,则从该队列取走一个报文;如果该队列为空,则直接跳过该队列,调度器不等待。
图3 RR调度WRR加权轮询WRR(Weighted Round Robin)调度主要解决RR不能设置权重的不足。
在轮询的时候,WRR每个队列享受的调度机会和该队列的权重成比例。
RR调度相当于权值为1的WRR调度。
WRR的实现方法是为每个队列设置一个计数器Count,根据权重进行初始化。
每次轮询到一个队列时,该队列输出一个报文且计数器减一。
当计数器为0时停止调度该队列,但继续调度其他计数器不为0的队列。
当所有队列的计数器都为0时,所有计数器重新根据权重初始化,开始新一轮调度。
在一个循环中,权重大的队列被多次调度。
图4 WRR调度假设某端口有3个队列采用WRR调度,为每个队列配置一个权值,依次为50%、25%、25%,详细的调度过程如下:首先计数器初始化:Count[1]=2,Count[2]=1,Count[3]= 1。
∙第1个轮询:从队列1取出报文1发送,Count[1]=1;从队列2取出报文5发送,Count[2]=0;从队列3取出报文8发送,Count[3]=0。
∙第2个轮询:从队列1取出报文2发送,Count[1]=0;由于Count[2]=0,Count[3]=0,队列2和队列3不参与此轮调度。
此时,Count[1]=0,Count[2]=0,Count[3]=0,将计数器重新初始化:Count[1]=2,Count[2]=1,Count[3]= 1。
∙第3个轮询:从队列1取出报文3发送,Count[1]=1;从队列2取出报文6发送,Count[2]=0;从队列3取出报文9发送,Count[3]=0。
∙第4个轮询:从队列1取出报文4发送,Count[1]=0;由于Count[2]=0,Count[3]=0,队列2和队列3不参与此轮调度。
此时,Count[1]=0,Count[2]=0,Count[3]=0,将计数器重新初始化:Count[1]=2,Count[2]=1,Count[3]= 1。
从统计上看,各队列中的报文流被调度的次数与该队列的权值成正比,权值越大被调度的次数相对越多。
如果该端口为100Mbps,则可以保证最低权重的队列至少获得25Mbps带宽,避免了采用SP调度时低优先级队列中的报文可能长时间得不到服务的缺点。
WRR对于空的队列直接跳过,循环调度的周期变短,因此当某个队列流量小的时候,剩余带宽能够被其他队列按照比例占用。
WRR调度有两个缺点:∙WRR调度按照报文个数进行调度,因此每个队列没有固定的带宽,同等调度机会下大尺寸报文获得的实际带宽要大于小尺寸报文获得的带宽。
而用户一般关心的是带宽。
当每个队列的平均报文长度相等或已知时,通过配置WRR权重,用户能够获得想要的带宽;但是,当队列的平均报文长度变化时,用户就不能通过配置WRR权重获取想要的带宽。
∙低延时需求业务(如语音)得不到及时调度。
DRR差分轮询DRR(Deficit Round Robin)调度实现原理与RR调度基本相同。
DRR与RR的区别是:RR调度是按照报文个数进行调度,而DRR是按照报文长度进行调度。
DRR为每个队列设置一个计数器Deficit,Deficit初始化为一次调度允许的最大字节数,一般为接口MTU。
每次轮询到一个队列时,该队列输出一个报文且计数器Deficit减去报文长度。
如果报文长度超过了队列的调度能力,DRR调度允许Deficit出现负值,以保证长报文也能够得到调度。
但下次轮循调度时该队列将不会被调度。
当计数器为0或负数时停止调度该队列,但继续调度其他计数器为正数的队列。
当所有队列的Deficit都为0或负数时,将所有队列的Deficit计数器加上初始值,开始新一轮调度。
假设某端口MTU=150Bytes,有2个队列Q1和Q2采用DRR调度,Q1队列中有多个200Bytes的长报文,Q2队列中有多个100Bytes的端报文,则调度过程如图5。
由上图可以看出,经过第1~6轮DRR调度,Q1队列被调出了3个200Bytes的报文,Q2队列被调出了6个100Bytes的报文。
从长期的统计看,Q1和Q2的实际输出带宽比是1:1,为公平的比例。
DRR调度避免了采用SP调度时低优先级队列中的报文可能长时间得不到服务的缺点。
但是,DRR调度不能设置权重,且也具有低延时需求业务(如语音)得不到及时调度的缺点。
DWRR差分加权轮询DWRR(Deficit Weighted Round Robin)调度主要解决DRR不能设置权重的不足。
DRR调度相当于权值为1的DWRR调度。
DWRR为每个队列设置一个计数器Deficit,Deficit初始化为Weight*MTU。
每次轮询到一个队列时,该队列输出一个报文且计数器Deficit减去报文长度。
当计数器为0时停止调度该队列,但继续调度其他计数器不为0的队列。
当所有队列的计数器都为0时,所有计数器的Deficit都加上Weight*MTU,开始新一轮调度。
假设某端口MTU=150Bytes,有2个队列Q1和Q2采用DRR调度,Q1队列中有多个200Bytes的长报文,Q2队列中有多个100Bytes的端报文,Q1和Q2配置权重比为weight1:weight2=2:1。
则DWRR调度过程如图6。
∙第一次调度Deficit[1] =weight1* MTU=300,Deficit[2] = weight2* MTU=150,从Q1队列取出200Bytes报文发送,从Q2队列取出100Bytes发送;发送后,Deficit[1] = 100,Deficit[2] =50。
∙第二次调度从Q1队列取出200Bytes报文发送,从Q2队列取出100Bytes发送;发送后,Deficit[1] = -100,Deficit[2] =-50。
∙第三次调度此时两个队列都为负,因此,Deficit[1] = Deficit[1]+weight1* MTU=-100+2*150=200,Deficit[2] = Deficit[2]+weight2* MTU=-50+1*150=100。
从Q1队列取出200Bytes报文发送,从Q2队列取出100Bytes发送;发送后,Deficit[1] = 0,Deficit[2] = 0。
由上图可以看出,经过第1~3轮DWRR调度,Q1队列被调出了3个200Bytes的报文,Q2队列被调出了3个100Bytes的报文。
从长期的统计看,Q1和Q2的实际输出带宽比是2:1,与权重比相符。
DWRR调度避免了采用SP调度时低优先级队列中的报文可能长时间得不到服务的缺点,也避免了各队列报文长度不等或变化较大时,WRR调度不能按配置比例分配带宽资源的缺点。
但是,DWRR调度也具有低延时需求业务(如语音)得不到及时调度的缺点。
WFQ加权公平队列WFQ(Weighted Fair Queuing)调度是按队列权重来分配每个流应占有出口的带宽。
同时,为了使得带宽分配更加“公平”,WFQ以bit为单位进行调度,类似于图7的bit-by-bit调度模型。
图7 Bit-by-bit调度模型Bit-by-bit调度模型可以完全按照权重分配带宽,防止长报文比短报文获得更多带宽,从而减少大小报文共存时的时延抖动。
但Bit-by-bit调度模型只是理想化的模型,实际上,华为路由器实现的WFQ是按照一定的粒度,例如256B、1KB,或其他粒度,具体按何种粒度,与单板类型相关。