一种降低网络剩余能量的水声传感器网络路由协议的制作方法

文档序号:12866302阅读:361来源:国知局
一种降低网络剩余能量的水声传感器网络路由协议的制作方法与工艺

本发明涉及水声通信网络技术领域,具体而言,涉及一种降低网络剩余能量的水声传感器网络路由协议。



背景技术:

水声通信应用在军事上已经很长时间了,相对于无线电,声音在水下有着优越的传播特性,使得它成为水下通信首选的媒介。由于水下声组网易于布设,军事上的丰富经验促进了水声通信网络。这种网络在海洋数据收集、污染监测、海洋开发、灾难预报、辅助导航和战术监视等涉海领域具有广泛的应用前景。它一般是由大量分布的水下传感器、水下仪器等节点组成的多跳网,每个节点具有一个或多个传感器、嵌入式的处理器、低耗的水声modem、以及供应能量的电池。

提高路由协议能耗效率、延长正常工作寿命是水下传感器网络的重要课题。大部分水声传感器网络的研究针对的是一种平面结构的网络拓扑。在这种结构中有两类节点:主节点和传感器节点,传感器节点以多跳的方式与主节点相连。传感器节点负责收集传感器上的数据,通过网络把数据传给主节点。主节点负责接收传感器节点传送的数据,并把数据传送给岸上的用户。本发明基于针对如下场景:信息总是从传感器节点向主节点发送,而主节点除了向整个网络发布广告信息之外,不会指定某个节点作为目的地址进行信息传送,即只存在单向信息传输。同时假设水下声信道是双向对称的。

由于水声传感器网络的部署工作的环境限制,更换水下节点电池或者补充其能量非常困难,所以水声网络在承担环境信息监控任务的前提下,尽量节省节点能量消耗,延长网络的使用寿命,成为重要的研究方向。

对于面向环境监控的水声传感器网络来说,网络的正常工作依赖于网络拓扑的良好连通性。若连通性失效,则其承担环境数据监控的服务能力大打折扣。由于水声网络节点一般稀疏,即使只有少数节点因能量耗尽或者故障而无法继续工作,纵然其它大部分网络节点仍由大量能量剩余,整个传感器网络仍然无法很好地工作而接近失效,这样无法充分使用所有节点的能量,造成大量的能量浪费。

刘广钟、刘晓晖等学者考虑了节点剩余能量、跳数、传输距离等信息来辅助最优转发节点的选择而提出了一种定向扩散水声传感器网络路由算法,该方法能够在一定程度上延长网络的生命周期。与其不同,本发明通过所提出的链路能耗代价、转发能耗代价、最优路由能耗代价等概念不但直接或者间接的考虑了上述因素,还考虑了链路能耗相对剩余能量的比例,因而更有利于同步各节点的能量消耗,仿真结果也证明了本发明所提出协议的优势。



技术实现要素:

有鉴于此,本发明实施例的目的在于提供一种降低网络剩余能量的水声传感器网络路由协议,以改善现有技术中水声传感器网络路由协议能耗因能耗不均衡,导致部分节点过早失效而引发的剩余能量浪费问题。

本发明提供了一种降低网络剩余能量的水声传感器网络路由协议,包括以下阶段模式:

s1,路由建立阶段模式:在已有网络拓扑结构的基础上,根据每一节点的剩余能量、链路能量消耗代价、转发能量消耗代价和最优路由能量消耗代价,分布式动态确定各个节点的最优转发节点;

s2,信息传输阶段模式:节点采集到信息后,将信息转发给自己的最优转发节点,持续进行上述过程,直到信息达到主节点;

s3,路由信息维护阶段模式;

所述路由建立阶段模式、所述信息传输阶段模式以及所述路由信息维护阶段模式交叉共存运行。

步骤s1中,包括:

s11,网络初始化:主节点s设置其最优路由能量消耗代价为0,其他节点的最优路由能量消耗代价为无穷大;

s12,主节点s广播拓扑信息包:所述拓扑信息包以泛洪方式在整个网络内传播,在未来各节点采集的信息的路由过程中,信息将按泛洪相反的方向传播,其中,拓扑信息包的主要字段内容为发射节点的路由能量消耗值,所有节点发射的拓扑信息包都以已知的确定功率发射;

s13,最优路由能量消耗代价确定:当某节点广播拓扑信息包时,该节点的邻居节点收到该拓扑信息包后,这些邻居节点根据其接收信号的信号强度,结合已知的确定的拓扑信号发射功率,进而结合节点剩余能量、节点距离主节点的跳数,计算其到下一跳节点的链路能量消耗代价,进而计算其各下游节点的转发能量消耗代价,并最终确定该邻居节点的最优路由能量消耗代价;

s14,邻居节点记录自己的最优转发节点,根据最优路由能量消耗代价的数据构造自己的拓扑信息包并广播出去,继续拓扑信息包的泛洪过程;

s15,上述过程在网络中持续进行,直到所有节点的都已经确定自己的最优路由能量消耗代价及最优转发节点。

步骤s13中,最优路由能耗代价确定的具体方法如下:

某一节点广播拓扑信息包时,每一个信息广播传输均对应一个广播节点以及一个或多个该广播节点的邻居节点,采集信息的传输按与泛洪相反的方向传播,定义广播节点为其邻居节点的下一跳节点,邻居节点为该广播节点的上一跳节点,广播节点为邻居节点的下游节点;

步骤(1),链路能量消耗代价的确定:

对于节点nj,对应其邻居节点ni的链路能量消耗代价e(nj,ni)按以下公式计算:

其中,pi,j为节点ni传输信息到邻居节点nj的最小能量消耗,ej为节点nj的剩余能量,k为协议参数,取值范围[0,1],h(nj)表示节点nj距离主节点s的跳数,其中h(s)=0;

步骤(2),转发能量消耗耗代价的确定:

对于节点nj,其把信息经由其下游的广播节点ni最终传输到达主节点s所需的能量称为转发能耗代价,标记为cost(nj,ni),cost(nj,ni)按以下公式计算:

cost(nj,ni)=cost_min(ni)+e(nj,ni)(2)

其中,cost_min(ni)为节点ni的最优路由能量消耗代价;

步骤(3),最优路由能量消耗代价的确定:

对于节点nj的所有上一跳节点,即节点nj的所有下游节点,都计算得到其相应的转发能量消耗代价,定义计算得到的转发能量消耗代价的最小值为节点nj的最优路由能量消耗代价,记为cost_min(nj)。cost_min(nj)按照以下公式计算:

其中,l(nj)表示nj的上一跳节点集合,即l(nj)表示nj的下游节点的集合;

步骤(4),最优转发节点的确定:

节点nj的最优路由能量消耗代价相对应的节点称为节点nj最优转发节点,如下式表示:

步骤s2中,包括:

s21,节点采集到信息后,将信息转发给自己的最优转发节点;

s22,上一步的最优转发节点收到信息后,转交给自己的最优转发节点;

s23,上述过程持续进行,直到信息到达主节点s;

s24,主节点s收到信息后继续后续处理。

步骤s3中,包括两类维护过程,第一类维护过程由主节点发起,周期性进行维护;第二类维护过程由网络在检测到节点失效时间发生后触发。

第一类维护过程为:主节点根据路由建立时信息包的发送进行周期性维护。

第二类维护过程为:由网络在检测到节点失效事件发生后触发,其过程如下:

步骤(1):主节点的路由代价设为无穷大,并广播此拓扑信息包;

步骤(2):各节点在收到其他节点的广播的拓扑信息包后,检测该拓扑信息包的发送节点的情况,并按如下两种情况进行相应处理:

a)若此发送节点是当前节点的最优转发节点,那么接收节点删除此转发节点,并设置自己的路由代价为无穷大,立即广播此拓扑信息包;

b)如果此发送节点不是当前节点的最优转发节点,那么当前节点广播自己的路由代价,以便于触发节点获得新的转发节点,最终使得这些触发节点找到自己新的转发节点。

本发明的有益效果为:

本发明提出了一种降低网络剩余能量的水下传感器网络路由协议,称之为最小网络剩余能量路由协议(minimumnetwork-scaleresidualenergyroutingprotocol,mnre)。该协议通过均衡各个节点的能量消耗,使各节点能量消耗尽量同步,尽量避免网络过早分裂,延长网络寿命,降低网络剩余能量。

本发明考虑了节点剩余能量、跳数等信息辅助最优转发节点的选择,更重要的是,还考虑了链路能耗相对剩余能量的比例,因而更有利于同步各节点的能量消耗,提出了链路能量消耗代价、转发能量消耗代价、最优路由能量消耗代价等概念指标,通过各节点根据剩余能量等分布式动态确定自己的最优转发节点,最大程度减少能量的耗费。本发明提出的路由协议mnre相对于dd(定向扩散路由算法)的网络剩余能量节省了约90%。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的水下传感器网络路由协议中节点的工作流程图。

图2为本发明实施例提供的水下传感器网络路由协议(mnre)和dd协议的网络断裂后能量剩余的比较结果。

图3为本发明实施例提供的水下传感器网络路由协议的一个简单的示例网络。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

本发明基于针对如下场景:信息总是从传感器节点向主节点发送,而主节点除了向整个网络发布广告信息之外,不会指定某个节点作为目的地址进行信息传送,即只存在单向信息传输。同时假设水下声信道是双向对称的。

对于一个初始状态时连通的水声传感器网络,由于节点能量耗尽导致节点失效,使网络发生断裂的那一时刻,网络内所有节点的剩余能量之和称为网络剩余能量。

本发明较佳的实施例提供了一种降低网络剩余能量的水声传感器网络路由协议,包括以下阶段模式:

s1,路由建立阶段模式:在已有网络拓扑结构的基础上,根据每一节点的剩余能量、链路能量消耗代价、转发能量消耗代价和最优路由能量消耗代价,分布式动态确定各个节点的最优转发节点;

s2,信息传输阶段模式:节点采集到信息后,将信息转发给自己的最优转发节点,持续进行上述过程,直到信息达到主节点;

s3,路由信息维护阶段模式;

路由建立阶段模式、信息传输阶段模式以及路由信息维护阶段模式时间上并不是隔离的,而是交叉共存运行的。

步骤s1中,包括:

s11,网络初始化:主节点s设置其最优路由能量消耗代价为0,其他节点的最优路由能量消耗代价为无穷大。

s12,主节点s广播拓扑信息包:该拓扑信息包以泛洪方式在整个网络内传播,在未来各节点采集的信息的路由过程中,信息将按泛洪相反的方向传播。

其中,拓扑信息包的主要字段内容为发射节点的路由能量消耗值,所有节点发射的拓扑信息包都以已知的确定功率发射,因此,可以用于计算链路间的能量消耗。

s13,最优路由能量消耗代价确定:当某节点广播拓扑信息包时,该节点的邻居节点收到该拓扑信息包后,这些邻居节点根据其接收信号的信号强度,结合已知的确定的拓扑信号发射功率,计算其到下一跳节点的链路能量消耗代价,进而计算其各下游节点的转发能量消耗代价,并最终确定该邻居节点的最优路由能量消耗代价。

在本实施中,能量消耗代价简称为能耗代价。

步骤s13中,最优路由能耗代价确定的具体方法如下:

某节点广播拓扑信息包时,该拓扑信息包会被其邻居节点收到。这样,每一个信息广播传输都对应一个广播节点及其邻居节点的组合。因此,某一节点广播拓扑信息包时,每一个信息广播传输均对应一个广播节点以及一个或多个该广播节点的邻居节点。由于采集信息的传输将按与泛洪相反的方向传播,定义广播拓扑信息包的节点为这些邻居节点的下一跳节点,而这些邻居节点称为该广播节点的上一跳节点。广播节点为邻居节点的下游节点。

步骤(1),链路能耗代价的确定:

对于节点nj,对应其邻居节点ni的链路能耗代价e(nj,ni)按以下公式计算:

其中,pi,j为节点ni传输信息到邻居节点nj的最小能量消耗,ej为节点nj的剩余能量,k为协议参数,取值范围[0,1],h(nj)表示节点nj距离主节点s的跳数,其中h(s)=0。

该链路能耗代价计算方法同时考虑了相对功耗比例以及距离主节点的跳数,在距离主节点更远的节点处相应的链路能耗代价更小,这样使协议更倾向于选择距离主节点更远的节点。由于传感网络中信息是从传感节点汇聚到主节点,距离主节点更近的节点需要更多的从事转发工作,能量消耗更快,更容易能量耗尽,所以这些节点是一些瓶颈节点。而这样的瓶颈节点能量耗尽对网络造成的破坏更大,所以使与主节点跳数距离远的节点链路能耗代价更低,有利于节约瓶颈节点的能耗,延长网络寿命,提高剩余能量。通过调节参数k可以调节跳数对链路能耗代价的影响权重。

步骤(2),转发能耗代价的确定:

对于节点nj,其把信息经由其下游的广播节点ni最终传输到达主节点s所需的能量称为转发能耗代价,标记为cost(nj,ni),cost(nj,ni)按以下公式计算:

cost(nj,ni)=cost_min(ni)+e(nj,ni)(2)

其中,cost_min(ni)为节点ni的最优路由能耗代价;

步骤(3),最优路由能耗代价的确定:

对于节点nj的所有上一跳节点,即节点nj的所有下游节点,都计算得到其相应的转发能耗代价,定义计算得到的转发能耗代价的最小值为节点nj的最优路由能耗代价,记为cost_min(nj)。cost_min(nj)按照以下公式计算:

其中,l(nj)表示nj的上一跳节点集合,即l(nj)表示nj的下游节点的集合;

步骤(4),最优转发节点的确定:

节点nj的最优路由能耗代价相对应的节点称为节点nj最优转发节点,如下式表示:

s14,邻居节点记录自己的最优转发节点,根据最优路由能耗代价的数据构造自己的拓扑信息包并广播出去,继续拓扑信息包的泛洪过程。

s15,上述过程在网络中持续进行,直到所有节点的都已经确定自己的最优路由能耗代价及最优转发节点。

在步骤s1完成后,即路由建立阶段模式完成之后,每个节点都已经确立自己的最优转发节点。

在上述路由建立阶段模式的拓扑信息泛洪过程中,一个节点在构造并广播自己的拓扑信息包后,一般会继续收到其它节点广播的拓扑信息包。此时,该节点根据新的拓扑信息包内容更新自己的数据,重新计算自己的最优路由能耗代价和最优转发节点。若结果不变,则不作进一步处理。否则,节点要根据最新的结果更新自己的拓扑信息包并广播出去。

步骤s2中,包括:

s21,节点采集到信息后,将信息转发给自己的最优转发节点;

s22,上一步的最优转发节点收到信息后,转交给自己的最优转发节点;

s23,上述过程持续进行,直到信息到达主节点s;

s24,主节点s收到信息后继续后续处理。

例如主节点s收到信息后转发到后台云端系统。

对于步骤s3,由于节点不断地转发信息,使得节点的最小能耗代价不能准确地反映节点的能量消耗状况,同时由于节点或链路失效,造成网络拓扑发生变化,因此,为维护保证路由信息的准确性,节点需要发起的维护过程。因此,步骤s3中,包括两类维护过程,第一类维护过程由主节点发起,周期性进行维护;第二类维护过程由网络在检测到节点失效时间发生后触发。

第一类维护过程为:主节点根据路由建立时信息包的发送进行周期性维护。

第二类维护过程为:由网络在检测到节点失效事件发生后触发,其过程如下:

步骤(1):主节点的路由代价设为无穷大,并广播此拓扑信息包;

步骤(2):各节点在收到其他节点的广播的拓扑信息包后,检测该拓扑信息包的发送节点的情况,并按如下两种情况进行相应处理:

a)若此发送节点是当前节点的最优转发节点,那么接收节点删除此转发节点,并设置自己的路由代价为无穷大,立即广播此拓扑信息包;

b)如果此发送节点不是当前节点的最优转发节点,那么当前节点广播自己的路由代价,以便于触发节点获得新的转发节点,最终使得这些触发节点找到自己新的转发节点。

上述三个阶段模式时间上并不是隔离的,而是交叉共存运行的,因此,对于每个节点的角度看,其工作流程如图1所示。

判断发生新事件的情况,左侧为路由建立模式阶段以及路由维护维护阶段模式,判断发生新事件为接收到拓扑信息包或需要路由维护或触发路由维护,进行计算或更新链路能耗代价、转发能耗代价以及最优能耗代价,然后根据最优能耗代价构造自己的拓扑信息包,以已知的确定功率广播。右侧为信息传输阶段模式,判断发生新事件为接收到上游节点的数据或是自己采集到数据需要传输,然后把数据发给自己的最优转发节点。

对于本发明所提出的路由协议的三个阶段模式,第一个阶段模式即路由建立阶段模式工作机制最为复杂,是本发明核心创新,第二个阶段模式即信息传输阶段模式很容易理解,而第三个阶段模式即路由信息维护模式的本质工作机制与第一阶段模式相同。

对于本发明所提出的路由协议的三个阶段模式,第一个阶段模式即路由建立阶段模式工作机制最为复杂,是本发明核心创新,第二个阶段模式即信息传输阶段模式很容易理解,而第三个阶段模式即路由信息维护模式的本质工作机制与第一阶段模式相同。因此,下面结合附图3中网络实例进一步说明第一阶段模式的工作过程。

图3中节点s为主节点,其它节点为普通传感节点。每个节点内符号(x,v)表示相应节点的最优转发节点为x,最优路由能耗代价为数值v。节点间有连线表示该节点对互为邻居,连线的箭头方向指向从下游节点指向上游节点,连线上的数字代表从下游节点向上游节点的链路能耗代价(百分数)。

图3示例网络的路由建立阶段模式过程如下:

步骤(1):网络初始化。对于主节点s,其cost_min(s)=0。其他节点的最优路由能耗代价为无穷大。

步骤(2):主节点s广播拓扑信息包,该包会被节点a和b收到。

步骤(3):节点a和b收到信息后,根据接收信号强度,基于信号发射功率固定的前提,计算各链路的能量消耗,进而根据式(1)计算相应的链路能耗代价。节点a计算得到e(a,s)=3,节点b计算e(b,s)=4。此时a和b分别只从s接收到了信息,所以它们分别根据公式(3)计算其最优路由能耗代价,得到cost_min(a)=3,a的最优转发节点为s;cost_min(b)=4,b的最优转发节点也为s。

步骤(4):节点a和b继续转发拓扑信息包。a的信息被c和d收到,b的信息被d和e收到。这样,d有两个下游节点a和b,根据式(2)可得cost(d,a)=cost_min(a)+e(d,a)=5,cost(d,b)=cost_min(b)+e(d,b)=6。所以cost_min(d)=min{cost(d,a),cost(d,b)}=5,d的最优转发节点为a。

步骤(5):上述过程在网络中持续进行,直到所有节点的都已经确定自己的最优路由能耗代价及最优转发节点。

图3显示了根据当前网络的路由建立结果数据。

随着网络工作时间的延长,节点剩余能量不断减少,网络中每个链路能耗代价也不断变化,从而相应的路由建立结果数据也不断更新,促使网络节点能耗趋向同步,有效降低网络剩余能量。

本发明的效果通过仿真结果进行说明:

实验通过matlab编程进行仿真,设定仿真区域矩形,保持节点密度每万平方米4个节点,无线通信半径150米,节点初始能量36000焦耳,链路能耗代价指标公式(1)中k取值0.2。并比对了本发明实施例的水下传感器网络路由协议(mnre)与文献中的定向扩散路由协议(dd)的网络能量剩余结果。该文献为“刘广钟,刘晓晖,基于节能的定向扩散水声传感器网络路由算法,计算机系统应用,2011,20(12):95-98.”。比对的结果如图2所示。由图2可见,本发明实施例提出的路由协议mnre相对于dd的网络剩余能量节省了约90%。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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