初探基于跨层机制的无线路由协议AODV的分析与仿真参考模板

上传人:壹****1 文档编号:511762476 上传时间:2023-11-26 格式:DOC 页数:11 大小:529KB
返回 下载 相关 举报
初探基于跨层机制的无线路由协议AODV的分析与仿真参考模板_第1页
第1页 / 共11页
初探基于跨层机制的无线路由协议AODV的分析与仿真参考模板_第2页
第2页 / 共11页
初探基于跨层机制的无线路由协议AODV的分析与仿真参考模板_第3页
第3页 / 共11页
初探基于跨层机制的无线路由协议AODV的分析与仿真参考模板_第4页
第4页 / 共11页
初探基于跨层机制的无线路由协议AODV的分析与仿真参考模板_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《初探基于跨层机制的无线路由协议AODV的分析与仿真参考模板》由会员分享,可在线阅读,更多相关《初探基于跨层机制的无线路由协议AODV的分析与仿真参考模板(11页珍藏版)》请在金锄头文库上搜索。

1、初探基于跨层机制的无线路由协议的分析与仿真摘要: Ad Hoc无线网络具备无需基础设施、临时组网、动态网络拓扑和自组织的特点,在国内外得到了显著的重视。也正是由于无线网络的这些特点,存在很多问题,成为推广无线网络的瓶颈,亟需提高Ad Hoc无线自组网的性能。为此,我们提出并研究了结合跨层设计和基于AODV 路由协议的改进维护路由的算法的技术方案,并基于NS2进行模拟和仿真,提出高效合理的改进方案。关键词:Ad Hoc网络 AODV协议 跨层 改进 仿真1前言随着Internet、无线通信技术的发展,Ad hoc无线网络技术越来越受到人们的重视。Ad hoc无线网络是由众多的无线移动节点组成,这

2、些节点不需要无线网络基础设施的支持,自发地以多跳的方式快速地建立通信联系,组织成为一个临时的网络。为了与现有的网络互联互通,Ad hoc无线网络采用了TCP/IP体系结构,然而,Ad hoc无线网络自身的特性如无中心控制节点、节点的移动导致串路和网络拓扑快速变化、节点资源和网络带宽受限等问题严重影响了Ad hoc无线网络的性能,决定了Ad hoc无线网络不能完全照搬使用现有网络的协议栈,在多种提高Ad Hoc无线网络性能的方法中,跨层设计是非常行之有效的一种。另外,由于无线链路的不稳定性和邻居节点的移动性,各个节点对其邻居信息的掌握和管理变得困难,整个网络拓扑呈现高度的动态特征。这样就需要适合

3、Ad Hoc无线网络这种特殊环境的路由协议和路由算法。我们研究了一种基于AODV 路由协议(Ad hoc On-demand Distant Vector,按需距离矢量路由算法)的改进,主要在于改进维护路由的算法。并且,通过仿真软件NS2进行模拟和仿真,研究出高效合理的改进方案。2 Ad Hoc网络及其路由协议2.1 Ad Hoc网络的概况Ad Hoc网络是由一组带有无线收发装置的移动终端组成的一个多跳的临时性自治系统。网络中的移动终端具有路由和报文转发功能,可以通过无线连线构成任意的网络拓扑。这种网络可以独立工作,也可以接入Internet或蜂窝无线网络。Ad Hoc网络中所有节点的地位平等

4、,无需设置任何中心控制节点,具有很强的抗毁性。网络中的节点不仅具有普通移动终端所需的功能,而且具有报文转发能力,既可以运行面向用户的应用程序又可以根据路由策略和路由表参与分组转发和路由维护工作。由于终端的无线传输距离有限,Ad Hoc网络中节点间的路由通常由多跳(Hop)组成。当通信的源节点和目的节点不在直接通信的范围之内时,它们可以通过中间节点转发报文进行通信。所以,它又被称为多跳无线网、自组织网、无固定设施的网络或对等网络。Ad Hoc网络同时具备移动通信网络和计算机网络的特点,可以看作是一种特殊的移动计算机网络。图1是一种典型的Ad Hoc网络的逻辑结构,图中终端A和C无法直接通信,但A

5、和C可以通过路径A-B-C或者A-G-E-C进行通信。 / ABFIGDCHE单向信道双向信道图1 典型的Ad Hoc网络逻辑结构与传统的通信网络相比,Ad Hoc网络具有以下显著特点:独立组网、无中心、自组织、多跳路由、动态拓扑、特殊的无线信道特征、移动终端的局限、安全性差。根据Ad Hoc网络的特征,参照OSI的经典7层协议栈模型和TCP/IP的体系结构,可以将Ad Hoc网络的协议栈分为5层。2.2 Ad Hoc网络路由协议概述目前常见的移动通信系统有两类:蜂窝移动通信系统和无线局域网。在蜂窝移动通信系统中,移动节点间呼叫的路由选择及建立主要是通过固定网络设备,如交换机,VLR/HLR等

6、完成。而Ad Hoc网络中,不存在这样的固定设备,节点间路由选择完全由移动节点完成。同时,蜂窝移动通信系统网络结构比较稳定,Ad Hoc网络拓扑结构经常变化,影响路由选择。在无线局域网中,移动节点配有无线网卡,通过无线接入点连接到固定网络,因此,无线局域网可以看成是一个单跳网络,分组处理不同通过网络层;而Ad Hoc网络则是一个多跳网络,终端主机一方面作为主机,另一方面作为路由器运行路由协议,参与分组转发和路由维护。Ad Hoc网络研究的一个主要内容是以路由协议为核心的网络层设计。Ad Hoc网络路由协议的主要分类如图2:Ad Hoc网络路由协议表驱动路由协议按需路由协议混合路由协议DADVW

7、RPAODVCGSRDSRZRPTORA图2 路由协议分类3 AODV路由协议3.1 AODV路由协议的概况 AODV路由协议是运用在Ad hoc网络上的一种按需路由系统的路由协议,并被IETF MANET工作组于2003年7月正式公布为自组网路由协议的RFc标准。虽然如此,但是它依然存在一些问题,对AODV协议的改进方法研究依然没有停止。虽然目前已经存在一些研究成果,但有一部分的成果仅仅是为了理论研究而提出,没有在实际中应用,甚至有些研究成果的正确性并没有得到验证,当然有不少成果是经过仿真验证的,但是对于AODV协议依然还有很多值得改进的地方。3.2 AODV协议的改进3.2.1 跨层设计的

8、改进AODV协议在选择路由路径是基于最小路数的,但这样的路径往往是不是最佳的路径,如路径有可能存在严重的拥塞情况。因此一种寻找较优路径的方法亟待提出。原拥塞问题的预防是在网络传输层实现的,现在AODV路由请求报文RREQ中增加节点拥塞情况字段,在找到目标路径后返回的路由应答报文RREP中,返回整个路径的拥塞情况,使得发送方可以提前预防拥塞,选择路径状态较优的路径进行发送,并不用通过传输层,只需要在网络层便可以实现。1)在RREQ报文尾部增加一个4字节的字段,把节点的拥塞情况量化为节点队列长度。 实现方法:“aodv_rqueue.h”中的成员属性int len_赋值给在“aodv.cc”中的新

9、成员que_len;这个是反映最小路数的衡量值,通过返回的平均值来做出路由的最佳选择。这是算法改进的重要参数。关于“aodv_queue.cc”和“aodv_rtable.cc”都要增加相应的属性, 因为在“aodv.cc”中RREQ中会封装以下信息作为RREP的报文, sendReply()中包括rq-rq_src目的IP地址,Hop Count跳数,seqno包序列,MY_ROUTE_TIMEOUT生存时间等,就在这里加que_len信息,作为返回值。2)RREQ经过第一个节点时,把节点的队列长度写入字段中,接下来,每经过一个节点,把节点的队列长度累加进字段中,目标节点不累加。 实现方法:

10、源结点与相邻的结点交换路由信息,相邻节点在调用“aodv.cc”中的recvRequest(Packet *p)时,就记录 que_len,并且每调用一次 que_len+;3)到达目的节点后,目的节点把字段对路数减1取商,得到路径队列长度的平均值,并把这个值封装进RREP报文中,返回源节点以供源节点参考,选择状态较优路径。 实现方法:当检查被报文首部信息,发现到达目的结点时,在调用“aodv.cc”中的recvReply(Packet *p)时,把que_len的平均值,que_len=(que_len-1)/n,n就是节点数。封装在报文里面,返回相邻节点,沿着原来的路径返回源节点。源节点就

11、保存这个路由信息,以后需要进行通信时就不需要再递归调用RREQ,RREP。节省时间,提高效率,更重要是避免大量寻找路由的报文信息导致网络拥塞。由于在AODV报文信息中增加了4个字节,来存储路由长度信息,所以在源节点调用“aodv.cc”中的sendRequest(nsaddr_t dst),目的结点调用“aodv.cc”中的sendReply(nsaddr_t ipdst, u_int32_t hop_count, nsaddr_t rpdst, u_int32_t rpseq, u_int32_t lifetime, double timestamp)都需要增加这个信息。3.2.2 路由维护

12、程序的改进:1)由于无线自组织网络的不稳定、不可靠性远高于传统的有线网络,无效、错误的数据报数量较多,其中就包含有大量的生存时间为0的无效数据报。实现方法:准备在“aodv.cc”中的recvError(Packet *p), sendError(Packet *p, bool jitter), recvHello(Packet *p)和 sendHello()里面增加判断TTL值的功能,主要是在调用“aodv.cc”中的RREQ,RREP次数太多的时候,就进行判断。因为经过的结点数越多,导致网络拥塞的概率就会越大,所以及时作出检测信息,防止洪泛。2)在链路层差错检验时,连同IP报头的生存时间

13、字段一起检验,如果发现生存时间为零则立即丢弃,而不用等到剥去链路层头部再上传到IP层才发现数据报无效。实现方法:由于在代码中涉及数据链路层的处理比较少,但是可以调出AODV的报文信息,分析比特流得到IP层中的生存时间是否为O。4 基于仿真软件NS2的模拟和仿真4.1 仿真软件NS2的概况NS2是一个免费的网络协议模拟与仿真软件,在目前是通信和计算机网络领域的协议研究的主流平台之一。它采用开放体系结构,有大量的协议库支持,广泛应用于局域网、广域网、蜂窝网和卫星网络模拟。NS2基于OTcl和C+两种语言,其中C+是用于编写和实现的,OTcl作为一个解释器,来执行用户的命令脚本。基于NS2 网络仿真

14、的一般步骤: 首先判断NS2中是否包含需要仿真算法对应的功能模块, 如果有, 则只需根据仿真需要编写Tcl 测试脚本执行, 然后分析实验所记录的数据, 得出结论; 如果不包含该功能模块, 则必须对NS2 进行功能扩展, 构成新的NS2 仿真系统, 再进行前述的工作。具体过程如下图所示。图3基于NS2 网络仿真的一般步骤4.2 基于NS2的模拟和仿真4.2.1 模拟场景设置三个场景共同点1、 物理信道类型:WirelessChannel2、 无线传输模型:TwoRayGround(考虑到了地面反射路径)3、 网络接口类型:WirelessPhy4、 天线模型:OmniAntenna5、 场景大小

15、:2000m*1000m6、 节点停留时间:020s随机选取7、 节点运动速度:0.5m/s10 m/s随机选取8、 场景模拟时间:200s9、 数据流类型:CBR场景一:10个节点,最大允许同时生成6个CBR连接(节点数的五分之三);场景二:50个节点,最大允许同时生成30个CBR连接(节点数的五分之三);场景三:100个节点,最大允许同时生成60个CBR连接(节点数的五分之三);10个节点50个节点100个节点4.2.2 仿真与结果分析过程协议修改前后采用同样的随机种子,使模拟场景相同,控制变量进行数据分析。目前对协议修改前后进行了如下性能分析:数据丢包率吞吐量端到端时延结果:对于小规模(10个节点)的场景,以上性能几乎没有影响,而50和100个节点的场景分析现场演示。各运行时间信道吞吐量数据图:图10个节点图50个节点图100个节点分析:图中红色线条表示使用改进后的AODV进行模拟的结果,绿色线条则表示改进前。其中X坐标为模拟时间,Y坐标为信道吞吐量。信道的吞吐量,在节点数为10个节点时,信道的吞吐量协议修改前后的变化不大,主要是因为10个节点的时候,场景太大,节点之间距离过远,无效节点较多,不管协议有否修改

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号