基于多水下自主航行器的水下传感器网络路由方法与流程

文档序号:17695544发布日期:2019-05-17 21:28阅读:266来源:国知局
基于多水下自主航行器的水下传感器网络路由方法与流程

本发明属于水下无线传感器网络技术领域,特别是涉及一种基于多水下自主航行器的水下传感器网络路由方法。



背景技术:

水下传感器网络是无线传感器网络在水下的一个重要应用。水下传感器网络是指将耗能低、具有一定通信距离的水下传感器节点部署到指定海域中,利用节点的自组织能力自动建立起网络。这些水下传感器节点具有声通信能力,而浮于水面的声纳浮标具有视频和声通信能力。水下传感器节点将声信号向位于水面的声纳浮标传输,声纳浮标接收后,再通过无线射频信号向控制中心传递,进而完成对水域信息的采集。由于水下传感器网络在海洋管理、资源保护、灾害监测、海洋工程、海上生产作业和海洋军事活动中起到促进作用,因此近年来在世界上得到了广泛关注。由于水声传感器网络采用水声信道通信,然而,由于声通信的有限带宽、高比特误码率和高传输速率等特点,因此使得实现水域的声通信仍存在巨大挑战。它与传统的陆上传感器网络相比存在路径失效、噪声、多途干扰、传输延时和多普勒效应等一系列问题。

同陆上传感器网络一样,路由方法是水下传感器网络的重要研究内容之一,其目的是在水下数据源节点和汇聚节点间建立一条数据传输路径。因此,针对水下无线传感器网络可靠性差、带宽窄、能耗高等特点,很多研究者在水下无线传感器网络路由方法方面已取得一定的成果。yanh提出了基于深度的路由协议dbr(depth-basedrouting),dbr中节点通过压力传感器获得自身的深度信息,利用深度差进行路由调度,一旦接收到数据包,节点将与发送节点进行深度比较,如果发送节点离水面更近,则该节点为转发数据包的候选节点。dbr协议在密集网络中具有良好的性能,但在稀疏网络中可能会出现多个转发节点传递同一个数据包,或节点找不到合适的下一跳转发节点的现象,造成信息的冗余发送和数据包的传输延迟。chenj等人发明的rebar(reliableandenergybalancedroutingalgorithm)路由协议提出将节点移动性作为平衡网络能量消耗的一种积极因素,它将网络分割成两个区域并定义其中一个是汇聚周围的热点区域,其他部分为普通区域,协议将通过节点的移动性来调换两个区域内的节点,从而平衡各个节点间的能量消耗情况,然而此协议需要明确知道每个普通节点和汇聚节点的地理位置,地理位置信息的获取又将增加一定的网络能量消耗和数据传输信息。seokhoonyoon等人提出了一种auv辅助的路由协议aurp(anauv-aidedunderwaterroutingprotocol),节点分层不需要位置信息,数据按分层信息传递到网关节点,再由auv高速率近距离收集数据,并将数据运送到汇聚节点,文中考虑了auv收集路径对网络性能的影响,但对动态拓扑适应性不强,没有充分发挥auv的能动性。

水下传感器网络中大多采用水下机器人、水下滑翔机、水下普通节点以及水面基站等多种设备配合协调运作。在异构的水下设备网络中,多个普通节点和多个移动节点通信可看作多源节点和多汇聚节点进行数据传输的通信情景。因此,以auv作为多移动汇聚节点的水下网络的路由方法设计应着重考虑节点能量消耗、数据交付率、汇聚节点的多样性和移动性等问题。但目前尚未发现基于多水下自主航行器的水下传感器网络路由方法方面的报道。



技术实现要素:

为了解决上述问题,本发明的目的在于提供一种基于多水下自主航行器的水下传感器网络路由方法。

为了达到上述目的,本发明提供的基于多水下自主航行器的水下传感器网络路由方法包括按顺序进行的下列步骤:

步骤一、网络初始化阶段:

步骤1.1:构建基于多水下自主航行器的水下传感器网络模型,以每一个水下自主航行器作为一个汇聚节点,设定分层距离阈值d,水下自主航行器将收集的信息以数据包形式广播给每个水下普通传感器节点,其广播的信息中包含水下自主航行器的发射功率;

步骤1.2:每一个水下普通传感器节点接收到广播的信息后,根据信号的强度计算出其与水下自主航行器间,即收发节点间的传输距离x;

然后将收发节点间的传输距离x与分层距离阈值d进行比较,若收发节点的传输距离x小于分层距离阈值d,则水下普通传感器节点将其自身定义为该水下自主航行器的第一层节点;

步骤1.3:第一层节点再次泛洪发送消息来依次建立整个初始动态网络分层网络;

步骤1.4:每个水下自主航行器重复步骤1.1-1.3,得到以多个水下自主航行器为中心的初始动态网络分层结构;同时,每个水下普通传感器节点更新路由表和邻居表中的数据信息,然后进入数据传输阶段;

步骤二、数据传输阶段:

步骤2.1:在动态的三维水下传感器网络中,当水下普通传感器节点接收到一个数据包分组时,预期的接收节点将在邻居表中寻找具备转发条件的候选节点集,并基于候选节点的剩余能量和数据包传输率引入复合转发因子gfi,通过复合转发因子gfi对候选节点的传输优先级进行排序;

步骤2.2:在数据传输时,传输优先级最高的候选节点首先对数据包进行转发,只有在传输优先级高的候选节点转发失败后,传输优先级低的候选节点才进行数据包的转发;当第个传输优先级的候选节点接收到数据包后,为其设置等待转发时间当等待转发时间结束后,就立即转发数据包;

当传输优先级低的候选节点在等待转发时间内没有监听到传输优先级高的候选节点对数据包进行转发时,传输优先级低的候选节点将转发数据包;

步骤2.3:水下普通传感器节点根据候选节点排序和候选节点协调策略选定好下一跳候选节点后发送数据包,此时该转发节点又变成新的源节点,继续寻找最优路径并选择最佳下一跳转发节点,直至在该候选节点的广播范围内找到水下自主航行器,并将数据包成功传输给水下自主航行器,即表示数据传输工作完成。否则,由于水下传感器网络结构的动态移动性,导致初始动态网络分层结构发生变化,因此需要执行步骤三以进行网络修复。

步骤三、网络修复阶段:

步骤3.1:设水下自主航行器在初始分层时刻t的第一层邻居节点集合为nt,在时刻t′的第一层邻居节点集合为nt′,则在时刻t′初始第一层节点的丢失比为ε:

其中,临界值μ的取值与水下自主航行器的偏离距离、传输范围、网络节点分布有关,通常临界值μ取0.5。

步骤3.2:当丢失比ε大于临界值μ时,水下自主航行器将发送网络修复信号以重新建立动态网络分层结构。

步骤3.3:水下传感器网络修复完成之后,重复步骤一和步骤二,直到数据包被成功传输到水下自主航行器,即数据传输完成。

在步骤1.2中,所述的收发节点间的传输距离x的计算方法如下:

设a(x)为功率和传输距离的衰减因子,x代表收发节点间的传输距离,k为能量扩散系数,通常取1.5;则衰减因子为:

a(x)=xkαx(1)

频率为f(khz)时的吸收系数α(f)为:

由式(1)~(2)计算出收发节点间的传输距离x。

在步骤2.1中,所述的复合转发因子gfi的计算公式为:

其中,α1+α2=1,α1,α2∈[0,1],α1,α2分别称为能量因子和传输因子。i表示候选节点nodei,pi表示候选节点i的剩余能量,pinit表示候选节点i的初始能量,pi/pinit称为能量因素。

在步骤2.2中,所述的等待转发时间由三部分组成:(1)数据包传输时间th(p);(2)第1个至第2个传输优先级的候选节点间时延差,以及直到第个至第个传输优先级的候选节点间时延差之和(3)数据包处理时间tproc;因此,等待转发时间为:

传输时间th(p)为:

其中,rc为通信范围,x为收发节点间的传输距离,p为候选节点的传输优先级,v为水下普通传感器节点的传播速度,为1500m/s。

本发明提供的基于多水下自主航行器的水下传感器网络路由方法具有如下优点:在网络初始化阶段将动态分层策略应用到水下传感器路由策略中,并引入分层距离阈值进行分层判断,可以有效地减少能量的消耗,避免由于传输距离过长而过高地消耗能量。在数据传输阶段通过候选节点排序和候选节点集协调策略选择下一跳转发节点,通过候选节点的复合转发因子对传输优先级进行排序,基于候选节点的传输优先级大小进行传输协调,确定其不同等待转发时间,从而避免数据包冲突,均衡能量消耗,降低网络时延。利用网络修复模型在初始动态网络分层结构发生变化时进行周期修复,从而适应水下环境变化的多样性,提高网络传输性能。本发明适用于在水下环境中,多个水下探测仪器如水下机器人、水下滑翔机移动过程中收集数据时采用的路由策略,对大范围海域的探测、环境的考察和研究均具有积极的意义。

附图说明

图1是本发明中基于多水下自主航行器的水下传感器网络模型示意图。

图2是本发明中以某一个水下自主航行器为中心的动态网络分层结构示意图。

图3是本发明中某一个水下自主航行器的初始化网络结构变化示意图。

图4是本发明提供的基于多水下自主航行器的水下传感器网络路由方法流程图。

具体实施方式

下面结合附图和具体实施例对本发明进行详细说明。

如图4所示,本发明提供的基于多水下自主航行器的水下传感器网络路由方法包括按顺序进行的下列步骤:

步骤一、网络初始化阶段:

步骤1.1:构建如图1所示的基于多水下自主航行器的水下传感器网络模型,以每一个水下自主航行器作为一个汇聚节点,设定分层距离阈值d,水下自主航行器将收集的信息以数据包形式广播给每个水下普通传感器节点,其广播的信息中包含水下自主航行器的发射功率;

步骤1.2:每一个水下普通传感器节点接收到广播的信息后,根据信号的强度计算出其与水下自主航行器间,即收发节点间的传输距离x;

设a(x)为功率和传输距离的衰减因子,x代表收发节点间的传输距离,k为能量扩散系数,通常取1.5。则衰减因子为:

a(x)=xkαx(1)

频率为f(khz)时的吸收系数α(f)为:

由式(1)~(2)计算出收发节点的传输距离x,然后将收发节点间的传输距离x与分层距离阈值d进行比较,若收发节点的传输距离x小于分层距离阈值d,则水下普通传感器节点将其自身定义为该水下自主航行器的第一层节点;

步骤1.3:第一层节点再次泛洪发送消息来依次建立整个初始动态网络分层网络;图2所示是以某一个水下自主航行器为中心的初始动态网络分层结构示意图。

步骤1.4:每个水下自主航行器重复步骤1.1-1.3,得到以多个水下自主航行器为中心的初始动态网络分层结构;同时,每个水下普通传感器节点更新路由表和邻居表中的数据信息,然后进入数据传输阶段;

步骤二、数据传输阶段:

水下普通传感器节点根据候选节点排序和候选节点集协调策略选择下一跳转发节点,下一跳转发节点采用同样的方式进行数据包传输,直到数据包被成功发送到水下自主航行器。水下普通传感器节点根据候选节点的剩余能量和数据包传输率引入复合转发因子gfi,通过复合转发因子gfi对候选节点的传输优先级进行排序,从而避免数据包冲突,均衡能量消耗。候选节点基于传输优先级的大小进行候选节点集的传输协调,从而确定其不同等待转发时间以降低网络时延。具体步骤如下:

步骤2.1:在动态的三维水下传感器网络中,当水下普通传感器节点接收到一个数据包分组时,预期的接收节点将在邻居表中寻找具备转发条件的候选节点集,如果候选节点集中的多个候选节点转发同一个数据包分组,将会导致大量的数据包冲突。因此,为了减少冲突,均衡候选节点的能量消耗,本发明基于候选节点的剩余能量和数据包传输率引入复合转发因子gfi,通过复合转发因子gfi对候选节点的传输优先级进行排序。

其中,α1+α2=1,α1,α2∈[0,1],α1,α2分别称为能量因子和传输因子。i表示候选节点nodei,pi表示候选节点i的剩余能量,pinit表示候选节点i的初始能量,pi/pinit称为能量因素。

本发明采用水下声学信号的衰减模型来估计距离为d的任意一对候选节点传输m比特的数据包传输率p(m,d)。其中,距离为d的平均信噪比(snr)为:

式中eb和n0为常数,分别表示单位比特的平均能量消耗和噪声功率密度。

采用瑞利衰落建模,信噪比snr的概率分布为:

而比特误码率pe(d)为:

本发明采用bpsk调制模式,距离为d的比特误码率为:

p(d,m)表示距离为d的一对候选节点传输m比特的数据包传递概率为:

p(d,m)=(1-pe(d))m(8)

因此,1-(pi/pinit)的值越小,候选节点在转发过程中消耗的能量越少;数据包传递概率p(d,m)的值越大,候选节点的数据传输性能越好。综上,候选节点的复合转发因子gfi越小,其传输优先级越高。

步骤2.2:在数据传输时,传输优先级最高的候选节点首先对数据包进行转发,只有在传输优先级高的候选节点转发失败后,传输优先级低的候选节点才进行数据包的转发。在本发明中,当第个传输优先级的候选节点接收到数据包后,为其设置等待转发时间当等待转发时间结束后,就立即转发数据包。

等待转发时间由三部分组成:(1)数据包传输时间th(p);(2)第1个至第2个传输优先级的候选节点间时延差,以及直到第个至第个传输优先级的候选节点间时延差之和(3)数据包处理时间tproc。因此,等待转发时间为:

传输时间th(p)为:

其中,rc为通信范围,x为收发节点间的传输距离,p为候选节点的传输优先级,v为水下普通传感器节点的传播速度,约为1500m/s。

当传输优先级低的候选节点在等待转发时间内没有监听到传输优先级高的候选节点对数据包进行转发时,传输优先级低的候选节点将转发数据包。为了避免产生不必要的等待时延,每个候选节点的等待转发时间和传输时间th(p)与其传输优先级有关。当传输优先级为1时,候选节点的传输时间th(p)只与候选节点的通信范围rc、发送方与接收方之间的距离d以及水下普通传感器节点的传播速度v有关;当传输优先级大于1时,传输时间th(p)还应考虑候选节点的传输优先级。这使得传输优先级不同的候选节点具有不同的等待转发时间和传输时间,从而可减少网络时延,延长网络寿命。

步骤2.3:水下普通传感器节点根据候选节点排序和候选节点协调策略选定好下一跳候选节点后发送数据包,此时该转发节点又变成新的源节点,继续寻找最优路径并选择最佳下一跳转发节点,直至在该候选节点的广播范围内找到水下自主航行器,并将数据包成功传输给水下自主航行器,即表示数据传输工作完成。否则,由于水下传感器网络结构的动态移动性,导致初始动态网络分层结构发生变化,因此需要执行步骤三以进行网络修复。

步骤三、网络修复阶段:

由于水下自主航行器是以一定速度不断移动,而水下普通传感器节点也随着水流在一定范围内移动,因此整个水下传感器网络拓扑结构在不断变化。如图3所示,当某一个水下自主航行器在某一时刻移动到初始动态网络分层结构的边缘时,其邻居节点可能已经发生较大的变化。此时,若水下普通传感器节点按照初始动态网络分层结构来进行路由选择和数据传输,则数据包到达水下自主航行器的效率降低甚至无法到达水下自主航行器,导致数据传输率降低。因此,通过水下自主航行器邻居节点的变化情况判断是否需要进行水下传感器网络修复。具体步骤如下:

步骤3.1:设水下自主航行器在初始分层时刻t的第一层邻居节点集合为nt,在时刻t′的第一层邻居节点集合为nt′,则在时刻t′初始第一层节点的丢失比为ε:

其中,临界值μ的取值与水下自主航行器的偏离距离、传输范围、网络节点分布有关,通常临界值μ取0.5。

步骤3.2:当丢失比ε大于临界值μ时,水下自主航行器将发送网络修复信号以重新建立动态网络分层结构。

步骤3.3:水下传感器网络修复完成之后,重复步骤一和步骤二,直到数据包被成功传输到水下自主航行器,即数据传输完成。

本发明提供的基于多水下自主航行器的水下传感器网络路由方法通过网络初始化阶段、数据传输阶段和网络修复阶段寻求一条将数据包传输到水下自主航行器的最优路径。其中网络初始化阶段通过构建动态网络分层结构,将水下传感器网络中的水下普通传感器节点分出层次,从而形成递进梯度,使得在后续的数据传输阶段可以使数据包依据水下普通传感器节点的层次关系向相应的水下自主航行器传输。在数据传输阶段,水下普通传感器节点根据候选节点的复合转发因子对候选节点的传输优先级进行排序,基于候选节点传输优先级的大小进行候选节点集的传输协调,从而避免数据包冲突,均衡能量消耗,降低网络时延;在网络修复阶段,利用网络修复模型在初始动态网络分层结构发生变化时进行周期修复,从而适应水下环境变化的多样性,以提高水下传感器网络的传输性能。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1