边缘云环境中安全任务卸载的效益最大化方法

文档序号:26003608发布日期:2021-07-23 21:21阅读:142来源:国知局
边缘云环境中安全任务卸载的效益最大化方法

本发明涉及一种任务卸载的效益最大化方法,特别是一种边缘云环境中安全任务卸载的效益最大化方法。



背景技术:

互联网和无线通信技术的发展使得人们非常方便地相互交流。近年来,新兴的5g移动网络提供了更高的网络带宽,移动设备和应用正在迅速增长并受到广泛的欢迎。在无线通信技术和高性能移动设备的推动下,各种移动服务和应用正在不断涌现。特别是随着人工智能技术的发展,越来越多的人工智能应用被开发和应用。然而,这类人工智能应用是典型的计算密集型应用,那么在一个移动设备上运行所有应用会导致不可接受的执行时间和能耗。

移动边缘计算将计算、存储和网络资源下沉至网络边缘。因此,移动设备可以将计算密集型的人工智能应用卸载到近端边缘节点,减少其电池消耗和任务完成时间。在真实场景中,边缘节点只部署了小规模的物理服务器,但同时要为大量的移动设备服务。幸运的是,边缘云计算架构的出现也允许边缘节点通过回程网络将计算密集型任务卸载到远端云。在这种情况下,边缘节点和远程云将共同应对资源有限的移动设备所面临的具有挑战性的人工智能应用。

但是,任务从边缘节点卸载到远程云会产生更长的数据传输时间,造成巨大的延迟。此外,在附近的边缘节点或远程云上运行移动应用程序会面临安全问题。因为数据和应用本身都是安全威胁的来源,可能会受到恶意云用户或外部攻击者的攻击。尽管在云计算和移动边缘计算中已经进行了大量的数据和网络安全的研究,但在边缘云环境中部署必要的安全保护机制也是一个重要挑战。

对于移动边缘计算中的任务卸载问题,能耗优化和延迟优化已经得到了广泛的研究。然而,上述工作集中在能量和延迟问题上,没有考虑到数据安全问题。使用安全服务来保护隐私数据已经在云计算和移动边缘计算中广泛采用。数据安全的相关工作从云用户和移动用户的角度考虑成本、时间和能耗优化,然而在边缘云环境中,边缘节点主要关注的是效益。



技术实现要素:

本发明针对目前的技术的不足,从边缘节点的角度,提出一种边缘云环境中安全任务卸载的效益最大化方法。

本发明方法的大体思想是:

安全服务包括机密性服务和完整性服务,运行机密性服务和完整性服务,根据其运行时间,得到安全等级的计算公式,根据两种服务下的联合概率风险,确定使用安全服务的等级,以保证使用的安全服务能够确保数据的安全性。综合考虑任务的安全需求和任务的截止日期,制定效益最大化(pm)问题。提出了一种考虑安全问题的任务卸载效益最大化方法,该方法采用遗传算法,考虑了任务的执行位置和顺序,并设计交叉和变异操作,来实现边缘云计算环境下总效益最大化。

本发明方法的具体步骤是

步骤(1)构建安全模型,确保使用的安全服务能够确保数据的安全性。

步骤(2)制定安全任务卸载的pm问题,考虑到任务的安全性,任务的截止日期限制以及远端云的费用,提出了在时间间隔τ时,边缘节点效益的计算公式。

步骤(3)种群初始化,分别产生任务计划的执行位置和执行顺序的m种方案,即种群中的m个个体。

步骤(4)种群中的m个个体进行交叉,变异操作,产生解决pm问题的不同方案。不断迭代,产生最终的任务卸载方案。

本发明的另一个目的是提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行上述的方法。

本发明的又一个目的是提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述的方法。

本发明的有益效果:

本发明引入了安全模型,确保数据的安全性,然后将安全保护与任务卸载相结合,基于遗传算法提出了一种边缘节点的安全任务卸载方法,以实现边缘云计算环境下总利润最大化。

附图说明

图1为本发明方法流程图;

图2为执行位置的交叉操作示意图;

图3为执行顺序的交叉操作示意图;

图4为执行位置的变异操作示意图;

图5为执行顺序的变异操作示意图;

具体实施方式

下面结合具体实施例对本发明做进一步的分析。

本发明所提供的边缘云环境中任务安全卸载的效益最大化方法如图1具体实施步骤如下:

步骤s1构建安全模型,安全服务包括机密性服务(confidentialityservices)和完整性服务(integrityservices)。

步骤s1-1运行所有的机密性服务和完整性服务得到它们的执行时间,假设运行服务的执行时间越长具有越高的安全等级,据此,机密性服务的安全等级计算为:

其中为第k个机密性服务的执行时间;为第k个机密性服务的安全等级;q1为人为定义的机密性服务执行时间基准,可以为0.85。

完整性服务的安全等级计算为:

其中表示第k个完整性服务的执行时间;表示第k个完整性服务的安全等级;q2为人为定义的完整性服务执行时间基准,可以为0.13。

步骤s1-2执行时间与数据大小成正比,可以得到:

其中表示1mb的数据在单个cpu下安全服务s的执行时间;d为数据大小;表示s服务的执行时间;n表示cpu的数量;cd表示机密性服务;ig表示完整性服务;

步骤s1-3假设外界攻击次数服从泊松分布,那么添加安全等级为的安全服务的任务的风险概率为如下的指数分布:

其中sds表示任务的安全需求;πs表示安全服务s的风险系数;表示第k个安全服务s的安全等级;

因此两种安全服务下的联合风险概率为:

步骤s1-4为了保证移动设备提交任务的安全性,满足任务要求的安全服务s的安全等级大于或等于sds

sds为云端和边缘节点对安全服务s的安全需求的最大值

sds=max{sds(edge),sds(cloud)},s∈{cd,ig}式(7)

其中sds(edge)表示边缘节点上的安全需求;sds(cloud)表示云端上的安全需求

在这种情况下,表示使用等级为的安全服务可以保证数据的安全性

步骤s2制定安全任务卸载的效益最大化问题

步骤s2-1设xi为任务ti的执行位置,xi=1表示任务ti被卸载到远程云端上并执行,xi=0表示任务ti在边缘节点(即本地)执行,即:

s(τ)={1,2,…,n(τ)},表示任务的索引编号集合,n(τ)为任务数量。

步骤s2-2使用x(τ)={x1,…,xi,…,xn(τ)}表示任务在时间间隔τ上的执行位置。使用y(τ)={y1,…,yi,…,yn(τ)}表示时间间隔τ处任务的执行顺序,其中yi≠yj,任意的两个任务不能有相同的执行顺序。

步骤s2-3任务ti的效益计算如下:

①任务在边缘节点上的效益计算:

表示第i个任务的结束时间实际值,表示第i个任务的截止日期期望值,ηi表示完成任务ti所获得的效益。

这表明如果某项任务不能在截止日期前完成,则边缘节点的效益为0。

②任务ti卸载到云端时的效益计算:

如果一个任务计划在远程云端上执行,那么在卸载之前,应该添加安全服务来保证数据的安全性。任务ti将会经历四个步骤,分别为添加安全服务,传输数据到云端,卸载安全服务,执行任务。任务ti的结束时间实际值包括五个部分:

其中是任务ti的开始时间,是任务ti在边缘节点上添加安全服务的时间,是任务ti传输数据到云端的传输时间,是任务ti卸载安全服务所消耗的安全时间,是任务ti在远端云上的执行时间。

对于任务ti,由于带宽是个常量,是固定的。为了保证以下条件应该满足:

此时

其中di表示任务ti的数据大小,wi表示任务ti的工作负载;

根据上式,我们可以计算任务ti在云端所需的最小资源

云端的费用为:

其中p表示1mb数据在单位时间的计算费用,表示任务ti在云端的总消耗时间。且

其中

在云上计算的任务ti的效益为:

步骤s2-4在时间间隔τ边缘节点的总效益计算如下:

步骤s3使用遗传算法,在每个时间间隔τ上使上述总效益ψ最大化。效益ψ(·)可以看做与x(τ)和y(τ)相关的函数,x(τ)={x1,…,xi,…,xn(τ)},表示任务的执行位置,y(τ)={y1,…,yi,…,yn(τ)},表示任务的执行顺序。x(τ)和y(τ)的搜索空间满足如下的公式:

s(τ)={1,2,..,n(τ)}

步骤s3-1种群初始化,随机产生一个数∈在[0,1]之间,如果∈≤0.5,xi=0,否则xi=1。

步骤s3-2重复步骤s3-1直至产生了n(τ)个执行位置。

步骤s3-3将复制s(τ)为s;

步骤s3-4随机产生一个正整数∈在[1,|s|]之间,让yi为s中的第∈个元素s∈,然后移除第∈个元素。即yi=s∈,s=s-{s∈};

步骤s3-5重复步骤s3-4直至产生了n(τ)个执行顺序。这样就产生了一个个体,分别包括任务计划的执行位置和执行顺序。

步骤s3-6重复步骤s3-1到步骤s3-5直至产生了m个个体,m为人为设定的种群个体的数量。

步骤s4交叉是关键的遗传操作,交叉的作用是产生后代,群体中的个体就可以更好地探索未知的解空间。变异是遗传算法的另一个重要操作,能够提高适应度值,防止算法过早收敛。

步骤s4-1从种群中选取两个个体,x1和x2分别表示这两个个体的执行位置向量。随机选取一个分界点,从这个分界点处x1和x2被分成两个子串交换他们的第二部分产生两个新的执行位置向量x12和x21,即见图2。

步骤s4-2y1和y2分别表示上个步骤选取的两个个体的执行顺序向量,随机选取分界点,从该分界点处被分为两个子串通过交换两个子串,得到了两个临时执行顺序向量y′12和y′21,即接下来,从前到后分别扫描两个临时个体,删除重复出现的数字,这个操作避免了执行顺序的冲突,此时产生两个新的执行顺序向量。见图3。

步骤s4-3循环步骤s4-1和步骤s4-2,直至种群中的所有个体都被选择完,此过程产生了m个新的个体。

步骤s4-4从种群中遍历所有个体执行如下:随机产生一个在[0,1]之间的数∈,如果∈<p1,跳过步骤s4-5,步骤s4-6,直接执行步骤s4-7,否则执行步骤s4-5,步骤s4-6的变异操作。

步骤s4-5x表示当前个体的执行位置向量,随机产生一个数正整数∈’在[1,n(τ)]之间,∈’是变异点,那么x∈’=|x∈’-1|。见图4。

步骤s4-6y表示当前个体的执行顺序向量,随机产生两个在[1,n(τ)]的正整数∈1和∈2,∈1≠∈2,交换产生一个新的执行顺序y′;见图5。

步骤s4-7种群选择阶段,将具有更优解的个体保存下来。此时我们已经有了m+m个个体,ψ(x(τ),y(τ))为适应性函数,分别计算每个个体的ψ值,从大到小进行排序,选择前m个个体保存下来。

步骤s4-8重复m次步骤(4)至(4.8),m表示遗传算法的最大迭代次数。排序最大的个体,即为最终的任务卸载方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1