在不同上下文环境下,不同类型的节点的信任或声望值由于其检索主体不同,应用方式也不同,并不适宜采用统一的存储方式。在目前基于行为信任的无线传感器网络信任模型和安全数据融合的相关研究文献中,采用的节点信任值存储方式主要有:第一,将节点的信任值存储在自身;第二,在节点自身存储其邻居节点的信任值;第三,在基站集中式的存储簇头节点的各种相关信任值;第四,在簇头节点处,集中式地存储簇内普通节点的各种相关信任值。
在本书的无线传感器网络信任机制中,由于无线传感器网络无线多跳的通信方式,簇头节点的数据包转发仅涉及邻居节点的选择,因此,由簇头节点根据其对它的邻居节点的监测结果更新并在自身存储它的各邻居节点的路由信任值。对于在数据融合中需要考虑的数据融合信任和声望值则采取簇内普通节点信任值的集中式存储和簇头节点声望值的分布式存储并存机制。在簇内数据融合中,由于簇内的数据融合在簇头节点执行,并且簇内节点数目有限,因而,可以将簇内普通传感器节点的数据融合信任值集中式存储在簇头节点。而在不同层次的二次数据汇聚节点处执行二次数据融合时,需要使用簇头节点的数据融合声望值计算二次数据融合的各簇头节点的融合权值。
由于反向组播融合树的建立是动态形成的,每个簇头节点发出的数据在不同的时刻可能由不同的汇聚节点进行数据融合,因而也可能由不同的汇聚节点使用和更新。由多个汇聚节点做出评价并进行更新的数据融合信任也可将其称之为数据融合声望。对簇头节点的数据融合声望值采用分布式的存储方法。这基于以下两点原因。
(1)由于二次融合时,数据融合的反向组播树是动态形成的。因此,一个簇头节点在不同时刻可能是由不同的二层汇聚节点进行数据融合,其信任值可由多个汇聚节点在融合过程中计算融合权值时使用或依据相似度检查进行更新。因此,簇头节点的声望值不便存储在某一个汇聚节点处。
(2)由于无线传感器网络通常节点众多,形成的簇也是大量的,如果簇头节点的数据融合声望值都集中地存储在基站处会带来严重的查询和更新瓶颈问题,若集中地存放在某几个汇聚节点处也会带来对存储点自身可靠性的严重依赖,一旦存储节点被俘获,则会带来严重的安全问题。
如果由簇头节点自身存储其数据融合声望值则会带来该节点对自身声望值声明的可信性问题。因此,为了解决这些问题,对于簇头节点的数据融合声望值采用了基于分布式哈希表的分区的双向Chord分布式存储和查询方案。
(一)双向chord数据融合声望值的分布式存储(https://www.xing528.com)
为了防止集中式的存储所带来的瓶颈问题,以及自身存储带来的可信性问题,本节对无线传感器网络的骨干层簇头节点的数据融合声望值采用基于分区的双向chord分布式存储和查找方案。在该方案中,采用分布式哈希表来决定各簇头节点数据融合声望值的存储位置。
1.基于分区的双向chord协议
在Chord协议中,节点负责的是键值间距为2i的节点序列,适合在大规模动态的网络中使用。然而,在Chord协议中,拓扑结构上很近的节点的哈希值在命名空间上可能相差很远,因而节点ID哈希值很接近的节点在物理网络上可能相距很远。如果采用Chord协议进行簇头节点声望值的分布式存储,则很有可能物理距离很近的两个节点的声望信息被存储在物理距离很远的两个节点上。尽管Chord采用了折半查找的方式,但是由于Chord协议中的一跳常常对应在无线传感器网络物理距离相对较远的两个节点,对于覆盖范围较大而又能量有限的无线传感器网络而言,将会有较大的无线通信能量消耗。并且,由于无线传感器网络分层次的数据融合方式,节点数据融合声望通常也仅在一定范围内更新与使用。因此,本书提出了一种基于分区的双向Chord协议来进行簇头节点声望信息的存储与检索查询,以解决节点物理位置和逻辑位置相距过远的问题,并通过双向查询机制来提高查询效率。
在本模型中,整个无线传感器网络被分成多个区。在分簇的无线传感器网络中,每个区包括多个簇,这些簇的簇头节点的数据融合声望信息在区内进行分布式哈希存储,从而将分布范围限制在一定范围内,不会造成由于存储距离太远造成检索的代价较大。由于二次数据融合是在一定物理范围进行多簇的数据聚合,二次融合区域与哈希分区并不一定完全重合,但由于区比簇大得多,在多数情况下查询都是在本区内进行,少数情况下需跨区存储,总体查询代价比不分区要小得多。
首先,根据实际网络的范围大小,确定区的数目m,并结合无线传感器网络的定位算法来确定节点的实际物理位置。无线传感器网络定位算法大都依据无线信标传播的某些物理属性来确定节点间的空间关系(距离或邻近关系),例如,时延、功耗、入角、相位差、转发跳数和区域覆盖等。假设节点部署在二维空间中,在定位算法中,以传感器网络的整个部署区域的某个边界点作为坐标原点,可以得到网络中节点K的位置信息(xk,yk)。若整个网络的部署区域为X*Y区域,根据需要划分的区的数目m,可以将网络划分成m个大小为(X/m)*(Y/m)的区,节点根据自己的定位坐标值确定其属于哪个区,并将分区时的邻居区的最近节点位置保存下来。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。
