一种基于区块链技术的无线传感器网络路由方法技术

技术编号:18916309 阅读:881 留言:0更新日期:2018-09-12 03:53
本发明专利技术公开了一种基于区块链技术的无线传感器网络路由方法,采用区块链的去中心化和共识机制等技术解决传统的LEACH和HEED路由方法中常见的簇头节点集中在网络某一区域的现象导致的一些节点的周围没有任何簇头节点以及节点能量不均衡的网络的问题。本发明专利技术使被选的簇头节点分散在网络中的各个区块,使得所有节点的周围随时都有簇头节点,负载均衡簇头节点消耗的能量,能够有效的延长无线传感器网络的使用周期,提高传输效率,大大的减少了路由表的负载,简化了路由表。

A routing method for wireless sensor networks based on block chain technology

The invention discloses a wireless sensor network routing method based on block chain technology, which uses block chain decentralization and consensus mechanism to solve the problem of cluster head nodes concentrating in a certain area of the network in traditional LEACH and HEED routing methods, and so on. The problem of uneven network energy. The invention makes the selected cluster head nodes scattered in each block of the network, makes all nodes have cluster head nodes around at any time, balances the energy consumed by the cluster head nodes, effectively prolongs the service life of wireless sensor network, improves the transmission efficiency, greatly reduces the load of the routing table, and simplifies the path. By the table.

【技术实现步骤摘要】
一种基于区块链技术的无线传感器网络路由方法
本专利技术属于无线传感器网络路由领域,具体涉及一种基于区块链技术的无线传感器网络路由方法。
技术介绍
传统无线传感器网络中的节点的能量是有限的,在其电能耗尽时一般不能再次补充能量或者不易再次补充能量,只能通过各种节能算法尽量减小能量的耗损,能量耗尽时该节点即失去工作能力,严重影响了整个WSN网络的使用效果与生命周期,因此WSN网络中存在着一个严重的能量约束的问题,所以,对于WSN网络协议设计的首要目标就是要高效地使用每一个传感器节点的能量,从而延长网络的节点的存活时间,这个多学科交叉的研究方向一直都是针对该领域研究的一个热点问题。传统的无线传感器的路由分簇方法有LEACH路由协议、HEED路由协议,均为以分簇的簇头节点为核心的中心式路由协议,虽然分簇解决的问题可以有效的消除数据冗余,促进网内数据融合,减少了通信量和通信距离,但是很可能出现被选的簇头节点集中在网络某一区域的现象,这样就会使得一些节点的周围没有任何簇头节点,由于LEACH和HEED假定在最初的簇头选择回合中,所有的节点都携带相同的能量,并且每个成为簇头的节点都消耗大致相同的能量。因此,协议不适合节点能量不均衡的网络。而采用区块链技术去中心化,避免重复计算,去中心化是一个相对的概念,随着去中心程度的不同,其采用的共识机制并不一样,表现出来的共识方式也不一样,本质上是所有传感器节点都遵循了同一个协议,这个协议中规定了所有节点都遵守同一个共识算法,依靠该算法使所有节点数据保持一致,依靠共识算法来选择传感器节点的数据源是一种去中心化的方法,与中心化系统的区别在于,传统的无线传感器网络的中心化系统的各个簇区一般在一个特定时间内是单独的一个簇头节点用于传输数据。
技术实现思路
本公开的目的是针对现有技术的不足,提供一种基于区块链技术的无线传感器网络路由方法,采用区块链技术去中心化,使被选的簇头节点分散在网络中的各个区块,使得所有节点的周围随时都有簇头节点,负载均衡簇头节点消耗的能量。为了实现上述目的,本公开提出一种基于区块链技术的无线传感器网络路由方法,具体包括以下步骤:步骤1,部署无线传感器网络,以LEACH算法将无线传感器网络分簇;步骤2,在汇聚节点上部署区块链系统,每个分簇的簇头节点对应一个分布式账本,其中,每个分布式账本中记录多个代表分簇的区块;步骤3,各区块的簇头节点在全网广播ID号和剩余能量信息;步骤4,获取簇头节点的ID号、相对位置信息和剩余能量信息并按相对位置的距离降序记录到各分布式账本中;步骤5,依次对各分布式账本中的簇头节点发出工作量证明请求并接收工作量证明和剩余能量信息;步骤6,各分布式账本根据簇头节点的工作量证明与剩余能量信息以共识机制验证该簇头节点是否处于可用状态;步骤7,通过证明的可用状态的簇头节点在每个分布式账本中同步记录并执行该簇头节点的选定操作,并更新区块的分布式账本;步骤8,运行贪婪算法以分布式账本中的簇头节点构建路由路径并以路由路径创建路由表;步骤9,各分布式账本同步执行低于能量阈值的簇头节点的簇头节点删除操作,并执行簇头节点更新操作。进一步地,在步骤1中,所述部署无线传感器网络的方式为随机部署,所述以LEACH算法将网络分簇的方法为传感器节点随机生成一个0,1之间的随机数,并且与阈值T(n)做比较,如果小于该阈值,则该节点就会当选为簇头,式中:P为节点成为簇头节点的百分数,r为当前轮数,G为在最近的1/P轮中未当选簇头的节点集合,mod函数为求余函数,簇头节点选定后,广播自己成为簇头的消息,节点根据接收到的消息的强度决定加入哪个簇,并告知相应的簇头,完成簇的建立过程。然后,簇头节点采用TDMA的方式,为簇内成员分配传送数据的时隙,所述分簇有一个或多个簇头。进一步地,在步骤2中,所述区块链系统包括去中心化和去信任的多个分布式账本,每个分布式账本中记录多个代表分簇的区块;所述区块是一种记录各分簇内簇头节点的选举、轮换的过程的数据结构,反映了簇头节点的变化。系统中已经选举出了簇头节点区块连接在一起形成了一条主链,所有参与计算的节点都记录了主链或主链的一部分,一个区块包含以下三部分:簇头节点信息、前一个区块形成的哈希散列。簇头节点信息是区块所承载的任务数据,具体包括簇头节点的ID号、簇头节点能量剩余值、簇头节点的工作量证明;前一个区块形成的哈希散列用来将区块连接起来,实现过往簇头节点选举、轮换的顺序排列;当簇头节点的剩余能量低于能量阈值时,所在簇区内所有传感器节点根据能量剩余值与距离汇聚节点的相对距离竞选簇头节点,能量剩余值最多和相对距离最小的两个传感器节点当选为新的簇头节点,簇区内的两个簇头节点与其它原簇区内的传感器节点生成一个新的区块,并广播到所有簇头节点进行更新,完成一次簇头节点选举、轮换。进一步地,在步骤4中,所述相对位置信息根据各分布式账本获取到簇头节点广播信息时的传输延时的时长得到。进一步地,在步骤5中,所述工作量证明包括消耗的传感器节点的数据传输时间与传感器消耗的能量,该数据为经过SHA256哈希运算的递增值字符串。进一步地,在步骤6中,所述以共识机制验证该簇头节点是否处于可用状态的方法为当通过验证的分布式账本总数量超过四分之三则确认该簇头节点通过证明并将其置于可用状态,所述验证方法为当数据传输时间与传感器的能量消耗同时小于三分之二则通过验证,否则不通过验证。进一步地,在步骤7中,选定操作的步骤如下:步骤7.1,向全部分布式账本发布通过验证的可用状态的簇头节点信息;步骤7.2,当四分之三以上簇头节点验证通过则通过共识处理;步骤7.3,将新选定的簇头节点及附加信息记录在区块链中;步骤7.4,将该操作记录记录到区块链中,该簇头节点选定成功;所述簇头节点信息包括簇头节点的ID号、簇头节点能量剩余值、簇头节点的工作量证明。进一步地,在步骤8中,所述更新路由表的方法为:步骤8.1,运行贪婪算法,判断路由路径是否已到达汇聚节点或者局部最小点;步骤8.2,若已到达汇聚节点,则终止算法;若只是到达局部最小点,则在局部最小点处,通过分布式账本的区块边界发送探测包给下一跳的分布式账本中簇头节点来搜索传输路径,直至跳出局部最小点;步骤8.3,在跳出局部最小点后,继续贪婪路由方法,若再遇到局部最小点,按照步骤8.2中的步骤处理。进一步地,在步骤9中,簇头节点删除操作的方法为,簇头节点的删除请求向区块链全部节点发布,经过区块链全部簇头节点的共识处理,通过共识后将簇头节点删除请求记录在区块链中,簇头节点删除操作结束,所述共识处理为当四分之三以上簇头节点验证通过则通过共识。簇头节点更新操作的方法为:当簇头节点的剩余能量低于能量阈值时,所在簇区内所有传感器节点根据能量剩余值与距离汇聚节点的相对距离竞选簇头节点,能量剩余值最多和相对距离最小的两个传感器节点当选为新的簇头节点,簇区内的两个簇头节点与原簇区内的其余传感器节点生成一个新的区块,并广播到所有簇头节点进行更新,完成簇头节点选举、轮换,其中,所述能量阈值为传感器初始能量的三分之一。本公开还提供了一种基于区块链技术的无线传感器网络路由装置,所述装置包括:部署分簇单元,用于部署无线传感器网络,以LEACH算法将无线传感器网络分簇;区块链部本文档来自技高网
...

【技术保护点】
1.一种基于区块链技术的无线传感器网络路由方法,其特征在于,所述方法包括:步骤1,部署无线传感器网络,以LEACH算法将无线传感器网络分簇;步骤2,在汇聚节点上部署区块链系统,每个分簇的簇头节点对应一个分布式账本,其中,每个分布式账本中记录多个代表分簇的区块;步骤3,各区块的簇头节点在全网广播ID号和剩余能量信息;步骤4,获取簇头节点的ID号、相对位置信息和剩余能量信息并按相对位置的距离降序记录到各分布式账本中;步骤5,依次对各分布式账本中的簇头节点发出工作量证明请求并接收工作量证明和剩余能量信息;步骤6,各分布式账本根据簇头节点的工作量证明与剩余能量信息以共识机制验证该簇头节点是否处于可用状态;步骤7,通过证明的可用状态的簇头节点在每个分布式账本中同步记录并执行该簇头节点的选定操作,并更新区块的分布式账本;步骤8,运行贪婪算法以分布式账本中的簇头节点构建路由路径并以路由路径创建路由表;步骤9,各分布式账本同步执行低于能量阈值的簇头节点的簇头节点删除操作,并执行簇头节点更新操作。

【技术特征摘要】
1.一种基于区块链技术的无线传感器网络路由方法,其特征在于,所述方法包括:步骤1,部署无线传感器网络,以LEACH算法将无线传感器网络分簇;步骤2,在汇聚节点上部署区块链系统,每个分簇的簇头节点对应一个分布式账本,其中,每个分布式账本中记录多个代表分簇的区块;步骤3,各区块的簇头节点在全网广播ID号和剩余能量信息;步骤4,获取簇头节点的ID号、相对位置信息和剩余能量信息并按相对位置的距离降序记录到各分布式账本中;步骤5,依次对各分布式账本中的簇头节点发出工作量证明请求并接收工作量证明和剩余能量信息;步骤6,各分布式账本根据簇头节点的工作量证明与剩余能量信息以共识机制验证该簇头节点是否处于可用状态;步骤7,通过证明的可用状态的簇头节点在每个分布式账本中同步记录并执行该簇头节点的选定操作,并更新区块的分布式账本;步骤8,运行贪婪算法以分布式账本中的簇头节点构建路由路径并以路由路径创建路由表;步骤9,各分布式账本同步执行低于能量阈值的簇头节点的簇头节点删除操作,并执行簇头节点更新操作。2.根据权利要求1所述的一种基于区块链技术的无线传感器网络路由方法,其特征在于,在步骤1中,所述部署无线传感器网络的方式为随机部署;所述分簇有一个或多个簇头。3.根据权利要求1所述的一种基于区块链技术的无线传感器网络路由方法,其特征在于,在步骤2中,所述区块链系统包括多个分布式账本,每个分布式账本中包括多个区块;所述区块包括簇头节点信息、前一个区块形成的哈希散列,其中,所述簇头节点信息包括簇头节点的ID号、簇头节点能量剩余值、簇头节点的工作量证明。4.根据权利要求1所述的一种基于区块链技术的无线传感器网络路由方法,其特征在于,在步骤4中,所述相对位置信息根据各分布式账本获取到簇头节点广播信息时的传输延时的时长得到。5.根据权利要求1所述的一种基于区块链技术的无线传感器网络路由方法,其特征在于,在步骤5中,所述工作量证明包括消耗的传感器节点的数据传输时间与传感器消耗的能量。6.根据权利要求1所述的一种基于区块链技术的无线传感器网络路由方法,其特征在于,在步骤6中,所述以共识机制验证该簇头节点是否处于可用状态的方法为当通过验证的分布式账本总数量超过四分之三则确认该簇头节点通过证明并将其置于可用状态,所述验证方法为当数据传输时间与传感器的能量消耗同时小于三分之二则通过验证,否则不通过验证。7.根据权利要求1所述的一种基于区块链技术的无线传感器网络路由方法,其特征在于,在步骤7中,选定操作的步骤如下:步骤7.1,向全部分布式账本发布通过验证的可用状态的簇头节点信息;步骤7.2,当四分之三以上簇头节点验证通过则通过共识处理;步骤7.3,将新选定的簇头节点及附加信息记录在区...

【专利技术属性】
技术研发人员:钟勇
申请(专利权)人:佛山市虚拟现实大数据产业研究院有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1