基于链路自适应的异构网络tcp拥塞控制方法

文档序号:9306645阅读:613来源:国知局
基于链路自适应的异构网络tcp拥塞控制方法
【技术领域】
[0001] 本发明涉及通信网络技术领域,具体涉及一种基于链路自适应的异构网络TCP拥 塞控制方法(以下简称INVS算法)。
【背景技术】
[0002] 随着通信技术的发展和普及,传统的通信网络已发展成为包含有线网络,无线网 络和卫星网络等多种IP网络的全球异构互联网。高速光链路、卫星长时延链路和各种无线 链路的共存使得链路带宽在无线链路中比较稀缺,在光纤链路中非常充足;端对端往返时 延(Roundtriptime,RTT)在有线网络中小到甚至低于1毫秒,在卫星网络中大到甚至超 过1秒;链路丢包率在光纤链路上可能低于10 6,在无线链路上则可能高于1 %。简言之, 互联网中端对端带宽、RTT和丢包率等的差异很大,这也是其异构性的具体体现。TCP在尽 力交付的IP网络中为上层业务提供可靠的端到端传输服务,承载着约90%的互联网流量。 然而,随着互联网异构性的增加,TCP协议的传输性能面临严峻挑战。目前,网络异构性已 成为互联网拥塞控制研究的热点。
[0003] 目前已经有大量针对异构性的网络拥塞控制算法研究,但大多数只针对异构性某 一方面进行改进。如针对RTT差异性造成的公平性问题,CainiC等人提出了Hybla算法, 大大改善了RTT公平性,但在高速链路和高丢包链路上Hybla却不能充分利用网络带宽。针 对带宽和RTT的差异性造成传统TCP在高速和大时延,即大时延带宽积(Bandwidth-delay product,BDP),网络中不能充分利用带宽的问题,HS-TCP、STCP、CUBIC和Compound TCP(CTCP)等被提出了,CUBIC和CTCP已经在互联网上被广泛部署使用。然而,这些算法不 适用于有高丢包的无线链路,同时也存在公平性问题。如CUBIC、STCP和HS-TCP等在与TCP Reno共享链路时,存在严重的公平性问题;CTCP与CUBIC等算法共享链路时,不足以竞争到 公平的带宽资源。针对丢包率的差异性,如无线链路丢包造成TCP性能退化的问题,Veno、 JTCP、Westwood等被提出了,这些算法采用固定队列长度或者时延来区分拥塞丢包和非拥 塞丢包。然而,随着链路缓存大小差异性的增加,采用固定队列(或时延)门限区分丢包方 法的准确性日趋下降。此外,也有一些算法采用了特殊策略,如PEPsal和indirect-TCP将 TCP连接分成几段以屏蔽无线链路丢包对TCP性能的影响;TCP-Jersey采用路由辅助的显 式拥塞通告策略判定丢包类型;网络编码TCP通过对数据包进行编码抵抗随机丢包。由于 部署应用对网络的特殊要求,这些特殊策略难以在互联网上被广泛使用。
[0004] 在同时考虑带宽、时延和丢包差异性方面,毕元梅等提出了一种根据链路类型 选择对应拥塞控制算法的策略,即卫星链路用Vegas,无线链路用Westwood、高速链路用 HS-TCP和一般链路用NewReno。由于其链路信息的获取需要中继路由器将链路类型加入IP 报文,在互联网上部署应用的非常困难。
[0005] 综上所述,现有的各种TCP拥塞控制方法,在异构网络的应用中还普遍存在一些 缺陷。

【发明内容】

[0006] 本申请通过提供一种基于链路自适应的异构网络TCP拥塞控制方法,以解决由于 不同链路带宽和时延的差异性以及高丢包造成TCP传输性能退化的技术问题。
[0007] 为解决上述技术问题,本申请采用以下技术方案予以实现:
[0008] -种基于链路自适应的异构网络TCP拥塞控制方法(简称INVS算法),其关键在 于,当拥塞窗口cwnd超过慢启动门限值ssthresh时,进入拥塞避免阶段,在该阶段中,每收 到一个确认字符ACK时,拥塞窗口按如下方式进行调整:
1之间的最大值,T为指数因子,用于减小RTT增大的不利影响。
[0011] 式(1)中第一个表达式为凸窗口的增长过程,第二个表达式实现到达饱和状态后 的带宽探测过程,第三个表达式实现凸函数增长阶段到网络探测阶段的过度。根据式(1), INVS在拥塞避免阶段开始时,cwnd快速增加,当cwnd接近饱和点cwndjt减慢;当cwnd超 过饱和点时,逐渐加速探测带宽,饱和点(^!!(^表示带宽已被充分利用,换言之,如果发送 端继续增大传输速率,将可能发生拥塞,否则说明仍有可用带宽。
[0012] k是网络和链路状态的反应,直接影响INVS的效率和公平性。为反应链路状态,k 为链路带宽和最小RTT的函数,带宽和RTT的差异性通过k反应在窗口增长函数中。BWest 用于体现链路环境,因此,平均带宽足以体现带宽大小且比较稳定。INVS每一个RTT估计一 次BWest,并在估计中通过最小估计周期和低通滤波器消除估计带宽的抖动以获得稳态带 宽,减小了因ACK时延抖动的影响,也可避免频繁计算k。
[0013] 从k的表达式可以看出,k随着带宽或RTT的增大而减小。带宽或者RTT的增大 会导致网络BDP的增加,即允许更多的报文同时在网络中传输。为了更有效充分利用网络 资源,每收到一个ACK,cwnd增加量随着网络BDP的增大而增大,因此,当BDP增大时,k减 小。当RTT_>RTI;ef,k恒为c。这时由于窗口增长速率已经很快,即使带宽和 RTT增大,k也不再减小。
[0014] 此外,带宽增加和时延增加都会导致BDP增加,但RTT增大也会导致接收到网络拥 塞信息反馈的时延增加,拥塞信息延迟会造成加剧每一次拥塞的程度,导致更多的丢包。因 此,INVS引入了因子y来降低RTT增大的不利影响。y越小,RTT增大的不利影响越小。
[0015] 进一步的,当收到三个重复确认字符ACK时,执行拥塞退避策略,并按照下式对拥 塞窗口cwnd、慢启动门限值ssthresh以及饱和点的拥塞窗口cwndsfjj行调整:
[0019] 式中,P为乘性减因子,BDPest为链路时延带宽积估计值,bufferest为当前链路在 网络中排队报文数的估计值,S是预设的大容量链路的队列溢出门限,maxbuffer是当前 链路所有bufferest的最大值,超时后重新估计,min( 5 ,maxbuffer)表示取5和maxbuffer 之间的最小值作为最终判决门限来区分拥塞丢包和非拥塞丢包,当收到三个重复的确认字 符ACK,且当前网络中排队报文数的估计值大于或等于min( 5,maxbuffer),则判定当前 丢包由拥塞引起,并采用传统的退避机制,否则,判定当前丢包属于非拥塞丢包,拥塞窗口 cwnd和慢启动门限值ssthresh设为BDPest和cwnd之间的最小值;
[0020] 当丢包发生时,cwnd< 〇¥11(1;3|:)表示拥塞避免阶段中本次拥塞发生较上一次拥塞发
Cwndsp设为当前窗口大小cwnd以跟踪当前的网络饱和点。
[0021] 作为优选的技术方案,所述常数比例因子c= 2,所述指数因子y= 0. 75,乘性减 因子 0 = 0? 75。
[0022] 进一步地,在确定自适应增长因子k时,每收到一个ACK估计一次BWest,每一个RTT 更新一次k。
[0023] 与现有技术相比,本申请提供的技术方案,具有的技术效果或优点是:INVS提高 了TCP拥塞控制算法的公平性、链路利用率以及端对端往返时延的公平性。
【附图说明】
[0024] 图1为本发明实施例的不同丢包率下TCP协议的响应函数曲线图;
[0025] 图2为本发明实施例的TCP公平性示意图;
[0026] 图3为本发明实施例的两个INVS流的拥塞窗口示意图;
[0027] 图4为本发明实施例的混合网络拓扑;
[0028] 图5为本发明实施例的高速网络单个流吞吐量示意图;
[0029] 图6为本发明实施例的卫星网络单个流吞吐量示意图;
[0030] 图7为本发明实施例的异构网络下公平性示意图;
[0031] 图8为本发明实施例的异构网络下总的链路利用率示意图;
[0032] 图9为本发明实施例的异构网络下RTT公平性示意图。
【具体实施方式】
[0033] 本申请实施例通过提供一种基于链路自适应的异构网络TCP拥塞控制方法,以解 决由于不同链路带宽和时延的差
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1