APP下载

移动边缘计算下移动Agent的任务安全迁移策略

2023-06-14郭欠霞牛海春

关键词:边缘抗体节点

郭欠霞,牛海春

(1.山西农业大学 基础部,山西 晋中 030801;2.山西硕成教育培训学校 研发部,山西 太原 030012)

随着5G技术及人工智能(AI, Artificial Intelligence)的快速发展,虚拟/增强现实、深度学习、低时延直播[1]等新兴科技逐渐应用于移动终端,移动设备处理计算密集型和时间敏感型应用任务与终端有限资源(电量、存储、CPU、网络等)的矛盾日益凸显[2]。通过在移动网络边缘为终端用户提供低时延、高可用、低成本的IT服务环境和强大的云计算能力,将终端任务迁移到更接近用户端的移动边缘计算(mobile edge computing, MEC)[3]迎来了它发展的一个契机。欧洲电信标准协会(European Telecommunications Standards Institute, ETSI)[4]于2014年建立了移动边缘计算规范工作组,并推动了移动边缘计算的标准化。MEC通过深度融合5G移动接入网与互联网业务,一方面用户通过无线接入网络,从而节省了带宽资源[5];另一方面通过将计算能力下沉到边缘服务器节点,为实现低时延服务提供了无限可能[6]。但是由于MEC环境下复杂的网络环境(宽带、蜂窝网、WIFI、蓝牙等)、多变的计算环境(云端、边缘端、终端等)、多样的终端(手机、平板、智能手表及其他可移动智能终端设备)以及不可控的各类用户(安全用户、恶意用户)等诸多因素影响,因此MEC中终端任务的迁移计算存在重大安全隐患。大致可分为如下两种:

第一种:中心节点控制力减弱

提供服务的边缘节点集远离中心节点,中心节点控制力减弱,许多传统云计算的安全机制难以应用,边缘节点遭受攻击及本身存在问题的风险值增大。

第二种:边缘节点集动态变化

边缘节点集是动态变化的,边缘节点集会随着终端任务移动而发生变化。随着终端及用户的移动,旧的边缘节点退出边缘节点集,新的边缘节点加入进来,所以新节点的安全性需要验证,同时也要考虑新旧节点加入及退出对整个边缘节点集安全影响。

目前,国内外学者在任务迁移安全及可靠性等方面进行了大量研究,其中ZengL等[7]指出云环境的工作流调度策略不仅要考虑CPU执行时间,还需要考虑内存、存储容量及其他资源,提出一种安全和费用感知工作流调度策略,该策略在市场可用的云服务商之间选中经济任务分配方案,为客户提供更短的完工时间及安全服务。LI Zhongjin[8]考虑在科学工作流中任务的异构特点,提出一种安全和成本感知调度算法,使任务在满足截止时间和风险约束的同时,最小化工作流执行成本。LIU J H等[9]提出了一种权衡迁移时延和可靠性的框架,设计基于启发式搜索、重构线性化技术和半定松弛3种算法来实现时延和可靠性的权衡。REZA R等[10]探讨了迁移计算中的用户隐私安全问题,建议使用智能分区或动态迁移,应默认采用“本地优先”方法,在处理敏感数据时避免使用网络。MTIBAA A[11]提出了一种名为HoneyBot的移动边缘计算平台防御技术,HoneyBot节点能够探测、追踪和区分D2D内部攻击。C. Zhou等[12]提出了一种基于智能免疫的安全防御系统来识别未授权的移动用户,通过识别功能、学习功能和调节功能保护整个系统的安全性,并提出了一种基于三阶段的智能免疫算法。HUSSAIN M[13]等在移动云计算中提出了一种任务卸载的信任度评估方法,基于移动用户对边缘服务器的打分结果对边缘服务器的声誉进行计算,为其他移动用户的任务卸载提供参考。

综合上述文献分析,大多数学者都对任务迁移过程的安全问题进行了一定的研究,但对于移动边缘计算下任务迁移同时考虑计算能力和安全能力的满足需求情况下,并不能最大程度上确保计算任务迁移到服务节点的安全性。本文充分利用移动Agent的迁移特性,并通过风险采集、风险计算和风险反馈流程构建基于移动Agent安全风险计算模型,然后用动态的免疫算法对节点抗风险值进行动态免疫规划,在任务计算和安全计算时间满足任务截止时间的前提下实现任务迁移的安全能力最大化,研究并提出了移动边缘计算下移动Agent任务安全迁移策略。

1 移动Agent的安全风险模型

移动Agent技术是一项涉及多类学科的、处于国际研究前沿的新兴技术,移动Agent技术是internet和人工智能领域Agent相结合的产物[14]。移动Agent通过封装数据和代码,可以同时携带多任务在异构网络环境下以异步自治的方式来执行任务[15-16]。该计算模式与在地理上或逻辑上异构部署的MEC环境完美契合。根据一定的迁移策略,移动Agent装载迁移任务,将任务迁移到MEC环境中满足需求的边缘节点执行。服务与边缘节点存在唯一对应关系,所有边缘节点通过拓扑结构组成一个连通网络(可靠或非可靠的)。

本文MEC环境下的移动Agent任务风险架构涉及三大部分,分别为环境交互模块、风险计算模块、记忆库等模块。移动Agent任务风险架构如图1所示。

图1 移动Agent的任务风险计算架构

其中,MEC环境交互模块则动态搜集用户需求集,以及边缘节点用户位置、流量负载、风险发生概率等的相关实时信息。记忆库保存需求类型与服务类型的对应关系,以及边缘节点的服务及抗风险能力等参数,记忆库的容量有限,它根据迁移策略进行更新。

风险计算模块采用管道/过滤器风格进行构建,每个模块都有一组输入和输出,构件读取输入的数据流,经过内部处理,然后产生输出数据流。这种风格的连接件支持不同类型的风险计算模型的组合及并行处理,因此将整个系统的输入/输出行为看成是多个风险计算模块行为的有机组合。

风险计算模型由风险采集组件、风险处理和风险反馈三个组件以及它们之间的连接单元组成,其中风险采集组件主要实现迁移节点的风险相关数据采集,风险处理模块主要实现风险数据的计算处理,风险反馈组件主要实现风险值的记录及更新。风险计算模型,如图2所示。

图2 风险计算模型

移动Agent通过封装需求、风险计算以及记忆库等模块在该模型中,当移动Agent迁移到MEC环境下的某一个边缘节点时,迁移规划模块会动态获取当前MEC环境中符合需求类型的服务集合,然后根据一定的迁移策略完成移动Agent的任务迁移。迁移成功后,风险计算模块则动态更新记忆库信息,以实现服务参数信息的实时更新。

风险采集组件负责对MEC环境边缘节点的风险数据采集。移动Agent的迁移任务对不同的风险类型有不同的期望值,同时不同边缘节点也能提供对应类型的安全保障。移动Agent在任务迁移到下一个目标节点前,迁移规划模块会对MEC环境的各边缘节点的安全风险进行采集。移动Agent采集过程中组件会与不同边缘节点进行直接信息交互,同时组件还会受到第三方边缘节点的间接信息推荐,因此,组件会综合直接和间接两个方面进行迁移任务的风险信息采集。

风险处理模块主要负责接收不同类别风险采集模块传过来的初始风险数据,并通过数据清洗、数据集成、数据计算等步骤来通过计算风险值来量化目标节点的抗风险能力。

风险处理模块计算出节点的抗风险能力后,风险反馈组件负责更新服务节点风险值的记录,并输出到移动Agent的记忆库中或者作为其它的风险采集组件的信息采集来源。如果用户或边缘节点发生移动,MEC节点集的安全能力也会动态发生变化,即旧节点的退出或新节点的加入,此时节点抗风险能力会发生变化。

2 移动Agent的安全风险计算策略

2.1 免疫算法的目标优化

动态免疫算法的目标优化方法优化了MEC环境下的任务安全迁移策略,根据得到的最优迁移目标得到近似任务抗风险能力最大化的目标。由于MEC环境边缘节点抗风险能力的优化目标是一个NP问题,传统算法仅适用于问题规模比较小的情况,当问题的解空间随着规模的增大而呈现指数级增长时,传统算法往往无法解决,免疫算法则可以用较低的复杂度和较短的计算时间得到问题的最优解。因此本文设计了一种动态免疫算法来优化该问题以保障需求计算时间和安全计算时间之和满足任务截止时间的基础上,实现任务迁移的抗风险能力Ah最大化。

免疫算法(Immune Algorithm, IA)[17]是以人工免疫系统理论为基础,在体细胞理论和网络理论的启发下,实现的类似于生物免疫系统的抗原识别、细胞分化、记忆和自我调节功能的一类智能优化算法。免疫算法通过让种群的抗体不断促进、抑制等相互作用进化产生新的抗体,在一定迭代次数后得到近似最优的抗体。本文通过引入免疫算法,用户需求和边缘节点服务能力统一定义在抗原和抗体种群中,在实际任务迁移的服务节点选择上,同时考虑满足任务的计算需求和安全需求,移动Agent安全风险计算模型进行动态免疫规划。下面具体介绍基于动态免疫算法的任务安全迁移策略。

亲和度算子:免疫规划通过亲和度函数来评价抗体的优劣程度,亲和度的大小表示了抗体与抗原(或者抗体)的匹配程度,亲和度值越高则代表抗体越能满足抗原的需求,选中的概率越大。本文中,亲和度的计算涉及计算能力、时长、风险值等众多要素。亲和度计算如式(1)所示。

(1)

式(1)中,f(Agm,Abn)表示边缘节点中抗体Abn与对应抗原Agm的亲和度,L1、L2分别表示抗体服务能力维度和抗体抗风险维度,cn,q和dm,q分别表示抗原Agm的第q维需求值和抗体Abn的第q维服务能力值,cn,p和dm,p分别表示抗原Agm的第p维风险值和抗体Abn的第p维抗风险值,γ及λ为调整因子,并且γ+λ=1。

抗体库中的每一个服务值同时对应着抗原的一个需求值,为避免单个维度的参数过大或过小对整体亲和度值的影响,这里定义G(x)为调整函数,xm,p>0,xn,p>0,则G(x)计算如式(2)所示。

(2)

式(2)中,调整函数G(x)为分段函数,G(x)函数值大于1并且最大值收敛于1。xm,p和xn,p分别表示抗体Abm的第p维需求值和抗体Abn的第q维服务值,xm,p/xn,p的值可以看作是连续的。

由亲和度定义可知,抗体的产生不仅受到抗原的刺激,同时也受到已有抗体的影响,因此同样需要计算抗体间的亲和度。并且,抗体间亲和度的计算具有方向性,抗体Abm与抗体Abn的相互作用的亲和度之和为0,如式(3)所示。

f(Abm,Abn)+f(Abn,Abm)=0

(3)

浓度算子:抗体浓度在一定程度上反映了抗体种群的多样性,当某种抗体浓度过高时,就说明抗体种群中的同类型抗体趋于过度集中,可能会出现局部最优化,进而使算法过早成熟。因此需要对浓度过高的抗体进行抑制,以保证抗体种群的多样性。抗体浓度计算如式(4)所示。

(4)

式(4)中,d(Abi)为边缘节点集合中的抗体浓度,M为边缘节点中的抗体个数,S(Abi,Abj)代表两个抗体Abi和Abj之间的相似度,相似度计算如式(5)所示。

(5)

式(5)中,f(Abi,Abj)表示抗体Abi和Abj之间的亲和度;s为相似度阈值。

期望值算子:对抗体的质量进行评价需要综合考虑抗体的亲和度和抗体浓度两个方面,通过计算抗体的期望值,可以消除那些低期望值的抗体,促进高亲和度、低浓度的个体,因此期望值的选择影响边缘节点任务的安全迁移。期望值函数计算如式(6)所示。

e(xi)=αf(xi)-βd(xi)

(6)

式(6)中,e(xi)代表抗体xi的期望值,f(xi)和d(xi)分别代表抗体亲和度和抗体浓度,α、β分别代表抗体亲和度和抗体浓度的权重系数。在一般情况下,亲和度较大而浓度较低的抗体应该具有较高的期望值。通过这个公式能有效地抑制相似抗体的数量,避免免疫算法的未成熟收敛。

2.2 移动Agent的动态免疫算法

MEC环境下的免疫规划,移动Agent通过装载迁移任务,根据风险计算模块计算各节点抗风险值并迁移到符合用户需求的边缘节点。本文中的动态免疫算法首先抽取抗原和抗体特征值,然后计算亲和度算子、计算浓度算子及期望值算子,最后通过动态抗体的促进及抑制,以及更新记忆库信息等几个方面进行最终目标节点的选择。移动Agent动态免疫算法流程图,如图3所示。

图3 移动Agent动态免疫算法流程图

动态免疫算法的详细步骤如下:

Step1:初始化抗原。移动Agent运行内核根据需求发起任务迁移请求,免疫模块根据用户需求集合解析出抗原Ag,并抽取多维度需求特征集,然后提交给记忆库。

Step2:风险值计算。风险计算模块通过风险采集、风险处理及风险反馈三个组件计算边缘节点抗风险值,并更新到移动Agent记忆库中。

Step3:生成抗体集。记忆库受到抗原Ag刺激,根据需求-服务关系过滤出边缘节点对应的资源服务类型及操作,剔除需求计算时间和安全计算时间不满足任务截止时间的节点,生成抗体集。

Step4:期望值算子计算。根据公式计算抗体的亲和度算子、浓度算子及对应期望值算子,期望值是评价一个抗体优劣的标准。

Step5:抗体的促进与抑制。抗体种群中某种抗体浓度过高时,可能会出现局部最优化问题,因此需要对浓度过高的抗体进行抑制,算法返回到Step3继续执行。

Step6:抗体选择。根据轮盘赌选择算法对期望值满足阈值条件的节点进行选择,移动Agent进行任务迁移。

Step7:记忆库更新。若移动Agent迁移成功,抗体集把亲和度高于原记忆细胞的n个抗体信息更新到记忆库中,以维持多样性;若移动Agent迁移失败,则跳回到Step2继续执行,直到任务迁移成功。

在移动Agent迁移成功以后,风险计算模块需要对记忆库进行维护,维护的准则遵循抗体的演化,包括抗体的类型变迁、边缘节点信息更新等操作,这样就使得抗体的信息能够准确地反映当前状态下边缘节点的信息。

3 实验及性能分析

3.1 仿真环境设置

在视频直播等高并发低延时场景中,直播音视频任务通过MEC边缘节点就近处理各项子任务,如直播加水印、鉴黄/截图、录制、转码和分发等,以实现任务的网络低时延,大幅度提升用户体验感。本实验通过MATLAB R2018b模拟MEC下拥有50个边缘节点服务器的处理视频直播任务的场景,对应于200次的任务安全迁移进行了仿真分析,任务的抗风险能力愈强则其被攻击的概率愈小,因此本文用迁移任务被攻击概率进行结果的对比。实验中预设了多台恶意主机,以增大移动Agent的迁移任务中的被攻击概率,并在实验模拟了几种常见的攻击,如DDOS攻击、非法授权、代码篡改以及其他攻击。仿真参数设置如表1所示。

表1 仿真参数

3.2 仿真结果分析

实验采用了三种算法分别模拟了移动Agent携带直播任务进行了200次任务迁移,并以迁移结果的被攻击率进行对比分析。一种是本文提出的移动Agent的动态免疫算法,通过对边缘节点信息特征形成抗体集,由风险计算模块进行迁移选择,对比方法则是一般的选择算法以及一般免疫算法。不同算法被攻击率结果变化曲线,如图4所示。

图4 不同算法被攻击率变化曲线

由图4中可以看出,三种算法在任务迁移的初级阶段被攻击的概率都比较高,基本维持在45%左右,但是随着迁移次数的增加,一般免疫算法及动态免疫算法因其具有记忆功能而被攻击率出现了显著的下降,并且迁移后期基本不再受到攻击风险的影响;对比一般免疫算法及动态免疫算法可知,由于动态免疫算法需要计算边缘节点的抗风险能力等情况,在迁移初期会出现被攻击概率比一般免疫算法略高的情况,但随着迁移次数的增加,动态免疫算法的被攻击概率较一般免疫算法出现了更大幅度的下降,且更早趋于稳定状态。

实验采用三种不同的系数分别对三种算法模拟移动Agent携带直播任务进行了200次的任务迁移,并以迁移结果的被攻击率进行对比分析。当α=0.1,β=0.9时,抗险值受间接抗风险能力影响较大;当α=0.5,β=0.5时,表示抗险值受直接抗风险能力和间接抗风险能力影响相同;当α=0.9,β=0.1时,表示抗险值受直接抗风险能力影响较大。通过分析可以看出,三种系数的移动Agent在迁移前期的被攻击率都比较高,但是随着迁移次数的增加被攻击率都快速降到了较低的状态,但是当β影响因子较大时,由于迁移初始阶段的间接抗风险数据搜集不足,所以对目标节点的选择存在误差,因此初始阶段参数β值越大,移动Agent被攻击率越大。

一般选择算法下系数与被攻击率曲线图,如图5所示。

图5 一般选择算法下系数与被攻击率曲线图

可以看出随着迁移次数的增加,移动Agent的被攻击率出现了一定程度的下降,但是被攻击率波动相对比较大。

一般免疫算法下系数与被攻击率曲线图,如图6所示。

图6 一般免疫算法下系数与被攻击率曲线图

可以看出随着迁移次数的增加,移动Agent的被攻击率出现了一定程度的下降,并且逐渐趋于稳定状态。但是在迁移初期,由于间接风险的数据不足,所以对目标节点的选择存在误差,因此初始阶段参数β值越大,移动Agent被攻击率越大。

本文提出的动态免疫算法下系数与被攻击率曲线图,如图7所示。

图7 动态免疫算法下系数与被攻击率曲线图

可以看出随着迁移次数的增加,移动Agent的被攻击率出现了快速的下降,并且最终趋于一个稳定状态。

上述实验的模拟结果表明,本文提出的移动边缘计算环境下移动Agent的任务安全迁移免疫算法的任务迁移过程中被攻击概率明显低于对比的一般选择算法及一般免疫算法,在一定程度上保障了移动Agent的安全迁移过程。

结语

MEC下移动Agent的任务安全迁移策略,通过借助移动Agent代理技术,并结合MEC的环境特点,充分利用移动Agent的迁移特性,构建了移动Agent安全风险计算模型,并通过风险采集、风险计算和风险反馈流程综合评估边缘节点的抗风险值,然后用动态的免疫算法对节点抗风险值进行动态免疫规划,在任务计算和安全计算时间满足任务截止时间的前提下实现任务迁移的安全能力最大化。最后实验结果表明,本文提出的任务安全迁移方案在MEC中大大降低了迁移任务的被攻击率,具有一定的鲁棒性。

猜你喜欢

边缘抗体节点
CM节点控制在船舶上的应用
Analysis of the characteristics of electronic equipment usage distance for common users
基于AutoCAD的门窗节点图快速构建
一张图看懂边缘计算
抗BP5-KLH多克隆抗体的制备及鉴定
抓住人才培养的关键节点
乙肝抗体从哪儿来
Galectin-7多克隆抗体的制备与鉴定
Gly-HC1/EDTA放散法用于HDN抗体放散试验的确认
在边缘寻找自我