几种典型AQM算法在高速网络下比较探究.doc

几种典型AQM算法在高速网络下比较探究.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
几种典型AQM算法在高速网络下比较探究

几种典型AQM算法在高速网络下比较探究   【摘要】 本文分析和比较几种典型的主动队列管理(Active Queue Management, AQM)算法在高速网络中的性能,经仿真实验发现这几种AQM算法在高速网络中的性能都不理想,主要表现为:链路的带宽利用率不高,全局同步现象严重,队列长度不能维持在一定值附近。这些现象说明了现有的AQM算法在高速网络下不能很好地满足QoS(quantity of serve)的要求,改进AQM算法势在必行 【关键词】 AQM算法 NS仿真模拟 一、引言 当前针对高速网络的拥塞控制研究中,主要针对源端算法或基于反馈的机制而进行,在中间节点方面研究得较少。而对于源端算法来说,如果没有中间节点的支持,很难达到理想的性能。因此,有必要考察各种典型的AQM算法结合源端算法在高速网络下的性能 二、算法的评价指标 目前,路由器中大多?凳腔?于“弃尾”(Drop-Tail)的队列管理,RED[1]算法或RED的变种作为可选配置在路由器上,但常常不被使用。AQM的部署步伐之所以慢是由于缺乏对各种算法较为详细的、一致的客观评价标准,大多数AQM评价工作是为了新算法的有效性目的而进行的。通常对AQM算法性能的评价主要包括: 1、队列的稳定性:AQM的目的是控制路由器中的队列长度,因此算法稳定与否直接关系到路由器中队列长度的变化情况,而队列长度的变化又直接影响到网络的服务质量。一方面,对于一个特定的TCP连接,由于其传播延迟是固定的,因此该连接传输时延和时延抖动的大小主要是由路由器中的队列长度所决定的;另一方面,路由器中的队列长度直接关系到其输出链路的带宽利用率,只有当队列长度不为零时才能保证网络带宽的有效利用。因此一个好的AQM算法应能使队列长度稳定在一个较低的值附近 2、高效的带宽利用率:队列长度不为零时可以保证路由器输出链路的带宽利用率,但输入链路的带宽利用率要靠丢包率来保证,对于一个特定的TCP连接,若丢包率过高,将会导致不必要的重传,从而降低带宽的利用率。因此,一个好的AQM算法应该既要保证队列长度的稳定性,又要保证高效的带宽利用率 3、公平性:AQM的目标之一是改进Drop-Tail队列的公平性。REC2309强调:路由器的队列机制应保护适应流,对非适应流进行有效的鉴别和限制 4、算法的复杂程度:算法的复杂程度是决定AQM算法是否实用的一个关键因素。近年来,随着网络带宽的迅速增加,路由器的处理速度成为影响网络性能的一个主要因素,因此应尽可能降低AQM算法的复杂程度以减小路由器的计算量。由于骨干路由器的负荷相当重,瓶颈链路非常繁忙,因此一个简单高效的拥塞检测方法以及丢弃策略对于算法的利用及有效推广是至关重要的 5、对网络状态变化的适应能力:具有较强的鲁棒性,即对环境变化不敏感。Internet的复杂性和异构性决定了网络状态的变化是难以避免的,因此一个好的AQM算法应该对网络状态的变化具有很好的适应能力,在网络负载、传输时延等因素发生变化时,仍可实现好的传输性能 下面,笔者将从带宽利用率、丢包率、队列长度的稳定性来考察几种典型的AQM算法在高速网络中的性能 三、仿真实验环境 对于现有的AQM算法,可以归为三类,分别为:基于队列长度的AQM算法、基于瞬时队列长度和装载量的AQM算法和基于速率的AQM算法。这里,笔者选择典型的、具有代表性的RED、PI[2]、BLUE[3]和REM[4]算法和现行使用的Drop-Tail算法来进行考察。笔者在ns-2[5]平台上进行仿真,仿真的网络拓扑结构如图1所示,该环境中,有两个中间节点N1、N2,其相连的链路为瓶颈链路,带宽为1Gbps,时延为20ms。发送端和接收端各为4个节点,其中,S1到N1,R1到N2之间的链路带宽为1Gbps,时延为1ms, 其他节点到N1和N2的链路带宽均为1Gbps和2ms。瓶颈链路的缓冲区容量设为2500个数据包。每隔0.1s,S1、S2、S3、S4各发起一个HSTCP连接,这里需要说明的是,HSTCP是针对高速网络而设计的协议,正如前面所讨论,TCP协议在高速网络下性能非常差,而笔者仿真的目的是考察各种AQM算法在高速网络下的性能,因此不能使用TCP连接,而HSTCP在响应性、公平性、TCP友好性上都较为优秀,因此笔者的仿真实验选择HSTCP作为配合AQM的端算法。为了能引起拥塞,四个HSTCP连接的应用均为FTP,也就是说只要拥塞窗口允许就一直发送数据,且不考虑接收端的接收能力,只考虑网络传输能力,为了做到这点,笔者设置接收端的通告窗口为8000个数据包。同时,接收端采用每收到一个数据包就发回一个确认的机制。整个仿真过程为1000s,在瓶颈链路上,笔者分别使用Drop-Tai

文档评论(0)

docman126 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7042123103000003

1亿VIP精品文档

相关文档