写点什么

毋庸置疑的雾计算

2016 年 8 月 07 日

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

毋庸置疑的雾计算

随着科技进步,各种技术名词也在快速发展。云计算、物联网、雾计算相信这些名词早已进入大家的视野。其中,雾计算的概念 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 雾计算发展定义图示

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

结语

本文从物联网的应用场景出发,由终端设备的资源限制谈到对云的需求,再由云在网络中的位置造成的限制谈到雾。和大家共同探讨了云雾的对比、云雾的结合、雾的优点、雾的应用、雾的挑战。希望以此文抛砖引玉,和大家共同关注科技发展趋势。

参考文献

[1] Fog Computing and Its Role in the Internet of Things. Flavio Bononi and al, Cisco. ACM SIGCOMM International Conference on Mobile Cloud Computing, August 2012.

[2] http://www.openfogconsortium.org/

[3] http://beyondtheclouds.github.io/dcc.html

[4] http://www.huawei.com/cn/news/2016/4/All-Cloud-Strategy

[5] Increasing Network ROI with Cloud Computing at the Edge. Intel Solution Brief, 2014.

[6] Announcing the “Edge computing” concept and the “Edge accelerated Web platform” prototype to
improve response time of cloud. NTT Press Release, January 2014.


感谢魏星对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2016 年 8 月 07 日 17:404287

评论

发布
暂无评论
发现更多内容

向云再出发:如数据般飞驰的内蒙古

脑极体

深入了解 Rust 异步开发模式

lipi

rust 异步

USDT承兑商软件开发,区块链支付系统源码搭建

13530558032

在面试中成长

escray

学习 面试 面试现场

新基建迎来风口 新人才仍有缺口

CECBC区块链专委会

人工智能 新基建 数字化基础

数字货币交易平台搭建,去中心化交易所开发方案

13530558032

NodeX Component - 滴滴集团 Node.js 生态组件体系

滴滴普惠出行

controller-manager的主动驱逐

Geek_f24c45

Kubernetes k8s

数字人民币钱包短暂露面 金融诈骗伺机而起

CECBC区块链专委会

数字货币 钱包 货币

JAVA,.NET项目开发难上手?Learun敏捷开发框架解君愁

Philips

Java 敏捷开发 .net core

OFD版式技术深度解读:卷首语

华宇法律科技

版式文档 OFD

人民版权 获2020中国产业区块链创新奖

CECBC区块链专委会

区块链 产业发展 版权

消息队列之事务消息,RocketMQ 和 Kafka 是如何做的?

yes的练级攻略

分布式事务 RocketMQ kafak 事务消息

Vue+Springboot项目部署

ZRK

Vue 前后端分离 springboot 部署

Spring Boot中获取配置的一些方法

Geek_416be1

Spring Boot 2

Python 到底是强类型语言,还是弱类型语言?

Python猫

Java c++ Python 编程

面试是一张窄窄的船票

escray

学习 面试 面试现场

数字资产钱包开发,深圳区块链理财钱包服务商

13530558032

合约跟单软件开发,合约跟单交易所系统开发搭建

13530558032

管理时间还是挥霍时间?

钰湚

学习 时间管理 工作体会 工作哲学

看百度技术专家如何深入研究,重复使用的代码经验——设计模式

周老师

Java 编程 程序员 架构 设计模式

Week12

一叶知秋

文件系统

Linuxer

Spring整合WebSocket

牛初九

【译】Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases 上篇

花里胡哨

分布式数据库 异步 Amazon Aurora 日志驱动

开发者的福音,LR.NET模块化代码生成器

Learun

Java 敏捷开发 .net core 计算机程序设计艺术 软件设计

Redis 持久化--AOF

是老郭啊

redis redis持久化 aof

开发任务管理分析报告

森林

你也许还不懂静态方法和实例方法

架构师修行之路

易观CTO郭炜:如何构建企业级大数据Ad-hoc查询引擎

易观大数据

10万奖金等你拿!2020第四届易观OLAP算法大赛火热开启

易观大数据

InfoQ 极客传媒开发者生态共创计划线上发布会

InfoQ 极客传媒开发者生态共创计划线上发布会

毋庸置疑的雾计算-InfoQ