发明内容
为解决上述边缘计算中任务卸载存在卸载结果不可靠的问题,本发明提供了一种在边缘计算中基于区块链的高可靠任务卸载***及方法。本发明卸载技术方案包括区块链中基于优先级的卸载方法和基于博弈论的卸载结果验证方法。整个卸载策略部署在区块链智能合约中以确保整个卸载过程的可见性和可追溯性。
为了实现以上目的,本发明采取以下技术方案:
一种基于区块链的边缘计算任务卸载***,包括无线网络设备单元和MEC服务器单元。无线网络设备单元包含多个通过网络连接的物联网设备。
无线网络设备单元包含多个物联网设备,例如物联网传感器,这些物联网设备从物理环境中收集各种物联网应用程序的数据信息,并将任务信息转发到MEC服务器单元来执行任务计算;
MEC服务器单元包含多个MEC服务器,用于实现区块链的共识机制和根据部署在MEC服务器上区块链网络中的智能合约实现无线网络设备签署注册和任务卸载。
进一步的,无线网络设备单元完成物联网设备签署注册到MEC服务器上的区块链网络,并且注册认证信息会被存储在智能合约中。
进一步的,无线网络设备中的物联网设备转发从物理设备收集或用户上传的数据信息到MEC服务器上区块链网络中的智能合约中。
进一步的,MEC服务器单元中的智能合约根据上传任务信息,通过基于优先级的任务卸载方法,选择合适的MEC服务器进行任务卸载。
进一步的,通过智能合约中基于博弈论的卸载结果验证方法,对计算结果进行交叉验证。上述MEC服务器单元中的智能合约会将卸载过程以及计算结果验证记录在区块链中。
进一步的,上述MEC服务器单元会将计算结果返回到发送任务和数据信息的物联网设备处。
本发明基于区块链的边缘计算任务卸载方法,包括以下步骤:
S1.通过物联网设备上传卸载任务信息到区块链的智能合约中;
S2.根据要卸载的任务信息,通过基于优先级的卸载方法,选择合适的边缘服务器进行任务卸载;
优选的,假设无线网络设备上传的任务集合M={1,2,...,m},该任务集合可以表示不同类型计算任务的集合,用
描述卸载任务i的属性,u
i是任务i上传数据的大小,c
i表示完成任务i所需的CPU周期数,z
i表示输出结果的数据大小,t
i表示计算任务的最大延迟容差,最大延迟容差表示该任务所能容忍的最大延迟。
优先队列PQ中的任务按照任务延迟容差从小到大进行排序,并且队列中任务的顺序会根据新加入的任务动态调整。任务从队尾放入优先队列,每次在优先队列中选择队首任务进行卸载。
进一步优选的,通过计算出物联网设备通信传输范围内每个MEC服务器各自的卸载时延,选择时延最优的MEC服务器进行任务卸载计算,选择次优的MEC服务器进行计算结果的交叉验证。MEC服务器计算出卸载任务结果后,将所有结果记录到部署在区块链中的智能合约中。
S3.通过智能合约中基于博弈论的卸载结果验证方法,对计算结果进行交叉验证;
优选的,通过让两个MEC服务器完成同一任务,制定合理的交易规则,使理性的MEC服务器不会相互勾结和作弊。在没有共谋的情况下,可以通过检查两个MEC的结果来进行交叉验证。本方法通过博弈的扩展形式对智能合约中的博弈进行证明。通过将其部署在以太坊智能合约上,结合智能合约中的交易规则实现博弈算法。因此,客户只需要支付给两个MEC服务器费用和少量交易费用就可以使用智能合约来实现计算。
该方法中的博弈通过博弈的扩展形式,以决策树的形式来表示博弈方的可能行为,以此来求纳什均衡解。此处,用户记为Client,卸载MEC服务器记为U1,验证MEC服务器记为U2,该智能合约具体介绍如下:
验证智能合约发起方为Client,验证MEC服务器U2签署注册该合约,U2需要在该验证合约中发送任务卸载结果。当U2举报不诚实的行为发生,就会引入第三方可信机构对卸载结果进行验证。假设当任务完成时用户需支付MEC服务器的支出为w,MEC服务器需要的计算成本为c,获取任务的押金为d,第三方可信机构验证费用为e。
在正常合理情况下,以下关系显然成立:
w≥c:边缘服务器获得收益通常情况下大于其计算成本。
e>2w:第三方可信机构计算任务花费应大于用户支付给两个MEC服务器所需金额。否则不需要使用MEC服务器,客户只使用第三方可信机进行计算。
如果MEC服务器出现不诚实的行为,e由该MEC服务器支付,一个诚实的客户只需雇两个MEC服务器再加上智能合约的交易成本即可。此外,为满足理想的纳什均衡,在智能合约中设定限制条件d>c+e。
优选的,扩展式博弈树的任意节点表示该博弈进行中的每一个可能的状态。博弈从唯一的初始节点开始,通过由MEC服务器采取的行动来决定到达终端节点的路径,此时博弈结束,MEC服务器得到相应的收益。每个非终端节点只属于一个参与博弈的MEC服务器;参与者在该节点选择其可能的行动,每个可能的行动通过边从节点到达另一个节点。该博弈总共分为三个阶段:第一阶段,验证MEC服务器U2发现U1出现不诚实的行为,可以选择举报该行为或者不举报该行为;第二阶段,由卸载MEC服务器U1选择行动,卸载MEC服务器U1会选择返回正确计算结果或者返回错误计算结果;第三阶段,由验证MEC服务器U2选择行动,验证MEC服务器U2会选择返回正确计算结果或者返回错误计算结果。根据智能合约中交易规则,双方MEC服务器为了获得对自己最高的收益,U2会选择不举报并且U1和U2都会返回正确的计算结果,到达最终的纳什均衡点,并且均获得w-c的收益。
S4.将卸载过程以及计算结果验证记录在区块链中,并将任务卸载的结果传输回无线网络设备单元。
本发明一种在边缘计算中基于区块链的高可靠任务卸载的技术方案具有以下优点:通过使用区块链技术,保证边缘计算任务卸载过程的可追溯性与可见性;通过基于优先级的任务卸载方法,更加能合理的满足对当前卸载任务有不同时延要求用户的需求;通过基于博弈论的卸载结果验证方法,保证计算结果的正确性和可验证性,从而提高任务卸载的质量。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式。本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
本发明针对现有边缘计算中任务卸载存在的缺陷,提供了一种在边缘计算中基于区块链的高可靠任务卸载***及方法。
实施例一
本实施例提供一种基于区块链的边缘计算任务卸载***,如图1所示,其包括无线网络设备单元和MEC服务器单元。无线网络设备单元由多个物联网设备组成;MEC服务器单元由多个MEC服务器组成。
无线网络设备单元,用于获取用户和无线传感器收集的任务数据,并将数据信息转发至部署有智能合约的MEC服务器单元。
无线网络设备由物联网设备组成,包括各种传感器、摄像头等,通常部署在各种不同的环境中,例如智能汽车、建筑物、街道等,其数据主要用于智能交通、智能建筑等***应用中。由于无线网络设备本身的计算能力有限而无法对收集的数据进行处理,因此需要将任务卸载到有计算能力和一定存储空间的设备进行卸载。
MEC服务器单元,用于实现区块链的共识机制和根据部署在MEC服务器上区块链网络中的智能合约实现无线网络设备签署注册和任务卸载。区块链网络由多个MEC服务器组成,区块链节点会部署在多个边缘计算节点上。
边缘服务器节点可分为代理MEC服务器节点和普通MEC服务器节点。代理MEC服务器节点负责区块链网络中智能合约的部署,添加或更改卸载策略。普通MEC服务器单元负责对无线网络设备单元上传的任务信息和数据进行计算处理。
每个MEC服务器都能与区块链上的智能合约进行交互,通过智能合约中卸载策略将任务卸载到这些MEC服务器上,从选择合适的MEC服务器到任务卸载过程和验证计算结果的过程都会记录在区块链中,以便追溯。
如图2所示为本实例提供的一种基于区块链的高可靠任务卸载流程图,包括如下步骤:
S1.通过物联网设备上传卸载任务信息到区块链的智能合约中。
S2.根据需要卸载的任务信息,通过基于优先级的卸载方法,选择合适的边缘服务器进行任务卸载。
S3.通过智能合约中基于博弈论的卸载结果验证方法,对计算结果进行交叉验证。
S4.将卸载过程以及计算结果验证记录在区块链中,并将任务卸载的结果传输回无线网络设备单元。
在步骤S1中,无线网络设备单元上传任务信息到区块链网络中的智能合约中,并将任务上传信息记录到区块链中,根据智能合约中任务卸载策略来选择MEC服务器进行任务卸载。
在步骤S2中,在该卸载***中,卸载策略方法起着关键作用。目前,常规的任务卸载策略的设计考虑多个因素,例如:物联网设备与MEC服务器距离,MEC服务器租赁成本,MEC服务器计算能力等。在本实施例中提出区块链中基于优先级的卸载方法,具体的,假设无线网络设备上传的任务集合M={1,2,...,m},该任务集合可以表示不同类型计算任务的集合,用
描述卸载任务i的属性,u
i是任务i上传数据的大小,c
i表示完成任务i所需的CPU周期数,z
i表示输出结果的数据大小,t
i表示计算任务的最大延迟容差,最大延迟容差表示该任务所能容忍的最大延迟。
该模型中无线网络设备和MEC服务器之间的数据通信采用频分多址技术(frequency division multiple access,FDMA)。FDMA技术通过将信道的带宽划分为单独的非重叠频率子信道并将每个子信道分配给单独的用户,从而允许多个用户通过单个通信信道(例如同轴电缆或微波束)发送数据。用户可以通过以子信道的频率在载波上对其进行调制来发送数据。在FDMA技术中,信道被分为多个子信道,各子信道无线电传播速率和信道带宽以及信道衰落有关。因此该模型中各层网络设备之间任务卸载传输速率可表示为:
其中,Hi为信道增益,Hi=di r,di为无效网络设备单元到MEC服务器单元距离,r为信道衰落因子,Bi为信道的带宽,Pi为信道所传输信号的平均功率,N为信道内部的高斯噪声功率。
根据任务卸载传输速率,任务数据传输延迟可表示为
任务卸载到MEC服务器任务计算延迟可表示为
其中,fi为MEC服务器计算频率。
MEC服务器将任务计算结果传回延迟可表示为
任务卸载总时延可表示为
t=t1+t2+t3
优先队列PQ中的任务按照任务延迟容差从小到大进行排序,并且队列中任务的顺序会根据新加入的任务动态调整。任务从队尾放入优先队列,每次在优先队列中选择队首任务进行卸载。
进一步的,通过计算出物联网设备通信传输范围内每个MEC服务器各自的卸载时延,选择时延最优的MEC服务器进行任务卸载计算,选择次优的MEC服务器进行计算结果的交叉验证。MEC服务器计算出卸载任务结果后,将所有结果记录到部署在区块链中的智能合约中。
在步骤S3中,通过智能合约中基于博弈论的卸载结果验证方法,对计算结果进行交叉验证。具体的,通过让两个MEC服务器完成同一任务,制定合理的交易规则,使理性的MEC服务器不会相互勾结和作弊。在没有共谋的情况下,可以通过检查两个MEC的结果来进行交叉验证。本方法通过博弈的扩展形式对智能合约中的博弈进行证明。通过将其部署在以太坊智能合约上,结合智能合约中的交易规则实现博弈算法。因此,客户只需要支付给两个MEC服务器费用和少量交易费用就可以使用智能合约来实现计算。
以下是本实例将在合约中使用的货币变量,它们都是非负的。
c:边缘服务器计算任务的成本。
e:调用第三方可信机构重新计算任务并解决问题的费用纠纷。
d:边缘计算需要向客户支付的押金,以便获得这份工作。
w:客户同意支付给边缘服务器计算以完成任务的金额。
在正常合理情况下,以下关系显然成立:
w≥c:边缘服务器获得收益通常情况下大于其计算成本。
e>2w:第三方可信机构计算任务花费应大于用户支付给两个MEC服务器所需金额。否则不需要使用MEC服务器,客户只使用第三方可信机进行计算。
如果出现不诚实的行为,e由该MEC服务器支付,一个诚实的客户只需雇两个MEC服务器再加上智能合约的交易成本即可。此外,为满足理想的纳什均衡,在智能合约中设定限制条件d>c+e。
设计该博弈算法的主要困难是如何避免反制。客户可以通过向诚实MEC服务器提供额外奖励并更改平衡来,从而使共谋不太可取。但是,一旦不诚实的MEC服务器知道客户提供了什么,它们便可以创建反合约,以便勾结再次成立。这个循环可以无休止地进行下去。
为了逃避循环,该博弈方法不是通过反击共谋,而是激励MEC服务器报告共谋。如果签订了该智能合约并举报了串通,第三方可信机构将介入,验证计算结果并决定谁作弊。反合约是没有意义的,因为一旦涉及到第三方可信机构,一个MEC服务器的收益就仅取决于它是否不诚实,而不取决于另一个MEC服务器的行为。
本实例提出的基于博弈论的卸载结果验证方法,该博弈通过博弈的扩展形式,以决策树的形式来表示博弈方的可能行为,以此来求纳什均衡解。此处用户记为Client,卸载MEC服务器记为U1,验证MEC服务器记为U2.。该智能合约具体介绍如下:
验证智能合约发起方为Client,需要验证MEC服务器U2签署注册该合约,U2需要在该验证合约中发送任务卸载结果。当U2举报不诚实的行为发生,就会引入第三方可信机构对卸载结果进行验证。
如图3所示是本实施例提供的一种基于扩展式博弈树的卸载结果验证方法示意图。
具体的,图中扩展式博弈树的任意节点V表示该博弈进行中的每一个可能的状态。博弈从唯一的初始节点V0开始,通过由MEC服务器采取的行动来决定到达终端节点的路径,此时博弈结束,MEC服务器得到相应的收益。每个非终端节点只属于一个参与博弈的MEC服务器;参与者在该节点选择其可能的行动,每个可能的行动通过边从节点到达另一个节点。该博弈总共分为三个阶段:第一阶段,此时博弈处于V0状态,验证MEC服务器U2发现U1出现不诚实的行为,可以选择举报该行为或者不举报该行为;第二阶段,由卸载MEC服务器U1选择行动,卸载MEC服务器U1会选择返回正确计算结果或者返回错误计算结果;第三阶段,由验证MEC服务器U2选择行动,验证MEC服务器U2会选择返回正确计算结果或者返回错误计算结果。根据智能合约中交易规则,双方MEC服务器为了获得对自己最高的收益,U2会选择不举报并且U1和U2都会返回正确的计算结果,到达最终的纳什均衡点,并且均获得w-c的收益。
综上,本发明提出一种基于区块链的高可靠任务卸载***及方法。本发明***架构支持物联网设备的移动性,并允许它们随时加入或离开;通过区块链技术,保证边缘计算任务卸载过程的可追溯性与可见性;通过基于优先级的任务卸载方法,更加能合理的满足对当前卸载任务有不同时延要求用户的需求;通过基于博弈论的卸载结果验证方法,保证计算结果的正确性、可验证性以及卸载任务的质量。
上述实施例仅为本发明的较佳可行实施例和所运用技术原理。本发明所属技术领域的技术人员可以对所描述的具体实施例做其他补充或修改,或采用其他方式的替代。因此,虽然通过以上实施例使本发明目的及优点更加清楚,但是本发明不仅仅限于以上实施例。所以本发明书不应理解为对本发明的限制。