CN113672911B - 基于区块链的体域网任务卸载方法和系统 - Google Patents

基于区块链的体域网任务卸载方法和系统 Download PDF

Info

Publication number
CN113672911B
CN113672911B CN202110802084.0A CN202110802084A CN113672911B CN 113672911 B CN113672911 B CN 113672911B CN 202110802084 A CN202110802084 A CN 202110802084A CN 113672911 B CN113672911 B CN 113672911B
Authority
CN
China
Prior art keywords
node
area network
body area
task
fog
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110802084.0A
Other languages
English (en)
Other versions
CN113672911A (zh
Inventor
任君玉
覃团发
胡永乐
万海斌
秦慧平
沈湘平
罗剑涛
祝长鸿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Runjian Co ltd
South China University of Technology SCUT
Guangxi University
Original Assignee
Runjian Co ltd
South China University of Technology SCUT
Guangxi University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Runjian Co ltd, South China University of Technology SCUT, Guangxi University filed Critical Runjian Co ltd
Priority to CN202110802084.0A priority Critical patent/CN113672911B/zh
Publication of CN113672911A publication Critical patent/CN113672911A/zh
Application granted granted Critical
Publication of CN113672911B publication Critical patent/CN113672911B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44594Unloading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers

Abstract

本发明公开了提供一种基于区块链的体域网任务卸载方法,包括:有任务卸载请求时,体域网网关节点生成智能合约MainC并将其广播至区块链网络中,以使所述智能合约MainC自动执行;当区块链网络达成共识时,体域网网关节点获取智能合约MainC的执行结果,执行结果为最优目标雾节点,体域网网关节点将任务卸载至最优目标雾节点;智能合约MainC执行过程中对体域网网关节点和雾节点的资源情况、信任情况分别计算与验证,还对雾节点的任务处理时延情况计算与验证。本发明可保证体域网任务卸载及任务处理全过程的自动执行与相关节点信息、任务信息及任务处理结果的安全性,同时区块链实现了节点之间信任评价数据的安全存储与管理。

Description

基于区块链的体域网任务卸载方法和系统
技术领域
本发明涉及物联网技术领域。更具体地说,本发明涉及一种基于区块链的体域网任务卸载方法和系统。
背景技术
随着物联网技术的快速发展,基于体域网的智慧医疗得到了业界和学术界的广泛关注,但是体域网本身有很多挑战,其中之一就是体域网的网关设备HUB资源受限,导致其无法对计算密集型任务进行分析和处理,通过引入雾计算,分布在体域网的边缘,利用雾计算节点相对丰富的资源对体域网的计算密集型任务进行处理可以缓解体域网网关设备资源受限的问题。此时,关键问题变为如何设计体域网任务卸载方案,以保证任务在雾节点中进行快速安全的处理。
发明内容
本发明的一个目的是解决至少上述问题,并提供至少后面将说明的优点。
本发明还有一个目的是提供一种基于区块链的体域网任务卸载方法,利用区块链智能合约对任务卸载目标雾计算节点进行筛选,包括对其资源情况,信任情况,任务处理时延情况的计算与验证。相比于传统方法,本专利基于区块链技术可以保证任务卸载及处理的安全性,同时基于信任计算可进一步防止恶意区块链节点的安全攻击。
为了实现根据本发明的这些目的和其它优点,提供了一种基于区块链的体域网任务卸载方法,其包括:
有任务卸载请求时,体域网网关节点生成智能合约MainC并将其广播至区块链网络中,以使所述智能合约MainC自动执行,其中,所述区块链网络由多个体域网网关节点和多个雾节点构成;
当区块链网络达成共识时,体域网网关节点获取智能合约MainC的执行结果,所述执行结果为最优目标雾节点,体域网网关节点将任务卸载至最优目标雾节点;
其中,所述智能合约MainC自动执行时,采取以下决策方案:
对生成智能合约MainC的体域网网关节点的资源水平和信任值分别进行校验,检查生成智能合约MainC的体域网网关节点的资源水平和信任值能否满足任务要求,若均满足,则;
对每个雾节点的资源水平和信任值分别进行校验,筛选出均满足任务要求的雾节点集A;
计算雾节点集A中每个雾节点的任务处理时延,再校验雾节点集A中每个雾节点的任务处理时延是否满足任务要求,筛选出满任务足要求的雾节点集B;
对雾节点集B中每个雾节点的任务处理时延和信任值归一化处理,再计算雾节点集B中每个雾节点的适应度函数,找到适应度函数值最大的雾节点即为最优目标雾节点。
优选的是,还包括:
当共识未达成时,体域网网关节点生成智能合约ToCloudC,并将任务卸载到满足资源水平要求和信任值要求且距离最近的雾节点,由该雾节点根据智能合约ToCloudC决策是否需要将任务卸载到远端云处理。
优选的是,所述智能合约MainC中保存有体域网网关节点的资源阈值、系统设定的信任阈值,还包含体域网网关节点资源校验函数和体域网网关节点信任值校验函数;
所述决策方案中,对生成智能合约MainC的体域网网关节点的资源水平和信任值分别进行校验的方法包括:
获取体域网网关节点的资源水平和信任值,所述体域网网关节点的资源水平和信任值是根据体域网网关节点的相关信息分别预先评估计算并存储在区块链的;
执行体域网网关节点资源校验函数,比较体域网网关节点的资源水平和体域网网关节点的资源阈值;
执行体域网网关节点信任值校验函数,获取体域网网关节点的当前相关信息,计算体域网网关节点的当前信任值,比较体域网网关节点的当前信任值与系统设定的信任阈值,计算体域网网关节点的当前信任值与预先得到的体域网网关节点信任值的差值,比较该差值与预设的信任值差值阈值。
优选的是,所述区块链网络中预先部署有智能合约HubResC,所述智能合约HubResC中保存有各个体域网网关节点的相关信息,所述体域网网关节点的相关信息包括任务编号、总内存、剩余内存、总能量、剩余能量,所述智能合约HubResC还包含体域网网关节点资源评估函数;
根据体域网网关节点的相关信息评估体域网网关节点的资源水平的方法包括:
基于智能合约HubResC,根据体域网网关节点的总内存、剩余内存、总能量、剩余能量,通过调用体域网网关节点资源评估函数,对体域网网关节点的资源水平进行评估。
优选的是,所述体域网网关节点的相关信息还包括体域网网关节点信任值、其他节点对本节点的信任评价值、与其它节点合作成功次数、与其它节点合作失败次数、权重系数,所述智能合约HubResC还包含体域网网关节点信任值计算函数;
根据体域网网关节点的相关信息计算体域网网关节点的信任值的方法包括:
基于智能合约HubResC,根据信任值大于系统设定的信任阈值的其他节点对本节点的信任评价值、与其它节点合作成功次数、与其它节点合作失败次数、权重系数,通过调用体域网网关节点信任值计算函数,计算体域网网关节点的信任值。
优选的是,所述智能合约MainC中保存有雾节点的资源阈值、系统设定的信任阈值,还包含雾节点资源校验函数和雾节点信任值校验函数;
所述决策方案中,对每个雾节点的资源水平和信任值分别进行校验的方法包括:
获取雾节点的资源水平和信任值,所述雾节点的资源水平和信任值是根据雾节点的相关信息分别预先评估计算并存储在区块链的;
执行雾节点资源校验函数,比较雾节点的资源水平和雾节点资源阈值;
执行雾节点信任值校验函数,获取雾节点的当前相关信息,计算雾节点的当前信任值,比较雾节点的当前信任值与系统设定的信任阈值,计算雾节点的当前信任值与预先得到的雾节点信任值的差值,比较该差值与预设的信任值差值阈值。
优选的是,所述区块链网络中预先部署有智能合约FogResC,所述智能合约FogResC中保存有各个雾节点的相关信息,所述雾节点的相关信息包括任务编号、雾节点CPU频率、可用CPU资源、剩余存储、总内存、剩余内存、任务队列长度、剩余任务队列长度,所述智能合约FogResC还包含雾节点资源与能力评估函数;
根据雾节点的相关信息评估雾节点的资源水平的方法包括:
基于智能合约FogResC,根据雾节点CPU频率、可用CPU资源、总内存、剩余内存、任务队列长度、剩余任务队列长度,通过调用雾节点资源与能力评估函数,对雾节点的资源与能力进行评估,得到雾节点的资源水平。
优选的是,所述雾节点的相关信息还包括雾节点信任值、其他节点对本节点的信任评价值、与其它节点合作成功次数、与其它节点合作失败次数、权重系数,所述智能合约FogResC中还包含雾节点信任值计算函数;
根据雾节点的相关信息计算雾节点的信任值的方法包括:
基于智能合约FogResC,根据信任值大于系统设定的信任阈值的其他节点对本节点的信任评价值、与其它节点合作成功次数、与其它节点合作失败次数、权重系数,通过调用雾节点信任值计算函数,计算雾节点的信任值。
优选的是,所述智能合约MainC中保存有任务需要的CPU周期数、任务数据量、体域网网关节点和雾节点间的数据传输速率、任务期限,所述智能合约MainC中还包含任务处理时延计算函数,所述智能合约MainC还保存有雾节点的任务队列负载所需要的时钟周期及对应的CPU比率;
所述决策方案中,计算雾节点集A中每个雾节点的任务处理时延的方法包括:
调用任务处理时延计算函数,根据任务需要的CPU周期数、任务数据量、体域网网关节点和雾节点间的数据传输速率、雾节点的任务队列负载所需要的时钟周期及对应的CPU比率计算雾节点的任务处理时延;
所述决策方案中,校验雾节点集A中每个雾节点的任务处理时延的方法包括:
调用任务处理时延计算函数,比较雾节点的任务处理时延和任务期限。
本发明还提供了一种基于区块链的体域网任务卸载系统,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行上述的基于区块链的体域网任务卸载方法。
本发明至少包括以下有益效果:
1、当有计算密集型任务需要卸载时,体域网网关节点HUB将任务卸载请求发布为区块链交易,交易通过智能合约自动完成,在交易执行的过程中首先需要对HUB节点的资源能力及可信度进行评估,以保证后续参与网络信任计算及任务卸载的资源和能量需求,同时排除恶意HUB节点发动网络内部攻击,保证系统效率与安全;其次,通过对fog的资源进行校验,对满足条件的任务卸载目标雾节点进行过滤和筛选,以保证fog有充足的能力进行任务处理服务及参与信任计算等网络活动的能力;同时,通过引入信任机制可以防止恶意雾节点发动网络内部攻击,并且区块链可以保证信任评价及信任信息的安全存储;
2、整个系统具有双重安全保证,利用区块链的强大安全特性可以有效抵制网络外部攻击,通过引入信任机制可以有效抵制网络内部恶意节点的安全攻击。为了更好地预防节点的自夸攻击,舞弊攻击及坏嘴攻击,所设计的信任机制的设计兼顾来自其它节点的信任评价值及自我评价值,通过综合权衡得到节点全局信任值;
3、通过设计智能合约,自动完成节点过滤及选择工作,当条件满足以后自动触发任务进行上传与处理。合理设计智能合约内置函数,实现整个机制的高效、自动与安全;
4、为了进一步提高任务成功率,提高系统效率,当通过MainC没有找到满足条件的雾节点时,体域网网关节点HUB继续将任务卸载到距离最近的满足服务能力及信任值要求的雾节点,由此雾节点根据任务上传时延与任务期的限制等因素进行决策,以决定是否需要将任务上传到云,以避免HUB直接将任务上传到云所带来的巨大能量消耗。
相应地,本发明还提供了与上述利用基于区块链的体域网任务卸载方法相对应的基于区块链的体域网任务卸载系统,也具有上述技术效果,在此不再赘述。
本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。
附图说明
图1为本发明所述基于区块链的体域网任务卸载方法的流程图;
图2为本发明所述智能合约MainC的决策被执行的流程图。
具体实施方式
下面结合附图对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。
需要说明的是,下述实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
如图1~2所示,本发明提供一种基于区块链的体域网任务卸载方法,包括:
S1、有任务卸载请求时,体域网网关节点生成智能合约MainC并将其广播至区块链网络中,以使所述智能合约MainC自动执行,其中,所述区块链网络由多个体域网网关节点和多个雾节点构成;
具体地,区块链网络中包括m个体域网网关节点(可简写为HUB节点)和n个雾节点(可简写为fog节点),一个HUB节点对应一个体域网,所述体域网内安装有多个用于采集人体各项生理数据的生理传感器,HUB节点负责汇聚体域网内生理传感器采集的生理数据,通常情况下,HUB节点属于区块链网络中的轻量级节点,可以对区块链中的交易(本申请中的任务卸载可看做区块链中的交易)进行验证,但是由于其资源有限性,不参与共识过程。fog节点负责对卸载任务进行处理,通常情况下,fog节点也是区块链中的共识节点,负责运行共识算法及区块上链等功能。
当HUB节点有计算密集型任务需要处理时,向区块链网络发起任务卸载(交易)请求,HUB节点就会生成智能合约MainC,并将智能合约MainC广播到区块链网络中,以使智能合约MainC自动执行。
具体地,所述智能合约MainC自动执行时,采取以下决策方案:
S101、对生成智能合约MainC的体域网网关节点的资源水平和信任值分别进行校验,检查生成智能合约MainC的体域网网关节点的资源水平和信任值能否满足任
务要求,若均满足,则;
S102、对每个雾节点的资源水平和信任值分别进行校验,筛选出均满足任务要求的雾节点集A;
S103、计算雾节点集A中每个雾节点的任务处理时延,再校验雾节点集A中每个雾节点的任务处理时延是否满足任务要求,筛选出满任务足要求的雾节点集B;
S104、对雾节点集B中每个雾节点的任务处理时延和信任值归一化处理,再计算雾节点集B中每个雾节点的适应度函数,找到适应度函数值最大的雾节点即为最优目标雾节点。
这里步骤S101中,若生成智能合约MainC的体域网网关节点的资源水平不满足要求,则说明生成智能合约MainC的体域网网关节点的资源水平不足以支持该体域网网关节点上传任务;若生成智能合约MainC的体域网网关节点的信任值不满足要求,则说明生成智能合约MainC的体域网网关节点发起的任务卸载请求可能属于安全攻击行为。出现上述两种情形时,均自动放弃该体域网网关节点的任务卸载请求,不进行后续步骤。
这里步骤S102中,若雾节点的资源水平不满足任务要求,则说明雾节点的资源水平不足以支持雾节点处理任务;若雾节点的信任值不满足任务要求,则说明雾节点可能属于恶意节点,可能会出现安全攻击行为。出现上述两种情形时,均自动放弃该雾节点,避免体域网网关节点将任务卸载至这类雾节点上而导致的网络资源浪费。
一般情况在步骤S103中,不一定总能找出满足任务处理时延要求的雾节点集B,对于未能找到满足任务处理时延要求的雾节点集B的情形,下一实施例中再详细描述。
S2、当区块链网络达成共识时,体域网网关节点获取智能合约MainC的执行结果,所述执行结果为最优目标雾节点,体域网网关节点将任务卸载至最优目标雾节点;
HUB节点从区块链中获取智能合约MainC的执行结果,根据执行结果将任务卸载到目标雾节点Ft,目标雾节点Ft对任务进行处理,处理完成后将任务处理结果广播到区块链网络,矿工对交易结果进行验证,验证通过以后,目标雾节点将结果上传到区块链网络,HUB节点从区块链中获取任务处理结果。
上述实施例在实施过程中,当有计算密集型任务需要卸载时,体域网网关节点HUB将任务卸载请求发布为区块链交易,交易通过智能合约自动完成,在交易执行的过程中首先需要对HUB节点的资源能力及可信度进行评估,以保证后续参与网络信任计算及任务卸载的资源和能量需求,同时排除恶意HUB节点发动网络内部攻击,保证系统效率与安全;其次,通过对fog节点的资源能力及可信度进行评估,对满足条件的任务卸载目标雾节点进行过滤和筛选,以保证fog有充足的能力和可信度进行任务处理服务。同时,通过引入信任机制可以防止恶意雾节点发动网络内部攻击。
在另一实施例中,还包括:
当共识未达成时,体域网网关节点生成智能合约ToCloudC,并将任务卸载到满足资源水平要求和信任值要求且距离最近的雾节点,由该雾节点根据智能合约ToCloudC决策是否需要将任务卸载到远端云处理。
由于在前一实施例中,对于未能找到满足任务处理时延要求的雾节点集B的情形,体域网网关节点根据RSSI(接受信号强度指示),从雾节点集A中找到距离自身最近的雾节点,并将任务卸载到该雾节点上,再由该雾节点根据智能合约ToCloudC决策是否需要将任务卸载到远端云处理。
具体地,智能合约ToCloudC通过函数ToCloudDecisionFun(·)实现,该函数包括:
其中,Tc为任务卸载到云端时的总时延(包括三部分:即HUB将任务上传到雾节点的传输时延、雾节点将任务上传到云的传输时延、任务在云端的处理时延上限值,这三个指标分别对应于公式(1)中的三项),Rb为HUB与fog之间的数据传输速率,Rc为fog与cloud之间的数据传输速率,D为任务数据量,为任务在云上执行的上限时间(可以通过离线机器学习算法进行预测);Td'eadline为更新后的任务期限;ToCloud为决策变量。
其中,Rb和D保存于智能合约MainC中,Rc和Td'eadline保存于智能合约ToCloudC中,智能合约ToCloudC被执行时,从智能合约MainC中获取Rb和D,再调用云端任务处理时延计算函数ToCloudDecisionFun(·),计算得到云端任务处理时延Tc,再比较Tc和Td'eadline,若云端任务处理时延Tc小于更新后的任务期限Td'eadline,则决策变量ToCloud=1,代表可以上传到云进行处理,否则任务失败。
上述实施例在实施过程中,为了进一步提高任务成功率,提高系统资源效率,当没有满足条件的雾节点时,HUB节点首先将任务卸载到距离最近的满足资源水平及信任值要求的雾节点,由此雾节点根据任务上传时延与任务期的限制等因素进行决策,以决定是否需要将任务上传到云端,避免了HUB节点直接将任务上传到云所带来的巨大能量消耗。
在另一实施例中,所述智能合约MainC中保存有任务编号、体域网网关节点的资源阈值系统设定的信任阈值Tth,还包含体域网网关节点资源校验函数HubCapCheckFun(·)和体域网网关节点信任值校验函数HubTrustCheckFun(·);
所述决策方案中,对生成智能合约MainC的体域网网关节点的资源水平和信任值分别进行校验的方法包括:
A1、获取体域网网关节点的资源水平Chub和信任值Thub,所述体域网网关节点的资源水平Chub和信任值Thub是根据体域网网关节点的相关信息分别预先评估计算并存储在区块链的;
具体地,所述区块链网络中预先部署有智能合约HubResC,所述智能合约HubResC中保存有各个体域网网关节点的相关信息,所述体域网网关节点的相关信息包括任务编号、总内存Mhub、剩余内存总能量Ehub、剩余能量/>所述智能合约HubResC还包含体域网网关节点资源评估函数HubCapCompFun(·);
根据体域网网关节点的相关信息评估体域网网关节点的资源水平Chub的方法包括:
基于智能合约HubResC,根据体域网网关节点的总内存Mhub、剩余内存总能量Ehub、剩余能量/>通过调用体域网网关节点资源评估函数HubCapCompFun(·),评估体域网网关节点的资源水平Chub
具体地,执行函数Chub=HubCapCompFun(·),以对体域网网关节点的资源水平Chub的进行评估:
将通过公式(3)获取的体域网网关节点的资源水平Chub信息保存于区块链网络中。
更具体地,所述体域网网关节点的相关信息还包括体域网网关节点信任值Thub、其他节点对本节点的信任评价值、与其它节点合作成功次数与其它节点合作失败次数/>权重系数γ,所述智能合约HubResC还包含体域网网关节点信任值计算函数HubTrustCompFun(·);
根据体域网网关节点的相关信息计算体域网网关节点的信任值Thub的方法包括:
基于智能合约HubResC,首先对参与信任评价的节点进行过滤,即选择信任值大于系统设定的信任阈值的节点,然后获取这些节点对本节点的信任评价值、与其它节点合作成功次数与其它节点合作失败次数/>权重系数γ,通过调用体域网网关节点信任值计算函数,计算体域网网关节点的信任值。
更具体地,执行函数Thub=HubTrustCompFun(·),以对体域网网关节点的信任值Thub的进行计算,包括:
a1、从区块链中读取其他信任值大于Tth的雾节点及其对本HUB节点的信任评价值其中/>表示第i个雾节点的信任值,/>表示第i个雾节点对本HUB节点的信任评价值,计算所有雾节点对本HUB节点的信任评价均值:
a2、从区块链节点中读取所有信任值大于Tth的HUB节点及其对本HUB节点的信任评价值其中/>表示第j个HUB节点的信任值,/>表示第j个HUB节点对本HUB节点的信任评价值,计算其他HUB节点对本HUB节点的信任评价均值:
a3、计算信任平均评价值:
a4、基于自身统计信息计算节点信任值:
a5、计算HUB节点全局信任值:
体域网网关节点的信任值Thub计算得到后保存于智能合约HubResC中。
A2、执行体域网网关节点资源校验函数HubCapCheckFun(·),比较体域网网关节点的资源水平Chub和体域网网关节点的资源阈值
具体地,执行函数C(hub)=HubCapCheckFun(·),以对有任务卸载请求的HUB节点的资源水平进行校验:
其中,C(hub)为指示变量,值为1时代表HUB节点的资源满足任务要求。
A3、执行体域网网关节点信任值校验函数HubTrustCheckFun(·),获取体域网网关节点的当前相关信息,计算体域网网关节点的当前信任值Thub,比较体域网网关节点的当前信任值Thub与系统设定的信任阈值Tth,计算体域网网关节点的当前信任值Thub与预先得到的执行体域网网关节点信任值Thub的差值,比较该差值与预设的信任值差值阈值。
具体地,执行函数Trustworthiness(hub)=HubTrustCheckFun(·),包括:
获取体域网网关节点的当前相关信息,调用智能合约HubResC中的体域网网关节点信任值计算函数HubTrustCompFun(·)计算体域网网关节点的当前信任值
对有任务卸载请求的HUB节点的当前信任值进行校验:
其中,σ为预设的信任值差值阈值,也保存于智能合约MainC中,Trustworthiness(hub)为指示变量,值为1代表HUB节点信任值满足任务要求。
经过计算得到的体域网网关节点的当前信任值Thub与预先计算得到的信任值Thub的差值小于信任值差值阈值σ,说明体域网网关节点的当前信任值是可信的,可以排除体域网网关节点的自夸攻击行为,也可以防止此次进行信任运算的雾节点发动舞弊攻击及坏嘴攻击等内部攻击行为。
上述实施例在实施过程中,利用区块链的强大安全特性可以有效抵制网络外部攻击,通过引入信任机制可以有效抵制网络内部恶意节点的安全攻击。为了更好地预防HUB节点的自夸攻击,舞弊攻击及坏嘴攻击,所设计的信任机制的设计兼顾来自其它节点的信任评价值及自我评价值,通过综合权衡得到节点全局信任
同时,上述实施例通过设计智能合约MainC,自动完成HUB节点过滤及选择工作,合理设计智能合约内置函数,实现了整个机制的高效、自动与安全运行。
在另一实施例中,所述智能合约MainC中保存有任务编号、雾节点的资源阈值系统设定的信任阈值Tth,还包含雾节点资源校验函数FogCapCheckFun(·)和雾节点信任值校验函数FogTrustCheckFun(·);
所述决策方案中,对每个雾节点的资源水平和信任值分别进行校验的方法包括:
B1、获取雾节点的资源水平Cfog和信任值Tfog,所述雾节点的资源水平Cfog和信任值Tfog是根据雾节点的相关信息分别预先评估计算并存储在区块链的;
具体地,所述区块链网络中预先部署有智能合约FogResC,所述智能合约FogResC中保存有各个雾节点的相关信息,所述雾节点的相关信息包括任务编号、雾节点位置Lfog、雾节点CPU频率率fcpu、可用CPU资源剩余存储S、总内存Mfog、剩余内存/>任务队列长度Qfog、剩余任务队列长度/>所述智能合约FogResC还包含雾节点资源和能力评估函数FogCapCompFun(·);
根据雾节点的相关信息评估雾节点的资源水平Cfog的方法包括:
基于智能合约FogResC,根据雾节点CPU频率fcpu、可用CPU资源总内存Mfog、剩余内存/>任务队列长度Qfog、剩余任务队列长度/>通过调用雾节点资源与能力评估函数,对雾节点的资源与能力进行评估,得到雾节点的资源水平Cfog
具体地,执行函数Cfog=FogCapCompFun(·),以对雾节点的资源水平Cfog的进行评估:
将通过公式(11)得到的雾节点的资源水平Cfog信息保存于区块链网络中。
更具体地,所述雾节点的相关信息还包括雾节点信任值Tfog、其他节点对本节点的信任评价值、与其它节点合作成功次数与其它节点合作失败次数/>权重系数μ,
所述智能合约FogResC中还包含雾节点信任值计算函数FogfTrustCompFun(·);
根据雾节点的相关信息计算雾节点的信任值Tfog的方法包括:
基于智能合约FogResC,根据信任值大于系统设定的信任阈值的其他节点对本节点的信任评价值、与其它节点合作成功次数与其它节点合作失败次数/>通过调用雾节点信任值计算函数FogfTrustCompFun(·),计算雾节点的信任值Tfog
更具体地,执行函数Tfog=FogfTrustCompFun(·),以对雾节点的信任值Tfog的进行计算,包括:
b1、从区块链中读取所有信任值大于Tth的雾节点及其对本雾节点的信任评价值其中/>表示第i个雾节点的信任值,表示第i个雾节点对本雾节点的信任评价值,计算其他雾节点对本雾节点的信任评价均值:
b2、从区块链节点中读取所有信任值大于Tth的HUB节点对本雾节点的信任评价值
其中/>表示第j个HUB节点的信任值,/>表示第j个HUB节点对本雾节点的信任评价值,计算HUB节点对本雾节点的信任评价均值:
b3、计算信任平均评价值:
b4、基于自身统计信息计算节点信任值:
b5、计算雾节点全局信任值:
雾节点的信任值Tfog计算得得到后保存于智能合约FogResC中。
B2、执行雾节点资源校验函数FogCapCheckFun(·),比较雾节点的资源水平Cfog和雾节点资源阈值
具体地,执行函数C(fog)=FogCapCheckFun(·),以检查雾节点的资源水平是否满足任务要求:
其中,S为雾节点的剩余存储,D为任务数据量,C(fog)为指示变量,值为1时代表雾节点的资源满足要求。
B3、执行雾节点信任值校验函数FogTrustCheckFun(·),获取雾节点的当前相关信息,计算雾节点的当前信任值比较雾节点的当前信任值/>与系统设定的信任阈值Tth,计算雾节点的当前信任值/>与预先得到的雾节点信任值/>的差值,比较该差值与预设的信任值差值阈值。
具体地,执行函数Trustworthiness(fog)=FogTrustCheckFun(·),包括:
获取雾节点的当前相关信息,调用智能合约FogResC中的雾节点信任值计算函数FogfTrustCompFun(·)计算体域网网关节点的当前信任值
检查雾节点的当前信任值是否满足任务要求:
其中,i表示当前校验的是第i个雾节点,σ为预设的信任值差值阈值,保存于智能合约MainC中,Trustworthiness(fog)为指示变量,值为1时代表雾节点的信任值满足要求。
雾节点的当前信任值与预先得到的信任值/>的差值小于信任值差值阈值σ,说明雾节点的当前信任值是可信的,可以排除雾节点的自夸攻击行为,也没有受到舞弊攻击及坏嘴攻击等安全攻击。
上述实施例在实施后,保留C(fog)为1且Trustworthiness(fog)为1的雾节点,组成雾节点集A。
上述实施例在实施过程中,利用区块链的强大安全特性可以有效抵制网络外部攻击,通过引入信任机制可以有效抵制网络内部恶意节点的安全攻击。为了更好地预防雾节点的自夸攻击,舞弊攻击及坏嘴攻击,所设计的信任机制的设计兼顾来自其它节点的信任评价值及自我评价值,通过综合权衡得到节点总信任
同时,上述实施例通过设计智能合约MainC,自动完成雾节点过滤及选择工作,合理设计智能合约内置函数,实现了整个机制的高效、自动与安全运行。
在另一实施例中,所述智能合约MainC中保存有任务需要的CPU周期数C、任务数据量D、体域网网关节点和雾节点间的数据传输速率Rb、任务期限Tdeadline,所述智能合约MainC中还包含任务处理时延计算函数ProDelayFun(·),所述智能合约MainC还保存有雾节点的任务队列负载所需要的时钟周期CQ及对应的CPU比率fQ
所述决策方案中,计算雾节点集A中每个雾节点的任务处理时延Tpro的方法包括:
调用任务处理时延计算函数ProDelayFun(·),根据任务需要的CPU周期数C、任务数据量D、体域网网关节点和雾节点间的数据传输速率Rb、雾节点的任务队列负载所需要的CQ及对应的CPU比率fQ,计算雾节点的任务处理时延Tpro
具体地,执行函数Tpro=ProDelayFun(·),计算雾节点的任务处理时延:
其中,k代表雾节点队列中的任务数,表示第i个任务负载所需要的时钟周期,/>表示第i个任务对应的CPU比率,/>是对当前任务分配的CPU频率的下限值,也保存于MainC中;
所述决策方案中,校验雾节点集A中每个雾节点的任务处理时延的方法包括:
调用任务处理时延计算函数ProDelayFun(·),比较雾节点的任务处理时延Tpro和任务期限Tdeadline
具体地,执行函数Tpro =ProDelayFun(·),以对雾节点的任务处理时延进行校验:
若雾节点的任务处理时延Tpro大于任务期限Tdeadline,则保留雾节点的任务处理时延Tpro,否则将雾节点的任务处理时延设置为无穷大(以对此雾节点进行直接排除)。
上述实施例实施后,将保留任务处理时延Tpro的雾节点,组成雾节点集B。
上述实施例实施过程中,通过设计智能合约MainC,自动完成雾节点过滤及选择工作,合理设计智能合约内置函数,实现了整个机制的高效、自动与安全运行。
在另一实施例中,所述智能合约MainC中保存有权重系数ζ,还包含最优目标雾节点选择函数FindTarFogFun(·)和通告函数NotifyFun(·);
对雾节点集B中每个雾节点的任务处理时延和信任值归一化处理,再计算雾节点集B中每个雾节点的适应度函数,找到适应度函数值最大的雾节点即为最优目标雾节点的方法包括:
执行函数FindTarFogFun(·):
先对雾节点集B中的雾节点的任务处理时延和信任值进行归一化:
其中,max(Tpro)是指雾节点集B中任务处理时延最大值,min(Tpro)是指雾节点集B中任务处理时延最小值,是指雾节点集B中当前信任值最大值,/>是指雾节点集B中当前信任值最小值。
再计算适应度函数,找到任务处理最佳目标雾节点:
FogId=argmax(FunVal) (24)
当选择出最优目标雾节点FogId后,执行函数NotifyFun(·),以通知有任务卸载请求的HUB节点将任务卸载到FogId的雾节点。
相应于上面的方法实施例,本发明实施例还提供了一种基于区块链的体域网任务卸载系统,下文描述的基于区块链的体域网任务卸载系统与上文描述的基于区块链的体域网任务卸载方法可相互对应参照。
一种基于区块链的体域网任务卸载系统,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行上述的基于区块链的体域网任务卸载方法。
上述实施例中,由于体域网网关节点HUB资源(计算、存储、能量)受限,因此引入雾计算进行体域网网关节点辅助对体域网计算密集型任务处理,上述实施例的创新之处在于任务卸载决策是基于区块链的分布式安全方法、任务卸载由智能合约自动完成、任务相关信息及任务处理结果可安全、自动保存在区块链中。
同时上述实施例中无需中心实体进行管理与决策,也不需要体域网网关节点HUB与雾节点进行频繁的信息交互。当HUB有计算密集型任务需要处理时,向区块链网络发起任务卸载(交易)请求,交易中包含智能合约,可以自动执行一系列函数,对HUB节点及雾节点的资源及信任,整个交易过程自动完成。因此,上述实施例最大的优势是基于智能合约的自动任务卸载及任务处理,可有效降低实体之间的信令开销,提高网络资源利用率。而且区块链强大的安全机制可以保证整个交易过程的安全。
另外上述实施例中设计目标雾节点选择算法,除了保证卸载任务的时延限以外,还充分考虑目标节点的可信度,设计信任值计算及评估算法,防止系统内恶意节点的内部网络攻击,确保体域网任务执行的安全性。
尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。

Claims (9)

1.基于区块链的体域网任务卸载方法,其特征在于,包括:
有任务卸载请求时,体域网网关节点生成智能合约MainC并将其广播至区块链网络中,以使所述智能合约MainC自动执行,其中,所述区块链网络由多个体域网网关节点和多个雾节点构成;
当区块链网络达成共识时,体域网网关节点获取智能合约MainC的执行结果,所述执行结果为最优目标雾节点,体域网网关节点将任务卸载至最优目标雾节点;
其中,所述智能合约MainC自动执行时,采取以下决策方案:
对生成智能合约MainC的体域网网关节点的资源水平和信任值分别进行校验,检查生成智能合约MainC的体域网网关节点的资源水平和信任值能否满足任务要求,若均满足,则;
对每个雾节点的资源水平和信任值分别进行校验,筛选出均满足任务要求的雾节点集A;
计算雾节点集A中每个雾节点的任务处理时延,再校验雾节点集A中每个雾节点的任务处理时延是否满足任务要求,筛选出满任务足要求的雾节点集B;
对雾节点集B中每个雾节点的任务处理时延和信任值归一化处理,再计算雾节点集B中每个雾节点的适应度函数,找到适应度函数值最大的雾节点即为最优目标雾节点;
所述智能合约MainC中保存有体域网网关节点的资源阈值、系统设定的信任阈值,还包含体域网网关节点资源校验函数和体域网网关节点信任值校验函数;
所述决策方案中,对生成智能合约MainC的体域网网关节点的资源水平和信任值分别进行校验的方法包括:
获取体域网网关节点的资源水平和信任值,所述体域网网关节点的资源水平和信任值是根据体域网网关节点的相关信息分别预先评估计算并存储在区块链的;
执行体域网网关节点资源校验函数,比较体域网网关节点的资源水平和体域网网关节点的资源阈值;
执行体域网网关节点信任值校验函数,获取体域网网关节点的当前相关信息,计算体域网网关节点的当前信任值,比较体域网网关节点的当前信任值与系统设定的信任阈值,计算体域网网关节点的当前信任值与预先得到的体域网网关节点信任值的差值,比较该差值与预设的信任值差值阈值。
2.如权利要求1所述的基于区块链的体域网任务卸载方法,其特征在于,还包括:
当共识未达成时,体域网网关节点生成智能合约ToCloudC,并将任务卸载到满足资源水平要求和信任值要求且距离最近的雾节点,由该雾节点根据智能合约ToCloudC决策是否需要将任务卸载到远端云处理。
3.如权利要求1所述的基于区块链的体域网任务卸载方法,其特征在于,
所述区块链网络中预先部署有智能合约HubResC,所述智能合约HubResC中保存有各个体域网网关节点的相关信息,所述体域网网关节点的相关信息包括任务编号、总内存、剩余内存、总能量、剩余能量,所述智能合约HubResC还包含体域网网关节点资源评估函数;
根据体域网网关节点的相关信息评估体域网网关节点的资源水平的方法包括:
基于智能合约HubResC,根据体域网网关节点的总内存、剩余内存、总能量、剩余能量,通过调用体域网网关节点资源评估函数,评估体域网网关节点的资源水平。
4.如权利要求3所述的基于区块链的体域网任务卸载方法,其特征在于,所述体域网网关节点的相关信息还包括体域网网关节点信任值、其他节点对本节点的信任评价值、与其它节点合作成功次数、与其它节点合作失败次数、权重系数,所述智能合约HubResC还包含体域网网关节点信任值计算函数;
根据体域网网关节点的相关信息计算体域网网关节点的信任值的方法包括:
基于智能合约HubResC,根据信任值大于系统设定的信任阈值的其他节点对本节点的信任评价值、与其它节点合作成功次数、与其它节点合作失败次数、权重系数,通过调用体域网网关节点信任值计算函数,计算体域网网关节点的信任值。
5.如权利要求1所述的基于区块链的体域网任务卸载方法,其特征在于,
所述智能合约MainC中保存有雾节点的资源阈值、系统设定的信任阈值,还包含雾节点资源校验函数和雾节点信任值校验函数;
所述决策方案中,对每个雾节点的资源水平和信任值分别进行校验的方法包括:
获取雾节点的资源水平和信任值,所述雾节点的资源水平和信任值是根据雾节点的相关信息分别预先评估计算并存储在区块链的;
执行雾节点资源校验函数,比较雾节点的资源水平和雾节点资源阈值;
执行雾节点信任值校验函数,获取雾节点的当前相关信息,计算雾节点的当前信任值,比较雾节点的当前信任值与系统设定的信任阈值,计算雾节点的当前信任值与预先得到的雾节点信任值的差值,比较该差值与预设的信任值差值阈值。
6.如权利要求5所述的基于区块链的体域网任务卸载方法,其特征在于,
所述区块链网络中预先部署有智能合约FogResC,所述智能合约FogResC中保存有各个雾节点的相关信息,所述雾节点的相关信息包括任务编号、雾节点CPU频率、可用CPU资源、剩余存储、总内存、剩余内存、任务队列长度、剩余任务队列长度,所述智能合约FogResC还包含雾节点资源与能力评估函数;
根据雾节点的相关信息评估雾节点的资源水平的方法包括:
基于智能合约FogResC,根据雾节点CPU频率、可用CPU资源、总内存、剩余内存、任务队列长度、剩余任务队列长度,通过调用雾节点资源与能力评估函数,对雾节点的资源与能力进行评估,得到雾节点的资源水平。
7.如权利要求6所述的基于区块链的体域网任务卸载方法,其特征在于,所述雾节点的相关信息还包括雾节点信任值、其他节点对本节点的信任评价值、与其它节点合作成功次数、与其它节点合作失败次数、权重系数,所述智能合约FogResC中还包含雾节点信任值计算函数;
根据雾节点的相关信息计算雾节点的信任值的方法包括:
基于智能合约FogResC,根据信任值大于系统设定的信任阈值的其他节点对本节点的信任评价值、与其它节点合作成功次数、与其它节点合作失败次数、权重系数,通过调用雾节点信任值计算函数,计算雾节点的信任值。
8.如权利要求6所述的基于区块链的体域网任务卸载方法,其特征在于,所述智能合约MainC中保存有任务需要的CPU周期数、任务数据量、体域网网关节点和雾节点间的数据传输速率、任务期限,所述智能合约MainC中还包含任务处理时延计算函数,所述智能合约MainC还保存有雾节点的任务队列负载所需要的时钟周期及对应的CPU比率;
所述决策方案中,计算雾节点集A中每个雾节点的任务处理时延的方法包括:
调用任务处理时延计算函数,根据任务需要的CPU周期数、任务数据量、体域网网关节点和雾节点间的数据传输速率、雾节点的任务队列负载所需要的时钟周期及对应的CPU比率计算雾节点的任务处理时延;
所述决策方案中,校验雾节点集A中每个雾节点的任务处理时延的方法包括:
调用任务处理时延计算函数,比较雾节点的任务处理时延和任务期限。
9.基于区块链的体域网任务卸载系统,其特征在于,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行权利要求1~8中任一项所述的方法。
CN202110802084.0A 2021-07-15 2021-07-15 基于区块链的体域网任务卸载方法和系统 Active CN113672911B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110802084.0A CN113672911B (zh) 2021-07-15 2021-07-15 基于区块链的体域网任务卸载方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110802084.0A CN113672911B (zh) 2021-07-15 2021-07-15 基于区块链的体域网任务卸载方法和系统

Publications (2)

Publication Number Publication Date
CN113672911A CN113672911A (zh) 2021-11-19
CN113672911B true CN113672911B (zh) 2023-12-15

Family

ID=78539222

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110802084.0A Active CN113672911B (zh) 2021-07-15 2021-07-15 基于区块链的体域网任务卸载方法和系统

Country Status (1)

Country Link
CN (1) CN113672911B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115460080B (zh) * 2022-08-22 2024-04-05 昆明理工大学 一种区块链辅助的时变平均场博弈边缘计算卸载优化方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110866067A (zh) * 2019-11-06 2020-03-06 华南理工大学 基于雾计算和区块链的体域网实时数据处理方法及系统
CN111770073A (zh) * 2020-06-23 2020-10-13 重庆邮电大学 一种基于区块链技术的雾网络卸载决策和资源分配方法
CN111866181A (zh) * 2020-08-10 2020-10-30 重庆邮电大学 一种基于区块链的雾网络中任务卸载优化方法
CN112839079A (zh) * 2020-12-30 2021-05-25 华南理工大学 基于区块链和软件定义网络的体域网任务卸载方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110866067A (zh) * 2019-11-06 2020-03-06 华南理工大学 基于雾计算和区块链的体域网实时数据处理方法及系统
CN111770073A (zh) * 2020-06-23 2020-10-13 重庆邮电大学 一种基于区块链技术的雾网络卸载决策和资源分配方法
CN111866181A (zh) * 2020-08-10 2020-10-30 重庆邮电大学 一种基于区块链的雾网络中任务卸载优化方法
CN112839079A (zh) * 2020-12-30 2021-05-25 华南理工大学 基于区块链和软件定义网络的体域网任务卸载方法及装置

Also Published As

Publication number Publication date
CN113672911A (zh) 2021-11-19

Similar Documents

Publication Publication Date Title
CN112181666B (zh) 一种基于边缘智能的设备评估和联邦学习重要性聚合方法
Wang et al. Crowdsourcing mechanism for trust evaluation in CPCS based on intelligent mobile edge computing
CN110610242B (zh) 一种联邦学习中参与者权重的设置方法及装置
CN100581119C (zh) 无线传感器网络分布式融合识别方法
CN110933091B (zh) 区块链通信节点验证方法、装置及电子设备
CN113672911B (zh) 基于区块链的体域网任务卸载方法和系统
CN111242304B (zh) O-ran系统中基于联邦学习的人工智能模型处理方法和装置
CN113918240A (zh) 任务卸载方法及装置
CN111340144A (zh) 风险样本检测方法、装置、电子设备及存储介质
CN115345212A (zh) 一种基于机器学习模型的控制方法和装置
CN112261120A (zh) 一种配电物联网云边协同任务卸载方法及装置
CN113850285A (zh) 基于边缘计算的输电线路缺陷识别方法及系统
CN111124439B (zh) 一种云边协同的智能动态卸载算法
CN112398917A (zh) 面向多站融合架构的实时任务调度方法和装置
CN116010228B (zh) 面向网络安全扫描的时间预估方法及装置
CN115545198B (zh) 一种基于深度学习模型的边缘智能协同推断方法及系统
CN115988462A (zh) 一种基于车路协同的边缘计算模块的调试方法
CN113900739A (zh) 一种多对多边缘计算场景下的计算卸载方法及系统
CN115016950A (zh) 一种基于多线程模型的数据分析方法及系统
CN113498077B (zh) 一种用于智能物联网保障低时延传输的通信方法及装置
CN110536303B (zh) 一种基于边缘移动节点的传感云信任评估方法和系统
CN113867942A (zh) 一种卷的挂载方法、系统及计算机可读存储介质
CN102158357B (zh) 水平分解的单类闭合分叉汇集排队网络性能的分析方法
CN114139713A (zh) 一种联邦学习方法、设备及系统
CN112257863B (zh) 网络参数确定方法、装置、区块链的节点及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant