一种在云雾协同环境启用双区块链的任务调度方法技术

技术编号:35864342 阅读:28 留言:0更新日期:2022-12-07 10:55
本发明专利技术基于云雾协同卸载环境不完全可信的特征,结合双区块链(Double Blockchain,DBC)技术提出了一种时延敏感且节能地物联网(Internet of Things,IoT)任务调度方法。首先,考虑到IoT系统高吞吐量的特性,采用基于权威证明(Proof of Authority,PoA)和基于工作证明(Proof of Work,PoW)的思想,设计一种适用于IoT任务调度系统的共识策略。然后,权衡区块链系统可伸缩性和安全性两方面,提出基于DBC的IoT任务调度架构。最后,结合半贪心和蚁群系统算法提出了一种低时间复杂度的任务调度方法,达到在不完全可信环境下确保IoT任务及时响应的同时优化系统能耗的目标。及时响应的同时优化系统能耗的目标。及时响应的同时优化系统能耗的目标。

【技术实现步骤摘要】
of Authority,PoA)和基于工作证明(Proof of Work,PoW)的思想,设计一种适用于IoT任务调度系统的共识策略。然后,权衡区块链系统可伸缩性和安全性两方面,提出基于DBC的IoT任务调度架构。最后,结合半贪心和蚁群系统算法提出了一种低时间复杂度的任务调度方法,达到在不完全可信环境下确保IoT任务及时响应的同时优化系统能耗的目标。
[0009]本专利技术的技术方案为:
[0010]一种在云雾协同环境启用双区块链的任务调度方法,包括任务调度架构模块、双区块链共识和维护模块、基于信誉的优先级感知任务调度模块、恶意节点检测模块以及加速蚁群系统算法模块,其中:
[0011]1)任务调度架构模块,用于提供和确定物联网(Internet of Things,IoT)任务的卸载环境;其中任务调度架构模块包括产生待卸载任务的各类IoT设备、确定任务和计算节点映射关系的智能网关、多个异构节点共存且不完全可信任的雾计算环境、计算资源丰富且可信任的云计算环境以及维护任务调度环境的双区块链,其中:双区块链由信息区块链和信誉区块链共同组成,并且都由雾计算节点产生、共识和验证;由于信息区块链占用存储资源相对较多,所以将其存放于云上,将信誉区块链存放于各个雾节点和智能网关。
[0012]2)双区块链共识和维护模块,用于保证任务调度环境的安全性以及增强任务调度环境的可伸缩性;其中双区块链共识和维护模块包括以下步骤:
[0013]步骤1,先依据每个雾节点的信誉值过滤筛选出有效雾节点,然后有效雾节点依据自己的工作量证明进行投票,并选择投票排名前K个雾节点作为leader节点,其余节点作为worker节点;
[0014]步骤2,从leader节点中随机选择一个节点作为信息区块生成节点F
I
,选择距离F
I
最近的雾节点作为信誉区块生成节点F
R

[0015]步骤3,F
I
从交易缓存池中选择一定量的IoT任务调度过程数据进行打包生成信息区块,F
I
进行签名并将其工作量证明清零;信息区块经过验证后,先转发于F
R
进行映射绑定,然后F
R
根据信息区块中的交易数据以及本地存储的信誉区块链中的最新历史数据计算生成信誉区块;当生成了N(N>K)个区块后,执行计算节点职责划分模块重新划分各节点的职责,以便于每个节点都有一定机会生成信息区块。
[0016]步骤4,信息区块生成后,leader节点针对该区块进行共识验证,验证通过后leader节点进行签名确认并添加至云上的信息区块链中,若全部leader节点都验证失败则通知F
I
重新打包生成信息区块;信誉区块生成后,leader节点进行验证,验证通过并签名后,所有网络节点将该信誉区块添加至本地信誉区块链中,若全部leader节点都验证失败则通知F
R
重新生成信誉区块。
[0017]步骤5,为保证worker节点的合法权益以及获取工作量证明,worker节点随机检查已生成的信息区块;如果worker节点发现信息区块异常,上报当前leader节点进行复审,leader节点重新验证该信息区块,若确认该信息区块为非法区块,将该信息区块生成节点列入黑名单;Worker节点验证区块即可获取工作量证明,若成功检测非法信息区块获得额外工作量证明。
[0018]3)基于信誉的优先级感知任务调度模块,用于在区块链冷启动初期进行有效地任务调度以及信誉值管理,主要包括以下步骤:
[0019]步骤1,智能网关先将所有缓存待处理的IoT任务依据响应时间进行非递减排序,
从而使得响时间要求严格的任务优先被执行;
[0020]步骤2,智能网关将可按时完成当前IoT任务的计算节点添加至集合S
L
中;
[0021]步骤3,若S
L
不为空则依据信誉区块链中各节点的信誉值依据轮盘选择法随机选择节点进行卸载;
[0022]步骤4,若S
L
为空则从所有计算节点中随机选择节点进行卸载;
[0023]步骤5,当所有IoT任务调度结束后,由双区块链进行维护当前任务调度环境。
[0024]4)恶意节点检测模块,经历若干轮次基于信誉的优先级感知任务调度模块后,由于恶意节点信誉值降低,正常节点信誉值稳定,所以可检测出恶意节点。
[0025]5)加速蚁群系统算法模块可用于获取高质量的任务调度方案,具体包含以下步骤:
[0026]步骤1,智能网关先将所有缓存待处理的IoT任务依据响应时间进行非递减排序,从而使得响时间要求严格的任务优先被执行;
[0027]步骤2,通过恶意节点检测模块预测卸载环境中的恶意节点集合P
L

[0028]步骤3,修订智能网关中P
L
各节点的缓存信息;
[0029]步骤4,智能网关将可按时完成当前IoT任务的计算节点添加至集合S
L
中;
[0030]步骤5,若S
L
不为空,参照蚁群系统算法的节点选择思想,以系统能耗增量作为启发信息选择卸载节点;
[0031]步骤6,若S
L
为空,则以各节点的响应时间作为启发信息选择卸载节点;
[0032]步骤7,执行步骤4

6构建NP个卸载决策,并依据适用度评估方法确定最佳卸载决策NP
*
,以用于更新全局信息素;
[0033]步骤8,执行步骤7构建g
max
个NP
*
,并依据适用度评估方法确定最终任务调度方案。
[0034]本专利技术的有益效果:
[0035]1)通过设计和使用合适的区块链共识协议,使得区块的生成时间和共识时间极大地缩短,同时还能保证各网络节点的合法权益;
[0036]2)考虑到IoT系统高吞吐量的特性,使用双区块链技术将数据量较大的IoT任务调度数据存储于云,而数据量较小的各节点信誉数据存储于各节点本地,从而在不严重影响原IoT系统各项特性的基础上提升其安全系数;
[0037]3)同时考虑到任务调度算法所需的低时间复杂度和各优化指标,所提出的方法权衡了各优化指标的同时将半贪心思想和蚁群系统算法相结合,不仅提升了任务调度决策的质量同时还降低了原蚁群系统算法所需的迭代时间。
附图说明
[0038]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0039]图1为本专利技术在云雾协同环境启用双区块链的任务调度方法架构图。
[0040]图2为本专利技术中双区块链共识和维护的流程图。
[0041]图3为本专利技术本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种在云雾协同环境启用双区块链的任务调度方法,其特征在于:包括任务调度架构模块、双区块链共识和维护模块以及任务调度方法模块,其中:1)任务调度架构模块,用于提供和确定物联网(Internet of Things,IoT)任务的卸载环境;2)双区块链共识和维护模块,用于保证任务调度环境的安全性以及增强任务调度环境的可伸缩性;3)任务调度方法模块,可以在短时间内确定大量IoT任务和计算节点的映射关系,从而在满足IoT任务响应时间要求的前提下优化任务调度环境的总能耗。2.如权利要求1所述的在云雾协同环境启用双区块链的任务调度方法,其特征在于:所述任务调度架构模块包括产生待卸载任务的各类IoT设备、确定任务和计算节点映射关系的智能网关、多个异构节点共存且不完全可信任的雾计算环境、计算资源丰富且可信任的云计算环境以及维护任务调度环境的双区块链,其中:双区块链由信息区块链和信誉区块链共同组成,并且都由雾计算节点产生、共识和验证;由于信息区块链占用存储资源相对较多,所以将其存放于云上,将信誉区块链存放于各个雾节点和智能网关。3.如权利要求1所述的在云雾协同环境启用双区块链的任务调度方法,其特征在于:所述双区块链共识和维护模块包含计算节点职责划分模块、区块生成节点选择模块、区块生成模块、区块链维护模块和区块随机验证模块模块,其中:计算节点职责划分模块,先依据每个雾节点的信誉值过滤筛选出有效雾节点,然后有效雾节点依据自己的工作量证明进行投票,并选择投票排名前K个雾节点作为leader节点,其余节点作为worker节点;区块生成节点选择模块,从leader节点中随机选择一个节点作为信息区块生成节点F
I
,选择距离F
I
最近的雾节点作为信誉区块生成节点F
R
;区块生成模块,用于生成信息区块和信誉区块并根据区块生成的数量进行leader节点轮换,从而使得每个节点都有机会生成区块;区块链维护模块,用于维护信息区块和信誉区块;区块随机验证模块,用于验证已产生的信誉区块并基于该模块使得leader节点和worker节点轮流替换。4.如权利要求3所述的在云雾协同环境启用双区块链的任务调度方法,其特征在于:所述区块生成模块包括以下步骤:步骤1,F
I
从交易缓存池中选择一定量的IoT任务调度过程数据进行打包生成信息区块,F
I
进行签名并将其工作量证明清零;步骤2,信息区块经过验证后,先转发于F
R
进行映射绑定,然后F
R
根据信息区块中的交易数据以及本地存储的信誉区块链中的最新历史数据计算生成信誉区块;步骤3,当生成了N(N>K)个区块后,执行计算节点职责划分模块重新划分各节点的职责,以便于每个节点都有一定机会生成信息区块。5.如权利要求3所述的在云雾协同环境启用双区块链的任务调度方法,其特征在于:所述区块链维护模块包括以下步骤:步骤1,信息区块生成后,leader节点针对该区块进行共识验证,验证通过后leader节点进行签名确认并添加至云上的信息区块链中,若全部leader节点都验证失败则通知F
I

新打包生成信息区块;步骤2,信誉区块生成后...

【专利技术属性】
技术研发人员:曹绍华詹子俊代聪聪张卫山吴春雷王雷全
申请(专利权)人:中国石油大学华东
类型:发明
国别省市:

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

1