论文部分内容阅读
云端融合计算是大数据发展的产物,是当前主流的一种计算范型,它是多种计算形态的结合,其发展经历了两个阶段,形成两种不同的架构:移动计算和云计算融合的云/端融合架构;边缘计算出现之后,终端、边缘节点、云计算中心三者结合的云边端融合架构。在云端融合中,计算迁移(Computation Offloading)是一种重要的计算模式,即终端设备通过向远程具有较强计算能力的设施(边缘节点或者云服务器)迁移部分计算以达到加速计算和节约终端能耗的目的。计算迁移是一项复杂的技术,涉及应用程序的任务划分,运行时决策以及任务在边缘节点和云端之间的协同调度。而且,在不同的云端融合架构下,计算迁移所面临的挑战也不同,主要表现在以下几个方面。
在云/端融合环境下,现有的计算迁移框架提供了一些任务划分和计算迁移执行的通用方法,但是面向特定应用(如云游戏)的计算迁移机制的实现亟待解决。这种实现与应用程序的特征密切相关,表现为适配应用程序执行流程的任务划分,选择合适的迁移粒度,以及优化云和端之间的数据传输以减少延迟,而相关方面的研究比较缺乏。在云边端融合环境下,由于引入了边缘节点,计算迁移的首要任务是构建适应云、边、端三层架构的框架以及任务的迁移决策,即决策任务是否迁移以及迁移至何处执行。现有的计算迁移框架往往由终端根据运行时资源供需情况独立决策任务是否迁移,这种方式将造成对资源的“贪婪”索取和无序竞争,不适合边缘节点这样资源相对有限的设施,导致多任务并发执行时性能的下降。此外,由于边缘节点的部署具有自组织、松耦合和广分布的特性,这种无中心化的分布式架构对于任务调度的负载均衡提出挑战。同时,计算迁移应用类型众多,不同类型应用的延迟特性不同(延迟敏感或者延迟容忍),在云边端融合环境下,设计适配不同应用程序延迟特性的任务调度策略是一个新的挑战。
为了应对上述的研究挑战,适应云端融合架构的演变,在面向特定应用的任务划分,任务迁移的动态决策,以及任务的分布式调度等三方面开展研究:在云/端融合环境下面向特定应用的计算迁移机制方面,以典型应用云游戏为例,提出了一种基于细粒度计算迁移的云游戏运行机制LiveRender。LiveRender重新划分游戏的执行流程,分离游戏逻辑执行与画面渲染,并迁移逻辑执行至云端,构建了一种基于“图形流”的云游戏运行方式。为了优化云和端之间的数据传输以降低响应延迟,LiveRender实现了三种数据压缩机制:图形帧内压缩、图形帧间压缩和图形数据缓存。实验结果表明,LiveRender相比传统的“视频流”云游戏能够节省58%的带宽,并降低77%的响应延迟。
在云边端融合环境下计算迁移框架和决策机制方面,提出了一个能够感知终端、边缘节点和云三层架构的计算迁移框架Echo。Echo实现了基于边缘节点集中决策的决策机制,该方式根据一种抢占式但保证任务QoS(Quality of Service,服务质量)的调度算法预估任务在边缘节点上的完成时间,随后根据预估值将任务放置在最短完成时间的平台上(边缘节点、云或者终端)。此外,Echo还实现了编程模型、边缘节点发现、应用程序代码自动分析、基于对象压缩的数据传输优化等计算迁移相关机制。实验结果表明,Echo相比传统的计算迁移框架在任务的平均延迟、终端能耗等方面都有明显的降低,
在云边端融合环境下面向计算迁移的多任务多节点的任务调度方面,提出了一种分布式的应用程序延迟感知的任务调度机制Petrel。首先,Petrel实现了一种基于节点负载信息“随机采样”的负载均衡策略,提升了系统性能并降低了调度开销。然后,针对计算迁移应用程序延迟特性的差异,设计了一种延迟感知的自适应调度算法,对于延迟敏感型应用采取“贪婪”的调度策略,对于延迟容忍型应用则采用“尽力服务”的调度策略。实验结果表明,Petrel在任务的平均加速比、最大任务完成时间以及任务完成率等方面均大幅优于现有调度策略。
综上所述,在云端融合环境下,围绕实现低延迟的计算迁移机制,提出了面向特定应用的任务划分和延迟优化机制,适配三层架构的计算迁移框架和决策机制,以及分布式的延迟感知的自适应任务调度机制,从不同的方面解决了现有研究存在的不足。
在云/端融合环境下,现有的计算迁移框架提供了一些任务划分和计算迁移执行的通用方法,但是面向特定应用(如云游戏)的计算迁移机制的实现亟待解决。这种实现与应用程序的特征密切相关,表现为适配应用程序执行流程的任务划分,选择合适的迁移粒度,以及优化云和端之间的数据传输以减少延迟,而相关方面的研究比较缺乏。在云边端融合环境下,由于引入了边缘节点,计算迁移的首要任务是构建适应云、边、端三层架构的框架以及任务的迁移决策,即决策任务是否迁移以及迁移至何处执行。现有的计算迁移框架往往由终端根据运行时资源供需情况独立决策任务是否迁移,这种方式将造成对资源的“贪婪”索取和无序竞争,不适合边缘节点这样资源相对有限的设施,导致多任务并发执行时性能的下降。此外,由于边缘节点的部署具有自组织、松耦合和广分布的特性,这种无中心化的分布式架构对于任务调度的负载均衡提出挑战。同时,计算迁移应用类型众多,不同类型应用的延迟特性不同(延迟敏感或者延迟容忍),在云边端融合环境下,设计适配不同应用程序延迟特性的任务调度策略是一个新的挑战。
为了应对上述的研究挑战,适应云端融合架构的演变,在面向特定应用的任务划分,任务迁移的动态决策,以及任务的分布式调度等三方面开展研究:在云/端融合环境下面向特定应用的计算迁移机制方面,以典型应用云游戏为例,提出了一种基于细粒度计算迁移的云游戏运行机制LiveRender。LiveRender重新划分游戏的执行流程,分离游戏逻辑执行与画面渲染,并迁移逻辑执行至云端,构建了一种基于“图形流”的云游戏运行方式。为了优化云和端之间的数据传输以降低响应延迟,LiveRender实现了三种数据压缩机制:图形帧内压缩、图形帧间压缩和图形数据缓存。实验结果表明,LiveRender相比传统的“视频流”云游戏能够节省58%的带宽,并降低77%的响应延迟。
在云边端融合环境下计算迁移框架和决策机制方面,提出了一个能够感知终端、边缘节点和云三层架构的计算迁移框架Echo。Echo实现了基于边缘节点集中决策的决策机制,该方式根据一种抢占式但保证任务QoS(Quality of Service,服务质量)的调度算法预估任务在边缘节点上的完成时间,随后根据预估值将任务放置在最短完成时间的平台上(边缘节点、云或者终端)。此外,Echo还实现了编程模型、边缘节点发现、应用程序代码自动分析、基于对象压缩的数据传输优化等计算迁移相关机制。实验结果表明,Echo相比传统的计算迁移框架在任务的平均延迟、终端能耗等方面都有明显的降低,
在云边端融合环境下面向计算迁移的多任务多节点的任务调度方面,提出了一种分布式的应用程序延迟感知的任务调度机制Petrel。首先,Petrel实现了一种基于节点负载信息“随机采样”的负载均衡策略,提升了系统性能并降低了调度开销。然后,针对计算迁移应用程序延迟特性的差异,设计了一种延迟感知的自适应调度算法,对于延迟敏感型应用采取“贪婪”的调度策略,对于延迟容忍型应用则采用“尽力服务”的调度策略。实验结果表明,Petrel在任务的平均加速比、最大任务完成时间以及任务完成率等方面均大幅优于现有调度策略。
综上所述,在云端融合环境下,围绕实现低延迟的计算迁移机制,提出了面向特定应用的任务划分和延迟优化机制,适配三层架构的计算迁移框架和决策机制,以及分布式的延迟感知的自适应任务调度机制,从不同的方面解决了现有研究存在的不足。