付钰 张艳琴 胡俊超 潘彩平
摘 要:近年来的研究表明,网络流量呈现出很强的自相似特性,这是造成网络拥塞的重要因素之一。因此该文提出了一种基于时间的主动队列管理算法,该算法利用ON/OFF源模型模拟产生自相似流,依据信源持续发送数据包的时间,来选择性地接收数据包。用MATLAB进行仿真,实验结果表明该算法的队列管理性能明显优于ARED等传统队列管理算法,能很好地控制队列长度。
关键词:自相似 主动队列管理 ON/OFF源 拥塞控制
中图分类号:TP393 文献标识码:A 文章编号:1674-098X(2017)06(c)-0142-02
20世纪90年代初,D.V.Wilson等人对实际的网络流量进行了大量的研究[2],通过收集大量以太网业务流的数据包,对现实网络流量做出了充分观察与分析,最终得出现实网络流量模型的统计特性与传统流量模型的统计特性有着较大的差别。实际的网络流量表现出明显的自相似特性,反应在网络流量上面,就是指网络流量是一种随机过程,并且在时间尺度上呈现出自相似性,在进行合理的放大后,依然具有这种性质。自相似性对网络拥塞控制具有很深的影响,所以传统的基于泊松流量模型的信源已经不能满足研究的需要。为了能够模拟出更加真实的网络流量模型,我们需要改进信源模型。在仿真实验中采用ON/OFF源模型[4]产生具有自相似性的流量,并提出一种依据信源持续发送数据的时间长短来控制接收数据包的新算法。
1 ON/OFF源模型生成自相似流
ON/OFF源是一種信源模型,用于模拟网络业务流量的产生。ON/OFF源的产生机制是模仿真实的用户,在产生流量的时候,每个用户会持续发送数据包,然后会停止一段时间,用ON周期与OFF周期分别代表持续发送时间与停止发送的时间。并且ON周期与OFF周期独立同分布,具有严格交替性。在ON周期按恒定速率发送数据包,在OFF周期停止发送数据包。Willinger等人从以太网单个信源抽象出的ON/OFF模型中发现ON周期与OFF周期的持续时间呈重尾分布,重尾分布是网络流量自相似性质的一个重要的因素。Willinger等人证明当很多个服从Pareto分布的ON/OFF源叠加之后,就能产生具有自相似性质的流量。Pareto分布的概率密度是:
当时,Hurst系数H满足。用ON/OFF源模型模拟网络流量具有简单、容易实现等特点,能够有效地模拟出真实的网络流量。
2 拥塞控制与主动队列管理
通信网络中的带宽,交换节点中的缓存容量和处理机等等,都是网络资源。当大量的流量在网络中传输时,若对某一资源的需求超过了该资源所能提供的可用部分,网络的性能就会下降,甚至严重影响通信质量,导致延迟增大,重要的数据无法及时到达,破环一致性等等,给用户带来很差的网络体验。这种情况就是网络拥塞[3]。
为避免网络拥塞,就迫切需要有效的网络拥塞控制技术,以防止过多的数据注入到网络中,这样就可以使网络中的转发节点不致过载,保证通信质量。目前的网络拥塞控制,一是在协议层面上的,也就是TCP网络拥塞控制协议。还有一种减少网络拥塞发生的办法是主动队列管理,主要原理是在接收到数据包后根据资源的占用情况对数据包选择性地丢弃,这可以保证在网络拥塞发生前及时地调节信源发送的数据量。比如随机早期检测算法RED以及其各种改进的算法ARED,HPRED等[1]。
3 自相似流的队列管理算法
在自相似业务流下,以前的各种队列管理算法虽然也能达到一定的拥塞控制要求,但是在越来越复杂的网络流量环境下,仍然需要对其进行改进,以适应不断变化的网络流量。本文提出一种基于信源持续发送时间长度的主动队列管理算法。此算法与基本的RED算法的思想相同,也是根据上限值与下限值来控制信源的发包速率,但是不再依据队列长度来给定两个上下限值,而是根据信源持续发送数据包的时间,当信源发送数据包的持续时间过长时,就应该增大概率丢弃一些数据包,当信源持续发送数据包的时间比较短时,应该以更大概率接收数据包,这里涉及到两个重要的参数a和b,分别代表系统所允许的信源发送时间的最大值和最小值,信源实际的发送时间为t,然后根据以下过程接收数据包:
步骤1:从信源接收到数据包,并初始化参数a和b。
步骤2:判断信源发送数据包的持续时间t,若tb,进入步骤5。
步骤3:按概率1接收数据包。
步骤4:根据算法计算出概率P,按概率P接收数据包。
步骤5:按概率1拒绝数据包。
以下是仿真结果:
由仿真结果图可以看出,在自相似流模型下,ARED队列管理算法下的缓存平均队列长度比较大,与旧的ARED队列管理算法相比较,新的队列管理算法对应的平均队列长度大约为30,ARED列队管理算法对应的平均队列长度大约为50,降低了40%左右。这对于资源有限的卫星网络来说,新算法可以减少一定的硬件资源成本,降低网络延迟抖动的风险。
4 结语
该文主要介绍了在自相似流模型下基于时间的主动队列管理算法。该算法根据信源发送数据包的持续时间来选择性地接收到达的数据包,当发送时间过长时,以较大概率丢弃一定数量的数据包,当发送时间比较短时,以更大的概率接收数据包。在仿真实验中表现出比ARED算法更好的队列管理性能,有效地降低了缓存中的平均队列长度,并且使队列长度更加平稳,可以在一定程度上减少网络拥塞发生的可能性。
参考文献
[1] 余信珂.基于改进的控制时延主动队列管理算法研究[D].深圳大学,2016.
[2] 于秦.无线网络流量分形特性分析与建模[D].电子科技大学,2006.
[3] 张娅.自相似业务模型下主动队列管理算法的研究[D].江苏大学,2007.
[4] 胡严,张光昭.重尾ON/OFF源模型生成自相似业务流研究[J].电路与系统学报,2001(3):72-76,15.