基于TCP异构网络动态性能扩展代理.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于TCP异构网络动态性能扩展代理

基于TCP异构网络动态性能扩展代理   摘要:由于互联网中大量异构网络的存在,导致网络的传输性能大大降低。为此,首先分析了异构网络中TCP的性能特点,其次详细介绍了如何通过增加PEP(performance enhancement proxies)的方法来改善异构网络的传输性能。   关键词:异构网络; 性能扩展代理; 提前应答; 往返延迟   中图分类号:TP393.01文献标志码:A   文章编号:1001-3695(2007)12-0324-03      0引言      随着因特网的快速发展,其应用范围越来越广。但是传输距离、延迟、有效带宽不同,导致很多结构不相同的局域网要进行互联。这种结构的网络称为异构网络,如卫星网络、无线网络、QoS网络等。异构网络进行互联时,传输性能将大大下降。为了提高网络的传输性能,本文首先分析在异构网络中TCP的性能,然后介绍一种通过路由器支持的动态拥塞控制方法来改善TCP的性能。其中特别使用了性能扩展代理[1]。      1传统TCP的问题      为了描述异构网络中TCP的性能指标,本文采用如图1所示的网络结构,并用NS2模拟软件进行模拟。   图1中,在A与C、D与B之间的连接模拟本地可达的网络,并且它们固定为10 Mbps的带宽和10 ms的延迟。C与D之间的连接模拟因特网中的异构网络,并且它拥有不同的延迟(由参数??d??确定)和1 Mbps的带宽,因此它是这个网络的连接瓶颈。假设从A到B之间是一个长的TCP数据流,使用标准的TCP配置,如TCP NewReno,窗口大小为20,初始拥塞窗口为1,每个连接等待队列大小为50。本文将比较B点的吞?┩铝?。   首先来看在延迟与带宽均不同的情况下TCP的性能。从图2可以看到,随着延迟的增加,吞吐量越来越低。这是因为一旦延迟变高,要达到有效带宽所允许的最大吞吐量,在瓶颈连接处就需要较大的TCP窗口和较大的缓存。从图2中还可以看到,随着延迟时间变大,慢启动的时间也变长,从而导致TCP的性能下降。这是非常重要的,因为在一个TCP连接中,慢启动时间对吞吐量影响很大,特别是在Web通信中。较大的时延将严重影响TCP性能。   图2所示的模拟结果说明,延迟和带宽这两个参数将严重影响网络的吞吐量,从而导致TCP的性能下降。其原因在于TCP端到端的控制模型。标准的TCP使用定时的ACK包来估计当前可用的带宽,并且使用加性增长和乘性减少的方法来对发送方的窗口大小作出反应。假如给标准TCP一个小的缓存,这种方法将变得无效,因为缓存的反应时间可能会比带宽的变化速度还要慢,其结果将使TCP的性能下降。      2新的体系结构解决方法      为了改善性能,提高吞吐量,可以通过在异构网络的边缘路由器上设置PEP来控制TCP的数据流量(图3)。其基本思路就是利用PEP来监控网络中通过其TCP数据流中的ACK包。在PEP处故意加快或减慢ACKs的发送,从而改变发送方数据包的发送速度,使控制循环(发送方到PEP再到发送方)缩短以达到更好的拥塞控制并提高吞吐量。   2.1在PEP下的拥塞控制   如果假设网络拥塞通常发生在不同网络的边界处, PEP便可以控制所有经过PEP的数据流,并且通过产生提前应答来达到提高吞吐量的目的。通常情况下,当接收方接收到一个数据包时,会给发送方发送一个ACK表示接收到数据;发送方只有在接收到ACK后才可能继续发送下一个数据包。但是如果采用了PEP,每当有数据通过PEP时,它就会相应地产生一个premature ACK返回给发送方;发送方在接收到premature ACK后,就可以发送下一个数据包,从而缩短了RTT的时间,增加了发送数据包的数量,提高了吞吐量。   当使用premature ACK技术时,恢复那些被PEP确认过但可能丢失的包便成了PEP要解决的问题。因此,PEP必须要为那些已经被提前确认过但相应真实的ACK还没有从接收方回到PEP的包提供一个缓存。当真实的ACK到达时,PEP必须从缓存中清除相应的数据包,并且丢弃这个真实的ACK(因为发送方已经提前接收到了premature ACK)。同时也要注意其他可能引起丢包的情况,如超时重传。此外,PEP必须控制premature ACK的发送速度,以防止发送方发包的速度过快而导致PEP的缓存溢出。   在PEP中设置一个缓存来存储每一个通过PEP的数据包,并且通过设置一个阈值(watermark)来表示缓存的状态。 这个状态信息将被用于控制TCP数据流中的ACK。当一个TCP数据流首次启动时,PEP便相应地设定缓存的最大值和watermark的初始值。当一个TCP数据报文段到达边缘路由器时,PEP将根据当前缓存大小和water

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档