APP下载

移动云计算研究进展与趋势

2018-02-08崔勇宋健缪葱葱唐俊

中国学术期刊文摘 2018年11期
关键词:云端能耗终端

崔勇 宋健 缪葱葱 唐俊

1 引言

随着移动互联网的飞速发展和移动应用的极大丰富,移动终端已经成为人们工作生活不可或缺的一部分。移动支付、移动医疗、移动游戏及虚拟现实等日益复杂的移动应用对移动终端的计算能力、存储容量、电池容量以及安全性提出了更高的要求。然而,由于重量、大小和散热等因素的限制,移动终端的计算、存储资源与传统的非移动设备相比一直存在很大的差距,特别是移动终端有限的电池容量,严重影响了用户的应用体验。为了突破移动终端计算、存储和电池等资源限制,为移动用户提供更加丰富的应用,将云计算引入移动环境,移动云计算(mobile cloud computing,MCC)作为一种新的应用模式应运而生。

1.1 移动云计算的定义与特点

移动云计算的主要目标是应用云端的计算、存储等资源优势,突破移动终端的资源限制,为移动用户提供更加丰富的应用以及更好的用户体验。其定义一般可以概括为移动终端通过无线网络,以按需、易扩展的方式从云端获得所需的基础设施、平台、软件等资源或信息服务的使用与交付模式。

移动用户通过基站等无线网络接入方式连接到Internet上的公有云。公有云的数据中心分布部署在不同的地方,为用户提供可扩展的计算、存储等服务。内容提供商也可以将视频、游戏和新闻等资源部署在适当的数据中心上,为用户提供更加丰富高效的内容服务。对安全性、网络延迟和能耗等方面要求更高的用户,可以通过局域网连接本地微云,获得具备一定可扩展性的云服务。本地微云也可以通过Internet连接公有云,以进一步扩展其计算、存储能力,为移动用户提供更加丰富的资源。

移动云计算由云计算发展而来,天然继承了云计算的应用动态部署、资源可扩展、多用户共享以及多服务整合等优势。另外,移动云计算还具有终端资源有限性、用户移动性、接入网异构性以及无线网络的安全脆弱性等特有属性。

1.2 移动云计算主要研究范畴

移动云计算研究领域涵盖广泛,范围涉及无线网络、移动计算、云计算等多个领域的相关技术。目前已经有一些移动云计算相关技术的综述文献。Fernando等人和Rahimi等人给出了移动云计算的定义、体系框架,并重点介绍了移动云计算的典型应用场景及主要的计算迁移应用。

本文对当前移动云计算的主要研究工作进行归类和梳理。该研究体系分为3层:最下层是移动云计算面临的主要挑战,包括移动终端资源受限性、用户移动性以及一系列的安全问题;第2层对这些挑战对应的主要关键技术及其重要研究成果进行总结与分析,主要包括计算迁移、基于移动云的位置服务、移动终端节能以及数据安全与隐私保护等;最上层则重点介绍了在这些关键技术支撑下的移动云计算新型应用。

计算迁移作为移动云计算的核心技术,主要解决移动终端的计算和存储资源受限问题,它以整个应用或部分代码/数据等形式,将移动终端的存储、计算等任务迁移到云端数据中心或高性能服务器上执行,是移动终端获得灵活、高效服务的基本手段。学术界已经针对扩展移动终端的计算、存储能力、减少服务延迟、节约终端能耗等不同优化目标提出了一系列计算迁移方案。然而,为了设计高效可靠的计算迁移系统,还需要综合考虑终端负载、任务属性、网络状况以及应用环境等多种测度。近年来,相关研究领域也开始得到学术界的重视。

用户的移动性是移动云计算的重要特点之一。位置服务旨在精确高效地定位用户位置,保证用户可以在持续移动过程中,随时随地按需获取云端数据中心提供的丰富多样、灵活高效的个性化定制服务。然而,传统的定位技术已经无法完全适应智能家居中的病人监护、体感游戏等移动云计算新型应用的需求。当前学术界的研究热点已经主要集中到室内轨迹追踪与导航、精确定位与动作识别等新型位置服务方面。然而,这些新型技术大多基于大量信息的收集、存储以及复杂的运算处理,这是资源受限的移动终端无法胜任的。因此,大多数解决方案都基于云计算的模式设计实现。这些新型技术的发展必将进一步促进移动云计算应用的丰富,但也越来越依赖云计算的资源优势。

移动云计算面临的另一个主要挑战是移动终端电池容量的限制。受移动终端体积、重量,以及电池技术水平的限制,终端可用电量很难在短期内获得大幅提升。为了延长移动终端的可用时间,提高用户体验,移动终端节能技术也一直得到学术界和工业界的广泛关注。当前终端节能技术研究的热点主要集中在不同无线网络环境下的传输节能,以及定位服务等能耗密集型应用节能等方面。

另外,随着移动云计算应用的迅速拓展与深入,人们已经越来越习惯将通信录、照片等个人信息备份在云端,甚至直接应用手机完成电子支付。因此,移动云计算环境中的数据安全与隐私保护也愈发重要。移动云计算环境中,不仅要保证用户外包到不可信云端的数据安全性、完整性,而且要保证用户身份、访问行为等信息的隐私安全,避免移动终端由于受到恶意代码攻击造成的信息被窃、数据丢失,还要考虑移动终端的资源受限等问题,设计满足移动终端需求的轻量级安全方案。云端数据安全、用户隐私保护以及移动终端安全已经成为近年来信息安全领域研究的重要方向。

本文重点围绕计算迁移、基于移动云的位置服务等移动云计算的支撑技术,以及移动终端节能、数据安全与隐私保护等移动云计算涉及的主要问题,介绍移动云计算的研究现状,特别是最新的研究进展;然后对移动云计算的典型应用模式进行了深入分析;最后讨论了移动云计算存在的一些问题以及未来的发展趋势。

2 计算迁移技术

计算迁移技术的出现最早可以追溯到Cyber Foraging概念的提出,通过将移动终端的计算、存储等任务迁移到附近资源丰富的服务器执行,减少移动终端计算、存储和能量等资源的需求。随着云计算的发展,计算迁移开始应用于云环境中,成为移动云计算的重要支撑技术。计算迁移的总体目标主要包括扩展CPU处理能力、节约移动终端能耗、减少服务延迟和节约处理成本等。

计算迁移可以概括为代理发现、环境感知、任务划分、任务调度和执行控制等步骤。然而,并不是所有计算迁移方案都包含全部步骤。其中,最为核心的执行控制主要涉及如何连接到一个可靠的远程代理,传递执行所需的信息,远程执行并返回计算结果。

当移动应用程序需要迁移时,应用程序向操作系统类库发送暂停请求并保存当前运行时状态;系统类库向本地代理发送通知信息;本地代理读取此状态,并将代码或者虚拟机(virtual machine,VM)迁移至远端代理中;远端代理创建新的实例,复制应用程序运行,并将处理结果返回至移动终端。

计算迁移方案一般按照划分粒度进行分类,主要包括基于进程、功能函数的细粒度计算迁移,以及基于应用程序、VM的粗粒度计算迁移等。

细粒度的计算迁移方案将应用程序中计算密集型的部分代码或函数以进程的形式迁移到云端执行。这类方案需要程序员通过标注修改代码的方式对程序进行预先划分。程序运行时,依据迁移策略,只对那些能够靠远程执行节约资源的部分执行计算迁移。粗粒度的计算迁移将全部的程序,甚至整个程序的运行环境以VM 的形式迁移到代理上运行。这类迁移方式不需要预先对应用程序的代码进行标注修改,减少了程序员的负担。然而,这类方案的适用性具有一定的局限性,例如与用户有频繁交互的程序就无法应用此类方案。

2.1 细粒度计算迁移

细粒度的计算迁移需要对程序进行预先划分标注,只迁移计算密集型代码部分,以实现尽可能少的数据传输。依据迁移策略,细粒度计算迁移一般可以分为静态划分和动态划分两类方案。在程序运行过程中,静态划分方案依据程序员的预先标注策略实施迁移;动态划分方案则可以根据系统负载、网络带宽等状态的变化,动态调整划分迁移区域,提高迁移效率和可靠性。

2.1.1 静态划分方案

早期的计算迁移技术大多采用静态划分方案,依靠程序员通过修改和标注,将应用程序静态地分成两个部分:一部分在移动终端执行;另一部分在远程服务器执行。在Protium中,程序员将应用程序分成显示部分和服务部分,显示部分在移动终端运行,服务部分在存储能力和CPU计算资源丰富代理服务器上运行。两部分通过应用程序定义的协议进行交流。如果程序包含复杂的交叉状态和显示管理,那么程序就需要被改写,这给程序员造成了很大的负担。另外,由于程序员不可能精确掌握程序在CPU和内存上的能量消耗,而且网络状态(带宽,RTT)也是动态变化的,因此这种静态标注的划分方法并不能保证程序执行的能量消耗最小化。

为了确保迁移决策的有效性,Li等人提出了基于能耗(包括通信能量和计算能量)预测的划分方法。通信能量消耗取决于传输数据的大小和网络带宽,计算能量消耗取决于程序的指令数。基于计算和通信消耗,得到最优化的程序划分方案。对于一个给定的程序,通过分析计算时间和数据传输能耗构造一个消耗图,静态地将程序分为服务器任务和用户端任务。消耗图通过基于分支定界的任务映射算法获得,以最小化计算和传输的总能量。该算法通过修剪搜索空间以获得最优的解决方案。他们的模型用到了任务开始、任务终止、数据发送和数据请求等4种信息。原始的程序代码中需要进行迁移调用的部分会依据这些信息修改。远程管理也需要根据这些信息进行上下文的状态迁移。

Yang等人提出的方案综合考虑了多种资源的利用情况,包括CPU、内存和通信代价(例如带宽资源),将移动终端上的一些任务无缝地迁移到附近的资源比较丰富的笔记本(称为代理)上。这种用户—服务器的迁移结构主要包括监视器,迁移引擎、类方法等模块。资源监视器主要监控内存使用情况,CPU的利用率和目前的无线带宽。迁移引擎将应用分成一个本地划分和多个远程划分。类方法模块则负责将类转换为一个可以远程执行的方法模块。该方案将应用程序分成(k+1)个划分,其中包括1个不可以迁移的划分和k个不相交可迁移划分,并将这些划分组织成一个有向图,顶点集代表Java类,边集代表类之间的相互作用(调用和数据访问)。他们提出的算法可以根据该有向图给出接近最优解的迁移方案。

Misco实现了集群式服务,支持将数据分发到网络上多个节点并行处理应用数据,以进一步提高计算迁移的执行效率。主服务器是一个集中式监视器,负责MapReduce的实现。应用程序被静态地切分成映射(map)和归约(reduce)两个部分。映射函数将输入的数据进行处理,生成中间的键值对,并将所有生成的键值对归类,组成相应数据块节点。所有数据块节点通过归约函数产生最后结果,并返回给主服务器。映射(map)和归约(reduce)函数在应用开发过程中通过开发者确认,为移动应用提供分布式平台。

静态划分方案大多假设通信开销和计算时间可以在处理之前通过预测、统计等方法获得。划分方案一旦确定,在任务处理过程中将保持不变。然而,由于移动终端的差异性和无线网络状态的复杂性,计算、通信等开销很难准确预知。

2.1.2 动态划分方案

为了克服静态划分方案无法适应环境动态变化的不足,动态划分方案可以根据连接状态的变化调整迁移划分区域,及时适应环境变化,充分利用可用资源。

Chun等人提出的解决方案综合考虑移动终端电量、网络连接状态和实时带宽等3种因素的变化,针对这3种环境的不同变化情况分别给出了解决方案,并针对迁移决策问题设计了普适性的形式化模型,但并没有给出详细的系统设计与实现。在此之后,学术界又相继提出了一系列针对特定应用的计算迁移系统。例如,针对图像识别和语音识别应用的CogniServe,针对环境感知应用的Odessa,针对社交应用的SociableSense以及针对云游戏的Kahawai等。

MAUI的提出旨在提供一个通用的动态迁移方案并尽量降低开发人员的负担。程序员只需要将应用程序划分为本地方法和远端方法,而无需为每个程序制定迁移决策逻辑。程序运行过程中,MAUI事件分析器基于收集的网络状态等信息动态决策哪些远端方法需要迁移至云端执行。代理执行模块按照决策执行相应的控制和数据传输工作。该系统通过向服务器发送10 KB的数据的简单方法评估网络的平均吞吐量,对于变化剧烈的无线网络,其预测的准确性有待提高。ThinkAir也是一个线程级的动态迁移方案。与MAUI相比,该系统重点对服务端进行了增强,可以为迁移任务动态分配服务内存等资源,提高了系统运行的可靠性。Comet则在MAUI和ThinkAir的基础上,利用分布式内存共享技术和虚拟机同步技术支持多线程的并行迁移,进一步提高了计算迁移的性能。Zhou等人设计的计算迁移系统,可以在程序运行时基于无线信道、云端资源等上下文环境进行动态决策,在微云、公有云等多个云端动态选择服务者,实现代码级的细粒度计算迁移。

需要注意的是,细粒度迁移导致了额外的划分决策的消耗,因此划分算法的优劣直接影响了迁移效率,而且并不总是能获得最优解。另外,无论是依赖于程序员修改应用程序源代码方案,还是利用远程执行管理来计算近似划分的方案,都会引入额外的开销,导致消耗更多的CPU能量或增加程序员的负担。

2.2 粗粒度计算迁移

粗粒度计算迁移将整个应用程序封装在VM实例中发送到云端服务器执行,以此减少细粒度计算迁移带来的程序划分、迁移决策等额外开销。Cyber Foraging将附近计算能力较强的计算机作为代理服务器,为移动终端提供计算迁移服务。在执行应用程序时,移动终端首先向服务搜索服务器发送迁移请求。服务搜索服务器向移动终端返回可用的代理服务器的IP地址和端口号。移动终端继而可以向相应的代理服务申请计算迁移服务。每个代理服务器运行多个独立的虚拟服务,保证为每个应用程序提供孤立的虚拟服务空间。Cyber Foraging利用局域网低延迟、高带宽的特性为移动终端提供高效的计算迁移服务。然而,基于代理发现和VM模板的部署方法,时间开销和资源开销都比较大。

针对广域网传输延迟过长的问题,Satyanarayanan等人最先提出微云(Cloudlet)的概念,把微云定义为一种可信任的、资源丰富的计算设备或一群计算设备向附近的移动终端提供计算资源。Cloudlet模式克服广域网时延问题,通过局域网提供低延时、高带宽的实时交互式服务。Cloudlet模式可以进一步细分为移动微云模式和固定微云模式。固定微云模式以计算能力较强的台式计算机提供云计算服务,通常这种连接方式能够提供较大的带宽和计算资源。移动微云通过移动终端组建微云,旨在随时随地提供接入服务。

与Cyber Foraging依赖服务搜索服务器进行代理发现的机制不同,Cloudlet将移动终端上运行的应用程序以VM的形式直接映像迁移至附近指定服务器执行,简化了移动终端功能。服务器通过互联网与云端数据中心相连,可以将复杂的计算任务和延时要求不高的任务迁移到云端执行,进一步提高计算迁移的处理能力。此框架的不足在于,将移动终端运行环境整体克隆到服务器,对服务器的资源管理能力以及硬件水平都出了更高的要求。

虚拟执行环境(virtualized execution environment)不再依赖专用的服务器,而是利用VM技术直接在云端为移动终端建立运行环境。云端为每个应用创建新的虚拟机实例,将迁移的VM克隆至虚拟机实例中执行。该方案通过在移动终端的操作系统和硬件间设置中间件,以支持运行时负载迁移,移动终端和云服务器中虚拟机实例的同步,并支持传输状态的暂停和恢复机制。然而,中间件及同步机制给移动终端带来了计算与流量的额外开销。

Clonecloud同样采用VM 技术直接在云端建立运行环境,不需要操作系统和应用程序作任何额外的改动。Clonecloud还针对不同类型的应用设计了3种不同的迁移算法来进一步优化迁移效率。除了将语音识别、图像处理等计算密集型的任务迁移到云端,将安全性检测也迁移至云端服务器,进一步减轻终端负担。然而,基于应用程序多样性的迁移策略增加了移动终端的开销,单线程的部署方式也增加了系统运行时的抖动。为了克服无线网络不稳定等弊端,Tango通过部署多副本的方式,在服务器与移动终端同时执行计算任务,将最快返回的执行结果作为输出,进一步提高了系统的可靠性。

3 基于移动云的位置服务

位置服务作为移动云计算不可或缺的一项支撑技术,一直得到学术界的广泛关注。文献[50]围绕位置服务的体系架构,对主流定位技术、位置索引及查询处理等技术进行了总结,帮助我们全面深入地认识了位置服务。基于GPS等传统定位技术的位置服务覆盖范围大,技术成熟,已经在军事、交通等诸多领域得到了广泛应用。然而,由于其存在穿透力弱,定位能耗大等问题,已经无法完全满足精确室内定位、用户动作识别等新的移动应用需求。例如,购物中心的自动导购指引服务、智能家居中的病人监护等。移动云计算模式已经被用来构建新型的位置服务解决这些问题,并成为其重要支撑技术。本章重点对基于移动云的室内轨迹追踪与导航、精确定位与动作识别以及海量位置信息管理等近两年学术界研究的热点进行深入分析与总结。

3.1 室内轨迹追踪与导航

由于室内空间范围小,对导航的精度要求更高。另外,建筑物内部的空间结构、拓扑关系比室外复杂得多,这对室内导航技术提出了更高的要求。当前针对室内轨迹追踪与导航的研究主要通过群智的方式收集移动用户沿途拍摄的照片、手机信号强度,并与加速、惯性等手机传感器数据融合,追踪用户行动轨迹,绘制建筑物内部平面图,进而实现实时的定位导航。这些历史信息的收集、存储以及运算处理,需要耗费大量的存储与计算资源,这是普通移动终端无法胜任的。因此,大多数解决方案都是基于公有云或者通过构建微云模式服务器设计实现的。

针对构造室内地图需要进行现场勘测,耗费大量人力物力的问题,LiFS通过收集用户移动过程中的手机信号强度,构造高维信号强度指纹空间,将此映射为室内平面图。Jigsaw、iMoon等系统则通过从移动用户处收集照片构建3D点云,以此为基础在云端服务器上构造建筑物内部地图。iMoon还允许用户拍照后上传到云端,与云端存储的地图进行匹配,以实现实时定位。Dong等人利用基于密度的冲突检测技术对iMoon进行改进,进一步提高了系统在障碍物位置的信息完善度,以及群智建立初始阶段的定位性能。Travi-Navi,FOLLOWME等系统通过收集用户上传的照片、手机WiFi信号强度指纹,实现用户行动轨迹记录,并采用加速、惯性等手机传感器数据进行校正。然后,基于这些轨迹信息绘制室内平面图,实现室内高精度的导航服务。

3.2 室内精确定位与动作识别

近年来兴起的智能家居、体感游戏等新型应用,不仅对目标物体的定位精度提出了更高要求,还需要对用户的特定动作进行识别。当前针对室内精确定位与动作识别的研究通常以移动终端的无线信号强度(received signal strength indicator,RSSI)、信号抵达时间(time of arrival,TOA)和信号抵达角度(angle of arrival,AOA)等数据为输入,通过数学模型求解位置坐标。这些数据的存储、处理以及复杂的求解运算一般都需要在云端完成。

3.2.1 精确室内定位

Lim等人将定位的WiFi访问点(access point,AP)增加到3个,将收集到的RSS和AOA信息发送到云端服务器,执行三角测量算法进行实时跟踪定位,将定位精度提高到0.5~0.75 m区间内。Array Track基于AOA实现移动终端的室内定位和实时跟踪,并通过MIMO技术和多路径抑制算法来减少室内多路径反射的影响,将定位精度进一步提高到几十厘米级,同时将时延控制在100 ms左右。为了提高TOA在有限的无线信道中的分辨率,Tone Track利用捷变频技术提高带宽利用率。AP在相邻信道获得3个数据包的情况下,就可以达到90 cm的定位精度。SpotFi 利用超分辨率算法和估算技术计算多径分量的AOA,在普通AP上实现了40 cm的定位精度。WiTrack2.0基于人体反射的无线电信号,在服务器端执行傅里叶变换,实现了同时对5个人的定位,定位精度达到11.7 cm。

3.2.2 动作识别

基于WiFi的人体动作识别是当前学术界研究的热点之一。WiHear通过专门的定向天线获取由唇形变化带来信道状态信息(channel state information,CSI)变化,在云端服务器上运行机器学习算法,根据人体发音时唇形的不同来辨别发出的单词,并基于上下文进行纠错。由于并没有有效地消除噪声,因此该系统需要通过定向的天线来得到更高的精度。WiDeo基于目标物体动作对WiFi信号反向散射的反射,实现对目标物体的定位及动作识别,在多人同时做动作的环境下,能达到7 cm的识别精度。E-eyes利用不同运动动作带来CSI振幅不同来辨别包括洗澡、走路、洗碗等9种日常用户的行为,但基本是以位置为导向的判断方法。CRAME除了可以像E-eyes一样识别人们的日常行为动作外,还通过CSI-speed和隐式马尔可夫模型推测用户的移动速度和动作的幅度变化。在CRAME研究的基础上,作者又提出了识别键盘敲击动作的WiKey,识别准确率达到93.5%。也有一些学者基于RFID、VLC甚至声音实现人体动作识别、位置标记等。Yang等人提出Tadar系统,通过RFID识别墙体另一侧的人体动作变化。Luxapose、PIXEL等系统则尝试利用移动设备内置的照相机捕捉LED灯光的高频闪烁实现定位。基于VLC的LiSense系统,利用遮挡二维阴影信息重新构造人体的三维骨架图。EchoTag则是通过手机扬声器主动发出声音信号,由麦克风感测回声的方式,实现精度1 cm的室内位置标记。

3.3 海量位置信息管理

在移动云计算环境中,一方面,定位技术不断发展,为移动应用提供越来越精准的位置信息;另一方面,随着用户数量的增长和移动应用的丰富,用户位置、轨迹等数据量爆发式增长,查询请求剧增、查询空间变得更广,位置服务系统也越来越依赖云平台进行用户位置轨迹等数据的存储、计算、索引和查询等管理,从而减轻移动端的存储和计算负载。

面对庞大的用户位置和运动轨迹等历史数据,学者们基于云平台的分布式处理方法,提出高效的索引查询方案,旨在向用户提供快速的查询响应。Ma等人将Map-Reduce架构用在大规模历史轨迹数据处理方面,该方案把时间和空间轨迹数据存储在不同节点上。在处理查询时,在不同的节点分别执行查询操作,再合并输出查询结果。Eldawy等人将Hadoop上的Map-Reduce架构改进,设计了用于分布式处理空间数据的SpatialHadoop系统。SHAHED将现有的SpatialHadoop系统,用于卫星数据处理。文中将卫星的数据按时间、空间存储在不同的节点上,在索引端建立多重Quad-tree时空索引结构,查询时返回时空卫星数据的热点图。

另外,用户针对这些海量位置数据的信息查询需求也越来越旺盛。而随着查询数据库变多、查询空间变得更加广泛,移动终端的计算能力和电池能耗无法满足大数据下的查询服务。针对位置频繁变化的移动终端,有些研究致力于索引技术的改进,提出了基于R-tree、B+-tree、Quad-tree等索引结构,综合利用历史轨迹、当前位置等信息查询索引,旨在提高查询的性能。Cong等人提出的算法,综合考虑空间相似度和标注信息相关度,通过倒排表和R-tree索引,返回k个最相关的空间对象。Zhang等人提出m最近关键字查询,用于找到m个空间最近并满足m个用户给定的关键字空间对象。还有一些研究则希望通过将信息查询与推荐相结合,以进一步提高用户体验。Shi等人挖掘社交网络中群体用户潜在行为和喜好的相似性,设计LGM 群体行为挖掘和推荐模型。

4 移动终端节能技术

移动终端电池容量增长速度缓慢,迅速丰富的移动应用与移动终端有限的电量的矛盾愈发突出。移动终端电量已成为良好用户体验的瓶颈,也得到了学术界的广泛关注。为了深入理解移动终端能耗管理的研究,本节从数据传输节能、定位服务节能等方面对节能方案进行梳理。

4.1 数据传输节能

随着移动云计算的推广应用,移动终端无线传输的数据量快速增长。无线数据传输能耗占移动终端能耗的比例也越来越大。WiFi和Cellular网络是目前应用最广泛的无线传输技术,因此网络的传输节能的研究也大多基于这两类网络开展。

4.1.1 Cellular网络传输节能

移动终端通过Cellular网络传输数据通常采用无线资源控制协议(radio resource control,RRC)。针对RRC协议全过程的移动终端能耗测量显示,移动终端网络接口在完成数据传输后,会从高能耗状态转移到中间能耗状态,即尾能耗状态,其功率约为高能耗状态的50%。尾能耗状态结束后才会进入低能耗状态,功率约为高能耗状态的1%。尾能耗状态的设计是为了减轻状态转换的延迟和开销,然而数据传输过程中存在的过多尾能耗状态却大大降低了移动终端的能耗利用率。

目前针对尾能耗状态节能的研究主要集中在两个方面:一是通过改变尾能耗时间阈值来减少跳至尾能耗状态次数及时间;二是通过传输调度来减少尾能耗。Labiod等人通过实验数据来获得最优静态快速休眠时间阈值,然而这没有在真正意义上消除尾能耗,且不准确的估算会造成额外的开销。TailTheft机制通过虚拟收尾机制和双队列调度算法进行预取数据和延迟传输的传输调度,以消除尾能耗。与调整时间阈值相比,此方法减少了错误估算造成的跳转延时和开销,但此方法并不适用于小数据传输。TailEnder协议通过对应用实现延迟或预取策略,合并数据发送状态,减少传输过程中尾时间,达到节能目的。Zhao等人提出了基于GBRT的预测算法来预测用户下载网页后的浏览时间,当浏览时间大于一定阈值时,设备状态将从尾能耗状态跳至低能耗状态。Cui等人设计了自适应在线调度算法PerES来最小化尾能耗和传输能耗,使能耗任意接近最优调度解决方案。

4.1.2 WiFi网络传输节能

移动终端在WiFi网络中的能耗浪费主要源于CSMA机制中空闲监听(IL)状态下的能耗。移动终端在IL状态下的功耗和数据传输时的功耗相当,是Cellular网络IDLE状态功耗的40倍左右。目前对于WiFi的能耗优化主要是基于802.11节电模式(PSM),即通过睡眠调度算法减少IL状态的时间来达到节能目的。根据Zhang等人的测量,PSM通过捆绑下行数据包来减少网络层延迟,减少了不必要IL时间。然而,由于载波感测和竞争使用的存在,PSM本身不能够减少IL时间。他们发现IL下即使使用PSM策略仍然消耗了大量能耗,在繁忙网络中IL消耗能量占到80%,在网络接近空闲状态下消耗能量也占到60%。

另外,一些学者针对具体应用提出了相应的节能方案。Bui等人重点针对网页载入的能耗问题,通过感知网络状态而动态调整下载策略和画面渲染的方式,在保证用户体验前提下,实现了节能24.4%的效果。Zhang等人则通过减少视频尾流量和动态分配信道方式,将WiFi条件下的视频传输能耗减少了29%~61%。

4.1.3 Cellular与WiFi切换节能

由于WiFi网络的有效传输速率大于Cellular网络,一些研究基于这一事实,研究Cellular与WiFi的切换节能,目标是将负载从Cellular网络迁移至WiFi网络,从而减少数据传输的总体能耗。

Rahmati等人利用Cellular网络和WiFi网络的互补优势,基于网络状况的估计,智能地选择节能的方式来传输数据。为了避免周期性扫描WiFi带来不必要的能耗,文中设计了内容感知算法,估算WiFi网络分布和信号强度,只有在WiFi信号强度比较强时进行扫描,减少了35%的能耗。Yetim 等人比较了4种调度算法,旨在最小化Cellular网络使用,从而减少数据传输能耗,并在真实的系统上进行了实现。实验结果显示,基于MILP调度策略通过预测数据请求,在传输调度时检测WiFi的可用性和吞吐量,决策是否需要进行切换,最大限度地节约开销和能量。值得指出的是,Cellular与WiFi切换主要的开销包括切换过程中的时间开销、数据流的迁移开销以及移动终端从多个WiFi接入点中选择接入点的计算开销。Cellular与WiFi切换节能的研究必须将这些开销考虑在内。

4.2 定位服务节能

在移动云计算环境中,越来越多的应用程序提供位置服务。然而,定位过程中实时通信和计算的能量消耗较大。定位服务的节能也就成为节能研究的一个重要方向。定位节能研究主要可分为基于移动终端的优化和基于云的优化两类。基于移动终端的优化主要是通过预测或改变移动终端选择数据源的方式实现节能;基于云的优化则主要通过将定位计算迁移到云端或获取云端共享定位数据达到节能效果。

4.2.1 基于移动终端的能耗优化

基于移动终端的能耗优化主要有两类方法:一是动态预测(dynamic prediction,DP);二是动态选择(dynamic selection,DS)。两类方法都是旨在通过能耗较小的传感器实现定位,从而降低高能耗GPS的使用率。DP通过能耗较少的传感器(如指南针、加速度传感器等)估算当前位置的不确定度。当不确定度超出误差阈值时,将触发GPS重新进行定位。DS根据当前定位技术的覆盖和精度的需求动态地选择使用GPS,WiFi和GSM定位。

Leonhardi等人最先提出基于时间和距离的追踪。后续的研究正式地提出了动态追踪技术,主要用于节能和GPS定位。Farrell等人在通信延迟和目标速度恒定不变的前提下,结合查询和报告协议,给出特定环境最优参数值。You等人在定位精确度和延迟、定位目标速度以及用于判断定位目标移动的加速度都是恒定不变的前提下,提出的追踪定位方法将定位精度提高了56.34%,能耗减少了68.92%。动态追踪技术进一步发展,分成了现在的动态预测和动态选择技术。

EnTracked架构作为最主要的动态预测方案,首先由移动终端通过GPS获得初始位置后关闭GPS。当用户移动时,由感应器探测用户移动状态,并通过速度和精确度评估模块估算用户的速度。当估算的误差超过预设的误差阈值时,再次开启GPS进行定位。EnTracked的问题在于,加速度传感器在定位过程中一直处于工作状态,这在某些场景下可能会比开启GPS定位的能耗更大。另外,此方法只能检测用户的突然移动,而手机持续高速移动可能导致定位失败。

Kjaergaard等人针对EnTracked的不足,提出轨迹追踪的概念,并在EnTracked的基础上改进提出了EnTracked 2。EnTracked 2通过前进感知策略得到一系列连续位置来确定当前的位置。它通过指南针检测用户前进方向和方向变化,根据速度和方向计算用户现在与原来位置的距离。同时根据指南针给出的初始走向计算用户的移动距离。当用户运动方向发生变化时,上述两种计算方法得到的位置会产生偏差。当偏差大于误差阈值时,GPS会更新用户的位置。相比于EnTracked,EnTracked 2大大提高了GPS开启的间隔;基于占空比(duty-cycle)策略,提高了传感器和指南针的使用效率;基于速度阈值策略支持对不同移动方式的检测;简化的移动轨迹算法减少了信息的发送,降低了通信开销。然而,当请求的误差阈值比较小时,EnTracked 2的错误率较高。

在城市环境中,由于建筑物等干扰,GPS定位不是非常精确,甚至难以获得。RAPS同时使用DP和DS策略,在GPS不可用的情况下,实现了基于手机基站的定位服务。RAPS记录当前手机基站ID和RSS信息,基于历史速度信息估算用户当前位置。RAPS还提出了多移动用户间位置信息共享。RAPS的不足在于,它专门为市区行人制定策略,并不适用于其他场景,且RSS列表服务需要在云端数据中心的支持下才能有效工作。Nodari等人则基于运行轨迹建模减少终端与定位服务器通信的方式实现节能。

4.2.2 基于云的能耗优化

除上述在移动终端上实现的优化策略外,学者们又提出了借助云端来减少移动终端能耗的方案,主要包括基于存储历史轨迹信息的定位、迁移计算密集型任务至云端和通过邻近移动终端分享精确位置信息实现定位。

(1)基于历史轨迹信息的定位节能

电子地图近年来发展迅速,用户位置和轨迹信息通常被收集并存储在云端。通过适当的利用云端的信息,用户可以以比较节能的方式获取位置信息。用户的移动通常是在同一时间段内移动到某个区域,具有时空一致性。这意味着我们可以高效地在部分区域进行定位。基于历史轨迹信息的定位通过云端存储的大量历史位置和轨迹信息,结合用户移动性进行定位。

路线图最先应用于提高车辆追踪的精度。VTrack将路线图匹配和WiFi定位相结合,以提高定位精度和降低能耗。CTrack扩展了VTrack的功能,通过历史数据库匹配一系列的GSM信号塔进行定位。CTrack将地理位置分为同一大小的方格,每个方格拥有周围GSM以及信号强度的列表。CTrack还进一步利用能耗较低的传感器如指南针、感应器来增加定位精度。这些通过地理位置描绘用户信息的方法自动建立并更新数据集,随着定位的持续进行,用户的数据集非常庞大,冗余严重。

(2)基于计算迁移的定位节能

将定位服务的信号解码和计算处理迁移至云端服务器也是定位节能重要的一类方法。A-GPS在原始GPS基础上减少了接收信号的多普勒频移和码相移的不确定性,支持了更大的覆盖范围。A-GPS通过迁移能耗密集型部分不仅为了节约能量,也为后期节能提供了空间。LEAP将先前跟踪得到的码相位与CTN结合,在无需解码和定位计算的前提下产生新的码相位,以节约能量。CO-GPS(cloud-offloaded GPS)对LEAP进行扩展,将原始GPS信号传输至云端进行处理。实验表明传输2 ms的数据足以用于定位,传输10 ms的数据(40 KB)可以使定位精度达到35 m。更高精确度的需求需要更多数据的传输,这必将带来更多的传输能耗和服务器存储能耗。用户可以根据精度需求权衡能耗和定位精度。

(3)基于共享信息的定位节能

通过共享其他设备的位置信息以减少自身的定位开销,是定位节能的另一种重要方式。Dhondge等人提出ECOPS系统,移动终端通过WiFi建立虚拟ad-hoc网络共享位置信息。移动终端分为两种模式:位置广播者(PB)和位置接受者(PR)。当移动终端拥有足够的电池电量和最新的位置信息,它就可以成为PB,否则就是PR。系统通过权衡位置精确度和能耗来定义位置信息的有效时间。PB通过WiFi热点向PR提供最新的位置信息,PR尽可能地搜集GPS坐标和信号强度(RSSI),并在相应范围内搜集最近的3个PB,通过3点测量法进行定位。当搜集的PB只有一个或两个时,PR就将PB的位置或两PB的交集作为定位点。

5 数据安全与隐私保护

移动用户在获得云计算丰富服务的同时,也面临越来越多数据泄漏、窃听和隐私暴露等安全威胁。为了深入理解移动云计算安全的研究方向,本节从云端数据安全、用户隐私保护和移动终端安全等方面对目前主要的安全方案进行了总结分析。

5.1 云端数据安全

移动云计算环境中,用户的数据和计算任务通过无线网络迁移到并不完全可信的云端数据中心,而且还要支持在线查询、多用户数据共享等。这不仅面临来自外部攻击者的威胁,甚至可能由于云服务提供者的内部攻击或不当操作,造成数据泄露、损坏或丢失。针对这些新型的安全威胁,研究者们在传统安全机制的基础上,提出了一系列针对云端数据安全的创新解决方案。

5.1.1 身份认证与访问控制

身份认证是云端数据安全存储的关键技术。针对移动终端计算资源受限和移动性等特点,Chow等人设计了一种结合TrustCube和隐式认证的云认证平台。为了避免由于多用户并行访问造成的服务性能下降,认证服务以第3方服务器的形式部署到云端。TrustCube作为一种开放标准的云认证基础设施,支持多种认证方式。隐式认证不通过用户存储的数据、生物计量信息来认证用户,而是应用数学统计模型,将用户的行为习惯转化成概率认证分数,认证用户的合法性。

为了保证安全性,用户数据需要以密文形式存储在云端,但这给数据访问共享带来一定困难。一是大规模用户的数据共享需要大量密钥,生成、分发和保管这些密钥比较困难;二是如果实施细粒度的访问控制,则会成倍的增加密钥数量;三是当用户访问权限更新或撤销时,需要重新生成新的密钥,势必引入巨大的计算量。另一个重要问题是传统的访问控制方法需要依赖于一个可信的服务器,而该假设在不可信云计算环境中是不成立的。针对上述问题,研究者提出一系列新的密码机制,如可选择加密和基于属性的加密。ABE以用户属性为公钥,通过引入访问结构将密文或用户私钥与属性关联,能够灵活地表示访问控制策略,对数据进行细粒度访问授权,且具有良好的系统扩展性,是实现云数据访问控制的理想方案。

5.1.2 轻量级的数据完整性保证

云端的不可靠性、来自外部的攻击以及移动用户的误操作都可能对存储在云端的数据造成破坏。Tanenbaum等人和Wang等人提出了针对单一数据拥有者的云端数据完整性保护方案,允许用户在不访问数据的前提下,远程验证云端数据的完整性。Itani等人在保证数据完整性的同时,考虑了移动终端的节能问题。他们提出的框架中,由协处理器为用户数据生成并维护相应的消息认证码,客户端只需要通过消息认证码验证数据的完整性,节约了网络带宽和移动终端能量的消耗。

如何保证多用户共同拥有数据的完整性是云端数据完整性保护面临的特有挑战。Wang等人基于环签名技术设计了同态验证器,可以保证多个用户修改共享数据时的数据完整性。他们在此基础上又提出了Panda,以支持用户的撤销操作。然而,Panda的完整性保护基于多个用户的操作与云操作无冲突的假设,并且检查开销与用户量和数据量呈线性关系,一定程度上限制了方案的可扩展性。为了解决这些问题,Yuan等人提出了基于多项式认证标签和安全代理标签的完整性验证技术。此方案引入第3方审计(third party auditor,TPA),用于检查云端数据完整性。此方案支持多用户公开的完整性检查和多用户修改、撤销操作,能够抵御用户与云端的共谋攻击,并且能保持恒定的完整性检查计算开销。

5.1.3 基于外包计算的机密性保护

在传统的加密机制保护下,用户如果想将已经上传至云端的文件进行修改或者共享给其他用户,就需要将整个文件下载修改后再次加密,上传至云端。为了实现保持密文状态下对文件的操作,研究者们提出了代理重加密机制。代理重加密机制允许在不解密的情况下,将对应一个密钥的密文转化为对应另一个密钥的密文。这就允许在不暴露原始数据和密钥前提下,将频繁的数据操作迁移至云端。考虑到移动终端的资源限制,Khan等人对现有的代理重加密机制进行改进,提出了基于增量的代理重加密机制,使得移动终端在修改文件时,只需要对修改部分进行操作,减少冗余信息的下载与上传,进一步减少了移动用户的流量和能耗开销。

可查询加密和同态加密旨在提供密文状态下的安全查询服务。另外,密钥的可靠分发是数据机密性保护的基础。鉴于移动设备的资源有限,Wang等人通过基于身份的密钥封装机制,设计了匿名密钥批量分发系统,满足了可穿戴医疗设备频繁、高效更新密钥的需求。

5.2 用户隐私保护

除了保护用户的数据安全外,用户隐私保护也是移动云计算中受到广泛关注的问题。移动云计算中涉及的隐私主要是指个人或者组织不愿向他人透露的敏感信息,例如个人身份、家庭住址、健康状况、习惯爱好、活动位置以及查询行为等,其相应的保护技术主要包括身份隐私保护、位置信息保护以及查询特征保护技术等。

(1)身份隐私保护

在多用户数据共享时一般采用基于公钥加密机制的环签名技术实现用户身份隐私保护,可以防止云服务提供者在验证用户身份时获得用户的个人身份信息。然而,这种方案无法很好地适应群组中的用户频繁加入离开的场景。为了解决这个问题,Jung等人基于ABE设计了匿名访问控制机制,用用户的属性信息替代用户身份信息进行身份认证,以避免身份信息的泄漏。

(2)位置隐私保护

针对用户的位置隐私,Riboni等人提出了隐私保护模型,在保证通信安全的前提下,向朋友发送自己的精确位置信息。Duckham等人提出了模糊位置机制,以降低用户位置信息的精确度的方式来保护用户的位置隐私。感知助手通过定制第三方应用的传感器访问策略,防止恶意应用通过访问传感器窃取用户隐私信息。

(3)行为隐私保护

对查询隐私的保护主要采用安全索引、虚拟查询等方法进行保护。安全索引主要是应用安全索引函数建立索引与数据之间的映射关系。通过隐藏索引与原始数据之间的对应关系,防止查询造成原始数据的泄露。虚拟查询是通过在一个真实请求中夹杂N个虚假请求来掩饰用户的真实信息。为了减少服务器处理额外N个请求的负担,Mascetti等人提出的方案中,将产生的虚假请求组成网格,每个虚假请求在每个网格顶点上。服务器端使用相同的方法将信息返回给用户,用户通过过滤得到所需的真实信息。

5.3 移动终端安全

移动云计算应用除了面临传统云计算的安全威胁外,还面临着许多针对移动终端的特有安全威胁,例如恶意代码(恶意代码病毒、蠕虫和特洛伊木马等)造成的信息被窃、操作系统漏洞造成的数据丢失、通过不安全的接入点访问网络等。检测并抵御这些安全威胁最直接的办法就是在移动终端上安装安全软件。例如,支持Android系统的Norton Mobile Security Lite具有远程锁定、反恶意软件、在线更新等功能;Kaspersky Mobile Security更是集病毒防护、反恶意软件、防盗、防火墙等功能于一身。

在移动云计算环境中,安全软件的功能完备性和持续运行能力都在一定程度上受到移动终端处理能力、能量等限制。针对这一矛盾,Oberheide等人提出了基于云的安全软件平台。客户端只需要安装一个轻量级的代理程序,监测系统中的文件操作行为,而复杂的病毒防护、攻击检测等功能则由云端服务器完成。与传统的安全软件相比,这种云支持的安全软件不仅功能大大增强,而且可以节约30%的能耗。

为了从根本上增强移动终端的整体安全性,有些学者通过内核代码分析、功能测量等方式对Android、Windows Mobile和iPhone OS等操作系统进行了综合的安全评测,并在此基础进行了操作系统安全性增强的尝试。Yuan等人针对Android系统设计的基于机器学习的恶意软件检测方法可以达到96%的精确性。可信计算工作组则希望通过在移动设施上植入移动可信模块(mobile trusted module,MTM)的方式,为移动设施提供安全启动、登录认证、程序完整性保护、数据加密保护等安全功能。然而,由于缺少完备的公钥基础设施支持,这种方法目前还没有得到广泛的应用。

6 移动云计算典型应用

随着移动云计算技术的持续发展,各类新型应用也应运而生,典型的有移动云存储、微云应用、基于群智的应用和移动云游戏等。这些应用对前文所述的计算迁移、基于移动云的位置服务、移动终端节能及安全保护等技术的依赖关系看出,移动云应用一般需要多项移动云计算关键技术的共同支持。一方面为了增强应用功能和优化应用性能,会根据需求选用相应迁移技术、位置服务或节能技术;另一方面也越来越倾向于综合选用多种安全技术来共同保障移动应用的安全性。

6.1 移动云存储移动

云存储服务作为新兴的移动云计算应用,得到了学术界和工业界的广泛关注。Drago等人最先对目前主流的商业云存储服务Dropbox进行测量研究。Dropbox在存储文件时将文件控制信息(元数据信息、Hash值等)和数据信息分开,分别存储在控制服务器和存储服务器。服务器在多个地区分布式部署,就近为用户提供服务,减少用户接入的时延和带宽成本。在后续的工作中,Drago等人又进一步对4个主要商用的云存储服务Box、Dropbox、GoogleDrive、OneDrive进行了测量比较,研究发现Dropbox已经实现增量编码、冗余消除和文件压缩等云存储优化机制。对云端已经存在的数据块,移动终端采用冗余消除技术只上传文件的控制信息。当云端文件发生小部分修改时,移动终端采用增量编码技术,只上传数据块修改的部分。当上传可压缩文件时,移动终端通过压缩技术减少文件本身的冗余信息,节约文件在云端的存储空间。采用这些优化技术不仅节约了数据上传带宽,而且减少了云端的存储资源占用。

基于上述研究,Cui等人从移动终端的角度对上述云存储服务进行相关研究。通过测量发现,移动终端通过持续的HTTP(S)连接来保持各终端数据一致性,同一管理账户的数据一旦通过某一终端更改,就会通过推送机制同步至云端其他移动终端。文中还从同步开销、同步完成时间和能耗对上述服务进行测量对比,发现各个服务都有各自的优缺点。各服务实现了不同粒度的静态文件分块,Dropbox还实现了冗余消除。在网络状况不稳定的无线环境下,移动终端存在数据同步延迟过大甚至同步失败,小部分文件修改竟产生上百乃至上千倍的同步数据量,这些都很大程度上降低了移动云存储服务的同步效率。

针对测量中发现的问题,Cui等人设计了QuickSync系统,从同步时延、同步开销等方面进行优化,很大程度上提高了云存储的同步效率。QuickSync系统在本地同步文件夹上监听到文件添加或修改操作会触发文件同步。内容定义分块器通过CDC(content defined chunking)算法将文件切分成多个长度不均等的数据块,再将每个数据块的控制信息和数据信息传输给冗余消除器。冗余消除器通过与本地数据库进行对比,对数据块执行冗余消除和增量编码操作,并将数据信息存放在批量同步器。冗余消除器将控制信息备份至本地,并传输至云端。批量同步器通过延迟确认和批量传输机制将数据流上传至云端。

QuickSync系统实现的CDC算法、冗余消除机制和批量同步算法大大减少了同步的数据量和完成时间。移动云存储服务还可以在TL(tail latency)、多云传输等相关方面进行更深入的研究。随着学术界和工业界越来越重视移动云存储服务,IETF也开始着手推动相关领域协议的标准化。

目前的云存储服务已经基本解决了单个应用的跨平台、跨设备的同步问题,但各类服务还基本处于互不相干的独立工作状态,即单个应用只能解决用户的单个问题,用户信息也是碎片化的存储在不同位置。IFTTT的推出,旨在利用开放的API,将Twitter、Dropbox等各个网站或应用通过工作流串联起来,通过触发器和响应动作的方式,实现多种应用的通信和协同工作,整合增强云服务的功能,为用户提供智能化的信息服务。例如将用户保存到印象笔记中的文档自动备份到Dropbox;将用户收到的特定标签的邮件以短信形式自动转发到用户手机上等。然而,IFTTT目前只支持特定应用。如何开放性地支持多种应用,并允许移动用户自定义任务工作流程还需要进一步的研究。

另外,由于存储容量、接入带宽、访问延迟、服务类型以及服务价格等因素限制,70%以上的移动用户都同时应用多个云服务商提供的服务。UniDrive、AONT-RS、DEPSKY和scc等系统,旨在通过多云协作的方式增强用户数据的可用性。然而,目前提出的以客户端为中心的多云协作的体系架构,需要客户端维护多份数据副本并分别上传到不同云端,增加了客户端计算、网络传输的开销。另外,这种架构也无法满足多用户数据分享的需求。用户数据在多云之间安全高效的同步、共享必将成为移动云计算领域新的研究课题。

6.2 微云应用

Cloudlet模式减少了移动终端接入延迟,提高了网络带宽,其应用模式非常的多样化。Quwaider等人就通过个人终端、组网设备等组成通信网络建立了基于Cloudlet的数据采集处理系统,分析人体相关信号信息,但仅适用于轻量级的数据采集分析。由于Cloudlet服务器的性能决定了移动用户享受的服务效果,一些学者从计算能力、服务延迟对于应用迁移至远端Cloud还是本地Cloudlet做了相关研究。Li等人认为Cloudlet提供的总计算能力取决于Cloudlet的计算性能、节点的生存周期和可到达时间,用户根据计算需求选择计算任务迁移方式。Fesehaye等人从移动环境下数据传输跳数动态选择文件编辑、视频流播放和网络会议等云应用数据迁移方式。

上述研究都依赖于集中式云架构,Wu等人提出了一个基于Cloudlet的多边资源交换架构,每个移动终端都可以部署一个微云向其他移动终端提供计算资源。文中提供以市场为导向的移动资源交易方式,设计贸易机制和竞价策略,实现高效的资源交换,增大Cloudlet网络覆盖范围。

Cloudlet管理问题是一个目前比较大的挑战。目前Cloudlet架构中主要的解决方案是使用VM技术来简化Cloudlet管理。用户在使用前预先定制VM,使用后清除,以此来确保每次使用的微云架构能恢复到原始状态。VM寄宿在Cloudlet架构的永久软件环境中,相比于进程级迁移更加的稳定,而且对编程语言的要求低、限制少。另外,Cloudlet多基于无线局域网设计实现,而无线局域网的通信距离有限,因此终端的移动性是Cloudlet系统有效工作所必有考虑的因素。

6.3 基于群智的应用

现在的移动终端除了拥有越来越强大的处理能力外,通常还内置定位、光线和位移等多种传感器,这促使群智应用逐渐从固定电脑转向了移动终端。移动群智服务主要应用在自然环境检测、基础设施监视和移动社交等场景。移动终端可以作为数据提供方向云端提供信息,也可以作为被服务方从云端获取服务。

Yan等人提出了基于iPhone的mCrowd平台,利用传感器进行位置感知的图像采集和道路监视,iPhone用户既是服务提供者,也同时可以享受平台提供的服务。Eagle等人提出的txteagle主要基于群智为用户提供语言翻译、市场调查和语音转录等服务。MobileWorks、mClerk为发展中国家的用户提供光学字符识别(optical character recognition,OCR)等服务。MobileWorks平台字符识别速率非常快,精确度非常高(99%)。Jigsaw通过从移动用户收集的位置、空间大小等信息,结合用户的移动轨迹重构建筑物内部结构,为室内定位提供依据。Ou等人则通过收集到的移动用户在不同位置的手机信号强度来预测未来的信号强度,并以此为基础调度数据传输,实现手机节能的目的。

有些学者尝试在机会型感知网络上实现群智系统。Wang等人和Xie等人的研究侧重于优化消息的传递效率,减少通信的开销和能耗。Tuncay等人的研究更加侧重于参与式感知框架,包括传感器更新阶段和提前启动数据收集阶段。上述研究都基于特定的应用,目标是以最快的方式和最小的开销来传送最大的数据量至数据汇集点,并没有考虑到基于位置相关的数据来提高覆盖范围的问题。Karaliopoulos等人通过潜在的优化方法为确定性和随机性用户移动场景设计最低成本集覆盖。

激励机制是基于群智服务必须考虑的一个问题。学者们在任务分配、奖励分配以及用户选择角度开展了一系列研究。Gao等人对每个时隙中如何选取最优用户来最大化总贡献值进行了深入研究。文中提出基于Lyapunov算法的在线竞拍策略和考虑到未来信息(完整的或随机的)的离线策略,以提高用户服务率和社会贡献率。Zhang等人基于用户行为偏好,设计了预算有限情况下的任务分配策略和定价机制,以此提高任务处理效率并节约任务开支。

随着移动社交应用的快速发展,移动社交网络与群智服务的结合也越来越受到研究者关注。Xiao等人研究提出了基于移动社交网络(mobile social networks,MSN)的复杂计算和传感任务分配方案。

在移动过程中,每当请求方遇到邻近空闲用户时,给其分配处理任务,直到所有任务都分配完毕。服务方完成任务时将处理结果返回给请求方。请求方还可以通过无线接入点向固定式计算机分配任务。就近任务分配原则有效降低了传输开销。然而,由于用户的移动性,如何保证动态的用户集高效可靠地完成任务是需要进一步研究的问题。

6.4 移动云游戏

作为移动云计算的典型应用,移动云游戏将传统游戏的复杂计算迁移到云端,移动终端只需向云端发送游戏指令,云端执行游戏计算、数据存储任务,并将游戏画面编码成实时视频流传输至移动终端。这不仅极大地扩展了移动终端的执行能力,更提高了游戏的平台兼容性和升级维护的灵活性。

游戏平稳性和实时性是移动云游戏重要的性能指标,尤其是数据传输延时对用户体验影响极大。Huang等人设计开发了GamingAnyWhere,旨在从响应时延、网络负载和视频质量等方面对移动云游戏系统进行优化,并与OnLive、Gaikai、StreamMyGame等当前主流的移动云游戏服务进行了对比。为了进一步降低延迟,Chao等人提出了基于UDP的数据传输协议Pangolin,解决TCP传输数据的不可并发性。Pangolin基于马尔可夫决策理论自适应决策,通过在线查表,发送冗余前向纠错数据包等方式进行优化控制,降低数据包丢失概率,并将传输延迟从4 s多降低到1 s。此协议已经纳入到Xbox SDK中,真正在工业界发挥效用。Outatime则通过预测未来状态、基于图像的状态近似、快速状态点检测与回滚以及状态压缩传输等方式,最高可以将网络延迟减少120 ms。然而,由于无线接入方式的多样性,无线带宽抖动等特有属性,交互的实时性和游戏画面的流畅性仍是移动云游戏研究领域需要重点解决的问题。

7 发展趋势与展望

7.1 移动云计算的功能增强

(1)计算迁移中高效的环境感知与决策

随着移动云计算应用的普及,学者们针对不同应用场景提出了一系列计算迁移方案。然而,计算迁移技术要得到更广泛的应用,以下几个问题有待进一步深入研究:一是对本地执行和远程执行代价(移动终端能耗、传输流量以及执行时间等)的准确预估。二是对系统状态和环境信息(终端电量、系统负载以及网络带宽等)的高效收集。以上两点都是做出有效的迁移决策的基础。三是用户数据的安全与隐私保护,这是计算迁移技术推广应用的基础。另外,统一的体系架构、规范的API接口等也是计算迁移技术得以广泛应用必须进一步研究的。

(2)基于精准定位与动作识别的移动云计算服务增强

室内定位技术作为近两年学术界的研究热点,其定位精度、系统性能等都有大幅提高。近年来,随着室内定位技术研究的不断深入,学者们已经从单纯的追求定位精度的优化,进一步扩展到对目标物体的移动轨迹、动作识别等的研究。如何针对多样的用户需求、复杂多样的室内室外场景,基于用户的位置及行为特征,为用户提供个性化的、高效便捷的云服务将是未来需要进一步重点研究的方向。

(3)基于新型通信技术与网络架构的移动云计算服务增强

最新提出的5G 通信技术不仅提供了更加高速的网络接入,并且对微基站、终端对终端直连通信(device to device,D2D)以及室内定位等提供了更好支持。如何将5G提供的新特性应用于移动云环境,为用户提供更加多样、高效的服务将是学术界未来研究的一个重要方向。如何将软件定义网络(software-define networking,SDN)与5G网络相结合,为移动云计算提供智能高效的网络管理、灵活健壮的网络服务也将是未来需要进一步重点研究的方向。

7.2 移动云计算的服务质量保障

(1)适应异构无线网络的移动云计算高效持续服务

目前已逐步推广应用的通信技术已经可以为移动用户提供高达百兆的传输速率,为用户享受更丰富的移动云计算服务提供了基础。然而爆炸式增长的移动流量与有限的带宽资源、空口资源之间的矛盾依然突出。认知无线电技术有望成为提高带宽利用率的有效方法。另外,将Cellular网络流量有效迁移到WiFi网络也是解决空口资源紧张问题的重点研究方向。移动用户的连续移动以及在多种无线网络间的频繁切换,是用户享受稳定、持续的接入云端数据中心,享受互操作性服务面临的又一阻碍。因此,适应接入网络异构性的自适应协议,尤其是对速率自适应和拥塞控制机制支持,也将是提高移动云计算性能的一个重点研究方向。

(2)高效的云端数据一致性保障

在复杂的无线环境下,保证用户终端与云端数据的一致性,也是保证移动云计算服务质量面临的重要挑战。最近的一些研究成果,多采用多复本发送、冗余备份的方式实现终端数据的有效发送,以及多终端与云端间的数据一致性。然而,这种机制却无形中增加了移动终端的流量和能耗开销。特别是针对终端能耗的受限,如何将数据一致性保护机制与能耗优化的传输机制结合,实现更好传输性能与能耗的协调折衷,也是移动云计算应用必须研究的。

7.3 安全可用的移动云服务

(1)面向移动终端的安全保护方案

移动云计算环境中,用户通过无线网络将数据或计算任务外包给并不完全可信的云端数据中心,这使得用户不仅面临传统的来自外部的攻击,甚至可能由于云服务提供者的内部攻击或不当操作,造成数据泄露、损坏或丢失。针对这些安全威胁,研究者们在传统安全机制基础上,提出了可查询加密、同态加密、可选择加密以及基于属性的加密]等一系列创新安全解决方案。然而,这些解决方案大都依赖计算复杂度更高的密码体制。如何实现复杂的安全机制与移动终端有限的资源之间的协调折衷,在保证安全性的同时,尽量减少对服务质量的影响是移动云计算安全领域面临的挑战。

(2)基于云的移动终端安全防护技术

针对移动终端的安全威胁,如何为处理能力、电量等资源受限的移动终端提供有效的入侵检测、病毒防护等功能也是需要进一步的深入研究。将复杂的密码机制、安全防护功能以保密的方式迁移到云端,将是移动云安全领域发展的必然趋势。另外,如何处理好加密机制与传输优化中的增量同步、冗余消除等机制的冲突,云端数据共享与用户隐私保护的冲突,以及位置隐私保护与基于精确定位的移动云计算服务等方面冲突,也是移动云计算安全研究中必须考虑的问题。

8 结束语

随着无线数据通信和移动互联网的广泛应用,移动云计算技术得到了迅速发展,受到了学者们的广泛关注,并在计算迁移、基于移动云的位置服务、终端节能以及数据安全与隐私保护等方面开展了深入的研究,取得了一系列重要研究成果。本文对这些成果进行了系统的总结和分析,并进一步指出了未来的一些研究发展方向。

然而,随着虚拟现实、智能家居等新型应用的不断涌现,以及移动应用向医疗、教育、金融等领域的进一步渗透,移动云计算在高效性、可靠性和安全性等方面还面临着许多新的技术挑战,也为研究者提出了一系列新的研究课题。

猜你喜欢

云端能耗终端
120t转炉降低工序能耗生产实践
四海心连·云端汇聚
能耗双控下,涨价潮再度来袭!
探讨如何设计零能耗住宅
X美术馆首届三年展:“终端〉_How Do We Begin?”
在云端永生
云端之城
通信控制服务器(CCS)维护终端的设计与实现
日本先进的“零能耗住宅”
GSM-R手持终端呼叫FAS失败案例分析