移动云环境下一种计算迁移自适应中间件
作者单位:福州大学
学位级别:硕士
导师姓名:刘漳辉
授予年度:2017年
学科分类:08[工学] 080402[工学-测试计量技术及仪器] 0804[工学-仪器科学与技术]
摘 要:近年来,随着移动手持设备的普及,涌现出众多内容丰富的应用,使得移动设备的性能和能耗问题日益突出。计算迁移是目前较为流行的一种解决方案,它通过将移动应用的“计算任务从终端迁移到云服务器,来减轻终端设备计算负担,从而提高应用性能和降低电量消耗。移动云计算近年的研究主要集中在代码切割和迁移技术,假设移动代码被迁移到事先指定好的服务器或云。但实际上,计算的迁移是需要动态决定的。一方面,随着设备的移动,它的上下文环境(如位置,网络条件,可用的计算资源)在不断地变化。因此,就需要根据设备环境,选择最优的云资源用于迁移。另一方面,不同移动代码有着不同的计算复杂度和耦合度。因此,即使移动设备环境是一样的,不同移动代码仍可能需要在不同地方执行。然而,对于应用开发者来说,开发出支持上述特性的应用不是一件容易的事情。因此,自适应计算迁移方法的研究具有重大的意义。本文致力于研究在运行时动态选择最优云资源并按需迁移移动代码的方法,具体工作如下:(1)本文提出了一种支持应用中计算按需动态迁移的设计模式。应用只需按照服务粒度进行开发,它的不同部分就能够被本地或远程调用。此外,本文还引入了服务池的概念,使得应用可以同时使用多个云资源,改善迁移服务的可用性。(2)本文提出了一个评估模型,根据移动设备的上下文环境,动态地选择最优云资源进行迁移。首先,分别对应用计算任务,移动设备上下文环境和云资源计算能力进行建模。其次,提出了决策算法,通过利用历史数据以及当前设备环境信息,来计算减少的执行时间和网络传输时间。(3)本文实现了一种计算迁移自适应中间件来支撑上述的设计模式和评估模型。一方面,通过客户端和服务器端的适配器,按服务风格开发的应用中所有部分都能够被本地或远程调用。对于应用的每个部分,客户端的服务池中都维护了一个对应的可用服务列表。另一方面,在客户端收集历史数据(计算任务运行数据,移动设备上下文环境和云资源的计算能力)并建模,作为评估模型的输入。同时,系统还会不断地监测设备上下文环境为最优云资源的决策提供支持。为了验证我们提出的方法的可行性和有效性,我们通过两个实际应用对该中间件进行了全面评估。实验表明,我们的方法能够根据当前环境自适应地迁移计算;对于计算密集型应用,执行时间减少了 6%-96%,电量消耗降低了 60%-96%。