CN104092566B - 一种区分服务的队列管理方法 - Google Patents
一种区分服务的队列管理方法 Download PDFInfo
- Publication number
- CN104092566B CN104092566B CN201410289786.3A CN201410289786A CN104092566B CN 104092566 B CN104092566 B CN 104092566B CN 201410289786 A CN201410289786 A CN 201410289786A CN 104092566 B CN104092566 B CN 104092566B
- Authority
- CN
- China
- Prior art keywords
- priority
- max
- len
- qin
- queue length
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种区分服务的队列管理方法,路由器在每一个分组到达时,计算三种优先级队列的平均队列长度Leni,再根据本发明提出的平滑丢弃概率函数公式计算丢弃概率,通过设置参数n,可以改变丢弃概率的非线性程度,并且可以通过调整各个优先级的队列阈值,来实现不同优先级的权限。本发明能够通过平均队列长度的大小,更早检测到网络拥塞,从而进行拥塞控制;并通过各个队列阈值的调整可以实现不同优先级的权限,提高各个资源之间的带宽竞争的公平性;采用了非线性分段的丢弃函数,分组的丢弃更加平滑,整体上可以提高网络的稳定性和资源利用率。
Description
技术领域
本发明属于网络区分服务技术领域,更为具体地讲,涉及一种区分服务的队列管理方法。
背景技术
随着互联网的普及,移动互联网络等接入方式的多样化,越来越多的业务需要网络进行承载,确保网络的QoS(Quality of Service,服务质量)成为日益关注的重点。区分服务模型采用了边缘复杂、核心简单的网络体系结构,将网络中的路由器划分为边缘路由器和核心路由器,将数据分类、标记、监管、整形等复杂的功能在边缘路由器实现,将汇集流的分类和相应的转发处理在核心路由器实现。由于其体系结构简单,信令机制灵活,扩展性能强,便于实现,可以在网络中大规模应用。
队列管理技术是实现区分服务QoS的核心技术。队列管理技术采取分组缓存、时延转发的方式,提高输出链路带宽的利用率。其工作原理为:分组达到队列时,系统根据某种策略丢弃该分组,限制分组进入队列缓存的数目,因此队列管理也称为丢弃分组的策略。
主动队列算法AQM(Active Queue Management)是IETF(Internet EngineeringTask Force,互联网工程任务组)推荐的基于网络节点拥塞控制的关键技术,其中比较具有代表性的是SallyFloyd等人提出随机检测RED(Random Early Detection)算法的。RED算法在队列的入口通过监控平均队列长度来检测拥塞程度,采取合理的丢包策略,从而避免拥塞。由于RED算法对相关参数设置敏感,当网络流量迅速增大时,RED的性能算法会急剧下降。基于此,Sally Floyd和Kevin Fall又提出了一种Gentle-RED算法,算法改变了分组概率丢弃函数,提高了RED在复杂网络中的性能。
此外,David Clark等人提出了RIO-C算法,RIO-C算法对于符合规范的流进行分组,设置不同的优先级,从而实现了区分服务的要求。RIO-C在区分服务模型中,可以实现三个优先级队列管理,算法通过控制不同队列中分组的丢 弃概率来实现对业务流的区分服务。但是RIO-C算法对于分组的丢弃不够平缓,容易造成网络系统的不稳定,网络资源利用率不高;并且RIO-C算法采用的是线性的分组丢弃方式,未考虑平均队列长度与分组丢弃概率的非线性特性,对网络出现突发流量的处理能力不足。
发明内容
本发明的目的在于克服现有技术的不足,提供一种区分服务的队列管理方法,以RIO-C算法为基础,结合平均队列长度与分组丢弃概率的非线性特点,提出了分段的平滑丢弃概率函数,提高系统稳定性,增加系统对突发流量的处理能力,更好地保护高优先级的业务,提高区分服务的能力。
为实现上述发明目的,本发明区分服务的队列管理方法,包括以下步骤:
S1:路由器在每一个分组到达时,计算三种优先级队列的平均队列长度Leni,i=1,2,3,分别对应高、中、低三种优先级;
S2:根据平滑丢弃概率公式计算每个优先级队列的丢弃概率Pb_i,再根据丢弃概率Pb_i对分组中的每个优先级队列进行控制,平滑丢弃概率公式为:
其中,Minthi为第i个优先级的队列长度最小阈值,Maxthi为第i个优先级的队列长度最大阈值,并且Maxth(i+1)≤Minthi,Pmaxi为第i个优先级的调整控制参数,Pmaxi<Pmaxi+1,n为大于1的正整数。
本发明区分服务的队列管理方法,路由器在每一个分组到达时,计算三种优先级队列的平均队列长度Leni,再根据本发明提出的平滑丢弃概率函数公式计算丢弃概率,通过设置参数n,可以改变丢弃概率的非线性程度,并且可以通过调整各个优先级的队列阈值,来实现不同优先级的权限。本发明能够通过平均队列长度的大小,更早检测到网络拥塞,从而进行拥塞控制;并通过各个队列阈值的调整可以实现不同优先级的权限,提高各个资源之间的带宽竞争的公平 性;采用了非线性分段的丢弃函数,分组的丢弃更加平滑,整体上可以提高网络的稳定性和资源利用率。
附图说明
图1是本发明中丢弃函数与队列长度关系示意图
图2是实验仿真的网络拓扑图;
图3是仿真实验1中平均队列长度对比图;
图4是仿真实验1中各节点业务流的吞吐率对比图;
图5是仿真实验1中各节点业务流的丢包率对比图;
图6是仿真实验2中平均队列长度对比图;
图7是仿真实验2中各节点业务流的吞吐率对比图;
图8是仿真实验2中各节点业务流的丢包率对比图。
具体实施方式
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
实施例
本发明区分服务的队列管理方法主要包括两大步骤,主要针对丢弃概率公式进行了改进,其具体步骤包括:
S1:路由器在每一个分组到达时,计算三种优先级队列的平均队列长度Leni,i=1,2,3,分别对应高、中、低三种优先级。本实施例中,平均队列长度Leni的计算方法为:
计算当前物理队列长度QavgLen:
QavgLen=(1-wq)QavgLen′+wq×Qin (1)
其中,QavgLen′为上一次分组到达时计算得到的物理队列长度,wq为设置的权重系数,Qin表示当前物理缓冲队列的瞬时长度,Qin=Qin1+Qin2+Qin3,Qini表示第i个优先级队列的瞬时长度;
第i个优先级的平均队列长度Leni的计算公式为:
公式(2)采用低通滤波的原则计算平均队列长度,使得平均队列长度更加的平滑,队列长度的采样更加合理。
将公式(1)和公式(2)联立,可以得到:
其中,Leni′表示上一次分组到达时计算得到的第i个优先级的平均队列长度。
S2:根据平滑丢弃概率公式计算每个优先级队列的丢弃概率Pb_i,再根据丢弃概率Pb_i对分组中的每个优先级队列进行控制,平滑丢弃概率公式为:
其中,Minthi为第i个优先级的队列长度最小阈值,Maxthi为第i个优先级的队列长度最大阈值,并且Maxth(i+1)≤Minthi,Pmaxi为第i个优先级的调整控制参数,Pmaxi<Pmaxi+1,n为大于1的正整数。
从公式(4)可知,当n=1时,丢弃概率公式与一般RIO-C算法的丢弃概率公式类似,是线性的,当n>1,丢弃概率公式为非线性的。本实施例中,为了说明本发明的特点,设置n=2。图1是本发明中丢弃函数与队列长度关系示意图。如图1所示,当网络的平均队列长度QavgLen较小时,即网络负载较轻时,计算得到的各个平均队列长度Leni也较小,各优先级队列的丢弃概率增长速度缓慢,从而可以降低丢弃分组数目,充分利用网络资源;当网络的平均队列长度QavgLen较大时,即网络负载较重时,计算得到的各个平均队列长度Leni也较大,分组的丢弃概率增长速度加快,并且通过各优化级队列长度阈值的设置,使高优先级的队列丢弃概率最低,从而满足区分服务的要求。
下面首先对本发明区分服务的队列管理方法所提出的平滑丢弃概率函数对 各个优先级队列的区分情况进行理论分析。
1)当Minthi<Leni≤(Minthi+Maxthi)/2
(a)当高优先级和低优先级在队列分组中数量相同,即可等效为Leni=Leni+1时,设Maxthi=M×Minthi,Maxth(i+1)=W×Minth(i+1),其中M>1、W>1,
Minthi=Maxth(i+1)+δ=W×Minth(i+1)+δ(δ≥0) (5)
Maxthi=M×(W×Minth(i+1)+δ) (6)
此时,不同优先级分组丢弃概率之比为公式(7)所示:
由公式(5)与(6)可知:
因此可以得出表达式(7)的值小于1,即所以当各个优先级队列中分组数量相同时,低优先级的丢弃概率较大。
(b)当到达相同的丢弃概率时,即Pbi=Pb(i+1)时,可推出公式(9):
此时,由公式(5)与图1可知
因此,可以得出:
化简可得出Leni+1<Leni。因此可知,当丢弃概率相同时,高优先级队列中分组数量多于低优先级队列分组数量,高优先级队列长度较长。
2)当(Minthi+Maxthi)/2<Leni≤Maxthi
(a)当高优先级和低优先级在队列分组中数量相同,即可等效为Leni=Leni+1,可推导出以下表达式。
为了描述方便,单独把(12)中次方多项式进行运算:
由公式(5)和(6)可知:
因此可得出表达式(13)的值小于1,则:
因此可以得出即在队列长度相同时,较低先级的分组丢弃概率较大。
(b)当到达相同的丢弃概率时,即Pbi=Pb(i+1)时
将等式(16)变化为:
因为故由(17)可推出
由公式(5)与不等式(18)联立可得
2Leni-(M+1)×(W×Minth(i+1)+δ)>2Leni+1-(W+1)×Minth(i+1) (19)
又因为(M+1)×(W×Minth(i+1)+δ)>(W+1)×Minth(i+1),所以可得出Leni>Leni+1,因此在丢弃概率相同时,高优先级队列长度较长,即队列中的分组数目较多。
下面对本发明区分服务的队列管理方法的性能进行实验仿真。本实验仿真的平台是ubuntu12.04LTS+NS2.35,在实验中采用了基于NS2.35内核的区分服务架构,在整个仿真过程中,队列管理采用AF结构,即一个物理队列,三个虚拟队列。表1是实验仿真过程中的参数设置。
Minth | Maxth | Pmax | wq | |
虚拟队列1 | 20 | 40 | 0.02 | 0.02 |
虚拟队列2 | 10 | 20 | 0.10 | 0.02 |
虚拟队列3 | 5 | 10 | 0.20 | 0.02 |
本实验仿真中,平滑丢弃概率函数的参数n=2。
图2是实验仿真的网络拓扑图。如图2所示,本实验仿真中,S0、S1、S2分 别为源端口发送节点,D0、D1、D2为相应的目的接收节点,E1、E2分别为边缘网络节点,C为核心网络节点,其中所有节点之间的链路时延均为5ms,发送端和接收端到边缘网络节点的链路带宽均为5M,E1与C之间的链路带宽为10M,C与E2之间的链路带宽为5M,因此C与E2之间为颈瓶链路,在网络节点C监测网络流量,从而分析整个网络QoS性能。
仿真实验1:TCP业务流与UDP业务流并存
从源点S0处发送的业务流为分组大小为1000字节的TCP流,传输的是FTP业务,从源点S1、S2处发送的业务流均为分组大小为1000字节,速率为2Mps的UDP流,传输的是CBR业务,其中设置S1发出的业务流优先级比S2的业务流高。此时在边缘路由器E1与边缘路由器C之间分别采用RIO-C算法和本发明进行仿真,仿真时间为60s,在核心路由器处进行统计数据分组的信息。
图3是仿真实验1中平均队列长度对比图。如图3所示,相对于RIO-C算法,采用本发明时,链路上平均队列长度随时间的抖动变化较小,并且平均队列长度可以在较长的时间内几乎不变,即平均队列长度更加平稳,因此在TCP与UDP混合时,采用本发明的系统的队列稳定性能更好。
图4是仿真实验1中各节点业务流的吞吐率对比图。图5是仿真实验1中各节点业务流的丢包率对比图。如图4和图5所示,相对于RIO-C算法,采用本发明时,从S0、S1、S2到D0、D1、D2节点业务流的丢包率明显降低,吞吐率增加。从Sx发生的高优先级业务丢包率有一定的降低,吞吐率几乎不变,从S2发出的低优先级业务的丢包率增加,吞吐率降低。可以看出,本发明牺牲了部分低优先级分组的性能,更好的保护更高优先级的业务,区分服务的能力更强。
综上,在TCP业务流和UDP业务流并存时,本发明可以很好地实现区分服务,满足不同优先级业务的需求,同时本发明与RIO-C算法相比,更好地保护了高优先级的业务流,使得TCP业务流的丢包率降低,吞吐率得到提升,同时链路中的平均队列长度的抖动更小、稳定性能更好,因此本发明增加了系统的稳定性,有效的提升了网络的性能。
仿真实验2:UDP业务流突发场景
仿真实验2的仿真环境与实验1相似,在30秒时UDP突发至3Mps。
图6是仿真实验2中平均队列长度对比图。如图6所示,当UDP流量突发 时,TCP会根据拥塞情况进行流量控制,因此与图3相比,整个链路队列的长度变化不大。本发明与RIO-C相比,队列长度的抖动较小,队列的稳定性较强。因此本发明在UDP和TCP混合时,队列较为稳定,整个系统的稳定性增加。
图7是仿真实验2中各节点业务流的吞吐率对比图。图8是仿真实验2中各节点业务流的丢包率对比图。如图7和图8所示,在UDP突发的场景中,和RIO-C算法相比,在采用本发明时,TCP业务的丢包率降低,吞吐率得到了提升,同时从S1发出的较高优先级的分组的丢包率明显减低,吞吐率得到了提升,从S2发出的较低优先级分组的丢包率增加,吞吐率降低。这是因为本发明牺牲了低优先级分组的性能,确保了高优先级分组得到服务,满足了区分服务的要求。并且在采用本发明时系统总体的吞吐率得到了提升。
综上,在UDP流量突发时,本发明和RIO-C算法相比,TCP业务与较高优先级的业务吞吐率有所增加,丢包率降低,同时链路中的平均队列长度的抖动更小、稳定性能更好,可见本发明增加了系统的稳定性,有效的提升了网络的性能。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
Claims (1)
1.一种区分服务的队列管理方法,其特征在于,包括以下步骤:
S1:路由器在每一个分组到达时,计算三种优先级队列的平均队列长度Leni,i=1,2,3,分别对应高、中、低三种优先级;平均队列长度Leni的计算方法为:
计算当前物理队列长度QavgLen=(1-wq)QavgLen′+wq×Qin,其中,QavgLen′为上一次分组到达时计算得到的物理队列长度,wq为设置的权重系数,Qin表示当前物理缓冲队列的瞬时长度,Qin=Qin1+Qin2+Qin3,Qini表示第i个优先级队列的瞬时长度;第i个优先级的平均队列长度Leni的计算公式为:
S2:根据平滑丢弃概率函数公式计算每个优先级队列的丢弃概率Pb_i,再根据丢弃概率Pb_i对分组中的每个优先级队列进行控制,平滑丢弃概率函数公式为:
其中,Minthi为第i个优先级的队列长度最小阈值,Maxthi为第i个优先级的队列长度最大阈值,并且Maxth(i+1)≤Minthi,Pmaxi为第i个优先级的调整控制参数,Pmaxi<Pmaxi+1,n为大于1的正整数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410289786.3A CN104092566B (zh) | 2014-06-25 | 2014-06-25 | 一种区分服务的队列管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410289786.3A CN104092566B (zh) | 2014-06-25 | 2014-06-25 | 一种区分服务的队列管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104092566A CN104092566A (zh) | 2014-10-08 |
CN104092566B true CN104092566B (zh) | 2017-04-12 |
Family
ID=51640248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410289786.3A Active CN104092566B (zh) | 2014-06-25 | 2014-06-25 | 一种区分服务的队列管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104092566B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108737208B (zh) * | 2018-03-21 | 2020-09-22 | 北京天融信网络安全技术有限公司 | 基于安全网关深度包检测的连接同步方法、装置及计算机 |
CN116566906B (zh) * | 2023-07-04 | 2023-11-03 | 南京信息工程大学 | 基于队列状态的异构链路汇聚节点队列管理方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1423877A (zh) * | 2000-07-18 | 2003-06-11 | 阿尔卡塔尔公司 | 基于域的阻塞管理 |
US7035216B2 (en) * | 2001-04-27 | 2006-04-25 | Fujitsu Limited | Congestion control unit |
CN101860475A (zh) * | 2010-04-02 | 2010-10-13 | 北京邮电大学 | 基于上下文感知的自治队列管理的方法 |
CN101969408A (zh) * | 2010-11-03 | 2011-02-09 | 南京邮电大学 | 基于分组dscp标记的主动队列管理方法 |
CN102469510A (zh) * | 2010-11-11 | 2012-05-23 | 中兴通讯股份有限公司 | 用于3g网络视频传输的内容感知主动队列管理方法 |
CN103139103A (zh) * | 2011-12-02 | 2013-06-05 | 京信通信系统(中国)有限公司 | 一种网络拥塞的控制方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5659125B2 (ja) * | 2011-01-26 | 2015-01-28 | アラクサラネットワークス株式会社 | 中継装置、中継方法 |
-
2014
- 2014-06-25 CN CN201410289786.3A patent/CN104092566B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1423877A (zh) * | 2000-07-18 | 2003-06-11 | 阿尔卡塔尔公司 | 基于域的阻塞管理 |
US7035216B2 (en) * | 2001-04-27 | 2006-04-25 | Fujitsu Limited | Congestion control unit |
CN101860475A (zh) * | 2010-04-02 | 2010-10-13 | 北京邮电大学 | 基于上下文感知的自治队列管理的方法 |
CN101969408A (zh) * | 2010-11-03 | 2011-02-09 | 南京邮电大学 | 基于分组dscp标记的主动队列管理方法 |
CN102469510A (zh) * | 2010-11-11 | 2012-05-23 | 中兴通讯股份有限公司 | 用于3g网络视频传输的内容感知主动队列管理方法 |
CN103139103A (zh) * | 2011-12-02 | 2013-06-05 | 京信通信系统(中国)有限公司 | 一种网络拥塞的控制方法及装置 |
Non-Patent Citations (3)
Title |
---|
一种支持区分服务的主动队列管理算法;曹振臻;《铁道学报》;20080815;第30卷(第4期);第32-38页 * |
区分服务网络中主动队列管理算法;刘威;《软件学报》;20050630;第16卷(第6期);第1120-1130页 * |
针对多类型网络服务的队列管理优化算法;邱泓;《微计算机信息》;20110415;第27卷(第4期);第152-154页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104092566A (zh) | 2014-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104272680B (zh) | 用信号通知拥塞 | |
CN101958833B (zh) | 一种基于随机早期侦测red的网络拥塞控制方法 | |
CN103929372B (zh) | 主动队列管理方法和设备 | |
CN102595503B (zh) | 一种基于无线多媒体传感器网络的拥塞控制方法 | |
CN101969408B (zh) | 基于分组dscp标记的主动队列管理方法 | |
CN103647722B (zh) | 一种基于信誉的链路拥塞控制方法 | |
Egaji et al. | A comparison of Mamdani and Sugeno fuzzy based packet scheduler for MANET with a realistic wireless propagation model | |
CN107948103A (zh) | 一种基于预测的交换机pfc控制方法及控制系统 | |
CN109428830A (zh) | 一种动态调整onu设备端口限速阀值的装置及方法 | |
Balogh et al. | Performance evaluation of WFQ, WF 2 Q+ and WRR queue scheduling algorithms | |
CN105337885A (zh) | 一种适用于信用量整形网络的多段分组最坏延迟计算方法 | |
CN104092566B (zh) | 一种区分服务的队列管理方法 | |
Cakmak et al. | Performance comparison of queue management algorithms in lte networks using NS-3 simulator | |
Rao et al. | Analysis of sfqCoDel for active queue management | |
CN110943927A (zh) | 基于时延管理的命名数据网络传输控制方法、装置和设备 | |
CN103414654B (zh) | 一种实现带宽分流方法及系统 | |
Sivasubramaniam et al. | Enhanced core stateless fair queuing with multiple queue priority scheduler | |
Vieira et al. | Estimation of backlog and delay in OFDM/TDMA systems with traffic policing using Network Calculus | |
Biddut et al. | On the analysis of RED algorithm in ZigBee network for queue management | |
Musa et al. | A Comparative Study of Different Queuing Scheduling Disciplines | |
Chawla et al. | Performance evaluation of droptail and random early detection | |
RU2696218C1 (ru) | Способ управления очередями в маршрутизаторах транспортной сети связи | |
Waoo et al. | Review of congestion control techniques in wireless sensor network | |
Kaur et al. | A weighted fair queue based SBPN (WFQ-SBPN) algorithm to improve QoS for multimedia application in mobile ad hoc networks | |
Wei et al. | Analysis of New Energy Oriented Electric Power Protection Service Queue Scheduling Mechanism |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |