一种水声通信网络中的路由方法及装置

文档序号:1508529 发布日期:2020-02-07 浏览:19次 >En<

阅读说明:本技术 一种水声通信网络中的路由方法及装置 (Routing method and device in underwater acoustic communication network ) 是由 刘军 于美铭 王兴旺 关雯雪 张健瑀 潘晓鹤 崔军红 于 2019-11-07 设计创作,主要内容包括:本发明提供一种水声通信网络中的路由方法及装置,汇聚节点广播控制包,控制包更新传感器节点的路由表信息,将源节点作为发送节点,向相邻的中间节点发送数据包,将接收数据包相邻的中间节点作为待选节点,并向发送节点反馈ACK确认包,发送节点利用ACK确认包计算距离和相对速度,基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点,并将其作为发送节点,向相邻的中间节点发送数据包,返回执行将接收到数据包的相邻的中间节点作为待选节点这一步骤,直至中继节点,确定由源节点、中间节点和中继节点构成的路由路径。利用ACK确认包计算相邻节点的距离,实现不需要增加额外的节点来计算相邻节点的距离,达到降低成本的目的。(The invention provides a routing method and a device in an underwater acoustic communication network.A sink node broadcasts a control packet, the control packet updates routing table information of a sensor node, a source node is taken as a sending node, a data packet is sent to an adjacent intermediate node, the adjacent intermediate node of a received data packet is taken as a node to be selected, an ACK (acknowledgement) packet is fed back to the sending node, the sending node calculates the distance and the relative speed by using the ACK packet, the forwarding capacity value of the node to be selected is calculated based on the distance and the relative speed, a target intermediate node is determined and taken as the sending node, the data packet is sent to the adjacent intermediate node, the step of taking the adjacent intermediate node of the received data packet as the node to be selected is executed in a returning mode until a relay node, and a routing path formed by the source node, the intermediate node and the relay node is determined. The distance between the adjacent nodes is calculated by using the ACK acknowledgement packet, so that the distance between the adjacent nodes is calculated without adding extra nodes, and the purpose of reducing the cost is achieved.)

一种水声通信网络中的路由方法及装置

技术领域

本发明属于计算机技术领域,具体为涉及一种水声通信网络中的路由方法及装置。

背景技术

目前在水声通信网络环境中,存在着节点能量的损耗问题。由于,节点在水下环境中的数据传输的功率比较高,另外,接收节点附近的邻居节点经常用于数据转发,加速了节点的能量消耗,导致了能量损耗的不平衡。因此,通过基于深度的路由协议方式,解决能量损耗不平衡的问题。

但是,基于深度的路由协议方式,需要获取深度的信息,因此需要配备额外的节点,导致了成本的增加。

发明内容

有鉴于此,本发明的目的在于提供一种水声通信网络中的路由方法及装置,用于解决基于深度的路由协议方式,需要获取深度的信息,因此需要配备额外的节点,导致了成本增加的问题。技术方案如下:

本发明提供一种水声通信网络中的路由方法,所述方法包括:

汇聚节点向传感器节点网络定时广播控制包;

所述传感器节点网络中的各个相连的传感器节点基于所述控制包更新各自的路由表信息,所述传感器节点网络包括与所述汇聚节点相连的中继节点,源节点,以及用于连接中继节点与源节点的中间节点;

将所述源节点作为发送节点,向相邻的中间节点发送数据包,所述数据包中包括路由表信息;

将接收所述数据包的相邻的中间节点作为待选节点,所述待选节点向所述发送节点反馈ACK确认包,所述ACK确认包中包括所述待选节点的剩余能量和发送功率;

所述发送节点利用所述ACK确认包计算,得到所述发送节点与所述待选节点之间的距离和相对速度;

所述发送节点基于所述距离和所述相对速度计算所述待选节点的转发能力值,确定目标中间节点;

将所述目标中间节点作为发送节点,向所述相邻的中间节点发送数据包,返回并继续执行将接收到所述数据包的相邻的中间节点作为待选节点这一步骤,直至所述中继节点,确定由确定的源节点、中间节点和中继节点构成的路由路径。

优选的,所述发送节点利用所述ACK确认包计算,得到所述发送节点与所述待选节点之间的距离和相对速度,包括:

所述发送节点获取所述ACK确认包中的所述待选节点的剩余能量和发送功率;

基于多普勒效应和信号接收强度,对所述剩余能量和发送功率进行计算,分别获得所述发送节点与所述待选节点相对速度V以及第一距离L1

根据公式L2=a(L1+(t0-t)V),计算所述发送节点与所述待选节点之间的第二距离L2,其中,L2为所述第二距离,a为接近于1的常量,L1为所述第一距离,t0为更新时间,t为当前时间,V为所述相对速度,所述第二距离比所述第一距离准确。

优选的,所述发送节点基于所述距离和所述相对速度计算所述待选节点的转发能力值,确定目标中间节点,包括:

基于公式

Figure BDA0002263896360000021

计算所述待选节点的转发能力值,其中,Y为所述待选节点的转发能力值,E为所述待选节点的剩余能量值,k为所述待选节点发送所述ACK确认包损耗能量与所述发送节点发送所述数据包损耗能量的比值,Pe(l,f,n,p)为所述发送节点向所述待选节点成功传输所述数据包的能量损耗;

基于所述待选节点的转发能力值,选择所述待选节点转发能力值的最小值;

在所述待选节点转发能力值的最小值中,确定转发能力值最大的待选节点作为所述目标中间节点。

优选的,还包括:

若所述发送节点在预设时间内未接收到ACK确认包,则重发所述数据包,直至接收到所述ACK确认包或者重发次数超过预设次数,停止发送所述数据包。

优选的,所述方法还包括:

当所述目标中间节点接收到所述数据包时,根据所述数据包更新自身的路由表信息,并重置所述路由表信息中每一个节点ID对应的计时器;

在路由建立过程中,所述目标中间节点监测自身路由表信息中的每一个节点ID对应的计时器是否达到预设值;

若所述计时器达到所述预设值时,将所述节点ID对应的节点信息从所述路由表中删除。

本发明还提供一种水声通信网络中的路由装置,所述装置包括:

广播模块,用于汇聚节点向传感器节点网络定时广播控制包;

更新模块,用于所述传感器节点网络中的各个相连的传感器节点基于所述控制包更新各自的路由表信息,所述传感器节点网络包括与所述汇聚节点相连的中继节点,源节点,以及用于连接中继节点与源节点的中间节点;

第一发送模块,用于将所述源节点作为发送节点,向相邻的中间节点发送数据包,所述数据包中包括路由表信息;

反馈模块,用于将接收所述数据包的相邻的中间节点作为待选节点,所述待选节点向所述发送节点反馈ACK确认包,所述ACK确认包中包括所述待选节点的剩余能量和发送功率;

计算模块,用于所述发送节点利用所述ACK确认包计算,得到所述发送节点与所述待选节点之间的距离和相对速度;

确定模块,用于所述发送节点基于所述距离和所述相对速度计算所述待选节点的转发能力值,确定目标中间节点;

第二发送模块,用于将所述目标中间节点作为发送节点,向所述相邻的中间节点发送数据包,返回并继续执行将接收到所述数据包的相邻的中间节点作为待选节点这一步骤,直至所述中继节点,确定由确定的源节点、中间节点和中继节点构成的路由路径。

优选的,所述计算模块,包括:

获取单元,用于所述发送节点获取所述ACK确认包中的所述待选节点的剩余能量和发送功率;

第一计算单元,用于基于多普勒效应和信号接收强度,对所述剩余能量和发送功率进行计算,分别获得所述发送节点与所述待选节点相对速度V以及第一距离L1

第二计算单元,用于根据公式L2=a(L1+(t0-t)V),计算所述发送节点与所述待选节点之间的第二距离L2,其中,L2为所述第二距离,a为接近于1的常量,L1为所述第一距离,t0为更新时间,t为当前时间,V为所述相对速度,所述第二距离比所述第一距离准确。

优选的,所述确定模块,包括:

第三计算单元,用于基于公式

Figure BDA0002263896360000041

计算所述待选节点的转发能力值,其中,Y为所述待选节点的转发能力值,E为所述待选节点的剩余能量值,k为所述待选节点发送所述ACK确认包损耗能量与所述发送节点发送所述数据包损耗能量的比值,Pe(l,f,n,p)为所述发送节点向所述待选节点成功传输所述数据包的能量损耗;

选择单元,用于基于所述待选节点的转发能力值,选择所述待选节点转发能力值的最小值;

确定单元,用于在所述待选节点转发能力值的最小值中,确定转发能力值最大的待选节点作为所述目标中间节点。

优选的,所述装置还包括:

停止模块,用于若所述发送节点在预设时间内未接收到ACK确认包,则重发所述数据包,直至接收到所述ACK确认包或者重发次数超过预设次数,停止发送所述数据包。

优选的,所述装置还包括:

重置模块,用于当所述目标中间节点接收到所述数据包时,根据所述数据包更新自身的路由表信息,并重置所述路由表信息中每一个节点ID对应的计时器;

监测模块,用于在路由建立过程中,所述目标中间节点监测自身路由表信息中的每一个节点ID对应的计时器是否达到预设值;

删除模块,用于若所述计时器达到所述预设值时,将所述节点ID对应的节点信息从所述路由表中删除。

与现有技术相比,本发明提供的上述技术方案具有如下优点:

汇聚节点向传感器节点网络定时广播控制包,基于控制包更新各个传感器节点的路由表信息,将源节点作为发送节点,向相邻的中间节点发送数据包,将接收数据包的相邻的中间节点作为待选节点,待选节点向发送节点反馈ACK确认包,发送节点利用ACK确认包计算,得到发送节点与待选节点之间的距离和相对速度,发送节点基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点,目标中间节点作为发送节点,向相邻的中间节点发送数据包,返回执行将接收到数据包的相邻的中间节点作为待选节点这一步骤,直至中继节点,确定由确定的源节点、中间节点和中继节点构成的路由路径。利用ACK确认包计算相邻节点的距离,实现不需要增加额外的节点来计算相邻节点的距离,达到降低成本的目的。解决了基于深度的路由协议,需要获取深度的信息,因此需要配备额外的节点计算距离,导致了成本增加的问题。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种水声通信网络中的路由方法的流程图;

图2是本发明实施例提供的一种发送节点利用ACK确认包计算,得到发送节点与待选节点之间的距离和相对速度的流程图;

图3是本发明实施例提供的一种发送节点基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点的流程图;

图4是本发明实施例提供的另一种水声通信网络中的路由方法的流程图;

图5是本发明实施例提供的再一种水声通信网络中的路由方法的流程图;

图6是本发明实施例提供的一种水声通信网络中的路由装置的结构示意图。

具体实施方式

本发明提供了一种水声通信网络中的路由方法及装置,用于解决基于深度的路由协议方式,需要获取深度的信息,因此需要配备额外的节点,导致了成本增加的问题。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,示出了本发明实施例提供的一种水声通信网络中的路由方法的流程图,该方法包括以下步骤:

S101:汇聚节点向传感器节点网络定时广播控制包。

在S101中汇聚节点即sink节点,在传感器节点网络中指汇聚结点,主要负责传感器节点网络与外网(如gprs,internet等)的连接,可看作网关节点,

在具体实现S101的过程中,汇聚节点周期性的向传感器节点网络广播控制包,该控制包在传感器节点网络中,进行相邻节点之间的传递,直至传递到最后一个传感器节点即源节点。

例如:汇聚节点每10分钟向传感器节点网络广播控制包,然后该控制包在传感器节点网络中相邻传感器节点之间进行传递,如传感器节点1接收到该控制包,传感器节点2作为传感器节点1的相邻节点,传感器节点1将该控制包传递至传感器节点2,直到传递至该传感器节点网络中最后一个传感器节点即源节点。

需要说明的是,每次汇聚节点向传感器节点网络广播控制包,该控制包在传感器节点网络中进行相邻节点之间的传递,与前一次汇聚节点广播控制包,然后在传感器节点网络中进行相邻节点之间的传递过程不同。

S102:传感器节点网络中的各个相连的传感器节点基于控制包更新各自的路由表信息。

在S102中,传感器节点网络包括与汇聚节点相连的汇聚节点,源节点,以及用于连接中继节点的中间节点。需要说明的是,汇聚节点、中继节点、源节点和中间节点都为传感器节点。

在具体实现S102的过程中,传感器节点网络中的各个相连的传感器节点基于控制包,对自身路由表信息进行初始化,获得最新一次的路由表信息。

S103:将源节点作为发送节点,向相邻的中间节点发送数据包。

在S103中,数据包中包括路由表信息,该路由表信息至少包括发送节点ID、发送节点级别和发送节点的剩余能量,通过将源节点自身的数据包发送给相邻的中间节点,通过中间节点逐层向上传递该数据包,直至传递到中继节点,然后通过中继节点向汇聚节点传递该数据包。

S104:将接收数据包的相邻的中间节点作为待选节点,待选节点向发送节点反馈ACK确认包。

在S104中,ACK确认包中包括待选节点的剩余能量和发送功率。对于发送节点来说,相邻节点可以包括多个,因此与发送节点相邻的每个相邻节点都作为待选节点,每个待选节点向发送节点反馈一个ACK确认包。

S105:发送节点利用ACK确认包计算,得到发送节点与待选节点之间的距离和相对速度。

需要说明的是,基于上述S105涉及到的,发送节点利用ACK确认包计算,得到发送节点与待选节点之间的距离和相对速度的具体实现过程,如图2所示,主要包括:

S201:发送节点获取ACK确认包中的待选节点的剩余能量和发送功率。

在具体实现S201的过程中,待选节点向发送节点反馈ACK确认包,发送节点接收ACK确认包并获取ACK确认包携带的剩余能量以及发送功率。

S202:基于多普勒效应和信号接收强度,对剩余能量和发送功率进行计算,分别获得发送节点与待选节点相对速度V以及第一距离L1

在具体实现S202的过程中,首先基于多普勒效应获得发送节点与待选节点之间传输数据的相对速度V,再根据信号接收强度获得发送节点和待选节点之间的第一距离L1,其中,第一距离相对误差比较大,精确度比较低,不能真实的反映发送节点和待选节点之间的距离。因此,需要根据发送节点和待选节点的之间的第一距离和相对速度,获得发送节点和待选节点之间更加准确的距离。

S203:根据公式(1),计算发送节点与待选节点之间的第二距离L2

在具体实现S203的过程中,计算发送节点和待选节点之间的第二距离,可以基于公式(1)进行计算。

L2=a(L1+(t0-t)V) (1)

其中,L2为第二距离,a为接近于1的常量,L1为第一距离,t0为更新时间,t为当前时间,V为相对速度,第二距离比第一距离准确。

需要说明的是,通过公式(1)可获得发送节点和待选节点之间更加准确的距离。

基于公式(1)获得的第二距离,是发送节点和待选节点之间比较准确的距离,为后面计算待选节点的转发能力值提供了重要的保障。

S106:发送节点基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点。

需要说明的是,基于上述S106中涉及到的,发送节点基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点的具体实现过程,如图3所示,主要包括:

S301:基于算法(2),计算待选节点的转发能力值。

在具体实现S301的过程中,计算待选节点的转发能力值,可以基于公式(2)进行计算。

其中,Y为待选节点的转发能力值,E为待选节点的剩余能量值,k为待选节点发送ACK确认包损耗能量与发送节点发送数据包损耗能量的比值,Pe(l,f,n,p)为发送节点向待选节点成功传输数据包的能量损耗,其中,Pe(l,f,n,p)通过发送功率p、发送频率f和距离L2计算获得。

S302:基于待选节点的转发能力值,选择待选节点转发能力值的最小值。

在具体实现S302的过程中,存在多个待选节点,每个待选节点的的转发能力值不同。

例如:存在5个传感器节点N1、N2、N3、N4和N5,其中N1作为发送节点,N2和N3作为N1的待选节点,N4和N5作为N2的待选节点,同样N4和N5也作为N3的待选节点。其中,N2与N4之间N2的转发能力值为4,N2与N5之间N2的转发能力值为5,所以选择N2与N4之间N2的转发能力值作为最小值,同理,N3与N4之间N3的转发能力值为8,N3与N5之间N3的转发能力值为3,所以选择N3与N5之间N3的转发能力值作为最小值。

S303:在待选节点转发能力值的最小值中,确定转发能力值最大的待选节点作为目标中间节点。

在具体实现S303的过程中,根据选择出的待选节点转发能力的最小值,最后在所有待选节点转发能力的最小值中,确定出最大的待选节点的转发能力值,然后将该待选节点作为目标中间节点。

例如:基于上述S302中涉及到的例子,N2与N4之间N2的转发能力值为4,N3与N5之间N3的转发能力值为3,比较N2与N3的转发能力值,确定出N2的转发能力值比N3的转发能力值大,所以选择N2作为目标中间节点。

S107:将目标中间节点作为发送节点,向相邻的中间节点发送数据包,返回并继续执行将接收到数据包的相邻的中间节点作为待选节点这一步骤,直至中继节点,确定由确定的源节点、中间节点和中继节点构成的路由路径。

在具体实现S107的过程中,确定中间节点后,将该中间节点作为发送节点,向相邻的中间节点发送数据包,然后返回执行S104,直到将数据包发送给中继节点,最后确定由确定的源节点、中间节点和中继节点构成的路由路径。

根据上述本发明实施例公开的水声通信网络中的路由方法可知,汇聚节点向传感器节点网络定时广播控制包,基于控制包更新各个传感器节点的路由表信息,将源节点作为发送节点,向相邻的中间节点发送数据包,将接收数据包的相邻的中间节点作为待选节点,待选节点向发送节点反馈ACK确认包,发送节点利用ACK确认包计算,得到发送节点与待选节点之间的距离和相对速度,发送节点基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点,将目标中间节点作为发送节点,向相邻的中间节点发送数据包,返回执行将接收到数据包的相邻的中间节点作为待选节点这一步骤,直至中继节点,确定由确定的源节点、中间节点和中继节点构成的路由路径。利用ACK确认包计算相邻节点的距离,实现不需要增加额外的节点来计算相邻节点的距离,达到降低成本的目的。解决了基于深度的路由协议,需要获取深度的信息,因此需要配备额外的节点计算距离,导致了成本增加的问题。

如图4所示,为本发明实施例提供的另一种水声通信网络中的路由方法的流程图,包括:

S401:汇聚节点向传感器节点网络定时广播控制包。

S402:传感器节点网络中的各个相连的传感器节点基于控制包更新各自的路由表信息。

S403:将源节点作为发送节点,向相邻的中间节点发送数据包。

S404:将接收数据包的相邻的中间节点作为待选节点,待选节点向发送节点反馈ACK确认包。

S401至S404的执行原理和上述S101至S104的一致,这里不再进行赘述。

S405:判断发送节点在预设时间内是否接收到ACK确认包,若否,则执行S406,若是,则执行S407。

S406:重发数据包,直至接收到ACK确认包或者重发次数超过预设次数,停止发送数据包。

在具体实现S406的过程中,若发送节点未接收到待选节点反馈的ACK确认包,则该发送节点重新发送数据包,直至接收到待选节点反馈的ACK确认包。

可选的,若发送节点未接收到待选节点反馈的ACK确认包,则该发送节点重新发送数据包,当重发次数超过预设次数,则停止发送该数据包。

S407:发送节点利用ACK确认包计算,得到发送节点与待选节点之间的距离和相对速度。

S408:发送节点基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点。

S409:将目标中间节点作为发送节点,向相邻的中间节点发送数据包,返回并继续执行将接收到数据包的相邻的中间节点作为待选节点这一步骤,直至中继节点,确定由确定的源节点、中间节点和中继节点构成的路由路径。

S407至S409的执行原理和上述S105至S107的一致,这里不再进行赘述。

根据上述本发明实施例公开的水声通信网络中的路由方法可知,汇聚节点向传感器节点网络定时广播控制包,基于控制包更新各个传感器节点的路由表信息,将源节点作为发送节点,向相邻的中间节点发送数据包,将接收数据包的相邻的中间节点作为待选节点,待选节点向发送节点反馈ACK确认包,发送节点利用ACK确认包计算,得到发送节点与待选节点之间的距离和相对速度,发送节点基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点,将目标中间节点作为发送节点,向相邻的中间节点发送数据包,返回执行将接收到数据包的相邻的中间节点作为待选节点这一步骤,直至中继节点,确定由确定的源节点、中间节点和中继节点构成的路由路径。利用ACK确认包计算相邻节点的距离,实现不需要增加额外的节点来计算相邻节点的距离,达到降低成本的目的。解决了基于深度的路由协议,需要获取深度的信息,因此需要配备额外的节点计算距离,导致了成本增加的问题。

如图5所示,为本发明实施例提供的再一种水声通信网络中的路由方法的流程图,包括:

S501:汇聚节点向传感器节点网络定时广播控制包。

S502:传感器节点网络中的各个相连的传感器节点基于控制包更新各自的路由表信息。

S503:将源节点作为发送节点,向相邻的中间节点发送数据包。

S504:将接收数据包的相邻的中间节点作为待选节点,待选节点向发送节点反馈ACK确认包。

S505:发送节点利用ACK确认包计算,得到发送节点与待选节点之间的距离和相对速度。

S506:发送节点基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点。

S501至S506的执行原理和上述S101至S106的一致,这里不再进行赘述。

S507:当目标中间节点接收到数据包时,根据数据包更新自身的路由表信息,并重置路由表信息中每一个节点ID对应的计时器。

S508:目标中间节点监测自身路由表信息中的每一个节点ID对应的计时器是否达到预设值,若是,则执行S509,若否,则执行S510。

S509:将节点ID对应的节点信息从路由表中删除。

S510:禁止执行将节点ID对应的节点信息从路由表中删除。

S511:将目标中间节点作为发送节点,向相邻的中间节点发送数据包,返回并继续执行将接收到数据包的相邻的中间节点作为待选节点这一步骤,直至中继节点,确定由确定的源节点、中间节点和中继节点构成的路由路径。

S511的执行原理和上述S107的一致,这里不再进行赘述。

根据上述本发明实施例公开的水声通信网络中的路由方法可知,汇聚节点向传感器节点网络定时广播控制包,基于控制包更新各个传感器节点的路由表信息,将源节点作为发送节点,向相邻的中间节点发送数据包,将接收数据包的相邻的中间节点作为待选节点,待选节点向发送节点反馈ACK确认包,发送节点利用ACK确认包计算,得到发送节点与待选节点之间的距离和相对速度,发送节点基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点,将目标中间节点作为发送节点,向相邻的中间节点发送数据包,返回执行将接收到数据包的相邻的中间节点作为待选节点这一步骤,直至中继节点,确定由确定的源节点、中间节点和中继节点构成的路由路径。利用ACK确认包计算相邻节点的距离,实现不需要增加额外的节点来计算相邻节点的距离,达到降低成本的目的。解决了基于深度的路由协议,需要获取深度的信息,因此需要配备额外的节点计算距离,导致了成本增加的问题。

基于上述本发明实施例公开的水声通信网络中的路由方法,本发明实施例还对应公开一种水声通信网络中的路由装置,如图6所示,为本发明实施例提供的一种水声通信网络中的路由装置的结构示意图,主要包括:广播模块60、更新模块61、第一发送模块62、反馈模块63、计算模块64、确定模块65和第二发送模块66。

广播模块60,用于汇聚节点向传感器节点网络定时广播控制包。

更新模块61,用于传感器节点网络中的各个相连的传感器节点基于控制包更新各自的路由表信息,传感器节点网络包括与汇聚节点相连的中继节点,源节点,以及用于连接中继节点与源节点的中间节点。

第一发送模块62,用于将源节点作为发送节点,向相邻的中间节点发送数据包,数据包中包括路由表信息。

反馈模块63,用于将接收数据包的相邻的中间节点作为待选节点,待选节点向发送节点反馈ACK确认包,ACK确认包中包括待选节点的剩余能量和发送功率。

计算模块64,用于发送节点利用所述ACK确认包计算,得到发送节点与待选节点之间的距离和相对速度。

确定模块65,用于发送节点基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点。

第二发送模块66,用于将目标中间节点作为发送节点,向相邻的中间节点发送数据包,返回并继续执行将接收到数据包的相邻的中间节点作为待选节点这一步骤,直至中继节点,确定由确定的源节点、中间节点和中继节点构成的路由路径。

在本发明实施例中计算模块64的一种可选结构为:计算模块64包括获取单元、第一计算单元和第二计算单元。

获取单元,用于发送节点获取ACK确认包中的待选节点的剩余能量和发送功率。

第一计算单元,用于基于多普勒效应和信号接收强度,对剩余能量和发送功率进行计算,分别获得发送节点与待选节点相对速度V以及第一距离L1

第二计算单元,用于根据公式L2=a(L1+(t0-t)V),计算发送节点与待选节点之间的第二距离L2,其中,L2为第二距离,a为接近于1的常量,L1为第一距离,t0为更新时间,t为当前时间,V为相对速度,第二距离比所述第一距离准确。

在本发明实施例中确定模块65的一种可选结构为:确定模块65包括第三计算单元、选择单元和确定单元。

第三计算单元,用于基于公式

Figure BDA0002263896360000131

计算待选节点的转发能力值,其中,Y为待选节点的转发能力值,E为待选节点的剩余能量值,k为待选节点发送ACK确认包损耗能量与发送节点发送数据包损耗能量的比值,Pe(l,f,n,p)为发送节点向待选节点成功传输数据包的能量损耗。

选择单元,用于基于待选节点的转发能力值,选择待选节点转发能力值的最小值。

确定单元,用于在待选节点转发能力值的最小值中,确定转发能力值最大的待选节点作为目标中间节点。

根据上述本发明实施例公开的水声通信网络中的路由装置可知,汇聚节点向传感器节点网络定时广播控制包,基于控制包更新各个传感器节点的路由表信息,将源节点作为发送节点,向相邻的中间节点发送数据包,将接收数据包的相邻的中间节点作为待选节点,待选节点向发送节点反馈ACK确认包,发送节点利用ACK确认包计算,得到发送节点与待选节点之间的距离和相对速度,发送节点基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点,将目标中间节点作为发送节点,向相邻的中间节点发送数据包,返回执行将接收到数据包的相邻的中间节点作为待选节点这一步骤,直至中继节点,确定由确定的源节点、中间节点和中继节点构成的路由路径。利用ACK确认包计算相邻节点的距离,实现不需要增加额外的节点来计算相邻节点的距离,达到降低成本的目的。解决了基于深度的路由协议,需要获取深度的信息,因此需要配备额外的节点计算距离,导致了成本增加的问题。

基于上述本发明实施例公开的水声通信网络中的路由装置,该水声通信网络中的路由装置,还包括:停止模块。

停止模块,用于若发送节点在预设时间内未接收到ACK确认包,则重发数据包,直至接收到ACK确认包或者重发次数超过预设次数,停止发送数据包。

基于上述本发明实施例公开的水声通信网络中的路由装置,该水声通信网络中的路由装置,还包括:重置模块、监测模块和删除模块。

重置模块,用于当目标中间节点接收到数据包时,根据数据包更新自身的路由表信息,并重置路由表信息中每一个节点ID对应的计时器。

监测模块,用于在路由建立过程中,目标中间节点监测自身路由表信息中的每一个节点ID对应的计时器是否达到预设值。

删除模块,用于若计时器达到预设值时,将节点ID对应的节点信息从路由表中删除。

根据上述本发明实施例公开的水声通信网络中的路由装置可知,汇聚节点向传感器节点网络定时广播控制包,基于控制包更新各个传感器节点的路由表信息,将源节点作为发送节点,向相邻的中间节点发送数据包,将接收数据包的相邻的中间节点作为待选节点,待选节点向发送节点反馈ACK确认包,发送节点利用ACK确认包计算,得到发送节点与待选节点之间的距离和相对速度,发送节点基于距离和相对速度计算待选节点的转发能力值,确定目标中间节点,将目标中间节点作为发送节点,向相邻的中间节点发送数据包,返回执行将接收到数据包的相邻的中间节点作为待选节点这一步骤,直至中继节点,确定由确定的源节点、中间节点和中继节点构成的路由路径。利用ACK确认包计算相邻节点的距离,实现不需要增加额外的节点来计算相邻节点的距离,达到降低成本的目的。解决了基于深度的路由协议,需要获取深度的信息,因此需要配备额外的节点计算距离,导致了成本增加的问题。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

20页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:数据传输方法和装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!