无线传感器网络的路由方法、无线传感器节点及系统转让专利

申请号 : CN200910159494.7

文献号 : CN101610562B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 冯冬芹章涵褚健金建祥

申请人 : 中控科技集团有限公司浙江大学

摘要 :

本发明实施例公开了一种无线传感器网络的路由方法、无线传感器节点及系统,涉及计算机网络领域。所述方法:无线传感器节点间存在多条路由,分别根据每条路由选定的路由参数计算各路由的路由权重值,获取当前要传输数据的数据传输要求,根据该数据传输要求选定数据参数,并根据该数据参数计算当前要传输数据的数据权重值;在路由权重值中,选择与数据权重值相匹配的路由权重值,将该路由权重值对应的路由作为传输所述当前要传输数据的路由。所述无线传感器节点包括路由权重计算模块、数据权重计算模块和路由选择模块。还提供了一种无线传感器网络的路由系统。本发明实施例能在与数据传输要求相匹配的路由上传输当前要传输数据,从而实现负载均衡。

权利要求 :

1.一种无线传感器网络的路由方法,其中无线传感器节点间存在多条路由,其特征在于,分别根据每条路由选定的路由参数计算各路由的路由权重值,所述路由方法包括:获取当前要传输数据的数据传输要求,根据该数据传输要求选定数据参数,并根据该数据参数计算当前要传输数据的数据权重值;

在所述路由权重值中,选择与所述数据权重值相匹配的路由权重值,将该路由权重值对应的路由作为传输所述当前要传输数据的路由,其中,所述选择与所述数据权重值相匹配的路由权重值包括:分别计算所述路由权重值与所述数据权重值的差值,选择差值最小的路由权重值作为相匹配的路由权重值。

2.根据权利要求1所述的路由方法,其特征在于,在所述选择差值最小的路由权重值作为相匹配的路由权重值之后,该方法进一步包括:判断选择的所述相匹配的路由权重值所对应路由的当前负荷是否达到负荷上限,如果是,则重新在剩余路由权重值与所述数据权重值的差值中选择差值最小的路由权重值,直至当前选择的路由权重值所对应路由的当前负荷未达到负荷上限,将该当前选择的路由权重值作为所述相匹配的路由权重值。

3.根据权利要求2所述的路由方法,其特征在于,所述差值最小的路由权重值包括:小于所述数据权重值、且与所述数据权重值之间的差值最小的路由权重值。

4.根据权利要求1所述的路由方法,其特征在于,根据路由参数计算所述路由的路由权重值包括:分别对所述路由参数进行评估,得到该路由的路由参数评估值;

将该路由的各个所述路由参数评估值分别乘以相应的路由加权系数,并计算各个乘积之和,得到该路由的路由权重值。

5.根据权利要求1所述的路由方法,其特征在于,根据数据参数计算当前要传输数据的数据权重值包括:分别对所述数据参数进行评估,得到数据参数评估值;

将各个所述数据参数评估值分别乘以相应的数据加权系数,并计算各个乘积之和,得到当前要传输数据的数据权重值。

6.根据权利要求1所述的路由方法,其特征在于,分别根据每条路由选定的路由参数计算各路由的路由权重值包括:为每条所述路由选定相同的路由参数,根据每条路由选定的相同的路由参数计算各路由的路由权重值。

7.根据权利要求6所述的路由方法,其特征在于,根据数据参数计算当前要传输数据的数据权重值包括:为当前要传输数据选定与所述路由参数相对应的数据参数,根据所述选定的数据参数计算当前要传输数据的数据权重值。

8.根据权利要求1所述的路由方法,其特征在于,所述方法还包括检测路由是否发生故障,并将发生故障的路由设置为不可用状态;

选择与所述数据权重值相匹配的路由权重值包括:

在当前为可用状态的路由对应的路由权重值中,选择与所述数据权重值相匹配的路由权重值。

9.根据权利要求8所述的路由方法,其特征在于,将发生故障的路由设置为不可用状态包括:将所述路由对应的路由权重值设置为最大或最小、屏蔽所述路由对应的路由权重值、或删除所述路由对应的路由权重值。

10.一种无线传感器节点,其特征在于,包括:

路由权重计算模块,用于分别根据每条路由选定的路由参数计算各路由的路由权重值;

数据权重计算模块,用于获取当前要传输数据的数据传输要求,根据该数据传输要求选定数据参数,并根据该数据参数计算当前要传输数据的数据权重值;

路由选择模块,用于选择与所述数据权重值相匹配的路由权重值,将该路由权重值对应的路由作为传输所述当前要传输数据的路由;具体包括:差值计算单元,用于分别计算所述路由权重值与所述数据权重值的差值;路由选择单元,用于选择所述差值计算单元得到的差值中,差值最小的路由权重值作为相匹配的路由权重值。

11.根据权利要求10所述的无线传感器节点,其特征在于,所述路由选择模块还包括:路由再选择单元,用于判断所述路由选择单元选择的所述相匹配的路由权重值所对应路由的当前负荷是否达到负荷上限,如果是,则重新在剩余路由权重值与所述数据权重值的差值中选择差值最小的路由权重值,直至当前选择的路由权重值所对应路由的当前负荷未达到负荷上限,将当前选择的路由权重值作为所述相匹配的路由权重值。

12.根据权利要求11所述的无线传感器节点,其特征在于,所述差值最小的路由权重值包括:小于所述数据权重值、且与所述数据权重值之间的差值最小的路由权重值。

13.根据权利要求10所述的无线传感器节点,其特征在于,所述路由权重计算模块包括与所述路由数目相同的路由权重计算子模块,分别用于计算各路由的路由权重值;

每个所述路由权重计算子模块包括:

路由参数评估单元,用于分别对该路由选定的路由参数进行评估,得到该路由的路由参数评估值;

路由权重计算单元,用于将该路由的各个所述路由参数评估值分别乘以相应的路由加权系数,并计算各个乘积之和,得到该路由的路由权重值。

14.根据权利要求10所述的无线传感器节点,其特征在于,所述数据权重计算模块包括:数据参数选定单元,用于获取当前要传输数据的数据传输要求,根据该数据传输要求选定数据参数;

数据参数评估单元,用于分别对所述数据参数进行评估,得到数据参数评估值;

数据权重计算单元,用于将各个所述数据参数评估值分别乘以相应的数据加权系数,并计算各个乘积之和,得到当前要传输数据的数据权重值。

15.根据权利要求10所述的无线传感器节点,其特征在于,所述路由权重计算模块具体用于为每条所述路由选定相同的路由参数,分别根据每条路由选定的相同的路由参数计算各路由的路由权重值。

16.根据权利要求15所述的无线传感器节点,其特征在于,所述数据权重计算模块具体用于获取当前要传输数据的数据传输要求,根据该数据传输要求选定与所述路由参数相对应的数据参数,并根据选定的所述数据参数计算当前要传输数据的数据权重值。

17.根据权利要求10所述的无线传感器节点,其特征在于,所述无线传感器节点还包括路由故障检测模块,用于检测路由是否发生故障,并将发生故障的路由设置为不可用状态;

路由选择模块,用于在当前为可用状态的路由对应的路由权重值中,选择与所述数据权重值相匹配的路由权重值,将该路由权重值对应的路由作为传输所述当前要传输数据的路由。

18.一种无线传感器网络的路由系统,包括管理节点,其特征在于,还包括多个如权利要求10-17任一项所述的无线传感器节点,其中所述无线传感器节点间存在多条路由。

说明书 :

技术领域

本发明涉及计算机网络领域,特别涉及一种无线传感器网络的路由方法、无线传感器节点及系统。

背景技术

随着传感器技术、嵌入式技术、分布式信息处理技术和无线通讯技术的发展,以大量具有微处理能力的微型传感器节点组成的无线传感器网络技术,在大规模工业系统中的应用逐渐受到关注。
在应用无线传感器网络的大规模工业系统中,各无线传感器节点将各自产生的监测数据,直接传送至管理节点,或沿其它无线传感器节点逐跳传送至管理节点。同样的,还可以通过管理节点配置和管理无线传感器网络,管理节点可以直接将监测指令传输至目的无线传感器节点,或沿其它无线传感器节点逐跳传送至目的无线传感器节点。通常,往往需要在两个无线传感器节点间进行数据通讯。
当前,在两个无线传感器节点间进行数据通讯所采用的路由技术一般是,预先根据所应用的工业系统的系统应用需求,确定传输中最关键的某个或某几个路由参数(比如传输可靠性、传输跳数、节点能量等),利用现有的无线网络路由算法(比如泛洪算法Flooding、闲聊算法Gossiping等),计算出一条上述路由参数最优的路由,则由该最优路由承担上述两个无线传感器节点间的所有数据通讯。
仅由一条路由来承担无线传感器节点间所有的数据通讯,已无法满足越来越高的数据传输要求,比如由于数据传输量越来越大,在一条路由上传输的数据很难保证高的数据实时性;再比如,对于能量有限的无线传感器节点,频繁的数据通讯对于节点能量的损耗过大;等等。另外,这种依赖唯一路由进行数据通讯的方式,对于数据传输的可靠性也带来了极大的风险。
虽然在有通讯需求的无线传感器节点间,利用现有的无线网络路由算法(比如泛洪算法Flooding、闲聊算法Gossiping等)可以得到上述无线传感器节点间存在的多条路由,由该多条路由来分担节点间的数据通讯,能在一定程度上缓解上述仅由一条路由承担所有数据通讯存在的问题,但如何针对不同的数据传输要求合理选择不同的路由,即在不同的路由上根据不同的数据传输要求均衡要传输的数据,实现负载均衡,是目前应用无线传感器网络的大规模工业系统中急需解决的问题。

发明内容

本发明提供一种无线传感器网络的路由方法、无线传感器节点及系统,以实现无线传感器网络负载均衡的问题。
一方面,提供了一种无线传感器网络的路由方法,其中无线传感器节点间存在多条路由,分别根据每条路由选定的路由参数计算各路由的路由权重值,所述路由方法包括:
获取当前要传输数据的数据传输要求,根据该数据传输要求选定数据参数,并根据该数据参数计算当前要传输数据的数据权重值;
在所述路由权重值中,选择与所述数据权重值相匹配的路由权重值,将该路由权重值对应的路由作为传输所述当前要传输数据的路由,其中,所述选择与所述数据权重值相匹配的路由权重值包括:分别计算所述路由权重值与所述数据权重值的差值,选择差值最小的路由权重值作为相匹配的路由权重值。
在所述选择差值最小的路由权重值作为相匹配的路由权重值之后,该方法进一步包括:
判断选择的所述相匹配的路由权重值所对应路由的当前负荷是否达到负荷上限,如果是,则重新在剩余路由权重值与所述数据权重值的差值中选择差值最小的路由权重值,直至当前选择的路由权重值所对应路由的当前负荷未达到负荷上限,将该当前选择的路由权重值作为所述相匹配的路由权重值。
所述差值最小的路由权重值包括:小于所述数据权重值、且与所述数据权重值之间的差值最小的路由权重值。
根据路由参数计算所述路由的路由权重值包括:
分别对所述路由参数进行评估,得到该路由的路由参数评估值;
将该路由的各个所述路由参数评估值分别乘以相应的路由加权系数,并计算各个乘积之和,得到该路由的路由权重值。
根据数据参数计算当前要传输数据的数据权重值包括:
分别对所述数据参数进行评估,得到数据参数评估值;
将各个所述数据参数评估值分别乘以相应的数据加权系数,并计算各个乘积之和,得到当前要传输数据的数据权重值。
分别根据每条路由选定的路由参数计算各路由的路由权重值包括:为每条所述路由选定相同的路由参数,根据每条路由选定的相同的路由参数计算各路由的路由权重值。
根据数据参数计算当前要传输数据的数据权重值包括:为当前要传输数据选定与所述路由参数相对应的数据参数,根据所述选定的数据参数计算当前要传输数据的数据权重值。
所述方法还包括检测路由是否发生故障,并将发生故障的路由设置为不可用状态;
选择与所述数据权重值相匹配的路由权重值包括:
在当前为可用状态的路由对应的路由权重值中,选择与所述数据权重值相匹配的路由权重值。
将发生故障的路由设置为不可用状态包括:将所述路由对应的路由权重值设置为最大或最小、屏蔽所述路由对应的路由权重值、或删除所述路由对应的路由权重值。
另一方面,提供了一种无线传感器节点,包括:
路由权重计算模块,用于分别根据每条路由选定的路由参数计算各路由的路由权重值;
数据权重计算模块,用于获取当前要传输数据的数据传输要求,根据该数据传输要求选定数据参数,并根据该数据参数计算当前要传输数据的数据权重值;
路由选择模块,用于选择与所述数据权重值相匹配的路由权重值,将该路由权重值对应的路由作为传输所述当前要传输数据的路由,具体包括
差值计算单元,用于分别计算所述路由权重值与所述数据权重值的差值;路由选择单元,用于选择所述差值计算单元得到的差值中,差值最小的路由权重值作为相匹配的路由权重值。
所述路由选择模块还包括:
路由再选择单元,用于判断所述路由选择单元选择的所述相匹配的路由权重值所对应路由的当前负荷是否达到负荷上限,如果是,则重新在剩余路由权重值与所述数据权重值的差值中选择差值最小的路由权重值,直至当前选择的路由权重值所对应路由的当前负荷未达到负荷上限,将当前选择的路由权重值作为所述相匹配的路由权重值。
所述差值最小的路由权重值包括:小于所述数据权重值、且与所述数据权重值之间的差值最小的路由权重值。
所述路由权重计算模块包括与所述路由数目相同的路由权重计算子模块,分别用于计算各路由的路由权重值;
每个所述路由权重计算子模块包括:
路由参数评估单元,用于分别对该路由选定的路由参数进行评估,得到该路由的路由参数评估值;
路由权重计算单元,用于将该路由的各个所述路由参数评估值分别乘以相应的路由加权系数,并计算各个乘积之和,得到该路由的路由权重值。
所述数据权重计算模块包括:
数据参数选定单元,用于获取当前要传输数据的数据传输要求,根据该数据传输要求选定数据参数;
数据参数评估单元,用于分别对所述数据参数进行评估,得到数据参数评估值;
数据权重计算单元,用于将各个所述数据参数评估值分别乘以相应的数据加权系数,并计算各个乘积之和,得到当前要传输数据的数据权重值。
所述路由权重计算模块具体用于为每条所述路由选定相同的路由参数,分别根据每条路由选定的相同的路由参数计算各路由的路由权重值。
所述数据权重计算模块具体用于获取当前要传输数据的数据传输要求,根据该数据传输要求选定与所述路由参数相对应的数据参数,并根据选定的所述数据参数计算当前要传输数据的数据权重值。
所述无线传感器节点还包括路由故障检测模块,用于检测路由是否发生故障,并将发生故障的路由设置为不可用状态;
路由选择模块,用于在当前为可用状态的路由对应的路由权重值中,选择与所述数据权重值相匹配的路由权重值,将该路由权重值对应的路由作为传输所述当前要传输数据的路由。
再一方面,提供了一种无线传感器网络的路由系统,包括管理节点,多个上述无线传感器节点,其中所述无线传感器节点间存在多条路由。
本发明提供的一种无线传感器网络的路由方法、无线传感器节点及系统,有益效果是:根据选定的路由参数计算无线传感器节点间各路由的路由权重值,根据由数据传输要求确定的数据参数计算当前要传输数据的数据权重值,选择与该数据权重值相匹配的路由权重值,在相匹配的路由权重值对应的路由上传输当前要传输数据,从而实现在与所述数据传输要求相匹配的路由上传输当前要传输数据,具体的,选择路由权重值低的路由传输数据权重值低的数据,选择路由权重值高的路由传输数据权重值高的数据,即针对不同的数据传输要求,在不同的路由上均衡要传输的数据,实现负载均衡。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种无线传感器网络路由方法流程图;
图2为本发明实施例提供的另一种无线传感器网络路由方法流程图;
图3为本发明实施例中无线传感器网络示意图;
图4为本发明实施例提供的一种无线传感器节点结构框图;
图5为本发明实施例中一种路由选择模块的结构框图;
图6为本发明实施例中另一种路由选择模块的结构框图;
图7为本发明实施例中路由权重计算模块的结构框图;
图8为本发明实施例中数据权重计算模块的结构框图;
图9为本发明实施例提供的一种无线传感器网络路由系统结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
参见图1,本发明实施例提供一种无线传感器网络的路由方法,其中无线传感器节点间存在多条路由,分别根据每条路由选定的路由参数计算各路由的路由权重值,所述路由方法包括:
S101:获取当前要传输数据的数据传输要求,根据该数据传输要求选定数据参数,并根据该数据参数计算当前要传输数据的数据权重值;
S102:在所述路由权重值中,选择与所述数据权重值相匹配的路由权重值,将该路由权重值对应的路由作为传输所述当前要传输数据的路由。
可见,本发明实施例提供的一种无线传感器网络的路由方法,根据选定的路由参数计算无线传感器节点间各路由的路由权重值,根据由数据传输要求确定的数据参数计算当前要传输数据的数据权重值,选择与该数据权重值相匹配的路由权重值,在相匹配的路由权重值对应的路由上传输当前要传输数据,从而实现在与所述数据传输要求相匹配的路由上传输当前要传输数据,具体的,选择路由权重值低的路由传输数据权重值低的数据,选择路由权重值高的路由传输数据权重值高的数据,即针对不同的数据传输要求,在不同的路由上均衡要传输的数据,实现负载均衡。
参见图2,本发明实施例提供一种无线传感器网络的路由方法,其中无线传感器节点间存在多条路由,该方法包括:
S201:无线传感器节点对选定的各路由参数进行评估,得到各路由参数评估值。
通常,无线传感器节点会利用现有的无线网络路由算法(比如泛洪算法Flooding、闲聊算法Gossiping等)生成与目的无线传感器节点间的多条路由,并记录各路由的路由参数。
以泛洪算法为例说明在节点间建立多条路由的方法:每个无线传感器节点把自己生成的要传输数据或接收到的要传输数据发送给所有它的邻居节点,这个过程一直重复直到该要传输数据到达目的无线传感器节点,或者该要传输数据的生命到期(在无线传感器网络里通常会为要传输数据定义最大跳数,其中,要传输数据每经过一个节点为一跳)。目的无线传感器节点会接收到多个经过不同的路由到达的要传输数据,目的无线传感器节点会依据接收到的数据中包含的路由信息,确定每个接收到的数据所经过的路由,从而得到两无线传感器节点间的多条路由。
利用其它现有的无线网络路由算法生成与目的无线传感器节点间多条路由的方法在此不再赘述。
在无线传感器网络中常用的路由参数包括,可靠性(reliability)、实时性(Real time)、交付时间(Delivery time)、基本网络拓朴(Basic networktopology)、端节点间交换机的数量(Number of switches between end nodes)、RTE吞吐量(Throughput RTE)、非RTE吞吐量(Throughput non-RTE)、时间同步精确度(Time synchronization accuracy)、冗余恢复时间(Redundancyrecovery time)等等。
无线传感器节点通常会依据所应用工业系统的系统应用需求,选定每条路由要评估的关键路由参数。比如,在某工业系统中,采用无线的压力传感器监测某设备当前压力状况,而由于压力传感器节点离管理节点较远,不能直接将自身生成的当前压力数据传输给管理节点,需要通过处于中间位置的另一个无线传感器节点中转,则压力传感器节点需要将自身生成的当前压力数据传输给上述无线传感器节点,可见,针对该应用场景,系统应用需求具体是要求较高的数据传输实时性、可靠性和数据量,因此,根据该系统应用需求,选定压力传感器与上述无线传感器之间每条路由的路由参数均为实时性、可靠性和数据量。
两节点间各路由选定相同的路由参数是比较优选的方案,可以达到更加精确负载均衡效果。当然在实际应用中,两无线传感器节点间的各路由也可以选定不同的路由参数,此时也可以对不同权重的数据分配不同路由进行传输,即实现负载均衡的目的。
举例说明对选定的路由参数进行评估,得到路由参数评估值的方法,参见图3,无线传感器网络中定义有一系列无线传感器节点(图中每个小圈表示一个无线传感器节点),假定节点X和节点Y为有通讯需求的两个无线传感器节点,则利用现有的无线网络路由算法得到节点X和节点Y之间的三条路由:路由A、路由B、路由C。选定路由A、路由B、路由C要评估的路由参数均为可靠性、实时性和数据量三个路由参数。对路由A,分别对选定的三个路由参数进行评估,评估方法可以依据自己的需求制定,比如对实时性进行评估时,根据自己的业务需求,制定10个等级:小于1ms、1-2ms、2-3ms、3-4ms、4-5ms、5-6ms、6-7ms、7-8ms、8-9ms、大于9ms。依然以泛洪算法为例,在利用泛洪算法得到路由A时,目的无线传感器节点Y会依据从路由A接收到的数据中所记录的相关信息,得到经过路由A接收到的数据的实时性为5.6ms,对应上述划分等级中的第6个等级,则可以确定路由A的实时性参数评估值为6,当然,实际应用中,评估方法可以根据需求自行设定,这里不做限制。对于路由B和路由C上的各路由参数的评估方法同理。
S202:无线传感器节点分别针对每条路由,将各路由参数评估值乘以相应的路由加权系数,并计算各个乘积之和,得到每条路由的路由权重值。
其中路由加权系数通常由系统构建方预先设定,且各路由加权系数之和为1。还以上述图3为例进行说明,假定路由A中可靠性、实时性和数据量三个路由参数的评估值分别为Rb、Rt、N;可靠性、实时性和数据量三个路由参数对应的路由加权系数分别为0.3、0.5、0.2,则计算路由A的路由权重值的方法为:Rb×0.3+Rt×0.5+N×0.2,路由B、路由C路由权重值的计算方法同理。
这里,路由加权系数用不同的比例系数来体现不同的路由参数在路由权重值中具有的重要程度,比如,实时性对应的路由加权系数为0.5,占的比例很大,则体现出在得到的路由权重值中实时性最重要,也就是说,实时性的变化,对于路由权重值的影响最大,同理,路由权重值中重要程度其次的为可靠性,重要程度最小的是数据量。
通常,计算路由权重值的步骤一般发生在路由生成时,之后,在路由不改变的情况下,通常不重新计算路由权重值。
S203:无线传感器节点获取当前要传输数据的数据传输要求,根据该数据传输要求选定数据参数,并对各数据参数进行评估,得到数据参数评估值。
这里,当前要传输数据包括该无线传感器节点自身生成的当前要传输数据,和/或接收到的当前要传输数据。具体的,无线传感器网络通常会根据具体工业系统的应用情况,设置多种无线传感器,比如压力传感器、温度传感器、角度传感器等等,根据具体工业应用的环境,各个无线传感器布置的位置各不相同,因此,每个无线传感器节点会根据管理节点发布的数据采集信息生成自己要传输的数据(比如温度传感器会根据管理节点发布的温度采集信息,生成当前温度数据),同时记录生成的该当前要传输数据的相关数据参数,并将当前要传输数据传输给目的节点;或作为其他节点的中继节点,将接收到的其他节点的数据传输给目的节点(比如压力传感器距离目的节点很远,不能直接进行数据传输,则会将自己生成的压力数据传输给温度传感器,温度传感器接收到压力数据后,将压力数据传输至目的节点)。
在无线传感器网络中,传输数据常用的数据参数包括,可靠性(reliability)、实时性(Real time)、交付时间(Delivery time)、基本网络拓朴(Basic network topology)、端节点间交换机的数量(Number of switchesbetween end nodes)、RTE吞吐量(Throughput RTE)、非RTE吞吐量(Throughput non-RTE)、时间同步精确度(Time synchronization accuracy)、冗余恢复时间(Redundancy recovery time)等等。上述数据参数分别与路由参数相对应。
无线传感器节点获取当前要传输数据的数据传输要求,根据该数据传输要求选定要评估的关键数据参数。比如,在某工业系统中,采用无线的压力传感器监测某设备当前压力状况,而由于压力传感器节点离管理节点较远,不能直接将自身生成的当前压力数据传输给管理节点,需要通过处于中间位置的另一个无线传感器节点中转,则压力传感器节点需要将自身生成的当前压力数据传输给上述无线传感器节点,可见,针对该应用场景,当前要传输压力数据的数据传输要求具体是要求较高的数据传输实时性、可靠性和数据量,因此,根据该数据传输要求,选定该当前要传输的压力数据的数据参数为实时性、可靠性和数据量。
假定选定本次当前要传输数据的关键数据参数为可靠性、实时性和数据量三个参数,分别对其进行评估,评估方法可以依据自己的需求制定,比如也可以采用划分等级的方式进行评估,得到各数据参数评估值,其具体的评估方法同前述,此处不再赘述。
优选的,两节点间各路由选定相同的路由参数,进一步的,在实际应用中,根据当前要传输数据的数据传输要求选定的当前要传输数据的数据参数可以不与步骤S201中选定的路由参数相对应,此时也可以实现对不同数据权重值的数据选择不同路由传输,实现负载均衡的目的。当然优选的,根据当前要传输数据的数据传输要求选定的当前要传输数据的数据参数与步骤S201中选定的路由参数相对应,即假定路由A、路由B、路由C均选定可靠性、实时性和数据量三个参数进行评估时,选定的当前要传输数据的数据参数也是可靠性、实时性和数据量,以便针对不同传输数据的权重分配不同传输路由时更加精确。
S204:无线传感器节点将各个数据参数评估值乘以相应的数据加权系数,并计算各个乘积之和,得到当前要传输数据的数据权重值。
其中数据加权系数通常由数据生成方预先生成,且各数据加权系数之和为1,比如压力传感器生成压力数据时,会同时生成并记录该压力数据相关的数据参数,及分别与数据参数对应的数据加权系数。举例说明,假定选定可靠性、实时性和数据量三个数据参数进行评估,其数据参数评估值分别为Rb′、Rt′、N′;可靠性、实时性和数据量三个数据参数对应的数据加权系数分别为0.4、0.3、0.3,则计算该当前要传输数据的数据权重值的方法为:Rb′×0.4+Rt′×0.3+N′×0.3。
这里,数据加权系数用不同的比例系数来体现不同的数据参数在数据权重值中具有的重要程度,比如,实时性对应的数据加权系数为0.4,占的比例相对较大,则体现出在得到的数据权重值中实时性相对比较重要,也就是说,实时性的变化,对于数据权重值的影响相对较大,同理,数据权重值中重要程度其次的为可靠性和数据量。
通常,计算数据权重值的步骤在每次要传输数据的时候会重新计算,即针对不同的传输数据,其数据权重值都会重新进行计算。
S205:无线传感器节点在各路由的路由权重值中,选择与当前要传输数据的数据权重值相匹配的路由权重值。
其中,步骤S202中计算得到的路由权重值,是能够体现该条路由上占有不同比重的某个或某几个路由参数的一个综合评定数值,比如,在本发明实施例中,路由权重值可以表示为该条路由上所能承担的体现不同路由参数所占比重的数据帧的最大数量。假设计算路由A的路由权重值为5.6,则说明该路由A能承担的数据帧的最大数量为5.6,其中每个数据帧均体现了可靠性、实时性和数据量的路由评估值分别为Rb、Rt、N,所占比重分别为0.3、0.5、0.2的综合评定数值。
优选的,本发明实施例还包括对路由权重值进行向下取整的步骤,即当计算路由A的路由权重值为5.6时,则向下取整为5,即路由A能承担的最大数据帧为5,即路由A能传输符合比重分别为0.3、0.5、0.2,路由评估值分别为Rb、Rt、N的数据帧最大为5。
优选的,可以将上述计算得到的各路由的路由权重值按照大小顺序形成路由权重值列表的形式,以便选择和管理。
在本发明的一个实施例中,在步骤S202中计算得到的各路由权重值中,选择与当前要传输数据的数据权重值相匹配的路由权重值的方法可以是:
分别计算各路由权重值与所述数据权重值的差值,选择差值最小的路由权重值作为相匹配的路由权重值。
在本发明的另一个实施例中,在上述选择差值最小的路由权重值作为相匹配的路由权重值之后,该方法进一步包括:
判断选择的所述相匹配的路由权重值所对应路由的当前负荷是否达到负荷上限,如果是,则重新在剩余路由权重值与所述数据权重值的差值中选择差值最小的路由权重值,直至当前选择的路由权重值所对应路由的当前负荷未达到负荷上限,将当前选择的路由权重值作为所述相匹配的路由权重值。这样,可以保证各路由负荷小于预先设定的该路由最大数据传输量,从而保证各路由上节点的生存时间,并避免了各路由传输过程中由于负荷过大,对数据传输的实时性带来的影响。而且可以使得针对不同的数据传输要求,在不同的路由上更加合理的均衡要传输的数据,即达到更好的负载均衡效果。
也就是说,当与数据权重值最接近的路由权重值所对应的路由,其当前负荷达到该路由负荷的上限时,在除该路由权重值外的剩余路由权重值中,重新选择与数据权重值最接近的路由权重值,依次下去,直至找到当前负荷未达到上限、且路由权重值与数据权重值相对比较接近的路由权重值作为相匹配的路由权重值。
其中,判断路由上当前负荷是否达到该路由负荷上限的方法有多种,比如通过获取该路由记录的当前使用状态信息来判断等等,此处不做限制。
实际应用中,无线传感器节点可以设置达到负荷上限的路由对应的路由权重值为不可用状态,比如,可以在上述路由权重值列表中屏蔽掉该路由权重值,或删除该路由权重值,以便重新在剩下的路由权重值中重新选择一个最接近的作为相匹配的路由权重值。此处当该路由上的负荷降到该路由负荷的上限以下时,可以重新启用该路由权重值。
上述与当前要传输数据的数据权重值差值最小的路由权重值可以是:
大于该数据权重值、且与该数据权重值之间的差值最小的路由权重值。比如,当前要传输数据的数据权重值为4.3,则在大于4.3的路由权重值中选择与4.3最接近的路由权重值,假定为5,则说明,当前要传输数据可以在承担最大数据帧数量为4.3的路由上进行传输,则此时可以选择最大能够承担的数据帧数量为5的路由上进行传输,从而实现传输数据与路由的合理匹配;
当然,优选的,与当前要传输数据的数据权重值差值最小的路由权重值还可以是小于该数据权重值、且与该数据权重值之间的差值最小的路由权重值。比如,当前要传输数据的数据权重值为4.3,则在小于4.3的路由权重值中选择与4.3最接近的路由权重值,假定为4,则说明,当前要传输数据可以在承担最大数据帧数量为4.3的路由上进行传输,则此时可以选择最大能够承担的数据帧数量为4的路由上进行传输,从而实现传输数据与路由的更合理匹配,避免产生路由浪费,使得针对不同的数据传输要求,在不同的路由上更加合理的均衡要传输的数据,即达到更好的负载均衡效果。
S206:无线传感器节点将相匹配的路由权重值对应的路由作为传输所述当前要传输数据的路由,从而实现不同权重的数据在不同权重的路由上进行传输,充分实现负载均衡。
在本发明实施例的另一个实施例中,要评估的路由参数还可以选择故障状态参数,用于体现该故障状态对该路由的影响程度,假定,在某应用场景中,布置了温度传感器和压力传感器,而在某种应用中并未使用压力传感器,而仅仅使用温度传感器,则此时系统构建方会将压力传感器对应的路由故障状态参数的路由加权系数设置的很小,而温度传感器对应的路由故障状态参数的路由加权系数设置的很大,当路由参数中选择了对应故障状态参数时,便可以在路由权重值中体现出路由故障状态对整体的影响程度。相应的,要评估的数据参数也可以对应选择故障状态数据参数,这样,可以根据当前要传输数据所能接受的故障程度,来选择故障状态相匹配的路由进行传输。
可见,本发明实施例提供的无线传感器网络路由方法,根据选定的路由参数计算无线传感器节点间各路由的路由权重值,根据由数据传输要求确定的数据参数计算当前要传输数据的数据权重值,选择与该数据权重值相匹配的路由权重值,在相匹配的路由权重值对应的路由上传输当前要传输数据,从而实现在与所述数据传输要求相匹配的路由上传输当前要传输数据,具体的,选择路由权重值低的路由传输数据权重值低的数据,选择路由权重值高的路由传输数据权重值高的数据,即针对不同的数据传输要求,在不同的路由上均衡要传输的数据,实现负载均衡。
可选的,本发明实施例还可以包括检测路由是否发生故障,并将发生故障的路由设置为不可用状态的步骤;则选择与所述数据权重值相匹配的路由权重值包括:在当前为可用状态的路由对应的路由权重值中,选择与所述数据权重值相匹配的路由权重值。
其中,将发生故障的路由设置为不可用状态包括:将所述路由对应的路由权重值设置为最大或最小、屏蔽所述路由对应的路由权重值、或删除所述路由对应的路由权重值,等。当发生故障的路由重新恢复正常后,还包括重新启用该路由权重值的步骤。其中,检测路由是否发生故障的方法有多种,比如通过互发心跳信号进行检测、或利用节点自带的故障检测功能检测等等,此处不做限制。
当检测到某路由发生故障时,需要将原本在该路由上传输的数据转移到其他未发生故障的路由上进行传输,转移的方法可以是,选择路由权重值与要转移数据的数据权重值最为接近的未发生故障的路由来接管该数据传输;当然,转移的方法还可以是,选择路由权重值与要转移数据的数据权重值最为接近的未发生故障的路由,判断该路由上的负荷是否达到最大负荷值,如果已经达到最大负荷值,重新在剩下的路由权重值中选择与要转移数据的数据权重值最为接近的路由来接管该数据传输。因此,可以更加合理的均衡要传输数据,即达到更好的负载均衡效果。
本发明实施例的一个应用场景比如可以是,在化工厂中需要监测和管理储油罐内部的状态,如压力状态、温度状态等,因为要监测和管理的是储油罐内部的状态,无法使用通常的有线形式的传感器来实现,此时需要在储油罐内部布置无线压力传感器和温度传感器等,在整个化工厂中有很多很多的储油罐,于是整个化工厂便可以采用无线传感器网络对全部储油罐内部状态实现监控和管理,而每个无线传感器形成的节点之间的数据通讯便可以采用本发明实施例提供的路由方法实现。
参见图4,本发明实施例提供一种无线传感器节点,包括:
路由权重计算模块401,用于分别根据每条路由选定的路由参数计算各路由的路由权重值;
数据权重计算模块402,用于获取当前要传输数据的数据传输要求,根据该数据传输要求选定数据参数,并根据该数据参数计算当前要传输数据的数据权重值;
路由选择模块403,用于选择与所述数据权重值相匹配的路由权重值,将该路由权重值对应的路由作为传输所述当前要传输数据的路由。
可见,本发明实施例提供的无线传感器节点,根据选定的路由参数计算无线传感器节点间各路由的路由权重值,根据由数据传输要求确定的数据参数计算当前要传输数据的数据权重值,选择与该数据权重值相匹配的路由权重值,在相匹配的路由权重值对应的路由上传输当前要传输数据,从而实现在与所述数据传输要求相匹配的路由上传输当前要传输数据,具体的,选择路由权重值低的路由传输数据权重值低的数据,选择路由权重值高的路由传输数据权重值高的数据,即针对不同的数据传输要求,在不同的路由上均衡要传输的数据,实现负载均衡。
其中,无线传感器节点通常会利用现有的无线网络路由算法(比如泛洪算法Flooding、闲聊算法Gossiping等)生成与目的无线传感器节点间的多条路由,并记录各路由的路由参数。并且会根据管理节点发布的数据采集信息生成自己要传输的数据,同时记录生成的该当前要传输数据的相关数据参数;或作为其它无线传感器节点的中继节点,接收其它节点的当前要传输数据。
其中,路由权重计算模块401为各路由选定相同的路由参数是比较优选的方案,可以达到更加精确的负载均衡效果。当然在实际应用中,路由权重计算模块401也可以为各路由选定不同的路由参数,此时也能够对不同权重的数据分配不同路由进行传输,即实现负载均衡的目的。
实际应用中,根据当前要传输数据的数据传输要求选定的当前要传输数据的数据参数可以不与选定的路由参数相对应,此时也可以实现对不同数据权重值的数据选择不同路由传输,实现负载均衡的目的。当然优选的,根据当前要传输数据的数据传输要求选定的当前要传输数据的数据参数与选定的路由参数相对应,也就是说,数据权重计算模块402具体用于获取当前要传输数据的数据传输要求,根据该数据传输要求选定与所述路由参数相对应的数据参数,并根据选定的所述数据参数计算当前要传输数据的数据权重值,以便针对不同传输数据的权重分配不同传输路由时更加精确。
在本发明的另一个实施例中,无线传感器节点还包括路由故障检测模块,用于检测路由是否发生故障,并将发生故障的路由设置为不可用状态;则路由选择模块,用于在当前为可用状态的路由对应的路由权重值中,选择与所述数据权重值相匹配的路由权重值,将该路由权重值对应的路由作为传输所述当前要传输数据的路由。其中,将发生故障的路由设置为不可用状态包括:将所述路由对应的路由权重值设置为最大、屏蔽所述路由对应的路由权重值、或删除所述路由对应的路由权重值,等。当发生故障的路由重新恢复正常后,还可以重新启用该路由权重值。进一步的,路由故障检测模块当检测到某路由发生故障时,还包括将原本在该发生故障的路由上传输的数据转移到其他未发生故障的路由上进行传输。转移的方法可以是,选择路由权重值与要转移数据的数据权重值最为接近的未发生故障的路由来接管该数据传输;当然,转移的方法还可以是,选择路由权重值与要转移数据的数据权重值最为接近的未发生故障的路由,判断该路由上的负荷是否达到最大负荷值,如果已经达到最大负荷值,重新在剩下的路由权重值中选择与要转移数据的数据权重值最为接近的路由来接管该数据传输。路由故障检测模块可以使得在不同的路由上更加合理的均衡要传输数据,即达到更好的负载均衡效果。
参见图5,在本发明的一个实施例中,路由选择模块403包括:
差值计算单元501,用于分别计算所述路由权重值与所述数据权重值的差值;
路由选择单元502,用于选择所述差值计算单元501得到的差值中,差值最小的路由权重值作为相匹配的路由权重值。
参见图6,在本发明的另一个实施例中,路由选择模块403还包括:
路由再选择单元503,用于判断所述路由选择单元502当前选择的所述相匹配的路由权重值所对应路由的当前负荷是否达到负荷上限,如果是,则重新在剩余路由权重值与所述数据权重值的差值中选择差值最小的路由权重值,直至当前选择的路由权重值所对应路由的当前负荷未达到负荷上限,将当前选择的路由权重值作为所述相匹配的路由权重值。
其中,路由选择模块403在各路由的路由权重值中,选择与当前要传输数据的数据权重值差值最小的路由权重值包括:
可以选择大于该数据权重值、且与该数据权重值之间的差值最小的路由权重值;优选的,还可以选择小于该数据权重值、且与该数据权重值之间的差值最小的路由权重值,从而实现传输数据与路由的合理匹配,且不会产生路由的浪费,使得针对不同的数据传输要求,在不同的路由上更加合理的均衡要传输数据,即达到更好的负载均衡效果。
参见图7,在本发明一个实施例中,路由权重计算模块401包括与所述路由数目相同的路由权重计算子模块70,分别用于计算各路由的路由权重值,即一个路由权重计算子模块70用于计算一条路由的路由权重值。
每个路由权重计算子模块70包括:
路由参数评估单元701,用于分别对该路由选定的路由参数进行评估,得到该路由的路由参数评估值;
路由权重计算单元702,用于将该路由的各个所述路由参数评估值分别乘以相应的路由加权系数,并计算各个乘积之和,得到该路由的路由权重值。
参见图8,在本发明另一个实施例中,数据权重计算模块402包括:
数据参数选定单元801,用于获取当前要传输数据的数据传输要求,根据该数据传输要求选定数据参数;
数据参数评估单元802,用于分别对所述数据参数进行评估,得到数据参数评估值;
数据权重计算单元803,用于将各个所述数据参数评估值分别乘以相应的数据加权系数,并计算各个乘积之和,得到当前要传输数据的数据权重值。
优选的,所述路由权重计算模块401具体用于为每条所述路由选定相同的路由参数,分别根据每条路由选定的相同的路由参数计算各路由的路由权重值,可以达到更加精确的负载均衡效果。在实际应用中,各路由选定的路由参数也可以不同,此时也可以对不同权重的数据分配不同路由进行传输,即实现负载均衡的目的。
进一步的,根据当前要传输数据的数据传输要求选定的当前要传输数据的数据参数可以不与选定的路由参数相对应,此时也可以实现对不同数据权重值的数据选择不同路由传输,实现负载均衡的目的。当然优选的,根据当前要传输数据的数据传输要求选定的当前要传输数据的数据参数与选定的路由参数相对应,以便针对不同传输数据的权重分配不同传输路由时更加精确。
可见,本发明实施例提供的无线传感器节点,根据选定的路由参数计算无线传感器节点间各路由的路由权重值,根据由数据传输要求确定的数据参数计算当前要传输数据的数据权重值,选择与该数据权重值相匹配的路由权重值,在相匹配的路由权重值对应的路由上传输当前要传输数据,从而实现在与所述数据传输要求相匹配的路由上传输当前要传输数据,具体的,选择路由权重值低的路由传输数据权重值低的数据,选择路由权重值高的路由传输数据权重值高的数据,即针对不同的数据传输要求,在不同的路由上均衡要传输的数据,实现负载均衡。
参见图9,本发明实施例提供一种无线传感器网络的路由系统,包括管理节点901,和多个无线传感器节点902,其中无线传感器节点间存在多条路由。
需要说明的是,本发明实施例中的无线传感器节点902可以执行上述实施例中的无线传感器节点所示的功能,其结构构成及工作流程在此不再赘述。
这里,各无线传感器节点902将各自产生的监测数据,直接传送至管理节点901,或沿其它无线传感器节点逐跳传送至管理节点901。同样的,可以通过管理节点901配置和管理无线传感器网络中的各个无线传感器节点902,发布监测任务及收集监测数据,管理节点901可以直接将检测指令传输至目的无线传感器节点,或沿其它无线传感器节点逐跳传送至目的无线传感器节点。其中,在有通讯需求的任意两个无线传感器节点902之间可以采用上述实施例中所示路由方法实现数据传输,在此不再赘述。
可见,本发明实施例提供的无线传感器网络路由系统,根据选定的路由参数计算无线传感器节点间各路由的路由权重值,根据由数据传输要求确定的数据参数计算当前要传输数据的数据权重值,选择与该数据权重值相匹配的路由权重值,在相匹配的路由权重值对应的路由上传输当前要传输数据,从而实现在与所述数据传输要求相匹配的路由上传输当前要传输数据,具体的,选择路由权重值低的路由传输数据权重值低的数据,选择路由权重值高的路由传输数据权重值高的数据,即针对不同的数据传输要求,在不同的路由上均衡要传输的数据,实现负载均衡。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,包括若干指令用以执行本发明各个实施例所述的方法。这里所述的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。