无线网络中选择性重传机制性能分析与改进.doc

无线网络中选择性重传机制性能分析与改进.doc

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

无线网络中选择性重传机制性能分析与改进 1 引言 全世界的无线网络业务正在急剧增加。以移动PC和PDA为代表的无线处理终端的逐渐普及和无线通信技术的迅猛发展已经预示无线通信网络将成为将来网络通信中一种不可或缺且占有很大业务比例的网络通信业务。在日本,笔记本在整个PC中的占用率已经超过了40%,而现在在全世界都有越来越多的用户选择使用笔记本和PDA进行工作或娱乐。 无线网络协议不能照搬有线网络中的协议的实现。无线网络发展的迅速迫使人们必须在无线网络中提供可靠高效的网络协议。与传统的有线网络相比,无线网络拥有以下几个特点:有限的带宽、高延迟时间、高比特出错率和一段时间的断链现象。这些特点对研究无线网络提出了新的挑战,在制时候订无线网络协议的必须充分考虑以上因素再提出解决的方案。 TCP是一种在当前Internet中得到广泛应用的可靠的传输层协议[4][7],其在比特出错率很小的有线网络环境长时间的使用已经显示了良好的性能。由于无线网络的特殊性,未经改进的TCP协议在无线网络上性能表现十分低下[2]。无线网络中较高的比特出错率这一特点导致了大量报文不必要的重传,这可能造成网络拥塞,在严重的时候很可能还会造成网络崩溃[13]。在1986年10月,由于拥塞崩溃的发生,美国的LBL到UC Berekley之间的数据吞吐量从32 kbit/s跌落到了40 bit/s[12]。 选择性重传机制(SACK机制)是TCP协议良好的改进方案。基于TCP协议的Snoop协议(Snoop protocol)对移动终端的TCP协议代码进行了改进,使其支持SACK机制,对于拥有较大带宽和较大延迟的LFNs类型的网络来说,SACK表现出了很好的性能[3]。 但是现有SACK机制的实现效率并不高,还是会造成不必要的数据重传。本文将分析SACK机制的运行原理,提出改进方案,并通过理论和仿真手段比较其性能的提升。 SACK机制运行原理 SACK机制设计初衷就是为了处理一个窗口中同时丢失多个报文情况。TCP协议发送方只能在一个往返时延中获知一个报文的丢失情况,所以在一个窗口出现多个报文丢失时,很有可能发送方在收到确认前会再次进行报文的发送,这样就造成了不必要的重传。而SACK机制再加上选择性重传策略可以解决这个限制:接收端在接收到了来自于发送端的报文以后就会发回SACK报文以通知发送端哪些报文已经成功接收,这样发送方根据SACK报文可以只将那些需要重传的报文进行重传,从而避免了不必要的重传[6]。 在文献[6]中SACK机制拥有两种TCP选项,一种是允许选项也就是“SACK-permitted”选项。而另外一个就是SACK选项自己了,用于在已经建立的网络连接上进行传送。 其中SACK-permitted选项的格式如图1: 类型:4 长度:2个字节 图1. SACK-permitted选项格式 这个两个字节的选项可以在SYN中传送,用来通知:一旦连接建立那么TCP发送方就可以接收SACK报文了。因此SACK-permitted选项不能在非SYN段中传送。 而SACK选项的格式如图2: 类型:5 长度:可变 图2. SACK报文格式 SACK选项被数据接收方发送用于通知发送方已经有哪些非连续的数据块被接收方正确接收并被装入队列。在选项中,除了类型和长度两个字节的域以外,其余的都是数据块的左右边界。左边界代表该数据块的第一个32比特序列号,而右边界代表紧接着该数据块最后一个序列号的下一个32比特序列号。如果一个SACK选项中拥有n个数据块,那么一共需要8*n+2个字节,因此对于最大只有40字节的TCP选项来讲[7],其最多也就只能容纳下4个数据块。但是一般又将SACK选项与时间戳选项一起使用[8],因此如果去掉时间戳选项的10字节,那么一个SACK选项中就只能有3个数据块了。拥有三个数据块就说明在三个连续的ACK报文中每个SACK块可以被重复三次。但是如果所有通告某一SACK块的ACK报文都丢失了,那么接收方就会认为那个SACK块中的数据接收方并没有接收到,从而造成了不必要的重传。 SACK机制的改进方案 在文献[10]中展示了两种改进方案的思想:就是在表示SACK块的时候,与其传送完整的32比特序列号,不如采用占用空间更小的基序号+偏移序号的方式来表示。也就是说除了第一个SACK块的左边界序号是完整的32比特序号来做基序号以外,其它的序号都用偏移序号来表示。因为引入了偏移序号,所以必须增加一个X项用来表示偏移序号空间的大小。这里对于偏移序号的设置有两种方案: 第一种

文档评论(0)

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

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

1亿VIP精品文档

相关文档