基于lowpa的传感器网络路由协议_第1页
基于lowpa的传感器网络路由协议_第2页
基于lowpa的传感器网络路由协议_第3页
基于lowpa的传感器网络路由协议_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于lowpa的传感器网络路由协议

16ipv6路由协议levintein的目标是在ie808.15.4mac层上创建一个v6协议栈,从而让传感器网络与v6存储和连接自由。6LoWPAN的体系结构如图1所示。由于无线传感器网络节点的资源有限,要在储存器和处理器极其有限的传感器节点上实现IPv6协议就必须对IPv6协议进行精简以适合传感器网络的使用。此外,由于IPv6数据包支持的最小字节数(1280Byte)远大于IEEE802.15.4帧所能包含的字节数(127Byte),在6LoWPAN体系结构中引入了一个适配层来完成数据分片与数据重组等功能。本文提出了一种路由协议,此路由协议采用链路层地址实现传感器网络内部的路由查找和报文转发。本协议的适用环境描述如下:基于6LoWPAN的传感器网络包括少量(≥1)接入节点和大量无线传感器节点,它们的位置都是静止不动的。其中,接入节点连接无线传感器网络与IPv6网络,接入节点之间通过IPv6网络进行多播通信,传感器节点拥有一个全向天线,使用射频进行通信。此外,接入节点的资源是很强大的。2道协议2.1ipv6报文的分片格式为了使IPv6报文在IEEE802.15.4网络上传输,本协议设计了两种适配层头部,即不分片报文头部和分片报文头部。其中,分片报文头部又分为第一片报文头部和后继报文头部。不分片报文头部格式如下:其中:LF为链路分片(linkfragment),00表示不分片,01表示第一片,10表示最后一片,11表示中间分片,此处为00;Pro_Type为指出Payload中IPv6头部是否为压缩类型,0表示未压缩的IPv6头部,1表示压缩的IPv6头部;RSV为保留,全部设置为0;Payload为适配层的负载部分,内容为IPv6数据包内容。在6LoWPAN中,由于IPv6报文支持的最小值(1280Byte)大于IEEE802.15.4帧所能包含的字节数(127Byte),在传感器网络中传输一个完整的IPv6报文时必须将其分片处理,而此报文在IPv6网络中传输时则可能无须进行分片。此外,IPv6将分片重组信息放在扩展头部进行处理,而在6LoWPAN中的IPv6头部包含扩展头部势必带来不小的开销。由于适配层位于网络层之下、链路层之上,本协议将IPv6分片信息放在适配层。分片报文的第一片报文头部格式如下:其中:LF为链路分片,此处为01;Identification为此字段惟一标志一个被分片的IPv6报文,该值在IPv6报文的每个分片中的值均相同。分片报文的后继报文头部格式如下:其中:LF为链路分片,此处为10或11;F_Offset为指出分片报文偏移原始报文开始处的位置,偏移的字节数是此字段值乘以8。在分片报文中,只有第一片分片报文的PayLoad中包含IPv6头部和UDP头部,在后续分片报文的Payload中不需要包含IPv6头部和UDP头部,只包含应用层数据。2.2ipv6地址的聚合根据IPv6地址的分层结构以及传感器网络自身特点,本协议对传感器节点以及接入节点采用如下的IPv6地址格式:在本协议中,一个传感器节点的IPv6地址分为三个部分:a)可聚合全局地址格式前缀,取值范围与Unicast相同,即001;b)随后的109bit,即传感器网络地址前缀,一个传感器网络中所有传感器节点的IPv6地址的网络地址前缀均相同;c)传感器节点ID,即为传感器链路层的16bit短地址(图2),它惟一标志一个传感器网络中的一个传感器节点。2.3发送respese消息在本路由协议中,传感器节点加入到路由树后,需保存如下信息:在路由树中的等级以及树根节点的16bit短地址。一个传感器节点X加入路由树的过程如下:a)X发送加入路由树的join消息;b)在join消息覆盖范围内的传感器节点A接收到join消息之后,它会向X返回一个response消息,此消息包括自己在路由树中的等级、16bit短地址以及所在路由树的树根节点的16bit短地址;c)X在规定时间内可能接收到多个节点返回的response消息,它会根据response消息中的等级参数选择等级最小(即到达所在路由树的树根节点跳数最少)的节点F作为父节点并向F返回一个ACK确认消息;d)F接收到ACK确认消息之后,它会将X的16bit短地址保存在孩子列表中,然后向X返回一个confirm消息,同时向其父节点F′发送NChild消息通报X的加入;e)F′接收到NChild消息之后,它把X的地址保存到孩子列表中,同时再向其父节点F″转发此消息,依此类推,直到此消息到达接入节点为止;f)X收到confirm消息之后,它记录下父节点的地址以及自身的等级(自身的等级等于父节点的等级加1);h)至此,X成功加入路由树。2.4ipv6报文封装IPv6网络节点N使用传感器节点X的IPv6地址addr与其进行通信,具体通信过程如下:a)N发送一条获取传感器采集数据的服务请求消息,此消息的目的地址为addr;b)此消息在IPv6网络中进行路由,最后到达路由树的树根,由于本协议中可能存在多个路由树,此树根节点的孩子列表中可能不包含X节点,在这种情况下,树根节点通过IPv6网络中的多播方式将此消息发送给其他路由树的树根节点,最终此消息到达孩子列表包含X节点的树根节点T;c)T首先从目的IPv6地址中提取X的16bit短地址(即IPv6地址的最后16bit),然后对消息中的IPv6报头进行精简,最后,根据IPv6报文是否需要分片的情况,分别用相应的适配层头部封装精简过的IPv6数据报,最后将其封装成IEEE802.15.4帧(目的地址为X的16bit短地址,源地址为T的16bit短地址)并发送出去;d)在此帧覆盖范围内的传感器节点A接收到此帧后,首先查看自己的地址是否与目的地址相同,如果相同,则转到e),如果地址不相同,则查看自己的孩子节点列表中是否包含X,如果不包含,则放弃此消息,若孩子节点列表中包含X,则继续发送此帧,转到d);e)X根据适配层的信息将IPv6数据报进行重组,然后处理IPv6报文中的应用层数据(即服务请求消息),将返回的响应数据用精简IPv6报文头部进行封装,并根据IPv6报文是否需要分片的状态,用相应的适配层头部封装精简IPv6数据报,最后将其封装成IEEE802.15.4帧(目的地址为T的16bit短地址,源地址为X的16bit短地址),发送到其父节点;f)父节点将接收到的IEEE802.15.4帧继续发送到其父节点,依此类推,最后帧到达T;g)T首先根据适配层头部信息将返回的IPv6报文进行重组,然后对精简IPv6报头进行还原操作,最后将完整的IPv6报文封装到IPv6网络所使用的链路层帧中,将其发送到IPv6网络上,IPv6网络按照IPv6路由方式将此帧路由到N;h)路由过程结束。整个通信过程如图3所示。2.5压缩受压域域的算法对于无线传感器网络而言,由于报文处理比较简单,可以不实现扩展头部。另外,IPv6报文头部的Version、TrafficClass和FlowLabel域一般情况下都是常数,而PayloadLength的值可以通过底层MAC帧中的长度域计算出来,因此可以对Version、TrafficClass、FlowLabel、PayloadLength以及NextHeader域进行压缩。3实验结果与分析在仿真环境下比较了本路由协议与Mesh路由协议的性能。笔者作了如下仿真实验:对100×100m2的传感器仿真区域进行测试,在仿真区域内随机布置3个固定接入节点与200个传感器节点,传感器节点初始状态的电池能量为2J。为了测试本路由协议的性能,实验中数据源的传输速率设置在128~1024bps,传感器的带宽设置为19.2kbps。实验对本协议以及Mesh路由协议进行了数据包接收率、平均延迟时间的性能分析。其中,数据包接收率指接收方接收到的数据包总数与发送方发送的数据包总数的比值,平均延迟时间是指发送方发送数据包时刻到接收方接收到数据包时刻之间的平均时间间隔,分析结果如图4所示。产生上述结果的原因如下:a)当传感器节点发送数据时,Mesh路由协议通过广播方式寻找路由,而本协议通过传感器链路地址自动完成路由,无须发送寻找路由的控制消息;b)本协议采用精简IPv6协议,因此在网络上的数据传输量减少,提高了数据传输速度,降低了传感器节点功耗;c)本协议中传感器节点采用anycast技术加入距离自己最近的网关节点树,并通过此树实现路由,这不仅缩短了路由路径的长度,也在一定程度上实现了负载均衡,避免了网络拥塞,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论