本发明属于任务卸载,具体涉及一种基于边缘计算的dag实时任务卸载优化方法。
背景技术:
1、随着万物互联时代的快速到来和无线网络的普及,网络边缘的设备数量也快速增长;边缘计算(ec)作为新兴分布式计算架构,由于其更加靠近用户端的特性,在用户附近提供服务,保证了较低的网络延迟,能更好的满足物联网应用低时延要求。然而,应用实时处理仍是任务卸载中存在的主要挑战,非结构化数据和实时数据大量产生带来的实时处理需求是急需解决的问题。如何在资源有限的边缘环境中实现实时卸载是研究的主要目标。
2、为充分发挥边缘计算优势,进一步优化应用时延,许多研究工作提出了新的边缘计算任务模型,通过围绕dag任务模型进行优化建模,以增加任务并行度,减小处理时延;dag实时任务的卸载需要同时考虑多个任务在服务器上的执行时延和任务在服务器之间数据传输所耗的通信时延。部分研究者提出新的多用户资源分配方案和应用程序级别调整决策,以实现任务近实时处理。然而,这些方案仍无法有效满足实时任务卸载问题的低时延要求。
3、当应用在具有多个资源异构边缘服务器的场景中进行实时卸载时,如何保证具有依赖关系的dag应用子任务卸载策略的最小完成时间最优。大量实时任务卸载到同一服务器上时,如何避免服务器资源有限导致的任务等待和阻塞问题。服务器之间如何进行协同服务,以提高边缘计算资源利用率。均是亟待的主要问题。
技术实现思路
1、针对现有技术存在的不足,本发明提出了一种基于边缘计算的dag实时任务卸载优化方法,该方法包括:
2、s1:sdn控制器接收用户发送的待卸载实时任务并构建dag实时任务流程图,根据dag实时任务流程图构建任务最早完成时间模型;
3、s2:计算任务在不同服务器上的执行时间,得到初次任务卸载策略;根据初次任务卸载策略将所有任务卸载到服务器中的等待队列中;
4、s3:根据任务最早完成时间模型执行等待队列中具有依赖关系的实时任务;
5、s4:计算任务的剩余容忍时延并根据剩余容忍时延对服务器内等待队列中的剩余实时任务进行排序并构建待二次卸载任务集合;
6、s5:根据二次卸载任务集合中实时任务的剩余容忍时延得到二次卸载策略,根据二次卸载策略执行任务二次卸载;
7、s6:服务器执行等待队列中的实时任务,完成dag实时任务的卸载执行。优选的,所述任务最早完成时间模型表示为:
8、fi=min{fmax_i+di+pi}
9、其中,fi表示任务ri的最早完成时间,fmax_i任务ri的最大前驱任务最早完成时间,di表示任务的传输时延,pi表示任务的计算时延。
10、优选的,得到初次任务卸载策略的过程包括:
11、sdn控制器周期性获取每个服务器的执行速率和未完成任务的数据大小;根据实时任务的数据大小、服务器的执行速率和未完成任务的数据大小计算实时任务在不同服务器上的执行时间,选择执行时间最小的服务器作为卸载服务器。
12、进一步的,计算任务在服务器上的执行时间的公式为:
13、
14、其中,ti,j表示任务ri在服务器esj上的执行时间,pi,j表示任务ri在服务器esj上的计算时延,wj表示服务器esj上未完成的任务数据大小,qj表示服务器esj的执行速率。
15、优选的,构建待二次卸载任务集合的过程包括:从剩余实时任务中选出在限定容忍时延内无法完成的实时任务,根据剩余容忍时延对无法完成的实时任务进行排序,得到待二次卸载任务集合。
16、优选的,得到二次卸载策略的过程包括:根据二次卸载任务集合中实时任务的剩余容忍时延判断各服务器是否满足时延条件,若满足,选取传输时延和计算时延之和最小的服务器作为卸载服务器。
17、进一步的,时延条件为:
18、
19、其中,pi,k表示任务ri在服务器esk上的计算时延,di表示任务ri需要处理的数据量,vj,k表示服务器esj与服务器esk间的数据传输速率,wk表示服务器esk上未完成的任务数据大小,qk表示服务器esk的执行速率;ti′表示任务ri的剩余容忍时延。
20、本发明的有益效果为:
21、(1)本发明在满足任务实时处理的情况下,优化了dag任务的数据通信时延;根据任务之间的数据依赖进行处理,采用整数规划方式,将实时需求作为限制条件,最小化实时任务完成时间,得到优化后的卸载决策,有效的将服务器和dag实时任务进行映射。
22、(2)本发明在边缘环境面对大量实时任务的卸载场景下采用多服务器协同处理,提高了系统利用率,降低了服务器在大量任务执行时的拥塞,满足任务的实时处理。
1.一种基于边缘计算的dag实时任务卸载优化方法,其特征在于,包括:
2.根据权利要求1所述的一种基于边缘计算的dag实时任务卸载优化方法,其特征在于,所述任务最早完成时间模型表示为:
3.根据权利要求1所述的一种基于边缘计算的dag实时任务卸载优化方法,其特征在于,得到初次任务卸载策略的过程包括:
4.根据权利要求3所述的一种基于边缘计算的dag实时任务卸载优化方法,其特征在于,计算任务在服务器上的执行时间的公式为:
5.根据权利要求1所述的一种基于边缘计算的dag实时任务卸载优化方法,其特征在于,构建待二次卸载任务集合的过程包括:从剩余实时任务中选出在限定容忍时延内无法完成的实时任务,根据剩余容忍时延对无法完成的实时任务进行排序,得到待二次卸载任务集合。
6.根据权利要求1所述的一种基于边缘计算的dag实时任务卸载优化方法,其特征在于,得到二次卸载策略的过程包括:根据二次卸载任务集合中实时任务的剩余容忍时延判断各服务器是否满足时延条件,若满足,选取传输时延和计算时延之和最小的服务器作为卸载服务器。
7.根据权利要求6所述的一种基于边缘计算的dag实时任务卸载优化方法,其特征在于,时延条件为: