基于移动节点的无线传感器网络节能安全路由方法及系统转让专利

申请号 : CN201010517343.7

文献号 : CN101977376B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘云郭英慧张振江张彦超韩瑞凯程子栋

申请人 : 北京交通大学

摘要 :

本发明公开了一种基于移动节点的无线传感器网络节能安全路由方法及系统。该方法包括:确定所述无线传感器网络中的重要节点,建立所述重要节点与所述移动节点的通信法则;通过所述通信法则,对所述移动节点进行速度控制;对所述无线传感器网络进行网络安全的控制。本发明考虑节点能量消耗、节点传输数据可靠性和网络安全性等因素,在多条件约束情况下,保证了整个传感器网络的有效工作时间和安全性。

权利要求 :

1.一种基于移动节点的无线传感器网络节能安全路由方法,其特征在于,包括:一、通信法则建立步骤,确定所述无线传感器网络中的重要节点,建立所述重要节点与所述移动节点的通信法则,通信法则建立具体包括如下步骤:①选举步骤,选举重要节点,构建簇的集合,所述重要节点为与移动节点进行直接通信的节点,具体执行过程如下:

1)节点初始化阶段:节点随机散布到整个区域后,将会确认自己的唯一标识ID,同时将自己最初的级别标识L设置为无穷大;

2)移动节点初始化阶段:移动节点确认自己的唯一标识ID为1,设置自己的级别标识L=0,准备发送连接信息包Connect,连接信息包Connect由{节点ID,级别标识L,簇头节点x x标识,密码标识g}组成,其中密码标识g 将应用于网络安全性的保证;

x

3)移动节点以恒定速度沿着固定的路径移动,周期性的广播连接信息包{1,0,0,g};

其中,连接信息包Connect中,ID是节点的唯一标识,初始化后就不会变动;级别标识L根据算法进行更改,最开始设置普通节点级别标识L值为无穷大,移动节点设置自己级别标识为L=0;移动节点的簇头节点标识位设置为0,以后依据算法选择出的重要节点的簇头节点标识位也设置为0,普通节点该位置设置成自身所在区域的重要节点ID值;

4)算法法则

(a)首先网络节点进行初始化,包括节点ID值,级别标识L;

(b)然后节点等待接收连接信息包Connect;

(c)一旦接收到连接信息包Connect,首先判断接收到连接信息包Connect中的L值大小加1跳后是否小于自己当前的L值,如果判断成立,则将自己的L值更改为L=Lconnect+1;

若不成立,则回到等待接收连接信息包Connect状态;

(d)在判断成立的条件下,再进一步判断此时自己的级别标识L值是否为1,如果自己的级别标识L值为1,证明刚才的连接信息包Connect是由移动节点发送给自己的,那么将簇头节点标识设置为0;若判断后发现自己的L值不等于1,则证明该信息是其他节点发送给自己的连接信息包Connect,则将接收来的连接信息包Connect中的簇头节点标识信息写入到自己将要发送的连接信息包Connect中;

(e)如果证明自己的簇头节点标识为0,则说明已经被选定为重要节点,继续进行广播,连接信息包Connect为{自己的ID,1,自己的ID},此时由节点发送的连接信息包Connect中已经不再发送gx信息,簇头节点标识设置成自己的ID值,用于建立属于自己的簇区域;

(f)若判断自己不是重要节点,同样继续进行广播,广播的连接包为{自己的ID,更新后级别标识L的值,所属簇的ID},其中所属簇的ID值就是节点接收到的连接信息包Connect中的簇头节点标识信息;

(g)循环至等待接收连接信息包Connect步骤;

②第一通信方式建立步骤,建立所述重要节点与所述簇的集合内普通节点的通信方式;

响应式混合路由在通信建立阶段采用层次路由,采用简化的LEACH协议,利用第一阶段收到的连接信息包Connect来组成相应的簇区域;当节点收到连接信息包Connect后,确认自己成为重要节点,该节点开始广播信息,组建自己的簇区域;利用连接信息包Connect中的簇头节点标识,广播信息,宣布自己的存在,并希望组建簇区域;接收到该重要节点发送信息的普通节点,将簇头节点标识写入到自己的信息中去,默认加入该簇区域;

响应式混合路由的数据传输过程使用改进的DD协议,在第一阶段重要节点选举的过程中,收到连接信息包Connect的节点都可以将连接信息包Connect继续转发,当节点确认自己被选为重要节点后,开始广播信息,寻找属于自己区域内的普通节点,它将自己的簇头节点标识设置好后,利用级别标识L值的变化建立属于自己区域内的梯度,组建自己的网络,当有数据要传送时,只要沿着梯度的变化方向进行数据传输即可;

③第二通信方式建立步骤,建立重要节点与移动节点间的通信方式,重要节点首先接收Hello信息包确定移动节点在自己的通信范围内,然后发送自己的数据包Data给移动节点,移动节点接收来自重要节点的数据包Data后进行反馈,发送确认信息包ACK;重要节点收到确认信息包ACK后,删除自己缓存中的数据,一个完整的通信过程结束;若重传定时器时间到,重要节点依然没有接收到来自移动节点的确认信息包ACK,重要节点检测到移动节点还在其通信范围内后,会进行数据包的重传;

二、速度控制步骤,通过所述通信法则,对所述移动节点进行速度控制,具体包括如下步骤:①检测步骤,检测所述无线传感器网络中的拥塞区域;

拥塞区域的确定是依靠节点本身特性决定,移动节点通过记录与其联系的节点信息状况来判断拥塞区域产生的位置,网络共设置有m个拥塞区域,以下两点判定节点是否在拥塞区域中:

1)在很短时间内经常与移动节点联系;

2)与移动节点联系频繁,但移动节点的数据接收速率明显下降;

②控制步骤,依据检测到的所述拥塞区域,进行速度控制,速度控制算法实现过程如下:a)信息整理环节

移动节点经过第二次完整路径后,记录节点信息,依据拥塞区域判断标准确定拥塞区域信息;

b)移动节点初始化

移动节点按照最初的状态,以速度2s在指定线路中进行移动,其中,移动节点最初的状态为移动节点以2s速度移动和停止两个状态;

c)检测拥塞

移动节点在移动过程中,比较收集到的节点信息与步骤1中的信息是否相同,从而确定拥塞区域;

d)收集信息

当移动节点未进入拥塞区域时,以速度2s移动同时收集重要节点信息,当移动节点检测到自己进入拥塞区域后,自动停止运动,并开始收集重要节点发来的信息,停留时间为e)设置定时器节点进入拥塞区域后,停留时间定时器自动启动,对停留时间进行计数;

f)继续检测拥塞区域

与此同时,移动节点继续检测是否有来自其他拥塞区域的信息,如果有,则再增加一个停留时间;如果没有收到其他拥塞区域发送的信息,则继续等待并检测;

g)计时器时间满

当停留时间定时器时间到,节点重新以速度2s移动;

h)重复步骤b);

在整个过程中,移动路径是固定的,并且总的消耗时间也是固定的;

三、网络安全控制步骤,对所述无线传感器网络进行网络安全的控制,即扩充加密步骤,扩充加密步骤具体包括:连接信息包接收步骤,所述重要节点接收所述移动节点发送的连接信息包;

质询信息生成步骤,依据所述连接信息包生成质询信息;

确认步骤,将生成的所述质询信息发送给所述移动节点并等待确认;

所加密步骤,述重要节点接收到所述移动节点的确认信息后,与移动节点传输的数据进行加密,扩充加密方法具体为:①当移动节点第一次移动时,周期性发送连接信息包Connect,包里面包含随机产生的xg ;

②节点接收到连接信息包Connect后,判断自己的级别标识L值是否为1时,若是,则x提取g 信息,否则不提取;

p

③当节点判断自己L=1时,节点本身有验证信息g,随机选择y∈Zp,并由此生成质询(x+P)y信息g ,其中P为用户口令;

④当移动节点第二次移动时,发送Hello包宣称它的存在,如果重要节点接收到Hello(x+P)y包,则将生成的质询信息g 和自身的ID发送给移动节点;

⑤若在移动节点第二次移动时,重要节点所处的位置上没有发生碰撞,移动节点接收(x+P)y y到g 和ID,记录节点ID,且移动节点由扩充口令 计算出反馈信息g ;

y

⑥移动节点发送确认信息包ACK给重要节点,内容包括g 和P;

y xy

⑦重要节点接收到g 和P,产生g ,则在以后的数据传输中,对发送的数据进行加密工作;

⑧若在移动节点第二次移动时,重要节点所处的位置上发生碰撞,并没有收到来自移动节点的确认信息包ACK,则进行一定次数重传,若一直未收到确认信息包ACK,则等待接收新的Hello包再进行传送;

⑨当移动节点采用了移动节点速度控制策略后,在拥塞区域进行停走策略;当重要节(x+P)y点收到Hello包,则将生成的质询信息g 和自身的ID发送给移动节点;

(x+P)y

⑩移动节点接收到g 和ID,记录节点ID,且移动节点由扩充口令 计算出反馈信息gy;

重复步骤⑥,⑦;

若重要节点并没有收到来自移动节点的确认信息包ACK,则进行一定次数重传;若发现移动节点已经离开自身区域,则等待新的Hello包再进行传送;

重复步骤⑨,⑩, , 。

2.一种基于移动节点的无线传感器网络节能安全路由系统,其特征在于,包括:通信法则建立模块,用于确定所述无线传感器网络中的重要节点,建立所述重要节点与所述移动节点的通信法则,通信法则建立模块具体包括:选举步骤单元,用于选举重要节点,构建簇的集合,所述重要节点为与移动节点进行直接通信的节点;

第一通信方式建立单元,用于建立所述重要节点与所述簇的集合内普通节点的通信方式;

第二通信方式建立单元,用于建立重要节点与移动节点间的通信方式;

速度控制模块,用于依据所述通信法则,对所述移动节点进行速度控制,具体包括:检测单元,用于检测所述无线传感器网络中的拥塞区域;

控制单元,用于依据检测到的所述拥塞区域,进行速度控制;

网络安全控制模块,用于对所述无线传感器网络进行网络安全的控制,网络安全控制模块包括扩充加密子模块,所述扩充加密子模块包括:连接信息包接收单元,用于所述重要节点接收所述移动节点发送的连接信息包;

质询信息生成单元,用于依据所述连接信息包生成质询信息;

确认单元,用于将生成的所述质询信息发送给所述移动节点并等待确认;

所加密单元,用于述重要节点接收到所述移动节点的确认信息后,与移动节点传输的数据进行加密。

说明书 :

基于移动节点的无线传感器网络节能安全路由方法及系统

技术领域

[0001] 本发明涉及无线通信技术领域,尤其涉及一种基于移动节点的无线传感器网络节能安全路由方法及系统。

背景技术

[0002] 无线传感器网络是一种新兴技术,完全采用分布式处理,具有监测精度高、容错性能好、覆盖区域大、可远程监控等众多优点。目前,无线传感器网络在军事、工业、民用等诸多方面拥有广泛的应用前景,是目前的研究热点之一。无线传感器网络的突出特点是在固定区域内静态节点随机散布,节点数据通过多跳方式进行传输。带来的突出问题是网络中越靠近汇聚节点(Sink)的周边节点能量消耗越快,由于这些核心节点承担了比其他节点更多的通信负荷,即每次数据路由都必须经过这些节点,从而导致其能量消耗过快,出现节点能耗的不平衡现。
[0003] 目前,国内外大量学者针对如何降低和平衡节点能耗问题进行了研究,研究方向主要集中在路由和网络的建立、节点分簇、簇头选取、轮询策略等方面,而通过移动节点来减少网络能量消耗和提高安全性等方面的研究还相对较少。

发明内容

[0004] 本发明针对靠近Sink周边节点能量消耗过快导致整个无线传感器网络失效问题,提出了一种基于移动节点的无线传感器网络节能安全路由方法及系统,基于本发明,可以在满足节约网络节点能量消耗等多条件约束下,保证网络数据的可靠性和安全性,在保证网络正常工作的同时延长网络的有效工作时间。
[0005] 一方面,本发明公开了一种基于移动节点的无线传感器网络节能安全路由方法,包括:通信法则建立步骤,确定所述无线传感器网络中的重要节点,建立所述重要节点与所述移动节点的通信法则;速度控制步骤,通过所述通信法则,对所述移动节点进行速度控制;网络安全控制步骤,对所述无线传感器网络进行网络安全的控制。 [0006] 上述无线传感器网络节能安全路由方法,优选所述通信法则建立步骤包括如下步骤:选举步骤,选举重要节点,构建簇的集合,所述重要节点为与移动节点进行直接通信的节点;第一通信方式建立步骤,建立所述重要节点与所述簇的集合内普通节点的通信方式;第二通信方式建立步骤,建立重要节点与移动节点间的通信方式。
[0007] 上述无线传感器网络节能安全路由方法,优选所述速度控制步骤包括如下步骤:检测步骤,检测所述无线传感器网络中的拥塞区域;控制步骤,依据检测到的所述拥塞区域,进行速度控制。
[0008] 上述无线传感器网络节能安全路由方法,优选所述网络安全控制步骤包括扩充加密步骤,所述扩充加密步骤包括:连接信息包接收步骤,所述重要节点接收所述移动节点发送的连接信息包;质询信息生成步骤,依据所述连接信息包生成质询信息;确认步骤,将生成的所述质询信息发送给所述移动节点并等待确认;所加密步骤, 述重要节点接收到所述移动节点的确认信息后,与移动节点传输的数据进行加密。
[0009] 另一方面,本发明还公开了一种基于移动节点的无线传感器网络节能安全路由系统,包括:通信法则建立模块,用于确定所述无线传感器网络中的重要节点,建立所述重要节点与所述移动节点的通信法则;速度控制模块,用于依据所述通信法则,对所述移动节点进行速度控制;网络安全控制模块,用于对所述无线传感器网络进行网络安全的控制。 [0010] 上述无线传感器网络节能安全路由系统,优选所述通信法则建立模块包括:选举步骤单元,用于选举重要节点,构建簇的集合,所述重要节点为与移动节点进行直接通信的节点;第一通信方式建立单元,用于建立所述重要节点与所述簇的集合内普通节点的通信方式;第二通信方式建立单元,用于建立重要节点与移动节点间的通信方式。 [0011] 上述无线传感器网络节能安全路由系统,优选所述速度控制模块包括:检测单元,用于检测所述无线传感器网络中的拥塞区域;控制单元,用于依据检测到的所述拥塞区域,进行速度控制。
[0012] 上述无线传感器网络节能安全路由系统,优选所述网络安全控制模块包括扩充加密子模块,所述扩充加密子模块包括:连接信息包接收单元,用于所述重要节点接收所述移动节点发送的连接信息包;质询信息生成单元,用于依据所述连接信息包生成质询信息;确认单元,用于将生成的所述质询信息发送给所述移动节点并等待确认;所加密单元,用于述重要节点接收到所述移动节点的确认信息后,与移动节点传输的数据进行加密。 [0013] 相对于现有技术而言,本发明对无线传感器网络中基于移动节点的节能安全路由问题进行了有针对性的研究,提出利用移动节点来解决网络中Sink周边节点过快失效问题,形成了基于移动节点的无线传感器网络节能安全路由方法。该方法考虑了节点能量消耗、节点传输数据可靠性和网络安全性等因素,运用相关方法,能够在多条件约束情况下保证整个传感器网络的有效工作时间和安全性。

附图说明

[0014] 图1为本发明基于移动节点的无线传感器网络节能安全路由方法的步骤流程图; [0015] 图2为本发明基于移动节点的无线传感器网络节能安全路由方法中,重要节点选举流程图;
[0016] 图3为本发明基于移动节点的无线传感器网络节能安全路由方法中,网络重要节点构建演示图;
[0017] 图4为数据传输模式示意图;
[0018] 图5为重要节点中的区分服务策略;
[0019] 图6为本发明基于移动节点的无线传感器网络节能安全路由方法中,移动控制算法流程图;
[0020] 图7为本发明基于移动节点的无线传感器网络节能安全路由方法中,安全算法流程图;
[0021] 图8为节点存活数目变化示意图;
[0022] 图9为网络期望可靠性与实际获得可靠性关系图;
[0023] 图10为网络工作时间与能量消耗关系图;
[0024] 图11为网络安全验证示意图;
[0025] 图12为本发明基于移动节点的无线传感器网络节能安全路由系统的简单结构示意图。

具体实施方式

[0026] 为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
[0027] 参照图1,图1为本发明基于移动节点的无线传感器网络节能安全路由方法的步骤流程图,包括如下步骤:通信法则建立步骤110,确定所述无线传感器网络中的重要节点,建立所述重要节点与所述移动节点的通信法则;速度控制步骤120,通过所述通信法则,对所述移动节点进行速度控制;网络安全控制步骤130,对所述无线传感器网络进行网络安全的控制。
[0028] 本发明的工作原理和内容:利用移动节点解决靠近Sink周边节点能量消耗过快问题,有效减少节点的能量消耗,延长网络的有效工作时间并保证网络的安全性。 [0029] 1重要节点与移动节点通信法则的建立
[0030] 1.1重要节点选举
[0031] 第一阶段的主要工作是选举重要节点,构建簇的集合,也就是选举网络中以后可以与移动节点直接通信的节点。这是路由协议建立过程中的准备阶段,也是后两个阶段的基础。这一阶段移动节点 沿着指定路径单独往返一回,在其移动路径上周期性发送连接信息包(Connect),利用广播方式,宣布自己的存在,与在其通信范围内的节点建立联系。该阶段,移动节点广播连接信息包Connect,其他节点只是负责接收该连接信息包Connect,并转发给周边节点,并不对该包进行任何回复。考虑到无线传感器网络拓扑具有动态性,因此第一阶段将会周期性进行,实现加入新节点和删除坏死节点的作用。文章参考了文献(Guoliang Xing,Tian Wang,Zhihui Xie,Weijia Jia.Rendezvous Planning in Mobility-assisted Wireless Sensor Networks.Real-Time Systems Symposium.2007,pp.311-320.)组建重要节点方式,并由此受到启发,提出以下关于重要节点选举的新方式。 [0032] 具体的执行过程如下:
[0033] 1.节点初始化阶段
[0034] 节点随机散布到整个区域后,将会确认自己的唯一标识ID,同时将自己最初的级别标识L设置为无穷大。
[0035] 2.移动节点初始化阶段
[0036] 移动节点确认自己的唯一标识ID为1,设置自己的级别标识L=0,准备发送连接x信息包Connect,连接信息包Connect由{节点ID,级别标识L,簇头节点标识,密码标识g}x
组成,其中密码标识g 将应用于网络安全性的保证,在4.3章节将会详细介绍。 [0037] 3.移动节点以恒定速度沿着固定的路径移动,周期性的广播连接信息包{1,0,0,x
g}。
[0038] 连接信息包Connect中,ID是节点的唯一标识,初始化后就不会变动;级别标识L根据算法进行更改,最开始设置普通节点级别标识L值为无穷大,移动节点设置自己级别标识为L=0;移动节点的簇头节点标识位设置为0,以后依据算法选择出的重要节点的簇头节点标识位也设置为0,普通节点该位置设置成自身所在区域的重要节点ID值。 [0039] 4.算法法则
[0040] (1)首先网络节点进行初始化,包括节点ID值,级别标识L;
[0041] (2)然后节点等待接收连接信息包Connect;
[0042] (3)一旦接收到连接信息包Connect,首先判断接收到连接信息包Connect中的L值大小加1跳后是否小于自己当前的L值,如果判断成立,则将自己的L值更改为L=Lconnect+1;若不成立,则回到等待接收连接信息包Connect状态;
[0043] (4)在判断成立的条件下,再进一步判断此时自己的级别标识L值是否为1,如果自己的级别标识L值为1,证明刚才的连接信息包Connect是由移动节点发送给自己的,那么将簇头节点标识设置为0;若判断后发现自己的L值不等于1,则证明该信息是其他节点发送给自己的连接信息包Connect,则将接收来的连接信息包Connect中的簇头节点标识信息写入到自己将要发送的连接信息包Connect中;
[0044] (5)如果证明自己的簇头节点标识为0,则说明已经被选定为重要节点,继续进行广播,连接信息包Connect为{自己的ID,1,自己的ID},此时由节点发送的连接信息包xConnect中已经不再发送 g 信息,簇头节点标识设置成自己的ID值,用于建立属于自己的簇区域;
[0045] (6)若判断自己不是重要节点,同样继续进行广播,广播的连接包为{自己的ID,更新后级别标识L的值,所属簇的ID},其中所属簇的ID值就是节点接收到的连接信息包Connect中的簇头节点标识信息;
[0046] (7)循环至等待接收连接信息包Connect步骤。
[0047] 在第一阶段,网络中的节点只有在接收到来自其他节点的连接信息包Connect后才可以转发连接信息包Connect,在未收到任何连接信息包Connect之前,自己不可以主动发送信息。算法流程图如图2所示。
[0048] 重要节点的产生过程如图3所示。当连接信息包Connect开始广播后,距离移动节点路径最近的点首先收到连接信息包Connect,它将自己设置为重要节点,在以后的数据传输中承担收集簇内节点信息并最终发送给移动节点的任务。每个节点收到连接信息包Connect后还会继续广播下去,建立属于自己的簇区域。图3左面的部分显示了已经确定重要节点的区域。
[0049] 但是在上述过程中也会出现距离移动节点路径较近的节点因为移动节点还没有及时移动到该节点附近,而首先收到来自其他节点广播发送的连接信息包Connect。结果,这些节点首先初始化指定了一个比较大的级别标识L值,这样貌似存在不合理性。而实质上当移动节点进一步移动更接近这些节点后,他们可能得到更优化的级别标识L值。 [0050] 根据确保级别标识L值最小原则,这些节点将会根据最新收到的连接信息包Connect更新级别标识L的数值,从而实现级别标识L值的最优值选择。随着移动节点的移动,整个网络节点的级别标识L值趋向更合理分布。最终,级别标识L值为1的节点将会被选成重要节点,成为可以与移动节点交互信息节点,其他普通节点明确自己所属的簇区域。例如,图形中的C节点目前的级别标识L=3,它最初收到的是来自节点A的信息L=1,经过节点B中继后,级别标识L的值增加1。但是随着移动节点的继续移动,如果它接收到来自移动节点的连接信息包Connect,并将自己的级别标识L值更新为1,它将可能成为另一个区域的重要节点,而不是像目前图3显示的状态。
[0051] 第一阶段结束后,静态的网络将会被分割成多个成簇的区域,并且每个成簇的区域都有一个自己的重要节点。当然,也会出现一个簇区域内只有一个节点的情况,但是这并不影响整个网络的性能。
[0052] 1.2簇内信息建立
[0053] 第二阶段的设计主要集中在如何建立重要节点与其簇区域内普通节点的通信方式。本发明设计了响应式混合路由模型来解决这一问题。响应式混合路由模型将平面路由和层次路由有机的结合在一起,在通信建立阶段采用层次路由,而在数据传输过程中使用平面路由。
[0054] 响应式混合路由在通信建立阶段采用层次路由。本发明采用简化的LEACH协议,利用第一阶段收到的连接信息包Connect来组成相应的簇区域。当节点收到连接信息包Connect后,确认自己成为重要节点,该节点开始广播信息,组建自己的簇区域。利用连接信息包Connect中的簇头节点标识,广播信息,宣布自己的存在,并 希望组建簇区域。接收到该重要节点发送信息的普通节点,将簇头节点标识写入到自己的信息中去,默认加入该簇区域。与LEACH协议不同的是,LEACH协议采用的是簇首依据算法轮流选择,而本发明采用的简化LEACH协议是通过移动节点来首先选择重要节点担当簇首,然后重要节点再组建自己的簇区域。
[0055] 响应式混合路由的数据传输过程使用改进的DD协议。本发明利用改进的DD协议,在第一阶段重要节点选举的过程中,收到连接信息包Connect的节点都可以将连接信息包Connect继续转发,其中L值的变化意味着到达移动节点的距离,也就是DD协议中梯度的概念。当节点确认自己被选为重要节点后,开始广播信息,寻找属于自己区域内的普通节点,它将自己的簇头节点标识设置好后,利用级别标识L值的变化建立属于自己区域内的梯度,组建自己的网络。因为本发明中的所有节点都采集信息,连接信息包Connect中级别标识L值记录着标识普通节点到达重要节点的梯度值。因此当有数据要传送时,只要沿着梯度的变化方向进行数据传输即可。
[0056] 在本系统中,每个成簇区域内重要节点相当于Sink节点。但是与Sink节点不同的是,这些重要节点自身也会产生数据。每一个重要节点在缓存中存储自身产生的数据和通过响应式混合路由从普通节点传递来的数据。通过响应式混合路由保证了静态节点产生的信息可以最快速的到达重要节点,减少延迟现象。一旦重要节点与移动节点建立直接联系,则可以迅速传送数据。数据的传输模式如图4所示。
[0057] 1.3重要节点与移动节点通信算法实现
[0058] 第三阶段的重点是建立重要节点与移动节点间的通信。这一阶段建立的基础是间歇性的可用性链路。对于数据传输来说,一个关 键的因素就是确定何时重要节点与移动节点的通信链路是可用的。只有在通信信道可用的情况下,才能进行数据传送。重要节点与移动节点的通信开始于连接的建立,结束于连接的断开。当移动节点与重要节点可以直接通信时,重要节点发送数据,当移动节点离开与重要节点可以直接通信的区域后,从节能角度考虑,重要节点就需要停止继续向移动节点发送数据。
[0059] 具体解决方案是:在移动节点经过第一阶段发送连接信息包Connect后,在接下来的路径移动中,移动节点周期性的广播Hello包,通知其他节点它的存在,并请求在其通信范围内的重要节点发送数据包给自己。Hello包依据固定的时间间隔THello发送,接收到Hello包的重要节点发送数据给移动节点。Hello包的作用在于重要节点可以检测到移动节点是否在自己的范围内,收到Hello包的重要节点就可以准备开始传送数据包到移动节点。移动节点接收来自重要节点的数据并进行反馈,发送确认信息包ACK。这种反馈机制帮助重要节点意识到连接是活跃的并且数据已经得到了可靠的传送和接收。当重要节点收到移动节点发来的确认信息包ACK后,重要节点就可以将已经发送的数据在缓存中清除。 [0060] 从数据存储到重要节点发送过程中,我们引入区分服务的概念(Zhou Xin-Lian,Wang Run-Yun.Reliable Data Delivery Algorithm based on Differentiated Service in WSNs.Electronic Computer Technology,2009International Conference.2009,pp.596-599.),并对其进行简化。设节点采集到数据后,如果发现该信息数据为传感器敏感数据或紧急数据,则将其类型定义为0,普通数据定义类型为1。普通节点采集到数据类型为0的信息后,优先对其进行传送;采集到数据类型为1的信息,则将其放入等待发送的队列进行传送。
[0061] 当普通节点传送给重要节点的数据包里含有的是数据类型为0的数据时,该包类型也被标识成0,该数据包被重要节点接收后放入到队列级别最高的队列1中等待优先传送。重要节点收集到数据包后判断包类型为1,则放入普通数据队列2中等待发送。同时,重要节点自身也需要采集信息,一旦采集到数据类型为0的信息,也将放置于队列1中。否则,放置到自己的缓存队列3中。
[0062] 实际过程中紧急数据的数量要远远小于普通数据的数量,因此,重要节点中分配给队列1的缓存空间最小,队列2的缓存空间最大,中间大小为队列3。
[0063] 从重要节点进行传输的数据包在缓存中按照以下方式发送。重要节点按照从普通节点接收数据的顺序依次将普通数据存储到队列2中。它将自身产生的数据存储到另一个排队队列3中。将紧急的数据,由普通节点或者是自身产生的紧急数据排列到队列1中。重要节点可以传送数据时,包首先收集队列1中数据,若队列1中有数据,则优先收集发送队列1中的紧急数据;若队列1中的数据较少,收集完毕队列1的数据后包还有空间,则采用轮巡的方式依次收集队列2,3中的数据;若队列1中无数据,则直接按照轮巡方式收集2,3队列中的数据。这种方式保证了网络QoS的性能,对于紧急数据进行优先处理,保证了网络的服务质量。原理如图5:
[0064] 在重要节点传送数据给移动节点时,将开启两个定时器:
[0065] 1.重传定时器
[0066] 当重传定时器时间到,重要节点还没有收到确认信息包ACK时,系统将自动进行重传。重传机制用以保证因为包丢失或者信道 碰撞带来的损失。重传定时器的时间要大于重要节点内部轮巡组包的时间,也远大于移动节点发回确认信息包ACK的传输时间。 [0067] 2.连接丢失定时器
[0068] 如果连接丢失定时器时间到,重要节点还没有收到移动节点发送的Hello包,重要节点将停止传送数据到移动节点。连接丢失定时器用于帮助重要节点检测移动节点是否还在自己的通信范围内,连通性是否有效。连接丢失定时器设置为3×THello。多余的时间间隔防止由于信道碰撞丢失Hello包,导致重要节点做出错误的判断。
[0069] 重要节点与移动节点通信过程可以概述为,重要节点首先接收Hello信息包确定移动节点在自己的通信范围内,然后发送自己的数据包Data给移动节点,移动节点接收来自重要节点的数据包Data后进行反馈,发送确认信息包ACK。重要节点收到确认信息包ACK后,删除自己缓存中的数据,一个完整的通信过程结束。若重传定时器时间到,重要节点依然没有接收到来自移动节点的确认信息包ACK,重要节点检测到移动节点还在其通信范围内后,会进行数据包的重传。
[0070] 2移动节点速度控制法则的建立
[0071] 2.1拥塞区域选择
[0072] 拥塞区域的确定没有依靠地理信息或是GPS,而是依靠节点本身特性决定。移动节点通过记录与其联系的节点信息状况来判断拥塞区域产生的位置。网络共设置有m个拥塞区域。以下两点判定节点是否在拥塞区域中:
[0073] 1.在很短时间内经常与移动节点联系;
[0074] 2.与移动节点联系频繁,但移动节点的数据接收速率明显下降。 [0075] 同时产生以上两种结果的原因是因为重要节点分布太密集,移动节点移动速度太快造成的。拥塞区域的确定依据同时满足以上两个条件,并且以接收节点数据量多少作为判断拥塞区域的依据。如果发现满足以上条件的区域太多,拥塞区域的总数超过了m个,则按照选择接收最少数据量区域的原则从这些区域中筛选出m个拥塞区域。被定义为拥塞区域的位置,在下次的移动中将会应用移动速度控制机制。移动节点第一次以速度s移动,发送连接信息包Connect,建立重要节点信息和簇区域信息。移动节点第二次依然以速度s移动,发送Hello信息包,告知重要节点自己的存在。这时,收到Hello信息包的重要节点,将发送相应的数据信息,试图与移动节点建立联系。在这个过程中,如果重要节点分布稀疏,则信道上产生数据碰撞的概率就小,如果重要节点分布密集,则发生信道冲突的概率就大。移动节点利用判定拥塞区域的标准,选择出m个拥塞区域。
[0076] 本发明的移动速度控制策略将移动节点分为两个状态(Somasundara,A.A,Kansal,A,Jea,D.D,Estrin,D,and Srivastava,M.B.Controllably Mobile Infrastructure for Low Energy Embedded Networks.Mobile Computing,IEEE Transactions on.2006,vol.5,pp.958-973),移动节点在正常区域移动速度为2s,在拥塞区域停止移动来收集数据。把移动节点的速度设置为2s,则节约出来的时间就可以应用到拥塞区域中去。与移动速度始终为s的网络相比,如果移动节点的移动速度变化为2s,则在一个完整路径上可以节约T/2的时间。这些多余出来的T/2时间可以平均分配到m个拥塞区域中。当移动节点收到数据包并且判断出自己已经进入拥塞区域时,它将停下来Tstop个间隔用于在拥塞区域收集数据,其中
[0077]
[0078] 当节点停下后,如果发现收到了来自另外一个拥塞区域的数据包,则它自动将停留时间调整为2Tstop,以此类推。移动节点经过第一第二次的移动后,收集到重要节点的信息,并已经确定好拥塞区域,在进行第三次移动时,再利用停走策略对移动节点速度进行控制,提高移动节点接收数据的效率。
[0079] 2.2移动算法实现
[0080] 关于移动节点速度控制算法实现过程如下:
[0081] 1.信息整理环节
[0082] 移动节点经过第二次完整路径后,记录节点信息,依据拥塞区域判断标准确定拥塞区域信息。
[0083] 2.移动节点初始化
[0084] 移动节点按照最初的状态(即移动节点以2s速度移动和停止两个状态),以速度2s在指定线路中进行移动。
[0085] 3.检测拥塞
[0086] 移动节点在移动过程中,比较收集到的节点信息与步骤1中的信息是否相同,从而确定拥塞区域。
[0087] 4.收集信息
[0088] 当移动节点未进入拥塞区域时,以速度2s移动同时收集重要节点信息。当移动节点检测到自己进入拥塞区域后,自动停止运动,并开始收集重要节点发来的信息,停留时间为
[0089] 5.设置定时器
[0090] 节点进入拥塞区域后,停留时间定时器自动启动,对停留时间进行计数。 [0091] 6.继续检测拥塞区域
[0092] 与此同时,移动节点继续检测是否有来自其他拥塞区域的信息。如果有,则再增加一个停留时间;如果没有收到其他拥塞区域发送的信息,则继续等待并检测。 [0093] 7.计时器时间满
[0094] 当停留时间定时器时间到,节点重新以速度2s移动。
[0095] 8.重复步骤2。
[0096] 在整个过程中,移动路径是固定的,并且总的消耗时间也是固定的。图6为该算法的流程图。
[0097] 我们回忆前文的部分可以知道,移动节点第一次移动完整路径是为了确定重要节点信息,这一阶段普通节点没有数据进行传送。第二次移动完整路径,因为没有任何的依据可以参考,也无法确定拥塞区域,而无序的传输导致很多数据不能被收集,因此第二次移动的目的在于检测拥塞区域,为以后的数据传输做准备。移动节点 第三次移动以后,移动节点在正常区域以速度2s移动,在拥塞区域移动节点停止移动来接收数据。 [0098] 3网络安全法则的建立
[0099] 扩充口令(Taekyoung Kwon.Authentication and Key Agreement via Memorable Password[EB/OL].Internet Society Network and Distributed System Security Symposium,2001.http://eprint.iacr.org/2000/026,2004.5.10.)的思想即一个用户在向验证方证明其拥有口令P时,不是简单地给出P,而是向其显示由P扩充而得的随机口令,以表示该用户知道口令P,但不泄露关于P的任何信息。这个思想从某种程度上避免了由于口令只具有较低信息熵而易于受到猜测攻击的危险。以下提供扩充口令在双方验证阶段的证明。
[0100] 证明前提供几个常量:p为一个大素数,Zp是整数模p的剩余类域,g是乘法群 的生成元。
[0101] 1.选择大素数p,使得随机选择的x∈Zp有高的信息熵,以至于猜测是不可行的; [0102] 2.口令为P的用户A,随机选择x∈Zp,将gx传送给B;
[0103] 3.B有验证信息gp,随机选择y∈Zp,并由此生成质询信息g(x+P)y询问A是否知道P;y
[0104] 4.A由扩充口令 计算出反馈信息g,发送给B,以示其知道扩充的口令 从而知道口令P;
[0105] 5.B对发回信息进行验证以确认A的身份,从而产生对称密钥gxy。 [0106] 只要x是安全的,尽管P是可以猜测的,x+P仍然是不可猜测的。扩充口令被证明是一种安全的口令,不泄露口令的任何相关信息,可进行安全的身份认证。 [0107] 在本发明的应用中,节点分为移动节点,重要节点,普通节点三种。每个节点都有自己的口令和ID,但从节点内存有限的方面考虑,只有移动节点存储了所有节点的ID及其xy所对应的口令。进行改进扩充口令算法后,重要节点产生g 之后即开始对数据进行加密并传送数据。与之类似,重要节点与簇区域内普通节点的认证也可应用改进扩充口令算法。
但由于重要节点承担着簇区域内所有节点数据的收集工作,并且自身还可以采集数据,因此外部节点截获网络数据的主要途径就是在重要节点与移动节点的通信过程中。因此,本发明的改进扩充口令算法只应用于重要节点与移动节点之间。
[0108] 参照图7,改进扩充口令方法:
[0109] 1.当移动节点第一次移动时,周期性发送连接信息包Connect,包里面包含随机x产生的g。
[0110] 2.节点接收到连接信息包Connect后,判断自己的级别标识L值是否为1时,若x是,则提取g 信息,否则不提取。
[0111] 3.当节点判断自己L=1时,节点本身有验证信息gp,随机选择y∈Zp,并由此生(x+P)y成质询信息g 。
[0112] 4.当移动节点第二次移动时,发送Hello包宣称它的存在,如果重要节点接收到(x+P)yHello包,则将生成的质询信息g 和自身的ID发送给移动节点。
[0113] 5.若在移动节点第二次移动时,重要节点所处的位置上没有发生碰撞,移动节点接收到g(x+P)y和ID,记录节点ID,且移动节点由扩充口令 计算出反馈信息gy。 [0114] 6.移动节点发送确认信息包ACK给重要节点,内容包括gy和P。 [0115] 7.重要节点接收到gy和P,产生gxy,则在以后的数据传输中,对发送的数据进行加密工作。
[0116] 8.若在移动节点第二次移动时,重要节点所处的位置上发生碰撞,并没有收到来自移动节点的确认信息包ACK,则进行一定次数重传,若一直未收到确认信息包ACK,则等待接收新的Hello包再进行传送。
[0117] 9.当移动节点采用了移动节点速度控制策略后,在拥塞区域进行停走策略。当重(x+P)y要节点收到Hello包,则将生成的质询信息g 和自身的ID发送给移动节点。 [0118] 10.移动节点接收到g(x+P)y和ID,记录节点ID,且移动节点由扩充口令 计算出反馈信息gy。
[0119] 11.重复步骤6,7。
[0120] 12.若重要节点并没有收到来自移动节点的确认信息包ACK,则进行一定次数重传;若发现移动节点已经离开自身区域,则等待新的Hello包再进行传送。 [0121] 13.重复步骤9,10,11,12。
[0122] 改进扩充口令算法流程图如图7所示。
[0123] 实施例1:
[0124] 无线传感器节点随机分布在100X100矩形区域中,节点数目为100个,移动节点的通信半径为r=25cm,移动节点沿直线运动,从位置(0,50)到位置(100,50),正好横穿过整个区域。移动节点完成一次移动后,立刻回到起始点开始新一轮移动。普通节点每秒钟产生一个数据包。从以下几个方面进行仿真:
[0125] 1.网络生存时间比较
[0126] 基于移动节点的无线传感器网络节能安全路由的设计初衷是避免因为网络节点多跳带来的能量消耗过多问题,尤其是克服因为距离Sink位置较近的节点能量最先消耗完毕导致的网络不可用现象。移动节点不停移动,重要节点与移动节点在直接通信范围内才进行数据传输,其他时刻处于休眠状态,有效的节约了节点自身的能量。同时,基于移动节点的无线传感器网络节能安全路由算法减少了数据传输中多跳的次数,也就是减少了发射和接收带来的能量损耗,达到了节约网络能量的目的。图8中LEACH_A表示随着时间变化,应用LEACH协议网络的活动节点数目变化曲线;DD_A表示随着时间变化,应用DD协议网络的活动节点数目变化曲线;CMNRA_A表示随着时间变化,应用CMNRA协议网络的活动节点数目变化曲线。从图8中可以看出,运用基于移动节点的无线传感器网络节能 安全路由算法可以有效地延长网络的生存时间,达到节约网络能量的目的。
[0127] 2.数据可靠性比较
[0128] 本发明设计的基于移动节点的无线传感器网络节能安全路由算法,在重要节点与普通节点传输数据中引入简化的区分服务机制,设置数据类型为紧急数据和普通数据两种。紧急数据发送到重要节点后,存储到缓存器的队列1,且队列1在缓冲器中优先级最高。普通数据存储到重要节点缓存后,优先级较低。在重要节点可以直接和移动节点通信后,优先发送重要节点缓存器中级别最高的数据,促使紧急数据优先处理。当紧急数据发送完毕后,再发送普通的数据。因为实际网络中紧急数据的数量要远远小于普通数据的数量,因此,这种优先的方式不会带来普通数据发送永久性的滞后。图9中LEACH_R表示随着网络期望可靠性变化,应用LEACH协议网络实际得到可靠性变化曲线;CMNRA_R表示随着网络期望可靠性变化,应用CMNRA协议网络实际得到可靠性变化曲线。如图9所示,应用区分服务机制的网络,应对紧急数据的处理能量明显加强,在网络期望的可靠性不断提高的条件下,网络实际获得的可靠性成明显上升趋势。
[0129] 3.网络总能量消耗比较
[0130] 图10中LEACH_E表示随着时间变化,应用LEACH协议网络的能量消耗变化曲线;DD_E表示随着时间变化,应用DD协议网络的能量消耗变化曲线;CMNRA_E表示随着时间变化,应用CMNRA协议网络的能量消耗变化曲线。从图10中可以看出前400s处于重要节点的选举和簇区域的确定阶段;在移动节点又经过一个完整周期达到800s后,移动节点已经判断并选择出拥塞区域,并将在接下 来的节点移动中应用移动节点速度控制算法,将移动节点分为快速运动收集数据和停止运动收集信息两种运动状态。经过800s以后,移动节点开始收集来自重要节点传输的数据。从整体上看,随着时间的推移,运行基于移动节点的无线传感器网络节能安全路由算法的网络比应用LEACH算法的静态网络和应用DD协议的静态网络能量消耗小,所以整个传感器网络的寿命将会延长。
[0131] 4.改进扩充口令算法仿真
[0132] 如图11所示,若移动节点路径上存在恶意节点,专门截获重要节点与移动节点之间的数据信息,A为截获信息节点。因为重要节点与移动节点间应用改进扩充口令协议,即使数据被恶意节点截获,但因数据在传输时已经进行了加密,因此恶意节点截获的数据信息往往不可用,从而保证了网络的数据保密性。
[0133] 移动节点对重要节点进行身份认证后,对消息的确认信息保证了中间人攻击的不可行。如图11所示,当移动节点进入存在恶意节点的区域后,链路上的恶意节点可能会几秒钟向移动节点传送一次数据。因为移动节点与重要节点之间应用口令机制,恶意节点获得口令P容易,获得改进扩充口令协议中的x困难,所以恶意节点不可能冒充重要节点与移动节点进行通信。即使恶意节点将数据传送给移动节点,移动节点进行验证后,也会将其数据自动丢弃。
[0134] 另一方面,本发明还提供了一种基于移动节点的无线传感器网络节能安全路由系统的实施例。参照图12,包括:
[0135] 通信法则建立模块1201,用于确定所述无线传感器网络中的重要节点,建立所述重要节点与所述移动节点的通信法则;速度控制模块1202,用于依据所述通信法则,对所述移动节点进行速度控制; 网络安全控制模块1203,用于对所述无线传感器网络进行网络安全的控制。
[0136] 系统实施例与方法实施例的原理相同,在此不再赘述,相关之处参照方法实施例即可。
[0137] 以上对本发明所提供的一种基于移动节点的无线传感器网络节能安全路由方法及系统进行详细介绍,本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。