原文链接: https://ieeexplore.ieee.org/document/7807196
翻译中卸载为offload
近年来,业界对边缘计算的投资和研究兴趣显着增长,在边缘计算中,计算和存储节点位于互联网的边缘,紧邻移动设备或传感器。 这项新兴技术有望为移动计算,物联网的可伸缩性和隐私策略实施提供高响应性的云服务,并能够掩盖短暂的云中断。
在过去的十年中,一直主导着IT讨论的云计算具有双重的价值主张。 首先,集中化利用规模经济来降低系统管理和运营的边际成本。 其次,组织可以通过消耗大型服务提供商在Internet上的计算资源来避免创建数据中心的资本支出。 这些考虑因素导致将计算能力整合到遍布全球的多个大型数据中心中。 事实证明,云计算带来的经济利益使其有可能继续成为未来计算领域的永久特征。
但是,推动集中化的力量并不是唯一起作用的力量。 面向移动计算和物联网(IoT)的新兴技术和应用程序正在推动计算向分散发展。 边缘计算是一种新的范例,其中大量的计算和存储资源(通常称为云,微型数据中心或雾节点)放置在Internet边缘,与移动设备或传感器非常接近。
近年来,对边缘计算的行业投资和研究兴趣急剧增长。诺基亚和IBM于2013年初共同推出了无线电应用云服务器(RACS),这是一种用于4G / LTE网络的边缘计算平台。次年,在欧洲电信的支持下,开始了移动边缘计算标准化工作标准协会(ETSI)。沃达丰,英特尔和华为与卡内基梅隆大学(CMU)合作于2015年6月发起了开放边缘计算计划(OEC; openedgecomputing.org),并于一年后扩展到了Verizon,德国电信,T-Mobile和诺基亚和Crown Castle。这项合作包括在宾夕法尼亚州匹兹堡创建一个Living Edge Lab,以通过现场部署基于概念验证的基于Cloudlet的应用程序来获得实践经验。由电信行业组织的首届移动边缘计算大会(http://tmt.knect365.com/mobile-edge-computing) 于2015年9月在伦敦召开,一年后又在慕尼黑举行。 Open Fog Consortium(www.openfogconsortium.org)由Cisco,Microsoft,Intel,Dell和ARM与普林斯顿大学合作于2015年11月创建,此后扩展到包括许多其他公司。首届IEEE / ACM边缘计算研讨会([conferences.computer.org/SEC])于2016年10月在华盛顿特区举行。
这些发展提出了几个问题:为什么边缘计算应运而生,它启用了哪些新功能,其发展方向是什么?
ORIGIN AND BACKGROUND 起源与背景
边缘计算的起源可以追溯到1990年代后期,当时Akamai引入了内容交付网络(CDN)来提高Web性能。CDN使用靠近用户边缘的节点来预取和缓存Web内容。这些边缘节点还可以执行一些内容自定义,例如添加与位置有关的广告。CDN对于视频内容特别有价值,因为缓存可以节省大量带宽。
边缘计算通过利用云计算基础架构来概括和扩展CDN概念。 与CDN一样,cloudlets与最终用户的接近至关重要。但是,cloudlet不仅限于缓存Web内容,还可以像在云计算中一样运行任意代码。此代码通常封装在虚拟机(VM)或轻量级容器中,以实现隔离,安全性,资源管理和计量。
1997年,布莱恩·诺布尔(Brian Noble)和他的同事们首次展示了边缘计算在移动计算中的潜在价值。他们展示了如何通过将计算卸载到附近的服务器上,在资源有限的移动设备上以可接受的性能实现语音识别。 两年后,我和Jason Flinn扩展了这种方法以延长电池寿命。在2001年的一篇文章中,我概括了这些概念,我引入了术语“网络搜寻”,旨在通过利用附近的基础架构来扩大移动设备的计算能力。
云计算在2000年代中期的兴起导致云成为最明显的可从移动设备中利用的基础架构。 如今,Apple的Siri和Google的语音识别服务都将计算任务转移到了云端。 不幸的是,整合意味着移动设备与其最佳云数据中心之间的平均间隔很大。 Ang Li和他的同事报告说,从260个全局优势点到其最佳Amazon Elastic Compute Cloud(EC2)实例的平均往返时间为74毫秒,此外还必须加上无线第一跳的延迟。 在抖动方面,必须包括多跳网络固有的方差。
显然,对于要求将端到端延迟严格控制在几十毫秒以内的应用程序,不建议依赖云数据中心。 如稍后将讨论的,对于新兴应用程序(如增强现实(AR)),必须严格控制延迟。
这些有关端到端延迟和云计算的观察最早是在我与Paramvir Bahl,RámonCáceres和Nigel Davies共同撰写的2009年一篇文章中阐明的,该文章奠定了边缘计算的概念基础。我们提倡两级架构:第一级是当今未修改的云基础架构; 第二层由分散的元素(称为cloudlets)组成,其状态从第一层缓存。尽管持久性缓存物理分散在Internet边缘,但使用持久性缓存而不是硬状态简化了对cloudlet的管理。当然,可以将cloudlet概念扩展为多级cloudlet层次结构。
2012年,Flavio Bonomi和他的同事引入了雾计算一词来指代这种分散的云基础架构。 但是,其分散的动机是物联网基础设施的可扩展性,而不是移动应用程序的交互式性能。 研究人员设想了雾节点的多层层次结构,从云扩展到IoT边缘设备。
WHY PROXIMITY MATTERS 为何邻近性很重要
随着我们探索移动计算和物联网的新应用和用例,邻近性的优点越来越明显。在物理世界中,邻近的重要性从未受到质疑。 关于房地产价值的三个主要决定因素是“位置,位置和位置”的古老公理抓住了这一观察好。 在网络世界中,互联网所提供的无缝连接使我们陷入一种对物理接近性的漠视。由于逻辑网络的接近度完全以低延迟,低抖动和高带宽为特征,因此“物理距离足够近了吗? ”不能被抽象地回答。 它取决于各种因素,例如所使用的网络技术,网络争用(network contention),应用程序特性以及用户对较差的交互响应的容忍度。
物理接近度会影响端到端延迟,经济上可行的带宽,建立信任关系和生存能力。通过充分的努力和资源投入,可以部分地弥补缺乏邻近性的问题。 例如,直接光纤连接可以实现低延迟和远点之间的高带宽。 但是,这种方法有局限性。 光速是对延迟的明显物理限制。 需要使用多跳联网策略来覆盖具有许多访问点的较大地理区域,这对延迟和带宽都施加了经济上的限制。 每个跃点都会引入排队和路由延迟以及缓冲区膨胀。
至少可以通过四种不同的方式帮助cloudlets:
- 高度响应的云服务。 Cloudlet与移动设备的物理接近性使它更容易实现低端到端延迟,高带宽以及对Cloudlet上服务的低抖动。 这对于将计算工作转移到cloudlet的应用程序(如AR和虚拟现实)非常有价值。
- 通过边缘分析实现可扩展性。如果在cloudlet上分析原始数据,从大量高带宽物联网传感器(例如摄像机)到云的累计入口带宽需求将大大降低。 仅(更小)提取的信息和元数据必须传输到云。
- 隐私政策的执行。 通过充当物联网传感器数据基础架构中的第一联系点,cloudlet可以在将数据发布到云之前执行其所有者的隐私策略。
- 掩盖云中断。 如果由于网络故障,云故障或拒绝服务攻击而导致云服务不可用,则附近cloudlet上的回退服务可以暂时掩盖该故障。
现在,我将详细讨论这些优点。
HIGHLY RESPONSIVE CLOUD SERVICES 高度响应的云服务
人类对关键交互路径的延迟及其在认知任务中的表现极为敏感非常快速和准确。例如,在正常照明条件下,人脸识别需要370-620毫秒,具体取决于熟悉程度。语音识别的短语需要300-450毫秒,而仅需4毫秒就能知道声音是人类的声音。使用跟踪系统的VR应用程序需要小于16毫秒的延迟才能实现感知稳定性。 几十毫秒的端到端延迟是一个安全但可以实现的目标。
图1.移动设备上的(a)增强现实和(b)人脸识别应用程序的响应时间分布和每次操作的能源成本,其中来自该设备的图像通过Wi-Fi第一跳传输到cloudlet 或Amazon Web Services(AWS)数据中心。 理想情况最好是通过cloudlet来近似,这说明了低延迟卸载服务的重要性。该图改编自K. Ha等人,“移动多媒体应用程序对数据中心整合的影响” Proc.Natl.Acad.Sci.USA。 2013年IEEE国际会议 云工程师。 (IC2E 13),2013年,第166–176页。
图1说明了Cloudlet对于低延迟卸载服务的重要性。 这些图显示了AR和移动设备上的面部识别应用程序的测量响应时间的累积分布。 来自位于匹兹堡的移动设备的图像通过Wi-Fi第一跳传输到cloudlet或Amazon Web Services(AWS)数据中心。 通过在VM中执行的计算机视觉代码在目的地处理图像。 对于AR,将识别图像中的建筑物,并将与它们的身份相对应的标签发送回移动设备。为了面部识别,返回该人的身份。
图1中的理想曲线将是一个在原点处跳到1.0的阶跃函数。 如图所示,理想状态最好是用cloudlet来近似。 端到端网络延迟会阻碍性能,如响应时间曲线越差(对应于更远的AWS位置)所示。响应时间的增加也会增加移动设备上每次操作的能耗。该值显示在图例中相应标签的旁边。例如,在Cloudlet上执行AR操作时,设备平均消耗1.1 J,而在AWS-East,AWS-West等上执行该操作时,设备消耗3.1 J,5.1 J,依此类推。对于集中在几个大型数据中心的任何卸载服务,都可以预期得到类似的结果。
图中的“仅移动”标签对应于不执行卸载并且计算机视觉代码在移动设备上运行的情况。 尽管避免了Wi-Fi通信的能源和性能成本,但此选项比使用cloudlet慢。对于这些应用,卸载显然很重要。
Cloudlets是一项颠覆性技术,可在移动设备的一个无线跃点内引入能量丰富的高端计算,从而支持计算密集型和延迟敏感型的新应用程序。 一个可穿戴的认知帮助就是一个很好的例子,它可将Google Glass之类的设备与基于Cloudlet的处理相结合,以指导用户完成一项复杂的任务。
与GPS系统一样,用户会听到描述下一步操作的合成语音,并在Glass显示屏中看到视觉提示。 系统会立即捕获错误并在用户级联之前对其进行纠正。 2013年美国国家科学基金会无线网络的未来发展方向研讨会的最终报告将这一新类型的应用称为“令人惊讶的变革性”。 在CMU正在进行的工作中,我们为表1中汇总的七个任务构建了认知辅助应用程序。有关这些应用程序中的一些的视频,请访问goo.gl/02m0nL。
在cloudlet上,这些应用程序的工作流程包括两个阶段。在第一阶段,分析传感器输入以提取任务进度的符号表示(表1的第四列)。这是相对于任务的输入传感器值的理想表示,并且排除了所有不相关的细节。此阶段必须容忍现实中的巨大变化,例如,不同的光照水平,光源,查看者相对于任务工件的位置,背景中与任务无关的杂波等等。可以将符号表示的提取视为特定于任务的“模拟到数字”转换:传感器值的巨大状态空间被简化为较小的特定于任务的状态空间。每个任务工作流的第二阶段仅在符号表示上运行。将符号表示与预期任务状态进行比较,将为下一步(表1的最后一列)生成用户指南。在Glass显示屏上显示视频指南,并使用Android text-to-speech API提供音频指南。
SCALABILITY THROUGH EDGE ANALYTICS 通过边缘分析实现可扩展性
不考虑延迟因素,cloudlets还可以减少进入云的入口带宽。 例如,考虑一个应用程序,其中许多位于同一地点的用户不断从他们的智能手机向云传输视频以进行内容分析。 在中等规模的城市中,即使是一小部分用户,其累积数据速率也将使其城域网饱和:12,000个传输1080p视频的用户需要每秒100吉比特的链接; 一百万个用户将需要每秒8.5 TB的链接。
图2显示了cloudlets如何解决这个问题。 在提议的GigaSight框架中,来自移动设备的视频15仅传播到附近的cloudlet。 cloudlet几乎实时地运行计算机视觉分析,并且仅将结果(内容标签,可识别的面部等)以及元数据(所有者,捕获位置,时间戳等)发送到云。 这样可以将进入云的带宽减少三到六个数量级。 GigaSight还显示了云中的标签和元数据如何在Cloudlet的(有限)保留期间引导视频片段内容的更深入和更自定义的搜索。
摄像机只是物联网中高数据速率传感器的一个示例。 另一个例子是现代飞机,它可以在飞行中生成近TB的传感器数据。在飞机上的云上实时分析这些数据可以为预防性维护,燃油经济性和其他好处提供及时的指导。
Cloudlets的延迟时间和带宽优势在汽车领域尤其重要,以补充为实时控制和避免事故而探索的车辆到车辆(V2V)方法。 在可预见的未来,来自行驶中的汽车的云连接最多将是3G或4G / LTE。 一个重要的问题是,cloudlet应该放在汽车中还是电信基础设施的一部分(也许一个小云通过光纤连接到一个区域中的多个蜂窝塔)。 两种选择都有价值。
最好在汽车的Cloudlet上托管针对汽车乘客的多人视频游戏等应用。cloudlet还可以对来自引擎和其他来源的高数据速率传感器流执行实时分析,以警告驾驶员即将发生的故障或需要预防性维护。 此外,这些信息可以传输到云中,以集成到车辆制造商的数据库中。 对此类异常数据进行细粒度分析可能会发现特定于模型的缺陷,可以及时进行纠正。
对于其他汽车应用程序(例如协作实时避免道路危险),telco cloudlet是最佳的托管站点。 例如,如果车辆撞到坑洼或转弯处以避免倒下的树枝,那么危害的坐标可以在电信云中快速共享,然后由其他汽车使用多个小时来主动应对危害(例如,通过警告 驾驶员尽早换道)。
PRIVACY POLICY ENFORCEMENT 隐私权政策执行
Cloudlets可以帮助解决一个棘手的问题,即,由于物联网系统过度集中而引起的对数据隐私的日益关注。 用户和组织越来越不愿将原始传感器数据发布到IoT云中心,他们希望对这些数据的发布进行更精细的控制。 例如,用户应该能够删除或认为他或她认为敏感的传感器数据子集。 从最终用户的角度来看,变性后的传感器数据可以安全地发布到外界:图像中的面孔可能模糊,白天或晚上的某些时间可以粗略地汇总或忽略传感器读数,等等。 当今的IoT体系结构将数据直接从传感器传输到云集线器,因此无法进行这种细粒度的控制。
Nigel Davies和他的同事提出了一种IoT隐私架构(请参见图3),该架构利用了传感器所有者的信任域中的cloudlet。该cloudlet是传感器流与基础结构联系的第一点。 受信任的称为隐私调解器的软件模块在cloudlet上执行以执行变性和隐私策略实施在传感器流上。 因此,Cloudlets为可扩展且安全的隐私解决方案提供了基础,该解决方案与信任和责任的自然组织边界非常吻合。
如图3所示,根据数据量和本地存储大小,全保真传感器数据可以在有限的持续时间(例如几小时,几天或几周)内存储在cloudlet中。 如果IoT中心发现异常并返回使用更不积极地变性的数据进行更深入的数据分析的请求,这可能会很有价值。 在这种情况下是否放松正常的隐私政策是最终用户控制下的决定。
MASKING CLOUD OUTAGES 屏蔽云中断
随着我们对云的依赖性增加,我们对云中断的脆弱性也在增加。 移动和云计算融合的隐含假设是,云始终可轻松访问,换句话说,端到端网络质量很好,网络或云故障很少。 但是,在某些使用环境中,必须将云访问视为偶尔的奢侈,而不是基本的必需品。 这种观点适用于可以被称为敌对环境的几个重要环境。
敌对环境的主要例子是军事行动的战场-干扰敌人的网络是一种标准战术。 另一个示例是地理区域,在该区域中,网络基础设施遭到自然灾害或恐怖袭击的破坏后,恢复工作正在进行。 第三个例子是网络基础设施薄弱的发展中国家。 第四个例子是互联网的任何部分由于受到网络攻击而暂时变成了敌对环境。 人们越来越担心网络攻击可能很快成为有组织犯罪的主要武器以及国家政策的手段。 如果这些可怕的预测成真,那么将来可能必须将整个Internet视为敌对的环境。
Cloudlets可以缓解云中断。 由于物理上的接近性,cloudlet的可生存性特征比其远处的云更接近其关联的移动设备。 这打开了方法的大门,在该方法中,cloudlet上的后备服务可以暂时掩盖云的不可访问性。 在故障期间,cloudlet可以充当云的代理并执行其关键服务。 修复故障后,可能需要将暂时提交给cloudlet的操作传播到云中以进行协调。
二十多年前,我和詹姆斯·基斯勒(James Kistler)和我在描述Coda文件系统时就预料到了如何将该概念应用于云数据,该文件系统提供了对共享数据的可断开的读写访问。 基本步骤包括囤积(将数据预取到持久性缓存中),模拟(在没有云的情况下利用囤积的数据并精确跟踪本地更新)和重新集成(将更新传播到云中以及检测和解决冲突)。 将这些步骤推广到各种云服务将是未来重要的研究领域。
THE ROAD AHEAD 前方的路
边缘计算显然具有许多优势。 同时,它还面临许多技术和非技术挑战。
在技术方面,与分布式计算中的集体控制和共享cloudlet所需的软件机制和算法有关的未知数很多。 在管理分散的Cloudlet基础架构方面也存在很多障碍。 如前所述,云计算的推动力之一是降低集中式基础架构的管理成本。 边缘计算固有的分散性极大地提高了管理的复杂性。 开发创新的技术解决方案以降低这种复杂性是边缘计算的研究重点。 另一个重要的研究领域将是开发机制,以补偿相对于云数据中心而言,cloudlet的外围安全性较弱。 防篡改和防篡改外壳,远程监视以及基于可信平台模块的证明的开发都是可以缓解此问题的重要途径。
在非技术方面,最大的未知数涉及用于部署cloudlet的可行业务模型。 成功将需要一系列复杂的行业,社区和标准组织的参与和支持。 这提出了一个典型的自举问题。 没有独特的利用边缘计算的应用程序和服务,就没有动机来部署cloudlet。 但是,如果没有足够大的cloudlet部署,开发人员几乎没有动机去创建那些新的应用程序和服务。 我们如何打破这种僵局?
这种情况类似于1970年代末至1980年代初互联网诞生之初的情况。 开放的生态系统吸引了对基础设施和应用程序的投资,而没有任何一个实体承担大风险或主导市场。 随着时间的流逝,这导致大量Internet基础结构和应用程序(例如电子邮件)的出现,这些基础结构和应用程序可以从该基础结构中受益匪浅。 到1990年代初期,万维网成为“杀手级应用程序”时,已经部署了足够的Internet基础结构以实现爆炸式增长。
通过培育开放的cloudlet生态系统的创建,边缘计算可以遵循类似但更快的成功道路。 这是OEC的OpenStack ++的目标,OpenStack ++是流行的OpenStack云计算平台的衍生产品。 “ ++”是指cloudlet环境所需的独特扩展,包括cloudlet发现,即时配置和VM切换。 随着边缘计算的发展,OpenStack ++旨在成为一个广泛使用的平台,以催化硬件,软件和服务方面的许多专有和非专有创新。
边缘计算的出现与计算和通信领域的三个重要趋势相吻合,尽管受到不同力量的推动,但它们仍在融合。一种趋势是软件定义网络(SDN)和网络功能虚拟化(NFV)的相关概念,这些功能必须由与边缘计算相同的一些虚拟化基础架构来支持。第二个趋势是对新型触觉应用中超低延迟(一毫秒或更短)无线网络的兴趣日益浓厚。超低延迟是未来5G网络的拟议属性之一。边缘计算是5G网络的自然合作伙伴,因为它可以确保超低的第一跳延迟不会被剩余的跳到云的延迟所淹没。第三个趋势是可穿戴设备,智能手机和其他代表互联网极端优势的移动设备的计算能力的持续改进。尽管这些设备的计算能力确实在增长,但它们的改进却因移动性的基本挑战(如重量,尺寸,电池寿命和散热)而被忽略。因此,边缘计算的最佳解决方案是在基础架构中,它可以在其中扩大邻近移动设备和传感器的功能。
最后,从历史的角度反思边缘计算非常有用。 自1960年代以来,计算在集中化和分散化之间交替进行。 批处理和时间共享的集中化方法在1960年代和1970年代盛行。 1980年代和1990年代通过个人计算的兴起实现了权力下放。 到2000年代中期,云计算的集中化方法开始发展到今天所占据的主导地位。 边缘计算代表了这一正在进行的辩证法的最新阶段。