论文部分内容阅读
在2006年的IEEE INFOCOM会议中,会议组织专设了一个有关高速网络的讨论组,旨在讨论千G位网络所带来的挑战和解决的办法,其中高速网络中的拥塞控制机制正是当前研究领域上的一个热点内容。现有的针对高速网络的拥塞控制算法中,研究的主要热点分为两种:第一种为端到端的拥塞控制机制,这类机制的代表为HighSpeed-TCP、Fast-TCP;第二种为基于反馈的拥塞控制机制,即利用中间节点的参与,把链路的负载情况反馈给端节点,端节点再根据反馈信息调整发送速率,这类机制的代表为XCP、VCP、RCP等。但XCP、VCP和RCP这类协议过多的依赖路由器的参与,这将使得路由器的任务过于繁重,实现起来也有很大的困难。而且XCP需要修改数据包的结构,增加数据包的头部位数,这更加大了实施的难度。VCP的反馈信息较XCP的较为粗糙,而且在路由器中沿用了Drop-Tail算法,所以,VCP仍然存在全局同步、死锁等问题。所以这几年对源端节点的拥塞控制研究变得异常活跃,源端节点的拥塞控制研究的主要集中点在于如何正确及时地获得反馈信息以及在得到反馈信息的基础上如何正确及时地调整拥塞窗口。而发出反馈信息需要中间节点的参与,纯粹的端算法没有与中间节点的算法相结合。因此,本文主要研究的是在高速网络下,结合已有的端算法,在IP层解决网络拥塞问题的方案。主要的工作有以下三个方面:1、分析和比较几种典型的主动队列管理(Active Queue Management, AQM)算法在高速网络中的性能,经仿真实验发现这几种AQM算法在高速网络中的性能都不理想,主要表现为:链路的带宽利用率不高,全局同步现象严重,队列长度不能维持在一定值附近。这些现象说明了现有的AQM算法在高速网络下不能满足QoS(quantity of serve)的要求。2、PI控制器建立在Mirsa等人提出的TCP/AQM控制论模型上,使用控制理论研究主动队列管理算法。理论分析和实验都表明,PI控制器比RED算法具有更小的队列抖动,从而在保证高带宽利用率的前提下,为源端提供了更小的延时抖动。但是在PI控制器中,参数是固定设置的,在高速网络下性能很差,不能满足AQM的设计目标。因此,文中提出一种加强型的PI控制算法——EPI,使用平均队列长度对丢包概率进行在线调整,使得PI能满足高速网络下的性能要求。仿真结果表明,在高速网络下,EPI的综合性能较PI优秀。3、BLUE算法是RED算法的一种改进,其使用队列溢出和链路空闲事件来进行队列管理。BLUE算法维持了一个概率Pm用以标记丢包概率。如果由于缓存溢出而产生丢包事件,则增加Pm,从而增加向源端发送拥塞通知的速度,相反,如果由于链路空闲导致队列为空,则减小Pm。相对于RED算法来说,BLUE算法减小了丢包率及对路由器缓存空间的需求,并且具有“学习”的功能,不需要计算很多复杂的参数,但却能有效地对路由器中的队列进行管理。但是,BLUE算法仍然存在着对动态的网络环境缺乏自适应能力的缺点。在控制领域中,模糊控制理论不需要很精确的数学模型,仅依赖于经验的积累、感觉和逻辑判断就可以获得很好的控制效果,因此,文中提出一种基于模糊理论的主动队列管理算法——FBLUE,该算法在BLUE原有的基础上增加了门限机制,根据模糊理论使用平均队列长度来动态地调整丢包概率的变化步长。经过仿真实验证明,FBLUE在传统的网络环境下,有效地保持了BLUE算法丢包率低的优点,并且使队列长度更加稳定,出现溢出和空闲的现象减少,在链路的带宽利用率上明显高于BLUE算法。在高速网络中保证了高的带宽利用率,且有效地控制队列长度稳定在一定值附近,克服了BLUE算法的全局同步现象,与其他几种经典AQM算法相比,在链路的带宽利用率、队列长度的稳定程度上都有很大的提高,并且在网络负载变化的情况下,仍然能保持良好的性能。