完整版基于aodv的无线传感器路由协议的研究毕业论文.docx
- 文档编号:11576144
- 上传时间:2023-03-19
- 格式:DOCX
- 页数:32
- 大小:418.27KB
完整版基于aodv的无线传感器路由协议的研究毕业论文.docx
《完整版基于aodv的无线传感器路由协议的研究毕业论文.docx》由会员分享,可在线阅读,更多相关《完整版基于aodv的无线传感器路由协议的研究毕业论文.docx(32页珍藏版)》请在冰豆网上搜索。
完整版基于aodv的无线传感器路由协议的研究毕业论文
1绪论
1.1研究背景
随着无线通讯技术,嵌入式技术的逐渐成熟,网络系统不在单一化,而是形成一种由多个具有传感和通信功能的传感器连接设备构成的新型网络——无线传感器网络(WirelessSensorNetwork,WSN),并且该网络形式已然起人们极大关注[1]。
无线传感器网络结合传感器技术,信息技术,分布式处理,嵌入式计算机和通信技术,使其能够协助并对分布区域内的信息进行的感知、采集、检测,获取详细和准确的信息,将信息传输到用户,以满足用户的需求。
无线传感器网络利用传感器节点对周边环境进行震动、雷达、热、红外等信号的监测,来获取温度、光强度、物体的大小、压力、速度和方向等目标属性,然后各个节点之间协同合作,完成数据的感知采集和处理,发送给用户。
它具备以下优势:
①网络覆盖区域广,部署比较灵活;
②节点分布密集,靠近目标区域,可实现多方位和高精度的信息获取;
③低成本,冗余网络设计,保证网络的高可靠性;
④分布式自组织网络结构,支持并发访问和任务的实现。
无线传感器网络具有非常广阔的应用前景,可广泛应用于军事,环境监测,目标跟踪,医疗,智能家居等诸多方面。
其研究和发展涉及国家安全,经济发展等重大方面,因此近年来,无线传感器网络的应用引起了广泛的国际关注和投资。
1.2国内外研究前景
无线传感器网络作为一种新的计算机模型,以用于促进社会进步和科技开发,其研究已涉及到国家的经济和社会安全,成为国际竞争,新的制高点,因此引起世界各地的工业部门军事部门的极大关注。
英特尔,微软等信息产业巨头也设立或启动相应的行动计划。
美国国防部和各军事部门对无线传感器网络给予高度重视,把无线传感器网络作为一个重要研究领域,设立了一系列的军事无线传感器网络研究项目。
许多国家已经纷纷展开了该领域的研究。
近年来,中国已开始重视无线传感器网络技术研究。
国家自然科学基金资助了无线传感器网络研究项目,包括重点工程和表面工程。
“中国在未来20年技术预见研究”报告中,在传感器网络方面的技术课题达到了7个。
我国关于无线传感器网络的应用方面的研究起步略晚,但目前已经越来越受到重视,正逐渐成为热点,并已开展有关于该领域的研究,其研究对社会、经济有着长远的战略性意义。
1.3论文主要的内容及结构
本文首先对无线传感器网络路由协议AODV的原理进行了讨论,并进一步阐述了其实现方法。
然后,对它的传输时延,平均时延,分组投递率,路由发现时间进行研究。
并在此基础上把AODV协议与DSDV协议从性能上进行了比较。
全部章节如下:
第一章简单介绍了无线传感器网络的背景,及网内外研究现状和简单阐述了本论文的章节安排。
第二章对无线传感器网络,包括其结构和特点进行了概述。
第三章对无线传感器网络路由协议进行了分类和比较,并进一步的阐述了AODV协议。
第四章介绍了AODV路由协议来源,进一步阐述了路由算法的原理和操作方法。
第五章在NS-2平台上对AODV协议进行了仿真模拟,对其平均时延,分组投递率和路由发现时间进行研究。
并在此基础上把AODV协议与DSDV协议从性能上进行了比较。
2无线传感器网络概述
2.1无线传感器网络的介绍
无线传感器网络(WirelessSensorNetwork,WSN)是一种新的科学技术网络,该研究始源于美国军方。
无线传感器网络是由大量具有特殊作用的无线传感器节点,通过自组织的方式进行信息传递,互相协作完成特定功能的智能型网络[2]。
它结合了微机电系统(Micro.ElectronMechanicalSystem,MEMS),传感器技术,嵌入式计算技术,现代网络及无线通信技术,通过集成微传感器对各类分布式信息处理技术和软件编程技术实时协作,对各种环境实时监控,将监测对象控制地区的采集到的数据聚集,通过自组织多跳网络的方式传送给用户终端,从而实现物理世界,计算机世界和人类世界社会的三元连接。
无线传感器网络的应用有着广阔的发展前景,在工业,农业,交通,军事,医疗,空间监测,环境监测,抢险救灾,危险区域及其他重要领域有着实际的作用,因此近年在国内外引起了广泛的关注,并投入大量的资金。
2.2无线传感器网络系统及其协议的体系结构
通常情况下,无线传感器网络体系结构如2.1所示,无线传感器网络中的各个部分分布着众多具有射频功能的传感器节点,并负责收集数据,并通过无线传感器网络技术将数据发送到接收器节点汇聚节点(网关或基站),汇聚节点通过公共网络监控和管理中心(如Internet网络/卫星通信网络等)传达给用户,用户对收集到的数据处理和分析,作出判断或决定。
图2.1无线传感器网络体系结构
与其他网络相同,无线传感器网络分层的网络通信协议的包括物理层,数据链路层,网络层,传输层和应用层,其协议结构2.2所示。
物理层负责数据的抽样量化,信号的调制,发送和接收,即负责比特流的传输工作;数据链路层负责数据成帧,对帧实行监测,介质访问控制,差错控制,以减少传输节点间的冲突;网络层的任务,例如,实现数据传输,传感器和传感器,传感器和信息中心的通信;如果信息在内部传递,不需要传输层,但从实际应用的角度来看,无线传感器网络和外部需要通讯传输数据,因此在无线传感器网络以数据基础的网络寻址到外部寻址,即完成数据格式的转换功能;在应用层,根据不同的应用需求,可以实现无线传感器网络的特殊用途的应用。
和蜂窝网络、无线局域网等其它网络相比,无限传感器网络有上述显著的优点。
根据其特点结合实际应用,无线传感器网络需要采取一种灵活的解决方案。
在网络层,针对不同的应用需求,采用节能分布式路由算法和协议和数据融合算法。
从图2.2可见,在无线传感器网络协议体系结构中定义了,如能源管理,拓扑管理的跨层管理技术和应用支持技术。
图2.2无线传感器网络协议体系结构
2.3无线传感器网络的特点
无线传感器网络是一个“智能“网络,它具有一定的独特性。
也正是因为这些特点,无线传感器网络有其自身的优势,也有许多问题需要解决,无论是对现在研究人员来说,还是对无线传感器网络在实际中的应用来说,都具有很大的挑战。
无线传感器网络具有以下主要特点。
(1)传感器节点密度高,数目多,采用空间位置寻址[4]。
在无线传感器网络中,为了保证网络上数据传输的可用性和可行性,因此需要节点的密度相对比较高。
正因为存在大量的传感器节点,网络一般不支持两个节点之间进行点对点通信,并且每个节点不存在唯一的标识符,故而采用空间位置寻址对数据进行传输。
(2)传感器节点计算能力和存储容量能源有限[5]。
随着微型化传感器节点的产生,电池所能提供的能量越发的有限,并且由于节点分布的环境并不稳定,很难更换电池。
所以如何限制节点能源的消耗就成为网络设计当中的瓶颈,它直接决定着网络使用的寿命。
另一方面,传感器节点的存储容量小,低计算能力,数据存储不能复杂。
因此,无线传感器网络的研究人员构成了挑战,他们必须设计简单,高效的无线传感器网络路由协议。
(3)具有自组织能力
随着无线传感器网络能源需求增加,传感器节点可以工作和睡眠之间随时切换,由于各种原因导致的故障或失效,或增加新的传感器网络节点,这些事件都会使得无线传感器网络的拓扑结构在使用中容易改变。
此外,因为节点有移动性,必须更改网络的拓扑结构。
基于网络的拓扑结构变异,无线传感器网络已经具有自我组织,自我配置功能。
(4)传感器节点具有数据融合能力
在无线传感器网络中,由于存在大量的传感器节点,多个节点可能采集到相同类型的数据,因此,通常需要一些节点具有数据融合能力,可以将多个传感器的数据融合,然后发送给信息处理中心。
数据融合可以减少冗余数据,从而减少在传输过程中的能量消耗,延长网络的寿命。
3无线传感器网络中的路由协议
3.1无线传感器网络路由协议的分类
无线传感器网络路由协议的分类延续了AdHoc网络的基本传统的分类方法,根据不同的角度可进行不同的分类。
从路由发现策略的来看,可分为主动和被动两种类型的路由;从网络管理的逻辑结构可以分为,包括泛洪、SPIN、SAR和定向扩散在内的平面路由协议,和包括LEACH、TEEN、PEGAGIS和多层类聚算法在内的分层路由协议两类[3]。
(1)主动路由
也称为表驱动路由(TableDriven),主动路由发现策略类似于传统的路由协议,节点周期性的广播路由信息包交换路由信息,主动寻找路线,而所有的网络节点都必须保持对所有节点路线,即主动路由协议,网络中的所有节点之间保持通常是源节点和目的节点的路由表,无论路线是否必要。
主动式的路由协议通常包括“邻居探测“和路由广播两个过程。
(2)被动路由
又称为按需路由(OnDemand)路由,和主动路由相反,被动路由认为在动态变化的网络中,没有必要维持到所有节点的路由信息,它只会在没有去目的节点路由时“按需“的路由发现。
被动式的路由协议报文传输请求根据网络的传输请求,被动节点从源节点搜索到目的节点的路由。
当没有传输请求数据包时,路由器是在安静的状态,并不需要相互交换路由信息。
拓扑结构和路由表内容按需建立,它可能只是拓扑结构的一部分。
(3)平面路由
平面结构是指网络中,每个节点在路由功能上的地位相同,通过本地业务和反馈信息生成路由,并没有引入分级管理机制。
(4)分层路由
分层路由是平面路由对应的路由协议。
分层路由协议使用簇来分类传感器节点,即相邻节点集群的概念,每个群集有一个簇首。
由簇首完成簇内通信,簇首节点汇聚簇内节点的信息,以减少交通量,并最终通过簇首节点将收集到的数据传递给终端节点。
因此,无线传感器网络具有可扩展性,同时尽量避免了传感器节点的能量消耗,使网络的生命周期延长。
针对这些特点,许多大学开始对无线传感器网络通信协议进行研究,提出了多种路由协议,主要是平面路由(如:
FLooding协议、SPIN协议、SAR协议和DD协议)和分层聚类协议(如:
LEACH协议,PEGAGIS协议,TEEN协议)[6]。
如图3.1所示。
图3.1无线传感器网络的路由协议
3.2表驱动路由与按需路由协议的比较
卡耐基梅隆大学,JoshBroch等人以NS-2网络仿真工具为基础开发了无线移动网络仿真模块,并在相同的仿真环境分析DSDV,DSR和AODV协议进行性能比较,他们模拟节点具有低移动率,节点具有较高的移动率,节点移动慢三仿真环境[10]。
他们的仿真结果是,在三种仿真环境下,被动路由协议(DSR和AODV)的性能都比表驱动路由(DSDV)好很多。
在中等的流量负载下,DSR的性能要比AODV协议好,而在高负载的情况下AODV的性能高于DSR。
产生这种结果的具体原因,主要是由于表驱动路由协议可以使路由表比较准确的反映出网络的拓扑结构。
一旦节点发送数据包,可以立即获取目的节点的路由,所以路由协议的时延较小,但该协议需要付出大量的路由控制包,造成更大路由开销。
因此,在网络负载中等的情况下适于使用,在比较大的网络规模和移动性大的情况下不应使用。
相反,按需路由协议并不需要周期性的维护不需要的路由,而是当需要获取路由的时候在发送数据请求数据包,因此所产生的路由控制信息比表驱动路由要少很多。
但是由于数据在传输之前需要建立路由,所以存在一定的时延。
故按需路由协议在节点移动不大的场合下比较适用。
4AODV协议
4.1AODV协议的来源——DSDV协议
DSDV是表驱动路由协议,由传统的Bellman.Ford(DBF)路由协议改善而成。
在DSDV中,每个移动节点需要维护一个路由表。
路由表条目包含目标节点、跳数、目的序列号,其中目的序列号主要是用于确定是否过时,避免路由回路分配。
在DSDV使用序列号最高的路由,如果两个路由具有相同的序列号,那么选择最佳路线,就是最小跳数路由。
4.2AODV简述
AODV协议是移动自组织网络MANET(MobileAdHocNetwork)应用最广泛的按需路由协议,采用最短路由选路,注重网络吞吐量和网络服务质量。
无线传感器网络是MANET网络技术中一个主要应用领域,所以可以将AODV协议移植到WSN中。
当网络拓扑发生变化,AODV协议快速收敛。
计算量比较小,占用较少的存储资源,能够自我修复短路,减少网络带宽。
当源节点需要发送数据到目的节点,且源节点的路由表中没有到达目的节点的路由记录时,源节点将启动路由发现过程。
AODV适用于资源受限的自组织无线网络,它不需要定时广播路由信息,节省有限的网络带宽,降低网络的控制开销。
AODV中源节点和目的节点之间的通信分为三部分:
(1)路由请求
(2)路由应答
(3)数据传输
AODV算法中使用4种类型的控制分组:
(1)RouteRequest(RREQ),路由请求分组
(2)RouteReply(RREP),路由回复分组
(3)RouteError(RERR),路由错误分组
(4)Hello分组
AODV使用洪范(Flood)方式,从源节点广播RREQ请求进行路由发现。
当源节点S要建立到目的节点D的路由时,源节点向周围相邻节点广播路由分组请求(RREQ),RREQ请求分组扩散到全网之后将建立所需路由。
中间只有在第一次接收到该分组时提取RREQ请求分组中的目的节点与自身IP地址进行比较。
如自身是目的节点,立即向源节点回复应答分组(RREP)。
如自身不是目的节点,则提取RREQ请求分组中的源节点IP和广播ID判断是否转发过该分组。
如已转发过,则丢弃该RREQ分组,若没有转发过,则将源节点的IP地址和广播ID写入路由请求记录表,并建立到源节点S的反向路由。
同时,请求数据包RREQ跳数字段(HopCount)值加1,然后转发RREQ给邻居节点。
一旦RREQ分组到达目的节点D,或有“足够的新“路由到目的地节点D(“足够新“意味着这条路由相应的序列号(SequenceNumber)大于或等于RREQ消息的序列号)),该节点将按刚刚创建好的路线返回源节点SRREP分组,以单播的方式[11]。
RREP应答分组会沿着中间节点建立好的反向路由单播到源节点。
当源节点S接收到目的节点的RREP应答分组时,就可以通过建立好的正向路由向目的节点发送数据。
图4.1和图4.2分别是AODV协议路由请求和路由应答过程的示意图。
图4.1源节点广播路由请求过程
图4.2目的节点单播路由应答过程
图4.3为源节点建立到目的节点路由的过程
图4.4为路由建立后,监听的过程
图4.3为源节点建立到目的节点路由的过程。
路由建立后,中间节点会定时监听从邻居节点发来的Hello分组,如在定期时间内未收到来自下游邻居节点发送的Hello分组时,则判断路径发生断裂,并向上游节点单播路由错误分组RRER。
当源节点接收到RRER分组后,将重新建立向目的节点的路由,发送一带有大于原先目的节点序列号的RREQ请求分组。
另外,如与工作路由无关的节点移动或者断裂,应不影响到目的节点的路由。
图4.4为路由建立后,监听的过程。
4.3AODV分组格式
4.3.1RREQ分组格式
表4.1RREQ分组分组格式
分组包含以下的域:
Type1
J加入标识符,标识是否为多播。
R修复标识符,标识是否为多播。
G非必要的RREP标识符,表明是否需要单播RREP分组和目的节点IP地址给指定的节点。
D目的节点唯一性标识符,表明只有目的节点才对RREQ做出回应。
U未知序列号标识符,表明目的节点序列号当前未知。
Reserved设为0,接收时忽略。
HopCount从源节点到当前节点所处理的RREQ的节点的跳数。
RREQID和源IP地址一起保证和标志该路由建立过程发送的RREQ分组的唯一性。
DestinationIPAddress
目的节点的IP地址。
DestinationSequenceNumber
源节点收到的最新的目的节点序列号。
OriginatorIPAddress
源节点的IP地址
OriginatorSequenceNumber
源节点的序列号
4.3.2RREP分组格式
表4.2RREP分组格式
分组包含以下的域:
Type2
R修复标识符,在多播情况下使用的字段
A确认标识符,表明是否需要确认收到RREP分组
Reserved保留字段,设为0
PrefixSz前缀长度,如果非零,说明指定的下一跳将被当作前缀相同的节点的目的节点。
HopCount源节点到目的节点的跳数。
DestinationIPAddress
目的节点的IP地址
DestinationSequenceNumber
目的节点序列号
OriginatorIPAddress
源节点IP地址
Lifetime生存时间,收到RREP的节点认为保留该路径所需要的时间,以毫秒为单位。
A标识位是在发送RREP链路不可靠或者信息单向传播时,进行设置,收到RREP的节点被期望返回一个RREP-ACK分组,格式如表4.4所示。
4.3.3RERR分组格式
表4.3RERR分组格式
分组包含以下的域:
Type3
N不删除标识,当节点实现本地链路修复时设置该位,并且上游的节点不应删除这条路径。
Reserved保留字段,设为0
DestCount不可达的节点的个数,至少为1
AdditionalUnreachableDestinationIPAddress
因链路中断而变得不可达的目的节点的IP地址
AdditionalUnreachableDestinationSequenceNumber
因链路中断而变得不可达的目的节点的序列号
4.3.4RREP-ACK分组格式
表4.4RREP-ACK分组格式
Type4
Reserved保留字段,设为0
4.4AODV路由算法的原理
AODV路由协议是一种按需距离矢量路由,和表驱动路由协议不同,按需路由协议只有需要一个源节点到目的节点的路由,或者当一个节点想要加入一个多播组才进行路由发现[12]。
AODV路由在AdHoc移动网络中单播,组播或广播的移动网络协议。
当源节点需要一条通往目的节点,将发起一个网络路由发现过程。
当寻找到一条路径,或所有可能的路径已被检查后,路径发现过程完成。
一旦路径建立,路由表将维持到不再需要该路径、该条路由失效或超过生存期。
AODV路由查找使用广播机制。
除了源路由,AODV协议还依靠中间节点动态创建路由表项。
该协议借用DSDV中的目的序列号机制,每个节点维护一个单调递增序列号计算器,用它来标记在缓存中路由的新旧。
4.5AODV路由算法基本操作
4.5.1维护序列号
一个节点只有在以下3种情况中会改变路由表项中的目的节点序列号:
(1)它自己本身就是目的节点;
(2)它收到了一个更新的有关目的节点序列号的信息。
(3)到目的节点的链路终止或中断。
目的序列号会在接收到RREQ,RREP或RERR中新的信息时更新。
AODV依靠网络中的每个节点去保存和维护它的目的节点序列号,以保证没有环路。
一个目的节点会在两种情况下增加它自己的序列号:
(1)当需要对同一个目的节点启动新的路由发现(routediscovery)时,它必须增加它自己的序列号。
这会防止与之前建立的到源节点的反向路径出现冲突。
(2)当目的节点即将发送的RREQ消息响应一个RREP,必须更新自己的序列号,使当前的RREQ分组的序列号和目的节点是序列号最大的一个[13]。
为了保证关于目的节点的信息不会变得陈旧,节点比较当前的序列号和从分组中获得的序列号。
这种比较必须使用32位的有符号整数,这是为了实现序列号的轮转。
如果新获得的序列号减去当前的序列号结果小于0,那么新获得的序列号就会被忽略。
另一种会改变路由表项中目的节点序列号的情况是当去往下一跳的链路中断或终止时,节点会把相应的路由项置为无效,同时增加这些路由项的序列号。
4.5.2产生路由请求
当目的节点未知、原路径失效或终止,且节点(即源节点)在需要发现路由的时候会发送RREQ分组。
RREQ中的目的节点序列号域先设为最后所知道的序列号,若序列号未知,则必须设置未知序列号标识。
节点自己的序列号在复制到RREQ中后自我增值。
RREQID域设为最后使用的RREQID加一。
跳数域设为0。
广播RREQ消息前,源节点将缓存的RREQID和自己的IP地址的PATH_DISCOVERY_TIME长时间,这样,当它从邻居节点接收到相同的RREQ分组,不要发送,处理重复[14]。
当源节点期望能和目的节点进行双向通信时,源节点会设置G标识位。
这样目的节点就能接收到反向路径的通报。
一个源节点每秒内不应发送超过设置的请求分组带宽的RREQ。
如果在等待了NET_TRAVERSAL_TIME毫秒后节点还没收到相关路由信息,节点会再次尝试发送RREQ,最多尝试RREQ_RETRIES次。
为了减少网络的拥塞,同一个节点重复的请求会利用利用二元指数后退算法。
即节点第一次发送RREQ时,等待NET_TRAVERSAL_TIME毫秒,随后的每次尝试等待的时间都是前一次等待时间乘2。
4.5.3路由请求消息的控制传播
为了防止的RREQ分布扩展至整个网络,源节点将使用扩展环式搜索技术。
在这种技术,为源节点的RREQ分组的IP中初始化一个TTL=TTL_START,并设置收到RREP时间为RING_TRAVERSAL_TIME毫秒。
用来计算RING_TRAVERSAL_TIME的TTL_VALUE设置为IP头中TTL的值。
当RREQ超时,重发RREQ时,TTL增加TTL_INCREMENT。
如此继续,直到TTL达到TTL_THRESHOLD,此后的重试中设TTL=NET_DIAMETER。
每一次等待RREQ的计时时间都为RING_TRAVERSAL_TIME,当需要重试的分组跨越整个Adhoc网时,可以把TTL_START和TTL_INCREMENT都设为NET_DIAMETER。
当需要对同一个目的节点启动新的路由发现时,RREQ中的TTL将被初始化,成为原有失效的跳数加上TTL_INCREMENT。
一个过期的路由表项在DELETE_PERIOD的时间内都不能被擦除。
另外还能够设置更长的擦除时间。
任何一个正在等待RREQ的路由表项在2*NET_TRAVERSAL_TIME的时间内都不能被擦除。
4.5.4处理和转发路由请求
当一个节点接收到RREQ消息时,它首先创建或更新没有有效的路由表项。
然后查看在至少PATH_DISCOVERY_TIME是否收到相同的源IP地址和RREQID消息的RREQ分组,如果有的话,忽略目前收到的RREQ分组。
当收到的RREQ不被忽略时,首先把RREQ中的跳数增1,然后在路由表中搜寻到源节点的反向路径,使用最长匹配原则,如果有需要,则创建新的反响路由表项,或者用RREQ中的源节点序列号更新原有路由表项。
当反向路径被创建或更新时,将会执行下面的操作:
如图4.5图所示。
(1)将RREQ消息源节点序号的和相对应的反向路由中的目的节点序列号作比较,如果前者比后者大,前者将取代后者。
(2)路由项的有效序列号域被设为真。
(3)路由项的下一条设为向该节点传送RREQ的节点,这个从IP头部中的源地址IP中获得。
不管何时收到一个RREQ,反向路由项的生存期都会被设为ExistingLifetime和MinimalLifetime中的较大者,其中
MinimalLifetime=(当前时间+2*NET_TRAVERSAL_TIME.
2*HopCount*NODE_TRAVERSAL_TIME).
如果一个节点不产生一个RREP,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整版 基于 aodv 无线 传感器 路由 协议 研究 毕业论文