利用TCPVeno提高无线自组织网络性能的方法

文档序号:7649414阅读:145来源:国知局
专利名称:利用TCP Veno提高无线自组织网络性能的方法
技术领域
本发明涉及无线通信技术领域,尤其涉及一种无线自组织网络。
背景技术
无线自组织网络是一种具有高度动态拓扑结构、节点任意移动的网络。 在现有技术中,无线自组织网络通常采用传统的TCP/IP协议(即TCP Reno技 术),进行数据的传送和交换,文献(Holland G, VaidyaN. Analysis of TCP performance over mobile ad hoc networks. Wireless Networks, 2002, 8(2) :275-288。)介绍了在无线自组织网络中采用传统的TCP 技术(即TCP Reno),但由于无线链路的高误码率会导致数据包的乱序和丢失, 对采用传统TCP技术的网络产生了严重的影响,降低了TCP的性能。目前对 于无线网络环境中TCP性能的研究主要集中在PMP (—点到多点)这样的单跳 无线网络环境。而对于无线自组织网络这样的多跳网络环境中高误码率引起 的TCP性能下降问题,却没有好的解决办法。
为了克服无线自组织网络环境下由于高误码率丢包而产生的TCP性能下 降,我们在无线自组织网络中使用一种新的,在无线网络环境下的TCP拥塞 控制机制——TCP/IP协议中一种新的技术TCP Veno来解决无线自组织网络中 的高误码率问题。

发明内容
本发明是针对无线自组织网络中高误码率问题而提出的解决方案。在无 线自组织网络中的每个节点的MAC层设定最大重传次数,利用TCP Veno ( —
种新的TCP版本)技术解决无线自组织网络中的高误码率问题,提高无线自 组织网络中TCP的性能。
本发明解决上述问题的技术方案是在无线自组织网络中,对于网络环 境较差,噪声较大的情况,可以先在MAC层中对参数最大重传次数进行调整, 适当降低无线网络环境中的误码率,而对于网络环境较好的情况,可直接在 TCP层,应用TCP Veno技术修改发送端的拥塞窗口数大小及慢启动门限值来
解决传输层的随机丢包问题。
对于网络环境较差的情况,首先在MAC层中改变参数ShortRetryLimit_ (RST/CST)和LongRetryLimiL (MAC层要传输的数据帧),确定最大重传 次数M,从而降低无线网络环境中的误码率;在无线网络传输层加载TCPVeno 协议,在TCP (传输控制协议)层根据每个节点的节点队列中积压的报文个数 以及门限值判断当前网络连接状态;在数据传输的各个不同阶段,根据TCP Veno协议,针对不同的网络连接状态采用不同的拥塞控制算法。在拥塞避免 阶段,比较判断模块对队列中积压的报文个数及门限值进行比较,判断当前 链路连接处于非拥塞状态还是拥塞状态,针对不同状态采取不同的调整算法, 当网络处于非拥塞状态时,采用加法增加算法计算发送端的拥塞窗口数cwnd; 当网络处于拥塞状态时,采用改进的拥塞避免算法计算发送端的拥塞窗口数 cwnd;在快速重传和快速恢复阶段,通过接收确认超时和收到重复确认两种 机制检测拥塞的发生并启动相应算法模块,当网络处于拥塞状态采用传统的 快速恢复算法计算慢启动门限值ssthresh,当网络处于非拥塞阶段采用改进 的快速恢复算法计算慢启动门限值ssthresh。
本发明主要针对无线自组织网络中高误码率的特性,结合802.11MAC层
中最大重传次数参数的设定来控制传输层由于高误码率引起的随机丢包的高
低,同时运用TCP Veno技术通过修改发送端的拥塞窗口数大小来解决传输层
的随机丢包问题。很好的提高了无线自组织网络在无线高误码率环境中的TCP性能。


图1本发明所述方法的流程图
图2拥塞避免阶段窗口调整算法示意图
图3为快速重传及快速恢复阶段的窗口调整算法示意图
图4为SANET中采用TCP Reno与TCP Veno的窗口变化比较图
图5为SANET中采用TCP Reno与采用TCP Veno的网络中吞吐量变化图
具体实施例方式
在无线自组织网络中,对于网络环境较差,噪声较大的情况,可以先在 MAC层中对参数进行调整,适当降低无线网络环境中的误码率,而对于较好的 网络环境,可直接在TCP层,应用TCP Veno技术修改发送端的拥塞窗口数及 慢启动门限值大小来解决传输层的随机丢包问题。
如图1所示为本发明所述方法的处理流程框图,对于网络环境较差的环 境,在.802. 11MAC层中改变参数请求发送/清除发送RST/CST
(ShortRetryLimit_)和参数MAC层要传输的数据帧(LongRetryLimit—), 根据上述参数确定最大重传次数M,从而适当降低无线网络环境中的误码率。
因为无线自组织(Ad Hoc)网络的特殊性,在源节点进行单播(unicast) 传输的情况下,TCP层的随机丢包率与802. 11MAC层的数据包最大重传次数 相关,传输层的随机丢包率大小等于无线物理层中误码率大小的M次方,而
参数M也就是MAC层的最大重传次数,即RST/CST分组的最大重传次数 ShortRetryLimit—和数据帧的最大重传次数LongRetryLimit_。将无线物理层 的误码率设定为p (p也是无线网络环境中的误码率);而802. 11MAC层的最 大数据包重传次数将由ShortRetryLimit_和LongRetryLimit_两个变量决 定,在单播传输情况下,所有丢失的包都是数据分组,而不是RTS/CTS等分 组,因此,可以根据具体的无线网络环境中误码率的高低改变 ShortRetryLimit—和LongRetryLimit—参数的大小,从而适当降低无线网络 环境中的误码率。
在802. 111MAC层协议中参数ShortRetryLimit—与LongRetryLimit—的初 始值为7和4,可将其调整,改善M值。比如当无线环境差的时候,为了避 免过多的由于高误码率引起的随机丢包,我们可以将MAC层的最大重传次数 设置大一点,来减小传输层的随机丢包率。
对于网络环境较好的情况,可以跳过上述处理,直接对TCP层进行操作, 在无线网络传输层载入TCP Veno协议,在TCP (传输控制协议)层根据每个 节点的节点队列以及门限值e判断当前网络状态,区分拥塞丢包或者是随机 丢包,在数据传输的各个不同阶段,并根据网络连接的当前状态,采用相应 的处理策略,修改发送端TCP的拥塞窗口数cwnd及慢启动门限值ssthresh, 提高TCP的吞吐量,改善网络传输层性能。
1.根据每个节点的节点队列以及门限值P判断当前链路连接状态
根据发送端测量的数据的期望发送速率和实际发送速率以及门限值e, 判断当前连接所处的状态,即当前链路连接处于非拥塞状态还是拥塞状态, 根据当前连接所处的状态,推断数据包的丢失是拥塞丢包或者是随机丢包,
当连接处于拥塞状态,丢包是由于网络拥塞引起,而连接处于其他状态则认 为是随机丢包,根据不同的连接状态采取不同的调整算法。
在发送端选择一个时间段测量数据包传送和确认的来回时间RTT (Round-trip times),从中选出最小的来回时间BaseRTT,并记录所需时刻 的发送端的拥塞窗口大小cwnd,算法模块调用公式
勿wa/ = / i 7T (2)
确定数据的期望发送速率(Expected)和实际发送速率(Actual),实际发 送速率由最后一次测量的RTT和cwnd确定。
算法模块对期望发送速率和实际发送速率进行减法运算,两者之差
判别模块对RTT进行判断,当最后一次测量的RTT 〉 BaseRTT时,说明
在瓶颈链路中出现了数据包的积压,设队列中的报文积压长度为N,则有 i 7T - S咖i 7T + iV /勿wa/ (4)
可以看到RTT和BaseRTT相比,其额外延时正是由于队列中报文积压导 致。将(4)式整理得
根据报文积压长度N值指示当前连接是否处于拥塞阶段。设定一个门限 值P (门限值e根据经验值设定,通常可设为3),比较判别模块通过对报文 积压长度N和门限值P的比较来区分当前连接所处的状态,如果N〈P,则认 为连接处于非拥塞状态,此时发生的丢包是由于链路造成的随机丢包,而不 是由于网络拥塞导致。当N》e时,认为连接处于拥塞阶段,此时丢包是由
于网络拥塞产生。
在数据传输的拥塞避免阶段和快速重传与快速恢复阶段根据不同的网络 状态采用不同的窗口调整算法。
2. 拥塞避免阶段
在系统初始化时设置拥塞窗口数值cwnd和慢启动门限值(ssthresh),比 较判断模块对上述参数进行比较,当cwnd 〈 ssthresh,系统还处于慢启动阶 段,使用慢启动算法调整窗口大小;当cwnd〉ssthresh时,为了避免拥塞, 系统进入拥塞避免阶段。
如图2所示为拥塞避免阶段窗口调整算法示意图,比较判断模块对队列 中积压的报文个数及门限值P进行比较,当队列中积压的报文个数超过门限 值e后,判断链路处于拥塞状态,调用算法模块,采用改进的拥塞避免算法 计算发送端的拥塞窗口数cwnd,当每收到两个新的ACK确认信号,cwnd值数 目增加l,以此减缓窗口的增加速度,使窗口更长时间地处于可工作状态。当 队列中积压的报文个数未超过门限值e,网络处于非拥塞状态时,采用加法 增加算法计算发送端的拥塞窗口数cwnd;每收到一个新的ACK确认信号,cwnd 值数目增加l。
根据链路连接所处的阶段采取不同的处理方式,当连接处于拥塞阶段时, 降低窗口的增加速度。使TCP Veno能更长时间的处于较大的窗口数目状态, 提高了数据传输效率和网络吞吐量。
3. 快速重传与快速恢复阶段
通过接收确认(ACK)超时和收到重复确认两种机制检测拥塞的发生。 对接收确认超时机制,当发送的数据包在指定时间段内未收到ACK确认
信号时,发送端定时器超时,算法模块启动慢启动算法,将TCP慢启动门限 值(ssthresh)设置为当前接收方拥塞窗口数cwnd和发送方通告窗口数wnd 中较小一个的l/2;但是ssthresh最小应为2。同时cwnd设定为l。
对收到重复确认机制,当接收端收到顺序错乱的数据包后,.仍然回应最 后收到的正常数据包的ACK确认。此时,发送端会收到多个相同的确认ACK。 在采用协议Reno的系统中,即使发送端定时器尚未超时,当收到3个重复的 ACK确认后,发送端仍认为对应的数据包已经丢失,开始进行拥塞处理,重传 丢失的数据包。
采用TCP Veno的系统,对收到重复确认机制,首先进行网络状态判断。 如图3所示为快速重传及快速恢复阶段的窗口调整算法示意图,当链路出现 随机丢包后,比较判断模块对报文积压长度N与门限值e进行比较判断,如 果N〈P,认为处于非拥塞状态,如果这时发送端收到重复确认机制,表明是 由链路误码引起的随机丢包,根据TCP Veno协议,适度降低慢启动门限值, 根据当前拥塞窗口大小cwnd的值,采用改进快速恢复算法计算ssthresh,可 取ssthresh=cwnd*4/5;如果当N〉 P ,判断为网络拥塞状态,如果这时发送 端收到重复确认机制,表明是由链路拥塞引起的拥塞丢包,根据TCPVeno协 议,采用传统的快速恢复算法计算ssthresh,根据当前拥塞窗口大小cwnd, 可将慢启动门限值ssthresh取为cwnd*l/2,减小慢启动门限值。根据不同的 链路状态,设置相应的慢启动门限值,从而使得TCP窗口的cwnd处于较大值 状态,提高了网络的吞吐量。
本发明在无线自组织网络中利用TCP Veno,根据数据传送过程中链路所 处的不同状态和不同阶段,采用不同的窗口调整算法,使窗口更长时间地处
于可工作状态,提高了网络的吞吐量,达到提高网络性能的目的。
本方法适用于静态的无线自组织网络SANET和动态的无线自组织网络 MANET。
下面以静态无线自组织网络和动态无线自组织网络为例对采用本发明提 高无线自组织网络性能作具体说明。
假设3个无线节点均匀的分布在仿真网络环境中,并且每个节点的通信 范围为250M,均使用AODV路由协议(也可以采用其它的AdHoc路由协议)。
在静态无线自组织网络中TCP层的参数设置为接收端的通告窗口数 wnd和发送端的拥塞窗口数cwnd均为50,节点队列为30,仿真时间100s。
如图4所示为SANET中,无线物理层误码率p=0. 03下网络中采用TCP Reno与TCP Veno的窗口变化比较图。图中纵轴窗口大小;橫轴仿真时间, 粗线表示采用reno的窗口变化曲线,细线表示采用veno的窗口变化曲线。 假设802. 11中MAC层的ShortRetryLimit_和LongRetryLimit_分别为7和 3;并且使用AODV路由协议。从图中可看出,采用TCP Veno的系统在处理由 误码率造成的随机丢包情况下较采用TCP Reno的系统好。
在动态无线自组织网络(MANET)中设定802.11中MAC层的 ShortRetryLimit一和LongRetryLimit—分别为7和3 (根据不同的无线网络 环境,取值不同);并且使用AODV路由协议,节点移动参数节点O的移动 速率4m/s;节点l的移动速率2m/s。
如图5为SANET中,在无线物理层误码率p=0. 03时采用TCP Reno与采 用TCP Veno的网络中吞吐量变化图。图中纵轴吞吐量;横轴仿真时间, 粗线表示采用reno的吞吐量,细线表示采用veno的吞吐量。设定802. 11中
MAC层的ShortRetryLimit_和LongRetryLimit—分别为7和3,使用AODV 路由协议。由图中看出,采用TCP Veno的系统的吞吐量较采用TCP Reno的 系统好。
权利要求
1、一种利用TCP Veno提高无线自组织网络性能的方法,其特征在于,在无线网络传输层加载TCP Veno协议,在TCP层根据每个节点的节点队列中积压的报文个数以及门限值判断当前网络连接状态;在数据传输的各个阶段,针对不同的网络连接状态采用相应的拥塞控制算法。
2、 根据权利要求1所述的方法,其特征在于,对于网络环境较差的情况, 对TCP层操作之前首先在MAC层中改变最大重传次数,降低无线网络环境中 的误码率。
3、 根据权利要求1或2所述的方法,其特征在于,判断网络连接状态的方 法为,将节点队列中积压的报文个数与报文个数比较,当节点队列中积压的报 文个数小于门限值,网络连接处于非拥塞状态,当节点队列中积压的报文个数 大于等于门限值,网络连接处于拥塞状态。
4、 根据权利要求1或2所述的方法,其特征在于,在数据传输的拥塞避 免阶段,当网络连接处于非拥塞状态时,采用加法增加算法计算发送端的拥 塞窗口数cwrid,当网络连接处于拥塞状态时,采用改进的拥塞避免算法计算 cwnd;在快速重传和快速恢复阶段,当网络处于拥塞状态时,采用传统的快 速恢复算法计算慢启动门限值ssthresh,当网络处于非拥塞阶段时,采用改 进快速恢复算法计算ssthresh。
5、 根据权利要求4所述的方法,其特征在于,所述加法增加算法为,每 收到一个新的确认信号,cwnd值增加1,所述的改进的拥塞避免算法为,每 收到两个新的确认信号,cwnd值增加h所述改进快速恢复算法为,取 ssthresh=cwnd*4/5,所述传统的快速恢复算法为,取ssthresh=cwnd*l/2。
全文摘要
本发明请求保护一种利用TCP Veno技术提高无线自组织网络性能的方法,涉及无线通信技术,该方法利用TCP Veno技术,在数据传输的各个不同阶段,针对不同的网络连接状态采用不同的拥塞控制算法。对于网络环境较差的情况,还利用对无线自组织网络中各节点MAC层最大重传次数的设定,适当降低误码率,在随机丢包发生的时候提高TCP的性能。使得无线自组织网络中TCP的性能得到充分的提高。本方法适用于静态的无线自组织网络SANET和动态的无线自组织网络MANET中。
文档编号H04L29/06GK101115002SQ20071007830
公开日2008年1月30日 申请日期2007年3月19日 优先权日2007年3月19日
发明者述 唐, 谢显中, 锐 赵 申请人:重庆邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1