版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
—145—改进的无线网络TCP协议跨层设计方法庞前娟,李精华,嵆建波,刘晓刚(桂林航天工业高等专科学校电子工程系,广西桂林541004摘要:针对传统TCP协议的拥塞控制机制在无线网络中不能很好地解决数据丢失的问题,提出一种改进的无线网络TCP协议跨层设计方法——NTCP。NTCP将传统TCP功能分割为传输速率控制和数据完整性控制2个部分,避免使用转发节点信息的方法,最大限度地利用无线资源。该方法与传统TCP-Reno方法相比,能提高无线网络的吞吐量,其稳定性和速率自适应能力也有较好的改善。关键词:无线网络;TCP协议;数据拥塞;跨层设计ImprovedCross-layerDesignMethodofWirelessNetworkTCPProtocolPANGQian-juan,LIJing-hua,JIJian-bo,LIUXiao-gang(DepartmentofElectronicEngineering,GuilinCollegeofAerospaceTechnology,Guilin541004,China【Abstract】Inthetraditionalwirelessnetworkprotocol,TCPcongestioncontrolmechanismcannotbeagoodsolutiontotheproblemofmissingdata.Aimingatthisproblem,thispaperproposesanimprovedcross-layerdesignmethodofwirelessnetworkTCPprotocol——NTCP.NTCPisdividedintothetraditionalfunctionsofTCPtransmissionspeedcontrolanddataintegritycontroloftwoparts.Itavoidstheuseofforwardnodeinformationandmaximizestheuseofwirelessresources.ComparedwiththetraditionalmethodofTCP-Reno,thismethodcanincreasethethroughputofthewirelessnetwork,itsstabilityandrateofadaptivecapacityareimproved.【Keywords】wirelessnetwork;TransmissionControlProtocol(TCP;datagramcongestion;cross-layerdesign计算机工程ComputerEngineering第36卷第19期Vol.36No.192010年10月October2010·网络与通信·文章编号:1000—3428(201019—0145—03文献标识码:A中图分类号:TP3931概述TCP协议是针对有线网络设计的,在有线网中出错率相当低。一般认为丢包是由网络拥塞引起的,这时TCP就会启动它的拥塞控制算法来减小传输率。如果将TCP直接应用于无线网络上,只要丢包一发生,TCP就会认为是拥塞引起的,从而启动拥塞控制机制,这将大大降低TCP在无线网络上的性能。因此,TCP协议需要改进才能适用于环境复杂的无线网络。本文提出一种能改善TCP性能的新方法——NTCP,运用跨层设计[1]将TCP端到端的流量控制功能放在MAC层中,以节点间的相互监督、相互协调的方式实现。该方法的特点是降低发端的数据速率控制对于TCP-ACK的依赖,转而充分利用无线信道MAC的特性。它避免了使用节点转发信息方法的缺点,降低无线网络丢包对网络性能的损害。本文用传统TCP中最常用的版本TCP-Reno作为对照样本,比较分析了在静态场景下两者的吞吐量、时延特性和速率自适应的性能。2改进的无线网络TCP协议跨层设计分析数据拥塞在无线和有线网络通信中都广泛存在,但它所造成的影响在无线网络尤其是多跳的无线网络通信中非常严重。主要由于多跳的无线网络中多个MP会使用相同的信道进行网络连接,当一个节点在传输数据时,它的相邻节点需要延迟发送,否则会出现严重的本地拥塞,从而影响端到端的吞吐率。因此,在无线网络中如何解决相邻链路的带宽问题成为一个关键问题。在传统的TCP协议中虽然也有拥塞控策略[2],但已不能完全解决无线网络的拥塞控制,目前通过2层来实现拥制以成为必然,特别是处理网络突发性错误超成的拥塞,效果尤为显,并且能减轻TCP层拥塞控制的压力,本文选取MAC层和TCP层进行跨层设计。2.1MAC层修改为了解决本地拥塞问题,将流量拥塞控制功能移至MAC层[3],根据网络拥塞状况实时调节发送速率,通过邻居节点的直接反馈来了解网络拥塞状况,避免由于频繁路由失效引起的TCP长时处于慢启动状态,TCP连接始终保持无线资源的最优利用,这是NTCP的主要思想。为了达到以上目标,在802.11XDCF的MAC层修改时,保证正常数据信息在网络畅通的条件下,增加进行拥塞信息传递额外控制包的控制帧开销,在兼顾协议系统升级同时,尽量利用现有的协议系统,通过较少的修改完成新协议的建立。在IEEE802.11现有的RTS/CTS机制中增加NTR(NotToReceive帧和FRTS(FutureRequestToSend帧,在节点收到RTS信号包之后由于拥塞无法接收对方即将发送的包,通知对方停止此次发送行为,且NTR帧中有变量标明当前节点自身处于拥塞状态需要发送数据,FRTS帧则表明当前仍然有多个包需要发送,待未发送包发送完毕之后信道拥塞撤销,所有受影响的节点可以开始下一轮竞争[4]。NTR是CTS的变型帧,而FRTS是RTS基金项目:国家自然科学基金资助项目(10647001,60972031;广西科学基金资助项目(0728042作者简介:庞前娟(1970-,女,讲师、硕士,主研方向:电子技术,通信与信息系统;李精华、嵇建波,副教授、硕士;刘晓刚,教授、博士—146—的变型帧。这样的帧设计不需要对原有的MAC层协议做过多的修改,比起发送探测包或明确通知的包这一类需要添加全新帧的设计,系统升级更容易实现。增加新的NTR和FRTS帧之后,MAC的状态机添加侦听态和拒绝态。MAC的状态机共包含空闲、挂起、接收、发送、请求发送、允许发送、冲突、拒绝和侦听共10种状态。MAC层的发包过程大概分为3类:广播包直接发送,数据包正常发送,数据包拒绝发送。前2类完全采用现有IEEE802.11协议规定。最后数据拒绝发送过程描述如下:节点A侦听到当前信道空闲,等待DIFS后向节点B发送RTS数据发送请求,节点B综合本地拥塞信息及本地拥塞记录之后决定拒绝节点A此次请求,随及发送NTR数据传输拒绝信息给节点A,节点A收到该拒绝信息之后停止本次数据发送尝试,等待节点B首先进行数据发送,节点B转为待发送数据节点。2.2改进的NTCP算法分析首先定义参数节点拥塞度来衡量节点的拥塞程度。网络节点为了预防短时拥塞或媒体竞争造成的包传输时延采用MAC缓存器缓存当前接收数据,当流经该节点的数据流量过大时,节点的流入数据包个数将大于流出数据包个数,MAC缓存器的占用率将随之增大。选取缓存器的占用率来表示出节点间数据流的拥塞状况。假设节点缓存器的大小为M,节点的占用情况满足以下表达式:(xMxη=−其中,(xη是节点当前缓存器占用情况;M为该节点缓存总数;x为节点缓存器预留空间。(xη值一旦超过拥塞事件临界点,判定该节点发生拥堵事件。NTCP算法流程如图1所示,算法要求每个节点都要以拥塞度作为依据参与到流量控制中。(a发送节点流程(b接收节点流程图1NTCP算法流程按照前面MAC层的修改,节点A竞争空闲信道成功之后向B发送RTS请求,B收到该RTS请求之后根当前节点的竞争度确认应对方案。如果B当前处于非侦听态,就不再回应A的RTS请求,转而向A和周围节点广播发送NTR(即拒绝帧拒绝此次发送请求,并在NTR帧中申明当前有k个数据等待发送,B发送完NTR帧后立刻转入数据发送过程。B在发送NTR之后,待发送数据发送完毕之前,使用FRTS代替RTS表明当前仍然有待发送数据未发送完毕。周围节点侦听到NTR帧之后,进入侦听态,并记录发送NTR节点的节点信息,包括其MAC地址以及待发送数据个数。进入侦听态后,侦听节点停止发送数据,开始监控周围信道信息,关注发送NTR节点的数据发送状况,一旦该节点成功发送它申明的待发送数据量k,各侦听节点和之前的发送节点共同回到非侦听态重新开始信道竞争。B也重新使用RTS进行数据发送请求。如果B当前处于侦听态,B需要查询本节点之前是否收到A发送的NTR帧且A还未发送完所有待发数据包。如果A确实发送NTR帧且目前还处于拥塞状态,按常规发送CTS帧允许数据发送请求。TCP链路上所有相关节点按照点和点之间的竞争方式相互制约自动调节。流经区域的网络拥塞程度决定了中间节点的发送速率,中间节点的发送速率决定了源节点的缓存中的缓存数据数量,当中间节点发送速率提高,源节点的发送速率随之提高,中间节点的发送速率降低源节点的发送速率随之降低,从而达到平衡网络流量的目的。3仿真结果与分析实验基于IEEE802.11DCF模式为基础修改的MAC层,以IEEE802.11b为物理层,采用的路由协议为AODV[5]协议。每个节点的发射范围为250m,侦听范围550m,基本速率为1Mb/s,数据速率11Mb/s,TCP分组的大小为520Byte,传输的业务为FTP数据,仿真时间为300s,至少保证有大于10000个包的数据传输,相邻节点间距离为200m,TCP连接在整个生存期内一直有数据需要传输。NTCP的k值设为5,拥塞临界点取10。运用NS2仿真工具对NTCP的性能与目前使用范围最广的TCP-Reno进行仿真对比分析。主要仿真参数包括单位时间网络吞吐量、时延特性以及速率自适应能力[6]。2种方法的网络吞吐量对比如图2所示,其端到端时—147—从图2的仿真结果可以看出,开始TCP-Reno和NTCP的网络吞吐量随着跳数的增加陡然下降,当源节点到目的节点间的跳数增大到一定程度之后吞吐量趋于稳定,但NTCP的吞吐量一直优于TCP-Reno。根据图3的仿真结果可以发现,随着源目的节点间的跳数增加,TCP-Reno和NTCP的端到端的时延都呈非线性增大的趋势。开始NTCP的时延小于TCP-Reno的,但是跳数达到5跳之后,NTCP的时延超过TCP-Reno,主要由于新方法的端到端时延由两部分组成即在MAC缓存调度器中排队等待服务的总时间加上在MAC层传输服务的总时间,而仿真场景里等待服务时间远大于传输服务时间。TCP-Reno采用基于窗口和自时钟的端到端的拥塞控制策略,再加上IEEE802.11自身的不公平性,使得TCP-Reno的爆发性数据增多,空间复用性较低,特别是当目的节点与源节点间的跳数增加之后,往返RTT的波动性使得TCP的发送窗口调整具有滞后性,往往呈现出局部数据负载过大,平均数据负载过小的现象。在这种情况下,TCP-Reno的单个节点的平均缓存占用率反而随着节点跳数增加而锐减。而NTCP为了最大化无线资源的利用率,总是尝试着将链路数据流平均分布在途径的各点上。在大部分时间里,每个节点都有数据需要发送,一旦无线资源空闲,总有节点参与到无线资源的竞争中。但由于采用局部点到点的速率控制,相对于TCP-Reno而言,局部爆发性数据流较少出现。因此,一跳的场景中NTCP的平均排队队长低于TCP-Reno,而多跳场景中各节点的平均缓存利用率较稳定,不会随着跳数增加产生大的波动。NTCP的网络速率变化曲线如图4所示。TCP-Reno的网络速率变化曲线如图5所示。对照图4和图5可以发现,NTCP的速率自适应能力优于TCP-Reno。TCP-Reno采取TCP-ACK作为调整速率的,按ACK包序的正确性来刺激TCP源端发送新的数据包,ACK在回复快速的流时占优势。图4NTCP的网络速率变化曲线Flow1在建立连接发送速据之前,无线信道中有大量的Flow1的数据包和ACK包在进行传输,Flow2进入启动后很长一段时间内要和TCP的数据流同时还要和逆向ACK流共同竞争资源,因而速率的适应时间比较长。而NTCP的速率调节与反向的TCP-ACK数据流无关,且由于采用资源公平竞争的机制,每个竞争节点的无线资源竞争等级都是相同的,与加入的时间无关。因此,NTCP体现在流的公平性上有较大的优势,NTCP在速率自适应能力上比TCP-Reno的好,流的公平性上也优于TCP-Reno。4结束语本文对传统IEEE802.11MAC协议进行优化修改,充分利用无线信道MAC的特性,采用跨层设计将TCP端到端的流量控制功能放在MAC层中,以节点间的相互监督、相互协调的方式实现通信。从仿真数据可以看出,本文提出的NTCP方案相对于传统的TCP-Reno协议,在端到端时延方面的改善效果不太明显,但吞吐量和稳定性以及速率自适应能力方面都有提高,解决了TCP在无线网络中性能下降的问题。参考文献[1]WangJiantao,LiLun,LowSH,etal.Cross-layerOptimizationinTCP/IPNetworks[J].IEEE/ACMTrans.onNetworking,2005,13(3:582-595[2]朱丽娜,朱东昭.针对TCP拥塞控制的LDOS检测与防范[J].计算机工程,2010,36(3:164-166.[3]任勇毛,唐海娜,李俊,等.高速网络TCP改进协议NS2仿真性能比较[J].计算机工程,2009,35(2:6-9.计算机工程,2009,35(16:101-106.[5]崔健.AdHoc网络TCP性能的研究[D].大连:大连理工大学,2007.[6]钟辉,王鹏.基于NS2的无线网络仿真研究[J].计算机与数字工程,2008,36(7:57-60.编辑顾姣健~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~(上接第144页的模拟器基于NDIS框架,具有真实性和动态性。其系统开发的综合成本较低,有较高理论价值和实用价值。参考文献[1]PeiZheng,NiLM.EMPOWER:ANetworkEmulatorforWirelineandWireless
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 财会岗2026事业单位面试自测卷含答案配套答题思路
- 医疗岗事业单位面试2026基础练习题含答案
- 前鼻韵母in标准课件
- 细读文本确立有效的教学内容
- 非法定传染病知识浅谈常用文档
- 2026年数据开发招聘题目及答案
- 口语交际请你支持我课件六年级上册语文部编版
- 注册测绘师资格考试辅导房产测绘
- 2026年小米招聘笔试题及答案
- 网络接入和参数设置
- 塔吊安拆工程监理实施细则
- 2026年银行客户经理等级考试必考题库及答案
- T∕CSICE 061-2026 混合动力总成耐久性试验方法
- 初中物理八年级下册《摩擦力》教学设计
- 数学五上综合实践《小小设计师》大单元教学设计(北师大2027新教材)
- 2026年湖南中考语文试卷及答案解析
- (2026年版)中国有肾脏意义的单克隆免疫球蛋白血症诊治专家共识课件
- 家用电器产品检测合同协议
- 消防控制室值班记录表
- SYT 6649-2025《油气管道管体缺陷修复技术规范》
- 2026年高考历史总复习(全国):专题训练01中国古代史部分(选择题必练100题)(原卷版)
评论
0/150
提交评论