移动边缘计算 Moblie Edge Computing
北京邮电大学出版社
王尚广,周傲,魏晓娟,柳玉炯 编著
前言
终端设备访问云计算数据中心为用户提供服务——增加了网络负荷和数据传输时延。
移动边缘计算——利用无线接入网络就近提供移动用户IT所需要的服务和计算功能,创造一个高性能,低延迟与高带宽的服务环境。
目录
- 第1章 基本概述
- 第2章 关键技术
- 2.1 边缘云放置技术
- 2.2 计算卸载技术
- 2.2.1 国外研究进展
- Eduardo 杜克 2010 MAUI ,最早的计算卸载实现模型。
- Intel Byung-Gon CloneCloud计算卸载模型。
- Karim 佐治亚理工 COSMOS以风险控制方式进行卸载决策。
- 根特大学的Tim等人”在增强现实用物计把Cloudlet当作云端实现计算卸载。
- Mahadev CMU 在2009年提出Cloudlet扩展移动设备的能力。
- Karim 佐治亚理工 提出协调同域移动设备提供云服务。FemtoClouds 提供了动态的,配置的,多设备的自发性服务云。
- * Cloudlet
- 里昂大学的GolchayI提出了自发临近云SPC:通过附近的一组移部身动设备以协作的方式执行任务卸载。
- 2.2.2 国内研究进展
- 2.2.1 国外研究进展
- 2.3 服务迁移技术
- 2.4 群智协同技术
- 第3章 典型应用场景
- 第4章 工具与实验平台
- 第5章 挑战
第1章 基本概述
1.1 移动边缘计算的由来
提出的原因:
所有的业务部署到云计算中心,造成网络负荷和较长的网络延时,使网络的带宽和时延等性能要求更高。
移动终端计算、存储及功耗十分有限,需要将高复杂度,高能耗的计算任务迁移至云计算中心的服务器端去完成,降低移动终端的能耗。但数据的传输计算任务的迁移增加网络负荷,增加传输时延。
根据ETSI的定义,移动边缘计算即在距离用户移动终端最近的无线接入网内提供信息技术服务环境和云计算能力,旨在进一步减小延迟/时延、提高网络运营效率、提高业务分发/传送能力、优化/改善终端用户体验。移动边缘计算可以被视为运行于移动网络边缘的云服务器,用以执行传统网络基础设施不能实现的特定任务。移动边缘计算是信息技术和通信网络融合的产物。
边缘计算架构:
移动边缘计算包括3个部分: 边缘设备,边缘云和远端云(大规模云计算中心、大云)。
边缘设备:可连接到网络。
边缘云:部署在移动基站上的小规模云计算中心。功能:流量控制(转发和过滤)管控移动边缘服务和应用。
边缘设备处理能力不足,可通过无线网络将计算密集型和海量数据迁移到边缘云进行处理。边缘云处不能满足边缘设备请求,可通过无线网络将部分任务迁移到远端云进行处理。
移动边缘计算的特点:
隔离性:本地的,与网络其他部分隔离运行,机器通信安全性高。
临近性:靠近信息源(移动终端),可直接访问设备,利于捕捉分析大数据信息。
低时延性:边缘服务在靠近终端的边缘服务器上运行,时延降低,用户体验性好,减少网络拥塞。
位置感知性:WIFI或蜂窝网络,都可使用低等级指令确定连接设备位置。
网络上下文感知性:感知实时网络数据,统计分析用户消费行为和移动宽带使用量。
1.2 相似解决方案
移动互联网与物联网应用发展了多个相似的解决方案: 移动边缘计算(MEC),移动云计算(mobile cloud computing MCC),雾计算(fog computing),微云(cloudlet)。
移动边缘计算(MEC):边缘服务器和蜂窝基站能协同工作。边缘服务器可单独运行,也可以与远端云数据中心协同运行。
相似解决方案:
1.2.1. 移动云计算
是指通过移动网络以按需、易扩展的方式获得所需的基础设施、平台、软件(或应用)等的一种信息技术资源或(信息)服务的交付与使用模式。移动终端设备与传统的桌面计算机相比,用户更倾向于在移动终端上运行应用程序。然而受许多限制,需要将计算密集型的应用程序迁移至移动终端外执行。云计算中心提供必要的计算资源。
1.2.2. 雾计算
低延时、位置感知、广泛的地理分布、适应移动性的应用,支持更多的边缘节点。这些特征使得移动业务部署更加方便,满足更广泛的节点接入。
雾计算是云计算模型从核心网到边缘网的一个扩展,高度虚拟化,位于终端设备和云服务器之间。存在大量异构的物理广泛分布的去中心化的设备协作,无需第三方即可完成计算处理存储任务。
组件(路由器,网关,机顶盒,代理服务器)可创建分布于不同地方的云服务。与云计算相比,雾计算所采用的架构更呈分布式,更接近网络边缘。
雾计算将数据、数据处理和应用程序集中在网络边缘的设备中,而不像云计算那样将它们几乎全部保存在云中。数据的存储及处理更依赖本地设备,而非服务器。所以,云计算是新一代的集中式计算,而雾计算是新一代的分布式计算,符合互联网的“去中心化”特征。
1.2.3. 微云
Cloudlet小型的云数据中心,位于网络边缘,主要目的:为移动设备提供强大的计算资源和较低的通信时延支持计算密集型和交互型强的移动应用。
微云分三层架构: 移动设备,cloudlet服务器和云计算中心,将云服务“搬近”用户。
1.2.4. 移动边缘计算
移动边缘计算主要是让边缘服务器和蜂窝基站相结合,可与远程云数据中心连接或断开。
支持网络中2级3级分层应用部署。
旨在灵活的访问无线电网络信息,进行内容发布和部署。
1.3 移动边缘计算与5G
1.4 研究问题划分
1.4.1 特征 Characteristics
紧临性、部署密集型:低时延、位置感知性、网络上下文感知性
1.4.2 参与者 Actors
应用开发商,内容提供商,移动用户,移动边缘服务提供商,软件供应商和 OTT(over the top)玩家。
(OTT:广泛地用在通信领域,指的是谷歌、苹果、Skype、Netlix等利用其他运营商的宽带网发展自己的业务,以前的Skype和QQ 、现在的Netfix网络视频以及各种移动应用商店里的应用都是OTT。不少OTT服务商直接面向用户提供服务和计费,使运营商沦为单纯的“传输管道”,根本无法触及管道中传输的巨大价值。)
1.4.3 接入技术 Access Technologies
移动把边缘计算环境中,移动设备通过蜂窝网络(GPRS CDMA 3、4、5G/Wi-MAX)Wi-Fi接入点等无线通信与其他设备或边缘网进行通信。
由于网络部署密集 ,用户可以通过切换任何可用的接入网络连接到边缘网络。
1.4.4 应用 Application
- 计算卸载 computation offloading
移动设备资源受限,计算密集型应用程序不在移动主机上部分计算被迁移至云数据中心,成功执行任务后返回结果。
边缘设备到核心云通信时延长,在移动边缘计算中有限的服务器被部署到网络边缘。计算密集型任务被迁移。
- 协同计算 collaborative computing
协同计算使多人和组织在分布式系统中互相协作。
设备位置和通信时延十分重要。
AR:在边缘网络提供了强大的实时上下文感知协作系统。
- 内存复制 memory replication
LTE——设备主要连接技术,物联网设备计算和存储能力较差,设备从周围收集数据,并将数据迁移至云基础设施做进一步的计算。边缘网络为每个设备承载了多个克隆云,把计算能力带到物联网设备附近,减少网络时延。
- 内容分发 content delivery
内容分发技术可以实现优化web服务器和web内容,从而提高可用性,高性能,低时延的服务。
移动边缘计算可以基于网络状态和可用的网络负载 动态优化web内容,使用户移动性和服务体验来优化内容。
1.4.5 目标 Objectives
移动节点:最优化移动设备的通信时延和能耗。
网络供应商:最小化基础设施成本,提高吞吐量。
其它:获取网络上下文信息,进行内容发布。
1.4.6 计算平台 Computational Platforms
云,边缘服务器,移动节点。
主要表示不同的计算主机,对等计算中,任务被迁移至临近移动设备。
任务可被迁移到边缘网络的边缘云,移动边缘服务器部署在每个基站。
1.4.7 关键使能技术 Key Enablers
关键使能技术有助于在无线接入网内给移动用户提供上下文感知,低时延,高带宽服务的不同技术。
云与虚拟化
虚拟化允许在一个物理硬件上创造不同的逻辑设施。
位于网络边缘的云计算平台利用虚拟化技术搭建多个虚拟机,去提供不同的云计算服务。
SaaS ,PaaS ,IaaS。
大容量服务器
传统的大容量服务器和移动边缘服务器部署在边缘网络的每个移动基站,移动边缘服务器执行网络流量转发和过滤,并负责执行被边缘设备迁移的任务。
网络技术
Wi-Fi和蜂窝网络是主要用于连接移动设备和边缘服务器的主要网络技术。
移动设备
在边缘网络内通过机器与机器间的通信执行对等计算。
软件开发工具包
API
第2章 关键技术
2.1 边缘云放置技术
边缘云应该放在什么位置?
移动边缘计算目的:将云计算能力迁移到网络边缘,减少核心网拥塞和传播延迟造成的迟延。
边缘云放置策略(位置,数量)会对边缘云响应时间和资源利用率产生重要的影响。
放置如图:
边缘云适合在无线城域网中放置:1. 高成本效益。2.不闲置,高效。
挑战:服务质量,网络时延,应用性能,负载不均衡。
2.1.1 国外研究进展
澳洲国立Xu等人:有容量限制边缘云放置问题
Efficient algorithms for capacitated cloudlet placements.
问题思路:将边缘云放入一些关键的接入点。考虑到(1)如何将移动用户请求分配给边缘云,最小化用户与提供服务边缘云的时延。
解决思路:证明是NP问题(1)小规模:整形规划,精确解(2)大规模:使用贪婪算法,近似解。
此外,根据用户请求是否具有先难沟通的资源需求设计了2个能保证近似比的近似算法算法,在已经放置k个边缘云的前提下,动态的分配用户请求。
澳洲国立 Jia 提出了基于密度的边缘云放置算法。
大规模无线城域网放置有限数量的边缘云和给用户分配边缘云的问题,以最小化迁移任务的平均等待时间。
过程:
- 排队论设计一个多用户多边缘云的系统模型
- 提出k个边缘云的放置和用户分配算法。用于实际动态和持续移动用户的无线城域网中。
- 两种云放置算法: (1)负载最重的接入点优先放置算法和基于密度的边缘云放置算法。(2)负载最重的接入点优先放置算法即对整个网络的接入点按照用户积累任务到达的速率排序,在前k个任务量最大的接入点放置边缘云。
负载最重的接入点优先放置算法缺点
- 最大负载点不一定接入最多,可能在1,2跳的位置范围,所以不应该是负载最大地方放置,而是用户接入点最密集的地方放置。
- 总是距离最近,边缘云工作过载,其他边缘云资源不充分使用。
Jia 提出了基于密度的边缘云放置算法。
- 在最密集地方放置,减小平均网络时延。
- 均衡用户工作负载,减少排队时间。
2.1.2 国内研究进展
南京大学 Xiang 基于移动用用地理位置信息的自适应移动边缘云的放置方法。
核心:最大化边缘云覆盖移动用户的数量。
- k means 算法识别移动设备区域的中心位置,按访问路径图进行调整。
- 根据放置规则约束过滤袋哦不当的位置,结合中心位置间的距离。
- 根据区域结构生成边缘云的移动轨迹。
2.2 计算卸载技术
移动终端决策是否进行计算卸载?
移动设备通过把移动应用中的工作负载卸载到云端,利用云端手机、存储和处理数据,从而减少移动设备的程序执行时间并降低能耗。要求:实时性,低计算低通信时延。总结:云计算资源扩展移动设备能力。对象:计算密集型,交互密集型。
架构:
2.2.1 国外研究进展
Eduardo 杜克 2010 MAUI ,最早的计算卸载实现模型。
简单思想:支持在程序运行时,细粒度的决定将哪些代码卸载至云端执行。将可卸载的运行方法用Remoteable标注。MAUI 系统决策引擎分析卸载的成本和收益,评估带宽和延迟,决定是否对改方法进行云端执行。
移动设备MAUI: 3个组件:
- 分析器:负责分析卸载的成本和收益。
- 决策引擎:实际运行在MAUI服务器上。
- 客户端代理:负责收集传输卸载方法的状态信息。
服务器设备MAUI: 4个组件:
- 分析器:负责分析卸载的成本和收益,同上代理作用。
- 决策引擎:定期对方法是否需要卸载进行决策。
- 服务端代理:负责收集传输卸载方法的状态信息,同上代理作用。
- MAUI控制器:身份检验和资源分配。
优点:可有效降低移动端能耗。
缺点:开发人员手工判断可卸载性
Intel Byung-Gon CloneCloud计算卸载模型。
简单思想:通过静态分析器根据限制条件对静态代码进行分析和动态环境分析相结合,识别出可以卸载到云端运行的方法。
- 限制条件:访问本地资源代码得在本地
- 共享本地状态的代码必须在同一设备上运行
- 放置出现嵌套卸载
动态分析器结合网络环境分析卸载成本收益,构造代码开销函数,用最优化求解器给出一个执行时间最短或能耗最低的应用划分方法。
流程:
先在云端为移动设备创建克隆虚拟机实例,如遇到卸载节点,运行线程挂起,状态信息发送到云端虚拟机,云端继续运行该线程,该线程不受影响,如试图访问卸载到云端云端的线程的相关信息,就会进入暂时挂起状态。当卸载到云端的线程执行完后,相关信息传回本地,合并到本地被挂起的线程,本地的唤醒后继续执行。
Karim 佐治亚理工 COSMOS以风险控制方式进行卸载决策。
根特大学的Tim等人”在增强现实用物计把Cloudlet当作云端实现计算卸载。
Mahadev CMU 在2009年提出Cloudlet扩展移动设备的能力。
Karim 佐治亚理工 提出协调同域移动设备提供云服务。FemtoClouds 提供了动态的,配置的,多设备的自发性服务云。
安装FemtoClouds 客户端服务, 通过结合用户的输入来估计移动设名的计算能力, 以确定可用于共享的计算能力。 客户端利用设备传感器、用户输人信息和历史信息来构建和维护用户配置文件。客户端服务与控制器共享可用信息。最后,控制器负责估计用户存在的时间,并将参与的移动设备“构建”成云。Femto-Clouds能够使用户在时间上形成稳定性和可预测性,有基于个人和社会关系的信任潜力,能够获得设备使用的补偿。
* Cloudlet
Coudlet是在移动用户附近的、可信的、资源丰富的计算机集群。
Cloudlet是广泛分布的互联网基础设施,一个Cloudlet被视为一个云端。Cloudlet 能够实现自我管理,功率小,能够接到Internet,能够进行访问控制设置,与移动设备之间仅有1跳的距离。
这种资源管理模式使Cloudlet可以很方便地被部署在诸如咖啡店、图书馆、商场、医院等场所。为了保证部署的安全性,可以通过第三方远程监控把Cloudlet封闭在一个防篡改或防拆封的机柜中。
在利用Cloudlet时,移动设备充当瘦客户端,所有重要且复杂的计算都卸载到附近的Cloudlet中。如果移动设备附近没有可用的Cloudlet,则移动设备可以使用传统的远端云或者仅使用移动设备本身的资源。
简而言之Cloudlet 是个预先定义的接近移动设备的云,由些静态站组成, 通常安装在公共区域。据预测,Cloudle能够满足开发者和卸载基础架构的需求,提供具体的、有效的功能,实现更快的上市速度。
里昂大学的GolchayI提出了自发临近云SPC:通过附近的一组移部身动设备以协作的方式执行任务卸载。
移动设备之间通过中间件进行交互,对外,发出可提供的资源,如哪个时间段在什么地方可又实以提供什么样的资源等;对内,接收或拒绝其他临近设备发来的,计算请求。这类计算卸载算法需要进一 -步考虑激励措施,通过对设用户的行为进行激励,实现共利共赢。
2.2.2 国内研究进展
对代码进行自动划分并在运行时完成卸载的技术手段主要依赖于对运行环境中虚拟机的修改,从而支持计算进程的挂起、运行和恢复操作等。通过这种方式实现计算卸载有利也有弊,好处是卸载能力很强,缺点是限制了其适用场景,也因此降低了用户的接受度,此外,对虚拟机的修改还会进步地导致各类安全性问题。
(未完待续。。。)
2.3 服务迁移技术
如何实现服务在多个云间无缝迁移?
移动终端用户频繁移动,导致边缘云服务质量急剧下降,甚至服务中断,难以保证服务的连续性。
在移动边缘计算环境下实现服务的无缝迁移(即服务前移时间开销的最小化)。
服务迁移无缝迁移和蜂窝网络无缝迁移
蜂窝网络无缝迁移——是通信的切换,在切换的过程中传输数据量不大。
服务无缝迁移——是把程序,数据和执行状态从一个边缘云迁移到另一个边缘云,数据传输量大。
移动边缘计算中的服务迁移与云数据中心的虚拟机迁移
- 优化标准不同
移动边缘计算中的服务迁移——优化标准是迁移的总时间。
云数据中心的虚拟机迁移——虚拟机的宕机时间,在此时间段虚拟机实例会被暂停,占迁移总时间的一小部分。
- 计算资源通信方式和质量
移动边缘计算服务迁移没有保障。
虚拟机的迁移发生在云计算中心,不同计算节点之间有可靠的专用高速有线网络连接,且参数可以自设定。
实现方法策略:
基于决策过程的服务迁移。
基于虚拟机切换的服务迁移。
2.3.1 欧洲研究进展
基于决策过程的服务迁移。
使用连续时间马尔科夫决策过程模型。
https://zhuanlan.zhihu.com/p/28084942
途径:考虑迁移策略,转移矩阵与激励,进而解决成本和服务质量的矛盾。
方法:制定一个迁移策略,当移动设备和数据中心的距离在一定范围时,就决定是否进行服务迁移。
基于决策的服务方法与两个对比方法(进入新边缘云的有效范围就迁移,距离初始边缘云一定范围就迁移)去最大期望收益。
2.3.2 美洲研究进展
基于虚拟机切换的服务迁移。
问题:最保守的用户移动也会让网络性能显著退化。
Satyanarayanan CMU 虚拟机切换概念
当用户移动时,虚拟机从一个Cloudlet传输到另一个Cloudlet,已实现较低的端到端时延——通过压缩迁移需要的数据量,在无线接入网中,实现1分钟的服务迁移。
设计方案:
- 优化总切换时间,而非宕机时间
- 动态适应网络带宽和Cloudlet负载
- 借助Cloudlet已有的虚拟机状态。
IBM华生实验室的Wang等人
通过利用移动边缘计算比境中分散的网络和计算资源,采用分层思想构建服务迁移框架以最小化服务迁移的总时间。其服务迁移框架由三部分组成。
如图所示,第1层是基础层, 用来记录所有相关的基础数据,包括操作系统、内核等,可以通过备份把这个基础数据包预先存储在移动边缘计算环境中,以供后续大量的应用程序重复便用。因为每个移动边缘计算环境中都存储有它的备份,所以在每次迁移过程中不需要传送基础层的信息,从而节省了迁移时间。
第2层是应用程序层,包含应用程序的“空”版本和专用数据。当整个应用程序要进行迁移时,则会先备份并把应用程序当作实例挂起。
第3层是实例层,存放应用程序的运行状态。当挂起需要被迁移的实例后,通过增量编码的修改、去重和压缩等同步技术,实现到终点的无缝迁移。
服务从起始移动边缘计算环境至终点移动边缘计算环境流程 如图2-15.
- 开始迁移正在运行的应用程序。如果终点移动边缘计算环境没有基础包数据,则需要先对基础层的内容进行备份,然后迁移至终点移动边缘计算环境。如果终点移动边缘计算环境已经存放基础包数据,则判断是否有需要迁移的应用程序数据。
- 其次,如果终点移动边缘计算环境没有相关的应用程序数据,则备份应用程序层的内容,进行下一步迁移。如果终点移动边缘计算环境已经存放了应用程序数据,则把应用程序作为实例进行迁移。
- 然后,当起始移动边缘计算环境确定需要迁移的实例时,暂时挂起要迁移的实例,完成修改、去重和压缩后的增量编码同步。最后,恢复实例,完成服务迁移过程。
Wang等人(32)在设计服务务迁移算法时考虑了成本、网络结构和移动模型异质性等因素,通过底层预测机制预测在每个移动微云Cloudlet上运行的服务成本和迁移成本(与网络状态和用户偏好有关)。
预测机制可以提供最可能的未来成本序列及实际成本和预测成本的偏差上限,这对于需要保证预测准确度的预测方法是有效的。通过预测未来成本参数找到最优的服务放置方法,以最小化平均成本,通过定义一个时间窗口预测未来时间,如图2-16所示132),其中共有Tmax 个时间片,时间窗的大小是T,即每T个时间片作为一个时间窗。在每个时间窗内,不同时间片之间存在服务迁移,因此需要设计服务迁移策略使得该时间窗内的服务迁移成本最低。不同时间窗之间是相互独立的,不同时间窗连接处的两个时间片之间不进行服务迁移。
时间窗不能太大,因为越靠后的时间片,预测误差越大;时间窗也不能太小,否则就失去了优化服务迁移策略的目的。因此,需要对时间窗的大小进行优化。
Wang等人提出一种找到最优时间窗的方法,考虑了预测误差并最小化服务迁移平均成本的上限。
2.4 群智协同技术
如何群体完成个题难以完成的任务技术?
在移动边缘计算环境下,当大量用户访问边缘云时,具有有上体资源的移动边缘计算服务器可能出现工作负荷过载的现在这种情况下,移动边缘计算系统可以通过群智协同减轻服务器的工作负载, 以平衡服务器的工作负荷,减少用户请求的排队时间。
然而,边缘云之间应该如何协作并没有固定的策略, 因出,产生了移动边缘计算环境下的群智协同问题。群智协同是一种分布式的问题解决机制,它通过大量用户的相互协作来完成仅靠单个用户难以完成的复杂任务,例如,用户可以利用群智协同来完成移动旅游指导、停车位搜索等具有实时性的复杂任务。
假如边缘云A的工作负荷过载,边缘云B闲置了很多资源,边缘云A和边缘云B可以通过相互协作实现资源共享,从而可以为移动用户提供更多的资源,增强用户体验,提高资源利用率,进而增加云计算服务提供商的收益。群智协同的主要参与者包括任务请求人和任务完成人(也称为工人),他们通过任务联系到一起。
任务请求人利用群智协同完成自己任务的主要步骤包括:①设计任务:②利用群智协同平台发布任务、等待答案;③拒绝或者接收工人的答案:③根据工人的答案整理结果,完成自己的任务。
工人使用群智协同的主要步骤包括:①查找感兴趣的任务;②接收任务;③回答任务;④提交答案[3。
第3章 典型应用场景
3.1 车联网
Internet of Vehicles
车联网体系结构:
4层架构
3.2 AR 增强现实
3.3 医疗服务
3.4公共安全
第4章 工具与实验平台
4.1 iFogSim
4.2 JADE
4.3 OAI
4.4 OpenStack
4.5 Docker
4.6 OpenLTE
第5章 挑战
5.1 系统架构
笼式安全——安全等级与在运营商完全控制下的安全水平相同。
数据压缩和有效性 ——带宽的使用和结果数据的有效性。
权衡定理 ——4个特点:移动性,延迟性,性能容量,隐私。 提高隐私性和容量,就意味着性能和延迟的变换(特点对立性)。
数据源—— 输入源,程序,用户对象。 数据完整性的保证。
在网络边缘启用QoS(端到端的服务质量) 运营商的合作,两边协商配置成本高,不易扩展。。。
5.2 服务与应用
- 命名,识别和发现资源
- 标准化API ——计算资源来自不同供应商时,为了实现正常沟通和协同,需要标准化api。
- 激励机制 ——激励文案和商业模式鼓励使用边缘计算应用。
- 实时处理和通信 ——边缘设备计算、通信能力有限。 (视频分析,活动分析难)。
- 应用程序开发和测试工具——开发应用工具。
- 边缘服务生态系统
5.3 安全与隐私
- *身份认证 *——传统的基于公钥基础设施PKI的身份验证对物联网系统来说不能很好扩展。
- 信任机制 ——服务可信赖性,处理不可信任的服务。
- *恶意节点检测 *——恶意计算节点伪装合法节点来交换和手机物联网设备产生的数据。
- 数据隐私 —— 资源受限的物联网设备缺乏加密和解密数据的能力。数据量增长,保存在通信层,处理层,所以要保护用户对设备中某些应用生成数据的使用模式。
- 入侵检测和访问控制 ——设计优化一套监测系统,以确保只有受信任的参与者才能完成给定操作。检测不当行为或恶意的移动设备。