CN102932840B - 一种基于速率和队列长度的无线路由器主动队列管理方法 - Google Patents
一种基于速率和队列长度的无线路由器主动队列管理方法 Download PDFInfo
- Publication number
- CN102932840B CN102932840B CN201210458966.0A CN201210458966A CN102932840B CN 102932840 B CN102932840 B CN 102932840B CN 201210458966 A CN201210458966 A CN 201210458966A CN 102932840 B CN102932840 B CN 102932840B
- Authority
- CN
- China
- Prior art keywords
- buffer area
- queue length
- module
- team
- packet
- 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
- 238000007726 management method Methods 0.000 title claims abstract description 23
- 230000001105 regulatory effect Effects 0.000 claims abstract description 11
- 238000000034 method Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002789 length control Methods 0.000 description 1
- 238000005312 nonlinear dynamic Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于速率和队列长度的无线路由器主动队列管理方法。本发明共包括四个模块:入队模块,出队模块,更新模块和丢弃模块,根据缓存器入队速率和出队速率估计值,以及缓存器队列实时长度来控制调整数据分组丢弃概率,并同时利用缓存区入队速率和出队速率估计值来调整数据分组丢弃概率更新时间。本发明具有高适应性和高鲁棒性,在动态复杂的有线-无线异构网络环境下,具备在保证较高的链路利用率的条件下减小端到端时延的特点。
Description
技术领域
本发明属于路由器队列管理和拥塞控制领域,涉及一种基于速率和队列长度的无线路由器主动队列管理方法。
背景技术
网络拥塞控制是近十几年来一个热门的研究话题。经过实践证明,在传统网络环境下,TCP端到端拥塞控制机制能够有效的防止拥塞崩溃现象的发生。然而传统的端到端拥塞控制机制在公平性、端到端延时、链路利用率以及发生拥塞后恢复正常工况的响应性等指标等方面效率低下,网络服务质量也得不到很好的保证。所以主动队列管理(Active Queue Management,AQM)被推荐部署在网络中间节点(如路由器)上来增强端到端拥塞控制机制性能。
主动队列管理方法的主要技术要求包括:(1)提供高的网络吞吐量,提高网络带宽利用率;(2)降低网络端到端时延;(3)保证较高的鲁棒性和响应性;(4)方法简单高效,便于推广和扩展,能部署到实际网络中并可以适应不同的网络环境。
现有的主动队列管理方法中,由S.Floyd最早提出的随机早期检测(RED)方法应用最广泛,在征求意见文件Request for Comment(RFC)2309中被推荐为AQM唯一候选算法。但是随着实验研究的深入,人们逐渐发现RED算法本身存在着很多不完善的地方,如稳定性不理想,对参数选取敏感等。所以针对RED算法有着很多改进的版本,比如self-configuring RED(自配置RED)、ARED(自适应RED)、loss ratio based RED(基于丢包速率的RED)。这些改进的RED算法在一定程度上提升了RED算法在不同网络情形下的性能。C.V.Hollot等人在TCP流量控制动态非线性模型基础上提出了包含PI(比例积分)控制器的AQM。虽然PI控制器能够克服RED的部分局限,但是PI控制器鲁棒性较差,不适应复杂多变的网络环境。
目前AQM方法有两个主要的问题尚未得到完满解决:(1)大多数现有AQM方法是针对有线网络环境设计的,在无线网络环境下会导致网络服务质量下降;(2)大多数现有AQM方法没有自适应性,尤其算法中的参数多为静态参数,需要经过在经验基础上的选择才能够满足特定的网络环境。
发明内容
本发明的目的是克服现有技术的不足,提供一种能够保证高链路利用率和低传输时延的基于速率和队列长度的无线路由器主动队列管理方法,能够适应高误码率和网络容量变化的动态复杂有线-无线异构网络环境。
基于速率和队列长度的无线路由器主动队列管理方法,共分为入队模块,更新模块,丢弃模块和出队模块四个模块,方法的步骤如下:
步骤(1):初始化,等待新的数据分组到达;
步骤(2):当新的数据分组到达后,如果现有缓存区队列长度Q(t)小于缓存区最大队列长度QMax,转到步骤(3);如果现有缓存区队列长度Q(t)等于缓存区最大队列长度QMax,转到步骤(11);
步骤(3):数据分组入队,更新当前路由器缓存区队列长度Q(t);
步骤(4):根据下面公式:
rin(t)=(1-e-ΔT/K)1/ΔT+e-ΔT/Krin(tpre)
估计缓存区入队速率,其中e是自然常数,rin(t)为入队速率估计值,ΔT是更新时间,K为调节常数,tpre为前一次估计算法执行时刻;
步骤(5):判断当前系统时间和前一次丢弃概率更新时间的差值是否大于ΔT,是则转到下一步,否则转到步骤(8);
步骤(6):根据下面公式计算当前更新时间
其中e是自然常数,T为平均的往返时间Round-Trip Time,δ为更新时间调整常数,rin(t)和rout(t)为入队速率和出队速率估计值;
步骤(7):根据下列公式:
P(t)=1-θ-p(t)
p(t)=p(tpre)+γ[|rin(t)-rout(t)|+Qmax/Q(t)-1]
计算分组丢弃概率,其中P(t)为t时刻缓存区分组丢弃概率,θ和γ为调节丢弃概率变化的常数;
步骤(8):随机产生一个服从(0,1)上均匀分布的随机变量P,如果转到步骤(9);否则转到步骤(11);
步骤(9):数据分组出队,根据下列公式:
rout(t)=(1-e-ΔT/K)1/ΔT+e-ΔT/Krout(tpre)
估计此时刻缓存区出队速率,转到步骤(12),其中e是自然常数,rout(t)为出队速率估计值,ΔT是当前更新时间,K为调节常数,tpre为前一次估计算法执行时刻;
步骤(10):更新当前路由器缓存区队列长度Q(t);
步骤(11):丢弃该数据分组;
步骤(12):转到步骤(2),重复步骤(2)到步骤(11),直至结束。
本发明具有高适应性和高鲁棒性,在动态复杂的有线-无线异构网络环境下,具备在保证较高的链路利用率的条件下减小端到端时延的特点。
附图说明
图1为本发明的模块示意图;
图2为本发明的软件流程图;
图3为本发明的仿真实验拓扑图;
图4为本发明中二态马尔科夫错误模型示意图;
图5为本发明中链路利用率随时间的变化图;
图6为本发明中端到端时延随时间的变化图。
具体实施方式
本发明为一种无线路由器主动队列管理方法,可称之为基于速率和队列长度的主动队列管理方法(NRAQM)。目的是得到一种能够有效适应有线-无线异构网络环境的主动队列管理方法。仿真实验结果表明,这种主动队列管理方法能够有效适应有线-无线网络的时变特性,有良好的综合性能。
基于速率和队列长度的无线路由器主动队列管理方法,共分为入队模块,更新模块,丢弃模块和出队模块四个模块,模块示意图如图1所示。本发明的软件流程如图2所示,其中具体步骤如下:
步骤(1):初始化,等待新的数据分组到达;
步骤(2):当新的数据分组到达后,如果现有缓存区队列长度Q(t)小于缓存区最大队列长度QMax,转到步骤(3);如果现有缓存区队列长度Q(t)等于缓存区最大队列长度QMax,转到步骤(11);
步骤(3):数据分组入队,更新当前路由器缓存区队列长度Q(t);
步骤(4):根据下面公式:
rin(t)=(1-e-ΔT/K)1/ΔT+e-ΔT/Krin(tpre),
估计缓存区入队速率,其中e是自然常数,rin(t)为入队速率估计值,ΔT是更新时间,K为调节常数,tpre为前一次估计算法执行时刻;
步骤(5):判断当前系统时间和前一次丢弃概率更新时间的差值是否大于ΔT,是则转到下一步,否则转到步骤(8);
步骤(6):根据下面公式计算当前更新时间
其中e是自然常数,T为平均的往返时间Round-Trip Time,δ为更新时间调整常数,rin(t)和rout(t)为入队速率和出队速率估计值;
步骤(7):根据下列公式:
P(t)=1-θ-p(t)
p(t)=p(tpre)+γ[|rin(t)-rout(t)|+Qmax/Q(t)-1]
计算分组丢弃概率,其中P(t)为t时刻缓存区分组丢弃概率,θ和γ为调节丢弃概率变化的常数;
步骤(8):随机产生一个服从(0,1)上均匀分布的随机变量P,如果转到步骤(9);否则转到步骤(11);
步骤(9):数据分组出队,根据下列公式:
rout(t)=(1-e-ΔT/K)1/ΔT+e-ΔT/Krout(tpre)
估计此时刻缓存区出队速率,转到步骤(12),其中e是自然常数,rout(t)为出队速率估计值,ΔT是当前更新时间,K为调节常数,tpre为前一次估计算法执行时刻;
步骤(10):更新当前路由器缓存区队列长度Q(t);
步骤(11):丢弃该数据分组;
步骤(12):转到步骤(2),重复步骤(2)到步骤(11),直至结束。
本主动队列管理方法的核心是通过利用估计的缓存器入队速率和出队速率、以及缓存器队列实时长度来控制调整数据分组丢弃概率,并同时利用估计的缓存区入队速率和出队速率来调整数据分组丢弃概率更新的时间,来有效地提升网络的性能。
本主动队列管理方法主要分为四个模块:入队模块、更新模块、丢弃模块和出队模块。其中具体各个模块功能如下所述:入队模块主要功能是更新当前路由器缓存区队列长度和估计缓存区入队速率,主要包含上述步骤(2),步骤(3),步骤(4);更新模块是本发明的核心模块,主要包含上述步骤(5),步骤(6),步骤(7);丢弃模块主要功能是以P(t)的概率对缓存区内的数据分组做丢弃操作,主要包含上述步骤(8),步骤(11);出队模块主要功能是当数据分组出队后更新队列长度和估计缓存区出队速率,主要包含上述步骤(9),步骤(10)。
实施例
本实施例在NS2(Network Simulator,Version2)网络仿真软件上实现了一种基于速率和队列长度的主动队列管理方法(NRAQM),并对它的性能进行了详细测试。NS2网络仿真软件由UC Berkeley大学开发而成,是针对网络技术应用测试的开源免费软件模拟平台。同时NS2是目前学术界广泛使用的一种网络模拟软件,通过该平台所得出的研究结果也是被学术界所普遍认可的。
采用典型的杠铃型拓扑结构,如图3所示。其中n条数据流共用一条瓶颈链路。W(1),…,W(n)为发送节点,M(1),…,M(n)为接收节点,R和BS为路由器。数据发送端W(1),W(2),…,W(n)到R之间均为有线链路。数据接收端M(1),M(2),…,M(n)和基站BS之间均为无线链路。
在实施例中以TCP-Reno为缺省传输层协议。瓶颈链路缓存区队列长度为20个数据包。所有有线链路的带宽设置为10Mbps。所有链路传输时延设置为10ms。
为了验证本发明在复杂网络情形下的鲁棒性。将仿真的环境设置为一个包含流量变化、误码率变化和带宽变化的复杂情形。整个仿真实验持续60秒。开始10秒钟内,基于TCP的FTP业务流数目从0增加到100,同时每个FTP流持续时间为50秒,所有基于TCP的FTP业务流在实验开始60秒钟后都停止。无线链路带宽会在2Mbps和11Mbps之间随机变化。同时为了更准确的表现无线链路的误码率变化特点,采用了二态马尔科夫错误模型,如图3所示。其中平均误码率P可由下列公式计算:
其中G(Good)为误码率较低时的状态,误码率为PG;B(Bad)为误码率较高时的状态,误码率为PB;而G和B之间转变的概率分别为PGB和PBG。
在实施例中将NRAQM与已有的RED、Drop Tail和PI等AQM控制器进行比较。图4和图5分别是链路利用率和端到端时延随时间的变化图。从图4可以看出,NRAQM比RED、Drop Tail和PI等AQM控制器有着更高的链路利用率。这是因为NRAQM同时利用出队和入队速率作为参考变量,在带宽和误码率不断变化的无线链路中有更好的性能。从图5可以看出,NRAQM和RED相对于DropTail和PI有着更小的端到端时延。同时还可以看到NRAQM的端到端时延比RED、Drop Tail和PI的端到端时延震荡幅度更小。这是因为NRAQM采用的更新计时模块可以使端到端时延更加平稳。
Claims (1)
1.一种基于速率和队列长度的无线路由器主动队列管理方法,其特征在于共分为入队模块,更新模块,丢弃模块和出队模块四个模块,方法的步骤如下:
步骤(1):初始化,等待新的数据分组到达;
步骤(2):当新的数据分组到达后,如果现有缓存区队列长度Q(t)小于缓存区最大队列长度QMax,转到步骤(3);如果现有缓存区队列长度Q(t)等于缓存区最大队列长度QMax,转到步骤(11);
步骤(3):数据分组入队,更新当前路由器缓存区队列长度Q(t);
步骤(4):根据下面公式:
rin(t)=(1-e-ΔT/K)1/ΔT+e-ΔT/Krin(tpre),
估计缓存区入队速率,其中e是自然常数,rin(t)为入队速率估计值,ΔT是当前更新时间,K为调节常数,tpre为前一次估计算法执行时刻;
步骤(5):判断当前系统时间和前一次丢弃概率更新时间的差值是否大于ΔT,是则转到下一步,否则转到步骤(8);
步骤(6):根据下面公式计算当前更新时间
其中e是自然常数,T为平均的往返时间Round-Trip Time,δ为更新时间调整常数,rin(t)和rout(t)为入队速率和出队速率估计值;
步骤(7):根据下列公式:
P(t)=1-θ-p(t)
p(t)=p(tpre)+γ[|rin(t)-rout(t)|+Qmax/Q(t)-1]
计算分组丢弃概率,其中P(t)为t时刻缓存区分组丢弃概率,θ和γ为调节丢弃概率变化的常数;
步骤(8):随机产生一个服从(0,1)上均匀分布的随机变量P,如果P>P(t)转到步骤(9);否则转到步骤(11);
步骤(9):数据分组出队,根据下列公式:
rout(t)=(1-e-ΔT/K)1/ΔT+e-ΔT/Krout(tpre),
估计此时刻缓存区出队速率,其中e是自然常数,rout(t)为出队速率估计值,ΔT是当前更新时间,K为调节常数,tpre为前一次估计算法执行时刻;
步骤(10):更新当前路由器缓存区队列长度Q(t),转到步骤(12);
步骤(11):丢弃该数据分组;
步骤(12):转到步骤(2),重复步骤(2)到步骤(11),直至结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210458966.0A CN102932840B (zh) | 2012-11-14 | 2012-11-14 | 一种基于速率和队列长度的无线路由器主动队列管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210458966.0A CN102932840B (zh) | 2012-11-14 | 2012-11-14 | 一种基于速率和队列长度的无线路由器主动队列管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102932840A CN102932840A (zh) | 2013-02-13 |
CN102932840B true CN102932840B (zh) | 2015-05-06 |
Family
ID=47647513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210458966.0A Active CN102932840B (zh) | 2012-11-14 | 2012-11-14 | 一种基于速率和队列长度的无线路由器主动队列管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102932840B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486248B (zh) * | 2014-12-04 | 2017-11-14 | 南京邮电大学 | 基于广义pid的随机早期检测算法的aqm系统和方法 |
CN106713171B (zh) * | 2015-07-28 | 2020-04-03 | 腾讯科技(深圳)有限公司 | 服务器、基于延时队列的限流保护系统及方法 |
CN109787922B (zh) * | 2017-11-13 | 2020-08-21 | 中国移动通信集团公司 | 一种获取队列长度的方法、设备及计算机可读存储介质 |
CN107979491B (zh) * | 2017-11-20 | 2021-01-26 | 烽火通信科技股份有限公司 | 一种告警数据的处理方法和处理系统 |
CN109905331B (zh) * | 2017-12-08 | 2021-01-01 | 华为技术有限公司 | 队列调度方法及装置、通信设备、存储介质 |
CN109379437B (zh) * | 2018-11-21 | 2022-02-01 | 苏州金螳螂文化发展股份有限公司 | 基于数据缓存的速度处理方法和系统 |
CN114244711A (zh) * | 2022-02-24 | 2022-03-25 | 南京信息工程大学 | 基于平均队列长度及其变化率的自适应主动队列管理方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101056261A (zh) * | 2007-05-21 | 2007-10-17 | 中南大学 | 多速率无线局域网中接入节点的主动拥塞处理方法 |
CN101175031A (zh) * | 2007-05-21 | 2008-05-07 | 中南大学 | 一种基于二阶最优模型和自适应计算的路由器主动队列管理方法 |
-
2012
- 2012-11-14 CN CN201210458966.0A patent/CN102932840B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101056261A (zh) * | 2007-05-21 | 2007-10-17 | 中南大学 | 多速率无线局域网中接入节点的主动拥塞处理方法 |
CN101175031A (zh) * | 2007-05-21 | 2008-05-07 | 中南大学 | 一种基于二阶最优模型和自适应计算的路由器主动队列管理方法 |
Non-Patent Citations (2)
Title |
---|
基于速率和队列长度的主动队列管理算法研究;刘道峰;《南京理工大学硕士学位论文》;20070708;全文 * |
张鹤影,刘宝宏,窦文华.一种基于速率和队列长度的主动队列管理机制.《电子学报》.2003,第31卷(第11期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN102932840A (zh) | 2013-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102932840B (zh) | 一种基于速率和队列长度的无线路由器主动队列管理方法 | |
Kliazovich et al. | Cross-layer congestion control in ad hoc wireless networks | |
CN105471764B (zh) | 一种SDN网络中端到端QoS保障的方法 | |
Ren et al. | Traffic-aware dynamic routing to alleviate congestion in wireless sensor networks | |
CN105848238B (zh) | 基于多参数的无线传感器网络IPv6路由方法 | |
CN110730469B (zh) | 一种基于扩展卡尔曼无线网络带宽预测方法及其拥塞控制 | |
Thilagavathe et al. | Cross layer based congestion control technique for reliable and energy aware routing in MANET | |
Winstein et al. | End-to-end transmission control by modeling uncertainty about the network state | |
CN103108372A (zh) | 基于节点发送和接收能力的干扰感知跨层路由方法 | |
CN101997776B (zh) | 基于拥塞辨识的路由器队列控制系统的控制方法 | |
CN105188084A (zh) | 一种基于拥塞控制的无线传感器网络路由优化方法 | |
Di Stasi et al. | Combining multi-path forwarding and packet aggregation for improved network performance in wireless mesh networks | |
CN102904829A (zh) | 基于历史连接信息的单边加速fast tcp改进算法 | |
Xu et al. | Adaptive congestion control in infrastructure wireless LANs with bounded medium access delay | |
Goswami | Experimental based performance testing of different TCP protocol variants in comparison of RCP+ over hybrid network scenario | |
Kiki et al. | Improved AOMDV Routing Protocol in Manet UAV Based on Virtual Hop | |
Meng et al. | Research on TCPW improvement in hybrid network | |
Cui et al. | Lyapunov optimization based energy efficient congestion control for MPTCP in hetnets | |
Deng et al. | Finishing the tiny flows quickly for common data centre services | |
Ho et al. | Gallop-Vegas: An enhanced slow-start mechanism for TCP Vegas | |
CN113766561B (zh) | 基于跨层优化的无人集群网络拥塞控制方法 | |
CN102082735B (zh) | N次弃头的被动队列管理的方法 | |
Mahajan et al. | The Modified Gaussian Function based RED (MGF-RED) Algorithm for Congestion Avoidance in Mobile Ad Hoc Networks | |
Shi et al. | ST-XCP: A Stable XCP Protocol | |
Sharma et al. | Congestion Aware Link Cost Routing for MANETS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |