人大人科创
张江-硅谷创新创业平台

互联网+科技金融 简报2018年第4期 毋庸置疑的雾计算

十年来,云计算备受瞩目,它提供给了新的计算模型,方便了服务的部署。但云并不是终点,未来仍将有新的计算模型推动新的服务,进一步方便我们的生活。本文将探讨云、雾、物共同组成的物联网生态系统;着重讨论雾计算和云相互配合形成的新计算模型。

毋庸置疑的雾计算

随着科技进步,各种技术名词也在快速发展。云计算、物联网、雾计算相信这些名词早已进入大家的视野。其中,雾计算的概念2011年由 Cisco 提出 [1],相对较新。时至今日,雾计算已经成为研究的热点和重点,并被业界寄予厚望。

然而,笔者却仍能看到对雾计算没有根据的质疑,无外乎两种:

  1. 不就是本地服务器吗?

  2. 云里雾里的,炒作呢吧?

对于这种质疑,笔者希望用本文揭示雾计算的重大价值。

  1. 雾计算远远不止那么简单,它是对数以万计的“本地服务器”整体性的考量。它是一个平台而不是单独一台机器。在后续内容中,我们会深入探讨。

  2. 看看世界上的科技巨头们选择的方向吧,以下所有项目都与雾计算有莫大关联。他们花费大笔资金精力聘用顶级科学家来炒作?

    • Arm、Cisco、Dell、Intel、Microsoft、普林斯顿大学共同投资创办的雾计算研究项目OpenFog [2]

    • Orange (法国电信) 与 Inria(法国国立计算机及自动化研究院)共同主导的雾计算与大规模分布式云研究项目Discovery [3]

    • 华为的“全面云化”战略 [4]

    • Intel 的 “Cloud Computing at the Edge”项目 [5]

    • NTT 的 “Edge Computing”项目 [6]

    • AT&T 的 “Cloud 2.0”项目


从物联网说起

智慧城市、智能家庭种种可预见的物联网应用在未来将极大的方便人们的生活。然而目前市场上智能终端设备的智能程度普遍令人不满。那么这个“智能”应来自哪里,怎样才能保障设备的智能呢?

计算机智能的基础就在于其背后的资源,如CPU、内存、硬盘、网络带宽等计算资源(更确切的说法会将CPU、内存归类于计算资源;硬盘归于存储资源;带宽归于通信资源。本文为了简化,统一将它们称作计算资源);视频、温度、光线强度等传感器提供的数据资源;当然还有电力等等。在这些资源中最核心的就是计算资源,通过计算提取数据中的知识,做出决策;通过存储来保存知识库,从而根据历史经验保证决策准确,做出预测;通过通信完成设备间的沟通,实现知识与决策的分发。基于以上,才能给用户智能的服务与体验。

那么现在设备的不够智能,症结是否在于设备的CPU不强、内存硬盘不够大呢?

终端的不足

我们无法想象把基站安装在每部手机上,同样的,我们无法想象每台设备都拥有大量资源,这将大幅度提高成本,无法形成有效的解决方案。

当资源不足时,一个直观的想法是将计算任务交给其他计算能力强的设备。物联网中有大量的终端设备,它们无法在本地完成计算做出决策,那么应该由谁来解决终端设备的资源不足呢?大家想到了云。

云的不足

云计算平台为云用户提供数据中心中的资源。近十年来,云计算充分的向人们展示了它的优越性:

  • “无限”的资源池

  • 大量用户共享资源池带来的廉价资源

  • 随时随地用任何网络设备访问

  • “快速”重新部署,弹性的资源租用

  • 按需购买,自助服务

服务提供商把特定服务部署在云中,终端设备发送信息给服务,服务完成运算后将结果发回给终端,并将必要数据在云端存储。通过这种形式,云充分满足了终端设备的资源期待,也成为物联网生态系统中不可缺少的一环。

为了服务不同地理位置的用户,在互联网的多层次结构中,数据中心位于核心网络。核心网络距离终端用户较远,用户消息需要经过若干跳才能够到达。下图是简化的一部分网络拓扑。

图1 互联网网络拓扑图示

数据中心提供了高度集中的大量资源,然而只有云仍有一些不足。

  • 高延迟:离用户较远的距离导致了较高的网络延迟。对实时性要求高的应用难以部署在云中。

  • 网络拥塞:根据 Cisco 的预测,到2020年,全球将有500亿智能设备。相较而言,网络带宽的增长速度远远滞后。如果大量的物联网应用部署在云中,将会有数量庞大的传感器原始数据时刻不断的涌入核心网络,带来核心网络拥塞。

  • 较低可靠性:安全、生命相关的物联网应用,一旦遇到应用失效,数据中心失效,或从终端用户到云平台的任何一段网络失效,都将带来重大的安全隐患。从终端到云的通信通路较长,失效风险较大;而在云中部署服务备份的成本也较高。

可见,对实时性,大数据,可靠性要求高的应用,云并不适合。人们需要新的计算模型来满足未来的应用,弥补云的不足。雾计算正是在这种背景下被提出的。

雾计算

雾计算是个很形象的名称,提出它的 Ginny Nichols 提了一个有趣的说法“雾是接近地面的云”。

这句话有两层含义:

  1. 雾计算和云计算有很多相似。例如,它们都基于虚拟化技术,从共享的资源池中,为多用户提供资源。

  2. 接近地面。这也指出了雾和云第一个不同——位置。更具体些,是它们在网络拓扑中的位置。

图2 雾计算原始定义图示

上图是根据 Cisco 对雾计算的原始定义[1]所作的图示。在 Cisco 的定义中,雾主要使用边缘网络中的设备。这些设备可以是传统网络设备(早已部署在网络中的路由器、交换机、网关等等),也可以是专门部署的本地服务器。一般来说,专门部署的设备会有更多资源,而使用有宽裕资源的传统网络设备则可以大幅度降低成本。这两种设备的资源能力都远小于一个数据中心,但是它们庞大的数量可以弥补单一设备资源的不足。

雾平台由数量庞大的雾节点(即上文中雾使用的硬件设备,以及设备内的管理系统)构成。这些雾节点可以各自散布在不同地理位置,与资源集中的数据中心形成鲜明对比。

根据以上内容,可以总结出雾计算与云计算的不同:

  • 更低:雾节点在网络拓扑中位置更低,拥有更小的网络延迟(总延迟 = 网络延迟 + 计算延迟),反应性更强。

  • 更多:相比较云平台的构成单位——数据中心,雾节点数量庞大。

  • 更广:雾节点拥有广泛的地域分布。

  • 更轻:雾节点更轻量,计算资源有限。

这些不同给雾带来哪些优点,是什么使它成为物联网生态中又一不可或缺的部分呢?

雾的优点

除了上文中提到的低延迟,雾计算还有以下优点:

  • 省核心网络带宽:雾作为云和终端的中间层,本就在用户与数据中心的通信通路上。雾可以过滤,聚合用户消息(如不停发送的传感器消息),只将必要的消息发送给云,减小核心网络压力。

  • 高可靠性:为了服务不同区域的用户,相同的服务会被部署在各个区域的雾节点上。这也使得高可靠性成为雾计算的内在属性,一旦某一区域的服务异常,用户请求可以快速转向其他临近区域。

  • 背景信息了解:因为分布在不同区域,雾计算中的服务可以了解到区域背景信息,如本区域带宽是否紧张,根据这一知识,一个视频服务可以及时决策是否降低本地区视频质量,来避免即将到来的卡顿;而对一个地图应用,则可将本地区地图缓存,提高用户体验。

  • 省电:数据中心的电力消耗已经成为重要成本,其中冷却系统占有不可忽视的比重。雾计算节点因为地理位置分散,不会集中产生大量热量,并不需要额外的冷却系统,从而减少耗电。

基于以上优点,雾能够弥补云的不足,并和云相互配合,协同工作。

云 + 雾

雾计算自提出就是作为云计算的延伸扩展,而不是云计算的替代。如前文所述,在物联网生态中,雾可以过滤,聚合用户消息;匿名处理用户数据保证隐秘性;初步处理数据,做出实时决策;提供临时存储,提升用户体验。

相对的,云可以负责大运算量,或长期存储任务(如:历史数据保存、数据挖掘、状态预测、整体性决策等等),从而弥补单一雾节点在计算资源上的不足。

这样,云和雾共同形成一个彼此受益的计算模型,这一新的计算模型能更好的适应物联网应用场景。

用例

目前的城市道路监控系统,从监控探头到本地中心机房的通信跳数一般在3~4跳甚至更高,如果系统需要做出实时决策会面临网络延迟的挑战。

图3 用例——智能交通灯系统

图中所示是一个智能交通灯系统,除了监控探头作为传感器,还有交通灯作为执行器。雾计算的引入将为这一系统带来更多的可能性。如:

  • 监控过程中,相比上一帧画面,通常只有一部分画面变化,而另一部分不变,非常适于压缩处理。对于需要人为监控的画面,雾节点将视频流直接转发给中心机房;而其他监控视频只需要存储,对实时性要求不高,可以在雾节点处缓存若干帧画面,压缩后再传向中心机房。这样从雾节点到机房的网络带宽将得到缓解。

  • 在雾节点处,可判断监控画面中是否有救护车头灯闪烁,做出实时决策发送给对应交通灯,协助救护车通过。

上例仅是智慧城市中的一个具体缩影,雾计算在智能电网、车联网、智慧家庭等领域的应用场景不胜枚举。

挑战

雾计算带来新的可能性的同时,也在安全性、高效利用资源、API等方面带来了新的挑战。

  • 雾使用大量分散设备,使中心化的控制变得困难;

  • 雾节点的资源相对受限,需要节点间的协同配合,才能优化各服务的部署;

  • “何时将服务迁移至何处”则是应对移动终端设备,动态的应用场景需要考量的问题。

随着雾计算概念的发展,雾被进一步扩展到“地面上”。雾节点不再仅限于网络边缘层,还包括拥有宽裕资源的终端设备。

图4 雾计算发展定义图示

终端设备与用户直接交互且数量庞大,在丰富雾的设备种类的同时,也带来更多动态属性,如电池电量、雾节点移动性等问题需要解决。

结语

本文从物联网的应用场景出发,由终端设备的资源限制谈到对云的需求,再由云在网络中的位置造成的限制谈到雾。和大家共同探讨了云雾的对比、云雾的结合、雾的优点、雾的应用、雾的挑战。