一种基于投票机制的wsn抗攻击节点定位方法

文档序号:7740863阅读:147来源:国知局
专利名称:一种基于投票机制的wsn抗攻击节点定位方法
技术领域
本发明涉及的是一种基于投票机制的WSN抗攻击节点定位模型与方法。
背景技术
无线传感器网络作为新一代的传感器网络,在医疗护理、军事领域以及环境的监测和保护方面都有着广泛的应用,给人类的生活和生产的各个领域带来了深远的影响。而所有的应用都是通过信息的采集完成的,采集到的数据只有在能够确定感知对象的位置时才有意义。例如在野外灾难监测的应用中,救援人员只有在知道灾难发生的准确位置才能实施他们的工作。而对于某些传感器网络的协议,位置信息也是必要因素之一,如基于地理位置的路由协议,就需要通过传感器节点的位置来选择其报文转发的路由节点。因此,传感器节点的位置确定在大多数应用中起着关键作用。但是,在实际环境中WSN易受到多种不同形式的攻击,这将不同程度的影响定位过程的准确度,甚至使定位信息完全失去意义。所以定位过程的安全极为重要。
现有的安全定位方法主要分为两大类消除恶意节点的安全定位算法和抗攻击的安全定位算法。消除恶意节点的安全定位算法是指网络中存在破坏定位过程的恶意节点,通过使用各种不同的方法识别出该恶意节点,让定位过程在相对安全的环境中进行,保证定位结果的准确度。这种方法在定位过程中增加了对恶意节点的识别过程所以增加了网络的计算开销和通信开销。但在定位精确度和网络扩展性上有一定的优势。抗攻击的安全定位算法是指不识别网络中的恶意节点,通过抗攻安全机制的设计来容忍恶意攻击对定位过程的破坏。这种方法虽然在定位精度上不及消除恶意节点的安全定位算法,但在能耗和成本以及定位复杂度上有一定的优势,适用于低功耗、低成本的无线传感器网络。
本发明是基于DV-Hop定位机制来设计的。DV-Hop定位机制由3个阶段组成。首先使用典型的距离矢量交换协议,使网络中所有节点获得距信标节点的跳数。第二阶段,在获得其他信标节点位置信息和相隔跳距之后,信标节点计算网络平均每跳距离,然后将其作为一个校正值广播至网络中。校正值采用可控洪泛法在网络中传播,这意味着一个节点仅接受获得的第1个校正值,而丢弃所有后来者,这个策略确保了绝大多数节点可从最近的信标节点接收校正值。当接收到校正值之后,节点根据跳数计算与信标节点之间的距离。当未知节点获得与3个或更多信标节点的距离时,则在第3阶段利用三边测量法或最小二乘法计算自身坐标。
DV-Hop定位机制的实现依赖于信标节点定位信息的传播,因此易于受到各种攻击,所以需要设计相应的安全机制来确保其可靠性。

发明内容
本发明的目的在于提供一种抗攻击性强、定位过程简单,通信开销小,无需增加额外硬件设备的一种基于投票机制的WSN抗攻击节点定位方法。
本发明解决上述技术问题所采用的技术方案为第一阶段使用典型的距离矢量交换协议,使网络中所有节点获得距信标节点的最小跳数。第二阶段信标节点通过其他信标节点的位置坐标以及相隔的最小跳数来计算网络平均每跳距离,并将其作为校正值广播至网络中。第三阶段未知节点对部署区域进行网格划分,通过投票机制的建立,将位置参考集划分成不同的位置参考子集,把这些子集中估算的位置信息映射到网格中,进行网格投票。最后统计票数,截取票数最大的区域,计算此区域的几何中心,结果作为未知节点的位置。所述无线传感器网络节点定位模型框架通过以下步骤实现 步骤一使用典型的距离矢量交换协议,使网络中所有节点获得距信标节点的最小跳数。
步骤二信标节点通过获得其他信标节点的位置和相隔跳距来计算网络平均每跳距离,并将其作为校正值广播至网络中。
步骤三未知节点收集信标节点的位置参考信息,建立位置参考集,划分子集,在子集中利用三边测量法进行位置估算。
步骤四未知节点对部署区域进行网格划分。将部署区域看成一个二维平面,并将其划分成相同大小的网格,对每个网格进行标识。
步骤五未知节点将参考子集中的位置估算以投票的形式映射到网格中,对网格投票的结果进行统计,筛选,将最大票数区域的几何中心作为未知节点的估算位置。
上述步骤一的具体实现直接进行自身定位计算的安全信标数量至少为3个。信标节点向邻居节点广播包含自身坐标信息和跳数为0的信标(数据包),邻居节点接收到信标后,将跳数加1并继续向它的邻居广播(除了来源方向),如此通过泛洪的方式向整个网络传播。利用最短路径算法,网络中的所有节点都能得到各信标节点的坐标,以及它到各信标节点的最小跳数。
上述步骤二的具体实现每个信标节点在获得其它信标节点位置和相隔跳数后,利用物理距离除于总跳数的方法计算网络平均每跳距离,然后将其作为一个校正值广播至网络中。当一个节点接收到了第一个校正值后,便丢弃所有后来者,这个策略确保了绝大多数节点从最近的信标节点接收校正值,这就意味着该校正值能够比较真实地反映出该节点周围的平均每跳距离。
上述步骤三的具体实现未知节点通过信标信号的接受,建立信标节点的位置参考集。位置参考集中的每一个位置参考都是一个三元组,包括信标节点的横纵坐标和信标节点到未知节点的估计距离。将位置参考集中的每三个位置参考划分成一个组合,在每个组合中利用三边测量法可以产生一个近似的未知节点坐标位置。
上述步骤四的具体实现部署区域划分成的网格大小相同,并用网格四个顶点的坐标确定网格的位置,同时每个网格都有自己惟一的标识,即为网格编号。同时,每个网格内设有投票变量。
上述步骤五的具体实现首先对该结果的横坐标x求网格上限值f_x和网格下限值c_x。再对纵坐标y求网格上限值f_y和网格下限值c_y。通过以上计算,判断计算结果所处网格的位置,然后对网格进行投票。
通过对横纵坐标上下限值的计算判断估算位置所处网格的位置,对网格进行投票主要存在以下几种情况(1)估算位置在网格内,则对该位置投票。(2)估算位置落在平行于X轴的两网格交线上,给相交于该交线的两网格各投一票。(3)估算位置落在平行于Y轴的两网格交线上,给相交于该交线的两网格各投一票。(4)估算位置落在网格顶点上,给相交于该顶点的四个网格各投一票。(5)估算位置在部署区域边线上分为两种情况第一种情况是估算位置落在网格的边线上或部署区域的顶点上,只对相关网格投票。第二种情况是估算位置落在两网格相交的顶点上,给该两网格各投一票。
本发明是基于如下问题而设计的 现有的无线传感器网络节点定位方法都是基于信标节点位置信息正确的假设,如果网络受到攻击,这些定位算法将无法工作,因此需要一种能够在网络受到各种恶意攻击而使部分信标节点定位信息失效的情况下,仍保证节点的定位精度,具有较强抗攻击性的无线传感器网络节点定位模型与方法。
本发明的优点体现在 (1)定位过程具有抗攻击性 现有的大多数无线传感器网络节点定位方法大多都在研究怎样提高定位精度,但忽略了无线传感器网络是一个易受攻击的网络,所以如何在开放、敌对的环境下安全的定位节点是一个值得研究的课题。本发明统计票数的过程实际上是排除恶意节点的过程。恶意节点分布在网络的不同地方,其虚假的位置参考信息参与位置估算并投票时,获得选票的方格将远离未知节点的真实位置而稀疏的分布在部署区域中,选取票数最大区域时将其排除,从而减轻了恶意位置信息对定位方法的破坏性,提高了定位精度,使系统更鲁棒。
(2)定位过程简单,通信开销小,无需额外硬件设备 为了保证无线传感器网络节点定位的定位精度,定位系统往往会经过复杂的计算,繁琐的通信过程,或是增设额外的硬件设备,这就增大了定位过程的复杂度和网络开销。本发明是基于DV-Hop定位机制设计,这种定位机制的特点就是定位过程简单,网络开销小,而且不需要额外的硬件设备,大大的提高了定位方法的实用性。


图1节点抗攻击定位方法的具体流程图; 图2网格划分示意图; 图3三边测量法图示; 图4估算位置落在网格中,网格投票示意图; 图5估算位置落在平行于X轴的两网格交线上,网格投票示意图; 图6估算位置落在平行于Y轴的两网格交线上,网格投票示意图; 图7估算位置落在网格顶点上,网格投票示意图; 图8估算位置落在部署区域边线上,网格投票示意图(一); 图9估算位置落在部署区域边线上,网格投票示意图(二); 图10DV-Hop与VDV-Hop在无攻击情况下定位精度比较; 图11DV-Hop与VDV-Hop抗攻击性比较; 图12信标节点密度对VDV-Hop定位精度的影响; 图13网格大小对VDV-Hop定位精度的影响; 图14通信半径对VDV-Hop定位精度的影响。
具体实施例方式 图1显示了整个的定位过程,下面结合附图以及实施例对本发明做更详细地描述 1、网络模型初始化 在一个区域中随机的部署了两种节点信标节点和未知节点。其中未知节点是自身位置未知的节点,通过向信标节点的请求定位服务估计自身的位置;信标节点是网络中已部署的静态节点,已知自身的位置。网络中部分信标节点受到恶意攻击变成了恶意信标节点,其目的是向外发布虚假的位置参考信息,扰乱与破坏未知节点的定位过程。
2、获取最小跳数 直接进行自身定位计算的安全信标数量至少为3个。开始时,信标节点向邻居节点广播包含自身坐标信息和跳数为0的信标(数据包),邻居节点接收到信标后,将跳数加1并继续向它的邻居广播(除了来源方向),如此通过泛洪的方式向整个网络传播。利用最短路径算法,网络中的所有节点都能得到各信标节点的坐标,以及它到各信标节点的最小跳数。
3、网络校正值的产生 在获得其他信标节点位置和相隔跳距之后,信标节点计算网络平均每跳距离,然后将其作为一个校正值广播至网络中。校正值采用可控洪泛法在网络中传播,这意味着一个节点仅接受获得的第1个校正值,作为网络校正值,而丢弃所有后来者,这个策略确保了绝大多数节点可从最近的信标节点接收校正值。在大型网络中,可通过为数据包设置一个TTL域来减少通信量。
4、位置参考集的建立及子集划分 未知节点利用网络校正值和最小跳数计算出到每个信标节点的估算距离,从而建立位置参考集。位置参考集中的每一个位置参考都是一个三元组(x,y,d),其中x是信标节点的横坐标,y是信标节点的纵坐标,d是信标节点到未知节点的估算距离。
当未知节点获得m个信标节点的信标信号时,可以构成Cm3个组合,每个组合利用三边测量法可以产生一个近似的未知节点坐标位置。
(1)对于信标节点位置参考集的子集划分表示方法如下Be_partition={(a1,a2,a3),(a1,a2,a4),...,(a5,a6,a7)}。
(2)对于Be_partition中任何一个组合(ai,aj,ak),采用三边测量法如公式(1)(2),求出由i、j、k三个信标节点(ai,aj,ak)确定的未知节点n的坐标为(xn,yn)。
三边测量法如图2所示,已知I、J、K三个节点的坐标分别为(xi,yi)、(xj,yj)、(xk,yk),以及它们到未知节点N的距离分别为di,dj,dk,假设节点N的坐标为(xn,yn)。
那么,存在下列公式 由式(1)可得未知节点N的坐标为 5、部署区域的网格划分 如图3所示,无线传感器节点仿真区域的起点坐标为(0,0),把部署区域划分成大小相同的网格,网格的边长为cell-size。每个网格都有自己惟一的网格标识,即为网格编号。通过每个网格的四个顶点坐标惟一确定自己的位置,并且每个网格内都设有投票变量note_num(i)(第i个网格的选票数)。为了便于网格位置的确定,在计算网格四个顶点的坐标时将每个网格看成一个点,用(n,m)表示此网格在坐标平面中的位置,即第n行m列上的一个网格。
6、网格投票 估算位置映射到网格中的过程如下首先对该结果的横坐标x求网格上限值f_x和网格下限值c_x。再对纵坐标y求网格上限值f_y和网格下限值c_y。通过以上计算,判断计算结果所处网格的位置,根据该位置投票主要存在以下几种情况 (1)估算位置在网格内 当估算位置落在某一网格内的某一点时,给该网格投票。如图4所示估算位置A落在网格10中,则将网格10的选票数加1,即note_num(10)=note_num(10)+1。
(2)估算位置在平行于X轴的两网格交线上 当估算位置落在平行于X轴的两网格交线上时,给相交于该交线的两网格各投一票。如图5所示,估算位置A落在网格10和网格6的交线上,则将网格10和网格6的选票数各加1,即note_num(10)=note_num(10)+1;note_num(6)=note_num(6)+1。
(3)估算位置落在平行于Y轴的两网格交线上 当估算位置落在平行于Y轴的两网格交线上时,给相交于该交线的两网格各投一票。如图6所示,估算位置A落在网格10和网格11的交线上,则将网格10和11的选票数各加1,即note_num(10)=note_num(10)+1;note_num(11)=note_num(11)+1。
(4)估算位置落在网格顶点上 当估算位置落在网格顶点上时,给相交于该顶点的四个网格各投一票,如图7所示,估算位置A落在网格6、7、10、11的交点上,则给网格6、7、10、11各投一票,即note_num(10)=note_num(10)+1;note_num(11)=note_num(11)+1;note_num(6)=note_num(6)+1;note_num(7)=note_num(7)+1。
(5)估算位置在部署区域边线上 估算位置在部署区域边线上分为两种情况第一种情况是估算位置落在网格的边线上或部署区域的顶点上。如图8所示,估算位置A、B落在部署区域的边线上,分别给网格15、5投票,note_num(15)=note_num(15)+1;note_num(5)=note_num(5)+1。估算位置C落在部署区域的顶点上,给该顶点所在的网格投票,即note_num(4)=note_num(4)+1。第二种情况是估算位置落在两网格相交的顶点上。如图9所示估算位置E落在两网格相交的顶点上,则给网格3、4投票,即note_num(3)=note_num(3)+1;note_num(4)=note_num(4)+1。
7、基于票数统计的位置估算 统计完票数之后,计算选票值最大几何区域的中心,即为未知节点的位置。将几何区域的顶点表示为R1,R2,...,Ri则位置节点的坐标(Xest,Yest)计算公式 8、实验及分析 在实验过程中,80个网络节点随机分布在
*
范围内,其中信标节点和未知节点随机产生。在实验中为了便于说明,基于投票机制的WSN抗攻击节点定位模型与方法简称为VDV-Hop(Voting DV-Hop)。
为了验证VDV-Hop定位方法的有效性和可用性,对DV-Hop和VDV-Hop进行了实验仿真,并对结果进行分析。实验中,定位精度的计算公式如公式(4)所示。
其中N是传感器节点集,(xi,yi)是传感器节点的真实位置,(xj,yj)是传感器节点的估算位置,r是通信半径。进行了如下几个方面的实验 (1)DV-Hop与VDV-Hop在无攻击情况下定位精度比较 定位精度是定位技术首要的评价指标,一般用误差值与节点无线射程的比例表示。如图10所示,在不受任何攻击的情况下,VDV-Hop比DV-Hop定位准确度更高。这是因为在DV-Hop定位机制中,采用信标节点之间的平均每跳距离作为未知节点到信标节点的平均每跳跳距,通过每跳跳距与跳数的乘积来表示未知节点和信标节点之间的距离。然而在实际网络拓扑中信标节点到未知节点往往不是直线路径,这就给DV-Hop定位机制带来了较大的距离误差。而VDV-Hop定位方法能够在统计票数,估算未知节点位置的时候,将误差过大的非恶意信标节点的投票剔除,这就提高了节点的定位精度。
(2)抗攻击性比较 已有的定位方法大多都假设网络工作在一个较理想的环境里,但在真实应用场合中常会有各种各样的恶意攻击存在,那么定位方法必须具有很强的抗攻击性才能适应环境,减小各种误差的影响,以提高定位精度。如图11所示,DV-Hop曲线表示了DV-Hop定位机制在不受攻击时的定位精度。而DV-Hop Attack和VDV-Hop Attack曲线分别表示的是存在不同恶意信标节点个数时,DV-Hop和VDV-Hop定位精度的变化情况。从图中可以看出VDV-Hop定位方法在受到攻击时具有更好的定位准确性,即抗攻击性好。
(3)信标节点密度对定位精度的影响 信标节点个数的增加往往会很大程度上提高整个网络的价格,所以信标节点密度也是评价定位方法性能的重要指标之一。从图12中可以看,对于VDV-Hop定位方法,信标节点密度的增加,一定程度上能提高定位的精度。但是定位精度对信标节点密度的依赖不大,所以适当大小的信标节点密度就可以使系统达到一个较高的定位精度。
(4)网格大小对定位精度的影响 网格大小作为本方法的一个重要参数,它的设置直接影响到整个网络的计算开销和定位精度。网格边长越长,整个部署区域划分成的网格数就越少,这种情况称之为粗划分;网格边长越短,整个部署区域划分成的网格数就越多,这种划分称之为细化分。从图13中可以看出粗划分的定位精度比细划分的定位精度低,并且细化分的抗攻击性更好。但是划分过细会给整个网络带来较大的计算开销,所以选择适当大小的网格边长是关键。
(5)通信半径对定位精度的影响 节点密度通常以网络的平均连通度(即平均每个节点的邻居数)来表示。相同的网络场景下,我们通过改变节点的通信距离改变网络密度,网络密度以网络的平均连通度表示。图14显示了DV-Hop和VDV-Hop在通信半径不同时,定位精度的比较。从图中可以看出当通信半径大时,定位精度高;当通信半径小时,定位精度低。这是因为通信半径大,每个节点的邻居节点就增多,网络平均连通度也就高;而通信半径小,每个节点的邻居节点就减少,网络平均连通度也就低。但是在相同网络平均连通度的情况下,VDV-Hop比DV-Hop的定位精度更高。
综上,实验数据进一步证明了基于投票机制的WSN抗攻击节点定位模型与方法能够在网络受到各种恶意攻击而使部分信标节点定位信息失效的情况下,仍保证节点的定位精度,具有较强的抗攻击性。同时,该方法对信标节点密度,网络连通度以及额外硬件开销方面没有过多的要求,这就提高了该方法的实用性和稳定性。
权利要求
1.一种基于投票机制的WSN抗攻击节点定位方法,其特征包括有如下步骤
步骤一使用典型的距离矢量交换协议,使网络中所有节点获得距信标节点的最小跳数;
步骤二信标节点通过获得其他信标节点的位置和相隔跳距来计算网络平均每跳距离,并将其作为校正值广播至网络中;
步骤三未知节点收集信标节点的位置参考信息,建立位置参考集,划分子集,在子集中利用三边测量法进行位置估算;
步骤四未知节点对部署区域进行网格划分,将部署区域看成一个二维平面,并将其划分成相同大小的网格,对每个网格进行标识;
步骤五未知节点将参考子集中的位置估算以投票的形式映射到网格中,对网格投票的结果进行统计,筛选,将最大票数区域的几何中心作为未知节点的估算位置。
2.根据权利要求1所述的一种基于投票机制的WSN抗攻击节点定位方法,其特征是所述步骤一中信标节点向邻居节点广播包含自身坐标信息和跳数为0的信标,邻居节点接收到信标后,将跳数加1并继续向它的邻居广播,如此通过泛洪的方式向整个网络传播,利用最短路径算法,网络中的所有节点都得到各信标节点的坐标,以及它到各信标节点的最小跳数。
3.根据权利要求2所述的一种基于投票机制的WSN抗攻击节点定位方法,其特征是所述步骤二中每个信标节点在获得其它信标节点位置和相隔跳数后,计算网络平均每跳距离,然后将其作为一个校正值广播至网络中;当一个节点接收到了第一个校正值后,便丢弃所有后来者。
4.根据权利要求3所述的一种基于投票机制的WSN抗攻击节点定位方法,其特征是所述步骤三中未知节点利用网络校正值和最小跳数计算出到每个信标节点的估算距离,建立位置参考集,位置参考集中的每一个位置参考都是一个三元组,包括信标节点的横纵坐标和未知节点到信标节点的估计距离;对位置参考集划分子集,每个子集中包含三个位置参考,利用三边测量法在每个子集中进行位置估算,产生一个近似的未知节点坐标位置。
5.根据权利要求4所述的一种基于投票机制的WSN抗攻击节点定位方法,其特征是所述步骤四中部署区域划分成的网格大小相同,并且每个网格都有自己惟一的标识,即为网格编号;同时,每个网格内设有投票变量。
6.根据权利要求5所述的一种基于投票机制的WSN抗攻击节点定位方法,其特征是所述步骤五中估算位置映射到网格中的过程如下首先对该结果的横坐标x求网格上限值f_x和网格下限值c_x。再对纵坐标y求网格上限值f_y和网格下限值c_y;通过以上计算,判断计算结果所处网格的位置,然后对网格进行投票;
通过对横纵坐标上下限值的计算判断估算位置所处网格的位置,对网格进行投票主要存在以下几种情况(1)估算位置在网格内,则对该位置投票;(2)估算位置落在平行于X轴的两网格交线上,给相交于该交线的两网格各投一票;(3)估算位置落在平行于Y轴的两网格交线上,给相交于该交线的两网格各投一票;(4)估算位置落在网格顶点上,给相交于该顶点的四个网格各投一票;(5)估算位置在部署区域边线上分为两种情况第一种情况是估算位置落在网格的边线上或部署区域的顶点上,只对边线或顶点所在的网格投票,第二种情况是估算位置落在两网格相交的顶点上,给相交于该顶点的两网格各投一票。
7.根据权利要求6所述的一种基于投票机制的WSN抗攻击节点定位方法,其特征是所述的步骤五中未知节点的位置坐标是通过对各网格的票数统计,筛选出票数最大的区域,计算该区域的几何中心得到的。
全文摘要
本发明涉及一种基于投票机制的WSN抗攻击节点定位方法。使用典型的距离矢量交换协议,使网络中所有节点获得距信标节点的最小跳数;信标节点通过获得其他信标节点的位置和相隔跳距来计算网络平均每跳距离,并将其作为校正值广播至网络中;未知节点收集信标节点的位置参考信息,建立位置参考集,划分子集,在子集中利用三边测量法进行位置估算;未知节点对部署区域进行网格划分。将部署区域看成一个二维平面,划分成相同大小的网格,对每个网格进行标识;未知节点将参考子集中的位置估算映射到网格中,计算未知节点的位置坐标。本发明具有较强的抗攻击性,有效的解决了DV-Hop定位机制抗攻击性弱,定位误差大,精度低的问题。
文档编号H04W12/00GK101772013SQ20101010107
公开日2010年7月7日 申请日期2010年1月26日 优先权日2010年1月26日
发明者杨武, 王巍, 苘大鹏, 左冬梅, 玄世昌 申请人:哈尔滨工程大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1