一种无线传感器网络的通讯方法及装置与流程

文档序号:17549808发布日期:2019-04-30 18:11阅读:167来源:国知局
一种无线传感器网络的通讯方法及装置与流程

本发明涉及通信技术领域,特别涉及一种无线传感器网络的通讯方法及装置。



背景技术:

无线传感器网络是由大量的具有感知能力的传感器节点,通过无线通信的方式构成的无线网络。大量的传感器节点部署在监测区域内部或附近,使得无线传感器网络能协作地感知、采集和处理监测区域中被感知对象的信息。

目前常见的无线传感器网络的通讯方法是最短路径法,即选取从源节点至目的节点的跳数最少的一条路径作为最佳传输路径。从源节点开始,按照该条最佳传输路径,依次向下一跳节点转发包含有被感知对象的信息的数据包,直至目的节点成功接收到该数据包。

在实现本发明的过程中,发明人发现现有技术至少存在以下问题:

采用上述通讯方式进行数据包传输时,可能存在一个节点频繁转发数据包的情况,这样会加快该节点的能量消耗。而无线传感器网络中的节点一般采用电池供电,电池的有效电量非常有限,因此,当电池电量耗尽后,该节点会死亡,从而造成网络的分割甚至网络瘫痪,大大缩短了无线传感器网络生存时间。



技术实现要素:

本发明实施例提供了一种无线传感器网络的通讯方法及装置,可以在考虑各个节点的剩余能量的同时,选取到达目的节点的跳数最少的一条路径作为最佳传输路径,以均衡整个网络的节点能量,最大限度的延长网络的生存时间。

所述技术方案如下:

一方面,提供了一种无线传感器网络的通讯方法,所述无线传感器网络中包括目的节点和多个传感器节点,所述通讯方法包括:

第一节点向所述第一节点的邻居节点广播第一报文,所述第一节点为所述多个传感器节点中的任意一个节点,所述第一节点的邻居节点为距离所述第一节点距离小于d的所述第一节点的下一跳节点,d>0,所述第一报文用于指示所述邻居节点向所述第一节点回复响应报文;

所述第一节点接收所述邻居节点回复的响应报文,所述响应报文包括所述邻居节点的节点信息,所述节点信息包括所述邻居节点的电池剩余电量以及所述邻居节点至所述目的节点的剩余跳数;

当所述第一节点的邻居节点为除所述目的节点以外的其它传感器节点时,所述第一节点根据所述邻居节点回复的响应报文从所述邻居节点中选取一个节点为第二节点;

所述第一节点向所述第二节点发送数据包。

进一步地,所述第一节点根据所述邻居节点回复的响应报文从所述邻居节点中选取一个节点为第二节点,包括:

当所述邻居节点中有至少一个节点的电池剩余电量超过最低电量阈值时,选取所述至少一个节点中至所述目的节点的剩余跳数最少的节点为候选节点;

从所述候选节点中选取电池剩余电量最多的节点为所述第二节点。

进一步地,所述第一节点根据所述邻居节点回复的响应报文从所述邻居节点中选取一个节点为第二节点,还包括:

当所述邻居节点的电池剩余电量均未超过最低电量阈值时,根据以下公式计算各个所述邻居节点的路由度量值:

etr(r)=eleft(r)/rh(r,d);

其中,etr(r)表示第r个邻居节点的路由度量值,eleft(r)表示第r个邻居节点的电池剩余电量,rh(r,d)表示第r个邻居节点至所述目的节点d的剩余跳数,r为大于1的正整数;

选取路由度量值最大的所述邻居节点作为所述第二节点。

进一步地,所述最低电量阈值可以设置为各个所述邻居节点总电量的5%~20%。

进一步地,所述方法还包括:

所述第一节点接收所述第二节点发送的确认信息,所述确认信息用于指示所述第二节点成功接收所述数据包。

另一方面,提供了一种无线传感器网络的通讯装置,所述无线传感器网络中包括目的节点和多个传感器节点,所述无线传感器网络的通讯装置应用于第一节点,所述第一节点为所述多个传感器节点中的任意一个节点,所述通讯装置包括:

第一发送模块,用于向所述第一节点的邻居节点广播第一报文,所述第一节点为所述多个传感器节点中的任意一个节点,所述第一节点的邻居节点为距离所述第一节点距离小于d的所述第一节点的下一跳节点,d>0,所述第一报文用于指示所述邻居节点向所述第一节点回复响应报文;

第一接收模块,用于接收所述邻居节点回复的响应报文,所述响应报文包括所述邻居节点的节点信息,所述节点信息包括所述邻居节点的电池剩余电量以及所述邻居节点至所述目的节点的剩余跳数;

选取模块,用于当所述第一节点的邻居节点为除所述目的节点以外的其它传感器节点时,根据所述邻居节点回复的响应报文从所述邻居节点中选取一个节点为第二节点;

第二发送模块,用于向所述第二节点发送数据包。

进一步地,所述选取模块还用于,

当所述邻居节点中有至少一个节点的电池剩余电量超过最低电量阈值时,选取所述至少一个节点中至所述目的节点的剩余跳数最少的节点为候选节点;

从所述候选节点中选取电池剩余电量最多的节点为所述第二节点。

进一步地,所述选取模块还用于,

当所述邻居节点的电池剩余电量均未超过最低电量阈值时,根据以下公式计算各个所述邻居节点的路由度量值:

etr(r)=eleft(r)/rh(r,d);

其中,etr(r)表示第r个邻居节点的路由度量值,eleft(r)表示第r个邻居节点的电池剩余电量,rh(r,d)表示第r个邻居节点至所述目的节点d的剩余跳数,r为大于1的正整数;

选取路由度量值最大的所述邻居节点作为所述第二节点。

进一步地,所述最低电量阈值可以设置为各个所述邻居节点总电量的5%~20%。

进一步地,所述装置还包括:

第二接收模块,用于接收所述第二节点发送的确认信息,所述确认信息用于指示所述第二节点成功接收所述数据包。

本发明实施例提供的技术方案带来的有益效果是:

通过使第一节点向第一节点的邻居节点广播第一报文,指示各邻居节点向第一节点回复响应报文,第一节点接收各邻居节点回复的响应报文,以获取各邻居节点的电池剩余电量以及各邻居节点至目的节点的剩余跳数等节点信息。当第一节点的邻居节点为除目的节点以外的其它传感器节点时,第一节点即可根据邻居节点的电池剩余电量以及邻居节点至目的节点的剩余跳数从邻居节点中选取一个节点为第二节点,向第二节点发送数据包。因此,采用本发明提供的通讯方法可以在考虑各个节点的剩余能量的同时,选取到达目的节点的跳数最少的一条路径作为最佳传输路径,以均衡整个网络的节点能量,避免由于个别节点的电池电量消耗较快,导致该节点死亡,从而造成网络的分割甚至网络瘫痪的情况出现,最大限度的延长了网络的生存时间。

附图说明

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

图1是本发明实施例提供的一种无线传感器网络的拓扑结构示意图;

图2是本发明实施例提供的一种无线传感器网络的通讯方法流程图;

图3是本发明实施例提供的一种无线传感器网络的通讯装置的结构框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

为了更好的理解本发明,以下简单说明无线传感器网络的结构:

图1是本发明实施例提供的一种无线传感器网络的拓扑结构示意图,如图1所示,无线传感器网络中包括目的节点d和多个传感器节点。图1中的节点a、b、c、e、f、h、i、j、s均为传感器节点。假设此时节点s为源节点,则节点s发送数据包,其它传感器节点将该数据包进行转发,最终将数据包发送至目的节点d。

s的下一跳节点包括a、b、c、e四个传感器节点。传感器节点e的下一跳节点为节点f、h、d,传感器节点b的下一跳节点为节点d、j、i。

图2是本发明实施例提供的一种无线传感器网络的通讯方法流程图,如图2所示,该通讯方法包括:

步骤201、第一节点向第一节点的邻居节点广播第一报文。

其中,第一节点为多个传感器节点中的任意一个节点,第一节点的邻居节点为距离第一节点的距离小于d的第一节点的下一跳节点,d>0。第一报文用于指示邻居节点向第一节点回复响应报文。

示例性地,结合图1,假设节点s为第一节点,且a、b、c、e四个节点距离节点s的距离均小于d,则节点s的邻居节点为a、b、c、e四个节点。此时节点s分别向节点a、b、c、e广播第一报文。

需要说明的是,d的取值可根据实际需要进行设定,本发明对此不做限制。

步骤202、第一节点接收邻居节点回复的响应报文。

其中,响应报文中包括邻居节点的节点信息,节点信息包括邻居节点的电池剩余电量以及邻居节点至目的节点的剩余跳数。

示例性地,结合图1,此时节点s接收节点a、b、c、e回复的响应报文,从而分别获取节点a、b、c、e的节点信息。

在本实施例中,邻居节点至目的节点的剩余跳数为邻居节点至目的节点的最少剩余跳数。无线传感网中的各个节点内均存储有全网的路由信息,通过查询全网路由信息,各个节点即可获取自身至目的节点的最少剩余跳数。

在本实施例中,节点信息还可以包括邻居节点的电池总电量、以及各节点的身份信息。其中,身份信息可以包括节点的mac地址。

具体地,各个节点的电池总电量可以预先存储在各个节点中,各个节点的电池剩余电量可以由各个节点实时获取得到。

步骤203、选取第二节点。

具体地,当第一节点的邻居节点包括目的节点时,第一节点可以直接将数据包发送给目的节点,无需执行步骤203和步骤204。

当第一节点的邻居节点为除目的节点以外的其它传感器节点时,第一节点根据邻居节点回复的响应报文从邻居节点中选取一个节点为第二节点。

具体地,步骤203可以包括:

当邻居节点中有至少一个节点的电池剩余电量超过最低电量阈值时,选取至少一个节点中至目的节点的剩余跳数最少的节点为候选节点。当候选节点有多个时,从候选节点中选取电池剩余电量最多的节点为第二节点。

示例性地,结合图1,假设节点s的邻居节点a、b、c、e的电池剩余电量均超过最低电量阈值,而节点b和节点e至目的节点d的剩余跳数最少,均为一跳到达目的节点d。此时选取节点b和节点e为候选节点,比较节点b和节点e的电池剩余电量的大小。若节点e的电池剩余电量比节点b的电池剩余电量多,则选取节点e作为第二节点。

进一步地,当邻居节点的电池剩余电量均未超过最低电量阈值时,根据以下公式(1)计算各个邻居节点的路由度量值:

etr(r)=eleft(r)/rh(r,d);(1)

其中,etr(r)表示第r个邻居节点的路由度量值,eleft(r)表示第r个邻居节点的电池剩余电量,rh(r,d)表示第r个邻居节点至目的节点d的剩余跳数。

选取路由度量值最大的邻居节点作为第二节点。

示例性地,结合图1,当节点s的邻居节点a、b、c、e的电池剩余电量均未超过最低电量阈值时,按照上述公式(1)计算节点a、b、c、e的路由度量值的大小,然后比较节点a、b、c、e的路由度量值的大小。假设etr(e)>etr(c)>etr(b)>etr(a),即选取节点e作为第二节点。

在本实施例中,最低电量阈值可以设置为各邻居节点总电量的5%~20%。若最低电量阈值设置的过低,仍可能出现节点电量耗尽的情况。若最低电量阈值设置的过高,会使网络提前进入低电量模式,影响整个通讯方法的有效实施。

优选地,最低电量阈值可以设置为各邻居节点总电量的10%。

进一步地,该方法还可以包括:

步骤204、接收第二节点发送的确认信息。

其中,确认信息用于指示第二节点成功接收数据包。

具体地,在第一节点接收到确认信息后,则无需再向第二节点发送数据包。此时,第二节点可以继续执行步骤201至步骤205,以将该数据包发送至下一节点,直至将数据包发送至目的节点。

若第一节点在设定时间t内仍未接受到第二节点发送的确认信息,则认为数据包发送失败,此时第一节点重新向第二节点发送数据包。直至接收到第二节点发送的确认信息。

在本实施例中,时间t可以根据实际需要进行设置,本发明对此不做限制,例如,t可以设置为1s。

进一步地,该方法还可以包括:

向电池剩余电量未超过最低电量阈值的邻居节点发送抑制包,抑制包用于抑制节点的数据转发功能。

具体地,各个邻居节点回复的响应报文中包括各个邻居节点的身份信息,根据各个邻居节点的身份信息向电池剩余电量未超过最低电量阈值的邻居节点发送抑制包,以规避电池剩余电量未超过最低电量阈值的节点的数据转发功能,防止该节点过快死亡,从而延长网络的生存时间。

在本实施例中,抑制包可以携带在数据包中,或者与数据包同时发送。

本发明实施例通过使第一节点向第一节点的邻居节点广播第一报文,指示各邻居节点向第一节点回复响应报文,第一节点接收各邻居节点回复的响应报文,以获取各邻居节点的电池剩余电量以及各邻居节点至目的节点的剩余跳数等节点信息。当第一节点的邻居节点为除目的节点以外的其它传感器节点时,第一节点即可根据邻居节点的电池剩余电量以及邻居节点至目的节点的剩余跳数从邻居节点中选取一个节点为第二节点,向第二节点发送数据包。因此,采用本发明提供的通讯方法可以在考虑各个节点的剩余能量的同时,选取到达目的节点的跳数最少的一条路径作为最佳传输路径,以均衡整个网络的节点能量,避免由于个别节点的电池电量消耗较快,导致该节点死亡,从而造成网络的分割甚至网络瘫痪的情况出现,最大限度的延长了网络的生存时间。

图3是本发明实施例提供的一种无线传感器网络的通讯装置的结构框图,如图3所示,该无线传感器网络的通讯装置应用于上述实施例的第一节点,第一节点为多个传感器节点中的任意一个节点,该通讯装置300包括第一发送模块301、第一接收模块302、选取模块303和第二发送模块304。

第一发送模块301,用于向第一节点的邻居节点广播第一报文,第一节点为多个传感器节点中的任意一个节点,第一节点的邻居节点为距离第一节点距离小于d的第一节点的下一跳节点,d>0,第一报文用于指示邻居节点向第一节点回复响应报文。

第一接收模块302,用于接收邻居节点回复的响应报文,响应报文包括邻居节点的节点信息,节点信息包括邻居节点的电池剩余电量以及邻居节点至目的节点的剩余跳数。

选取模块303,用于当第一节点的邻居节点为除目的节点以外的其它传感器节点时,根据邻居节点回复的响应报文从邻居节点中选取一个节点为第二节点;

第二发送模块304,用于向第二节点发送数据包。

在本实施例中,节点信息还可以包括邻居节点的电池总电量、以及各节点的身份信息。其中,身份信息可以包括节点的mac地址。

进一步地,选取模块303还用于,

当邻居节点中有至少一个节点的电池剩余电量超过最低电量阈值时,选取至少一个节点中至目的节点的剩余跳数最少的节点为候选节点;

从候选节点中选取电池剩余电量最多的节点为第二节点。

进一步地,选取模块303还用于,

当邻居节点的电池剩余电量均未超过最低电量阈值时,根据以下公式(1)计算各个邻居节点的路由度量值:

etr(r)=eleft(r)/rh(r,d);(1)

其中,etr(r)表示第r个邻居节点的路由度量值,eleft(r)表示第r个邻居节点的电池剩余电量,rh(r,d)表示第r个邻居节点至目的节点d的剩余跳数,r为大于1的正整数;

选取路由度量值最大的邻居节点作为第二节点。

在本实施例中,最低电量阈值可以设置为各邻居节点总电量的5%~20%。

优选地,最低电量阈值可以设置为各邻居节点总电量的10%。

进一步地,该装置还可以包括:

第二接收模块305,用于接收第二节点发送的确认信息,确认信息用于指示第二节点成功接收数据包。

第三发送模块306,用于向电池剩余电量未超过最低电量阈值的邻居节点发送抑制包,抑制包用于抑制节点的数据转发功能。

本发明实施例通过使第一节点向第一节点的邻居节点广播第一报文,指示各邻居节点向第一节点回复响应报文,第一节点接收各邻居节点回复的响应报文,以获取各邻居节点的电池剩余电量以及各邻居节点至目的节点的剩余跳数等节点信息。当第一节点的邻居节点为除目的节点以外的其它传感器节点时,第一节点即可根据邻居节点的电池剩余电量以及邻居节点至目的节点的剩余跳数从邻居节点中选取一个节点为第二节点,向第二节点发送数据包。因此,采用本发明提供的通讯方法可以在考虑各个节点的剩余能量的同时,选取到达目的节点的跳数最少的一条路径作为最佳传输路径,以均衡整个网络的节点能量,避免由于个别节点的电池电量消耗较快,导致该节点死亡,从而造成网络的分割甚至网络瘫痪的情况出现,最大限度的延长了网络的生存时间。

需要说明的是:上述实施例提供的无线传感器网络的通讯装置在通讯时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的无线传感器网络的通讯装置与无线传感器网络的通讯方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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