首页> 中国专利> 一种移动云计算环境中能耗优化的合作任务迁移方法

一种移动云计算环境中能耗优化的合作任务迁移方法

摘要

本发明为一种移动云计算环境中能耗优化的合作任务迁移方法,在企业网络或者校园网中移动微云环境下,该迁移方法旨在让移动设备在受限的电量和有限的计算能力下,将任务迁移至网络内的其他设备或云端,减少网络内冗余的计算任务,提升网络中冗余计算任务的能耗效率,通过其他设备合作执行本地计算任务,让移动设备获取更强的计算能力,该迁移方法属于集中式调度,在控制器对任务执行的调度进行决策,权衡设备剩余电量、任务的计算能耗、任务的传输能耗和任务在执行时位置选择对共享执行结果所带来的影响。

著录项

  • 公开/公告号CN105656999A

    专利类型发明专利

  • 公开/公告日2016-06-08

    原文格式PDF

  • 申请/专利权人 清华大学;

    申请/专利号CN201510997341.5

  • 发明设计人 崔勇;张扬军;宋健;

    申请日2015-12-25

  • 分类号H04L29/08(20060101);

  • 代理机构61215 西安智大知识产权代理事务所;

  • 代理人贾玉健

  • 地址 100084 北京市海淀区100084信箱82分箱清华大学专利办公室

  • 入库时间 2023-12-18 15:46:39

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-12-28

    授权

    授权

  • 2016-07-06

    实质审查的生效 IPC(主分类):H04L29/08 申请日:20151225

    实质审查的生效

  • 2016-06-08

    公开

    公开

说明书

技术领域

本发明属于移动技术应用技术领域,设计移动云计算,特别涉及一种移动云计算 环境中能耗优化的合作任务迁移方法。

背景技术

云计算是一座基于互联网共享计算资源、存储资源、数据资源和应用资源的服务 方式,为其他设备在虚拟计算环境中提供强大的计算服务。有别于传统的计算服务,云计算 可以提供基础设施即服务,平台即服务,软件即服务三种服务模式。通过这三种服务模式, 云计算可为用户提供不同层面的按需服务。

随着云计算和移动互联网的快速发展,云计算服务也不在局限于台式机、笔记本 等个人电脑上,越来越多的移动终端设备也在通过移动网络来使用云的按需、易扩展服务, 来获取基础设施、平台和软件的资源。这种移动云计算和传统的云计算有着不同的特点。

移动设备一般都是系统资源受限的设备,如计算资源、存储容量、设备电量等有 限。在移动云计算中,移动终端可以通过将本地的任务迁移到其他设备或移动云执行的方 式来突破系统资源受限。这种任务迁移的方式可为移动设备缩减任务执行时间,减少能量 开销,获取更好的用户体验。不过任务迁移本身也需要消耗不少资源,如传输能耗、流量。如 何权衡移动设备上任务是否应该迁移,应该迁移到何处等问题成为移动云计算需要解决难 题。

现有任务迁移技术注重如何将任务动态或静态的划分,然后迁移至云端或其他设 备执行,令本地设备获取更强大的计算能力、更高效的执行任务。MAUI和ThinkAir提供函数 级任务迁移,不需要操作系统的特殊支持,但要求应用开发人员在开发时对应用的计算任 务进行细致的分类来进行任务迁移。CloneCloud使用虚拟机技术在云端建立任务迁移后执 行所需的环境。COMET允许计算任务离线程级别进行迁移并且不需修改应用源码。这些方案 关注于对计算任务进行静态或动态的划分,实现函数级、线程级、应用级的任务迁移。

Cloudlet提出一种新型的系统结构来实现任务迁移。在Cloudlet中,移动用户使 用虚拟机技术在就近的微云来部署定制软件服务,移动用户通过无线连接将本地计算任务 迁移到这些虚拟机中。从合作迁移的服务角度来看,移动设备只需要实现一个功能简单的 瘦客户端,通过可靠的无线连接使用网络中靠近用户侧计算、存储资源丰富的计算机集群。 这种在局域网内为移动用户提供计算服务的技术能够为用户带来高传输速率,低服务响应 时间,并且稳定的网络传输服务,并且提升任务迁移的安全性,避免将本地任务大量迁移到 互联网云端而导致的不安全因素。

这些微云通过计算迁移技术能够为移动设备带来更强大的计算、存储能力,但移 动设备本身的电量、计算、存储等资源严重受限。当网络分布着各种各样的移动设备时,如 何对计算任务迁移进行调度使得网络中冗余的任务能够高效的进行执行,并且最大化延长 设备使用时间,降低设备流量,成为一个很重要的问题。

发明内容

为了克服上述现有技术的缺点,本发明的目的在于提供一种移动云计算环境中能 耗优化的合作任务迁移方法,针对移动云计算的微云应用场景,使移动设备间通过计算任 务合作迁移来进行能耗优化,旨在让移动设备在受限的电量和有限的计算能力下,将任务 迁移至网络内的其他设备或云端,减少网络内冗余的计算任务,提升网络中冗余计算任务 的能耗效率,通过其他设备合作执行本地计算任务,让移动设备获取更强的计算能力。

为了实现上述目的,本发明采用的技术方案是:

一种移动云计算环境中能耗优化的合作任务迁移方法,在微云网络中部署微云控 制器,微云控制器周期性收集网络内部各设备的运行信息,当网络内部的设备发起任务迁 移请求时,控制器将周期性运行离线启发式算法,并根据离线启发式算法输出的任务决策 向量进行任务迁移,所述离线启发式算法的输出结果为整个调度方案的能耗E,每个任务调度的决策向量其中表示设备i上编号为h的任务, 算法包括如下步骤:

步骤一,对每个任务按照任务类型进行分类,相同任务类型T的任务属于同一任务 集合Set(T),每个任务集合按照任务的请求时间由远到近进行排列,初始化每个任务的决 策变量;

步骤二,对于每种任务的首任务,求出每单位流量节省能耗按照每 单位流量节省能耗非减顺序进行排序,生成任务类型序列Seq,其中为任务h在本地 执行时的能耗,为任务h迁移到云端执行时的能耗,n 为网络中的设备个数,为设备i传递到云端的无线传输功率,为设备i与云 端之间的传输速率,为任务h迁移时传入的数据量,为任务h迁移时输出的数据量, 为任务h迁移到云端执行时产生的流量,D(Chi)=αn+1(Chi)·(Dhin+Dhout),其中为决策变量;

步骤三,在满足出口流量约束的条件下,依次将任务序列Seq中各任务类型的首任 务迁移到云端;

步骤四,对于每一种任务分类集合中的每一个任务安装时间先后进行检查:

(1)如果任务类型T的首任务未迁移至云端,对于Set(T)中的每一个任务h=1→ |Set(T)|,即任务编号h的值为1到任务集中的任务数,选取迁移的服务器节点j满足 令将能耗E更新为E+ϵOij(Chi);

(2)如果该类型T的首任务已经迁移至云端:

a)令决策向量中将能耗E更新为

b)对于Set(T)中的其他任务,h=2→|Set(T)|,即编号为1的任务已经迁移至云 端,对其他编号的任务进行后续处理,选取迁移的服务器节点j满足ϵOij(Chi)=mink=1n(ϵOik(Chi)),αj(Chi)=1,将能耗E更新为E+ϵOij(Chi).

所述运行信息包括微云网络内部各设备之间的发送功率、接收功率、传输速率以 及各设备需要进行迁移的任务信息。

所述步骤一中每个任务的决策变量初始化为E=0。

与现有技术相比,本发明属于集中式调度,在控制器对任务执行的调度进行决策, 权衡设备剩余电量、任务的计算能耗、任务的传输能耗和任务在执行时位置选择对共享执 行结果所带来的影响。合作任务迁移的最优调度方案是NP难问题,本发明高效的启发式离 线算法,使得该机制能够离线实时对任务迁移进行调度,并达到近似最优的效果。

附图说明

图1是本发明微云环境下能量受限任务迁移场景图。

图2是本发明随着计算复杂度X变化的能量消耗情况示意图。

图3是本发明随着计算复杂度X变化的流量消耗情况示意图。

具体实施方式

下面结合附图和实施例详细说明本发明的实施方式。

如图1所示,本发明在计算时使用的模型如下:

WLAN中有n个无线设备,每个设备有m个任务,将任务集为表示为C={C1,C2,…, Cm},Cm表示第m个任务。在每个任务都对应着一个设备,表示属于设备i的任务h。对于每 个任务设备可以在本地执行、迁移到局域网内其他设备执行和迁移到云上执行。每次迁移 执行,可以消耗的能耗划分成计算能耗和迁移能耗。因此对于一个任务,可以刻画成 Type为任务的类型。为任务h迁移时传入的数据量,为任务h迁 移时输出的数据量。相同类型任务的计算能耗和输入输出数据量相同。

任务的计算能耗:任务计算时的主要能耗为CPU能耗,对于不同任务CPU能耗与设 备的类型、负载和时钟频率有很大关系。在本申请的模型中,假设任务需要Nh个CPU时钟 来完成,一种Nh的计算方式如下:

Nh=fX(Dhin)

函数fx由任务h的类型(type)所决定。对于gzip的应用,X的典型值为330。对于 X.264的视频文件,X的典型值为1900。在本申请中,任务计算能耗的表达方式为:

ϵCj(Chi)=Fj(Nh)

函数Fj表示设备j的CPU功率系数。如果设备j已经执行过和任务h相同类型的其他 任务并且设备上有运行结果缓存,设备j可以重复使用运行结果,则计算能耗接近0。

任务迁移能耗:WLAN的无线网络结构中,设备互相连接的网络可以抽象成图,可以 用图G=(V,L)表示。V是网络节点集,即为设备。L为网络中节点互连的边集,L(i,j)表示设 备i到设备j的无线链路。表示从设备i传递到设备j的无线传输功率,表示表示设备i 接收设备j的功率,表示设备i和j之间的当前传输速率。假设在Cloudlet的微云方案中控 制器可以实时的收集和存储任务执行信息,需要收集微云网络内部的迁移信息至少包括:

(1)微云网络内部各节点设备之间的发送功率:

(2)微云网络内部各节点设备之间的接收功率:

(3)微云网络内部各节点设备之间的传输速率:;

(4)各节点设备需要进行迁移的任务信息:

任务迁移到其他设备执行时,本地客户节点设备的能耗主要为传输能 耗,计算方式如下:

ϵLij(Chi)=ρTij·DhinφTij+ρTij·DhoutφTji

执行该任务的服务节点设备能耗由传输能耗和计算能耗构成。当服 务节点已经有缓存该任务的计算结果时,计算能耗服务节点的能耗计算方式如 下:

ϵRij(Chi)=ρTji·DhinφTij+ρTji·DhoutφTji+ϵCj(Chi)

当本地客户节点将任务迁移到云端时,能耗计算将不包括云端的传输能耗和计 算能耗。综上,任务迁移的能耗计算方式为:

ϵOij(Chi)=ϵLij(Chi)+ϵRij(Chi),j=1,...,n;ϵLij(Chi),j=n+1.

即为任务迁移的所有能耗,当j=n+1时任务将迁移至云端服务器,只计算 客户端节点的传输能耗。

任务迁移调度模型:

本发明设计的任务迁移调度方案是在控制器处进行实时的调度操作,当一节点设 备需要进行任务迁移时,由控制器进行调度决策计算。控制器通过离线启发式算法计算得 出决策向量如下:

α(Chi)=(α1(Chi),α2(Chi),...,αn+1(Chi))

向量中的每个维度取值为1表示客户设备节点i将任务迁移至节点设备j 上执行,当j=n+1时,表明迁移至云上执行。

每次调度的总能耗计算如下:

ϵ(Chi)=Σj=1n+1αj(Chi)·ϵOij(Chi)

每次任务迁移所产生的流量为:

D(Chi)=αn+1(Chi)·(Dhin+Dhout)

任务迁移调度模型的最优化目标为在满足流量要求的条件下,最小化微云内的调 度能耗,模型的数学表达如下:

minΣh=1mϵ(Chij)S.T.Σh=1mD(Chi)<Ψ,i=1,2,...,nΣjn+1αj(Chi)=1,αj(Chi){0,1},h=1,2,...,mj=1,2,...,n+1

可以将该任务迁移调度模型转换成01背包问题,将任务集视为背包要装的物品, 通过不同的装法来获取不同的能耗和流量。求最有解,即最小化能耗的装法是NP难,这就说 明在调度规模较大时利用现有的计算资源很难获得到最优调度方案。而微云的任务调度需 要在一段时间内收集够足够多的信息为每个任务迁移进行调度,调度方案必须要很快的能 够求解。因此本发明提出多项式时间复杂度的离线启发式调度算法。

离线启发式调度算法需要降低调度能耗,并且满足流量约束。因此先建立能耗和 流量的关系。定义每个任务迁移到云端时的单位流量能耗收益:任务在本地执行能耗为计 算能耗迁移到云端执行时能耗为由此产生的流量为因此任务h 迁移到云端时单位流量能耗收益为:

ϵCi(Chi)-ϵOi(n+1)(Chi)D(Chi)

对于所有任务根据任务类型(Type)进行划分,每种任务类型的任务集合记为Set (T)。|Set(T)|记为该任务类型需要执行的任务数。

任务迁移包括迁移到微云内其他设备和迁移到云端。当迁移到微云内其他设备 时,不产生外网流量。而在本发明的场景中,各设备节点能够存储任务执行的结果,后续相 同类型的任务可以权衡能耗收益情况下利用节点缓存的计算结果。

因此,本发明对不同类型的任务按照单位流量能耗收益进行排序,在满足流量约 束的前提Ψ下对各类型的首任务(编号为1的任务)是否迁移到云端进行决策,这样能够 确保微云内计算资源有限时能够求解计算复杂度的任务,并且能够获取到很好的流量约束 效果。对于未迁移至云端的其他任务,该离线启发式算法在微云内部根据选择最小能耗节点进行迁移,输出结果为:

(1)整个调度方案的能耗:E

(2)对于每一个任务调度的决策向量:α(Chi)=(α1(Chi),α2(Chi),...,αn+1(Chi))

算法执行步骤如下:

步骤一,对每个任务按照任务类型(Type)进行分类,Set(T)为任务类型均为T的任 务集合。将每个任务的决策变量初始化成E=0。

步骤二,对于每种任务类型的首任务求出每单位流量节省能耗按照非减顺序进行排序,生成任务序列Seq。

步骤三,在满足流量约束D<Ψ的条件下,依次将任务序列Seq中任务迁移到云端。

步骤四,对于每一个任务类型T中的每一个任务安装时间先后进行检查:

(1)如果该类型T的首任务未迁移至云端,对于Set(T)中的每一个任务h=1→| Set(T)|,选取迁移的服务器节点j满足令αj(Chi)=1,将能耗E更 新为E+ϵOij(Chi)

(2)如果该类型T的首任务已经迁移至云端:

a)令决策向量中将能耗E更新为

b)对于Set(T)中的其他任务,h=2→|Set(T)|,选取迁移的服务器节点j满足 ϵOij(Chi)=mink=1n(ϵOik(Chi)),αj(Chi)=1,将能耗E更新为E+ϵOij(Chi)

本发明的算法复杂度及性能:

在步骤二中,对每个类型的首任务进行排序,最坏的情况下为所有m个任务都属于 一类,时间复杂度为O(mlogm)。在步骤四中,需要为每个任务求最小能耗迁移节点,网络中 共有n个节点,每个任务最多需要计算n次,时间复杂度为O(m*n);

本发明算法的性能如图2、图3所示,EGA为本发明提出的离线启发式算法。COA算法 为小规模局部最优算法,随着规模的增长,时间复杂度会急剧增加。OTS为在线算法,PF-OTS 为在线比例公平算法。实验规模为50个设备,20种任务类型,5000个任务请求,数据传输使 用的状态如下:

实验结果表明当计算复杂度系数超过900时,本地执行和迁移到其他结点上执行 能量消耗过大,大部分任务将迁移至云端执行或共享执行结果。相对于OTS和PF-OTS算法, 离线启发式算法能够获取更低的能量消耗,不过也消耗更多的流量。这是因为离线启发式 算法能够将更多的任务迁移至云端执行。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号