引言

OpenFog,是一种雾计算开放架构。文章剖析了这种架构的特点,及其适用的垂直市场领域,从而进一步阐述了雾计算在物联网应用中所扮演的关键角色。

OpenFog架构的产生

正如IntelligentThings在“‘雾计算’:延伸‘云计算’概念,助力物联网发展”(点此阅读)一文中所述,物联网(IOT)增长势头迅猛,联网设备剧增,导致所需处理的数据量也十分庞大,对于数据速率、及时性、安全性要求也日益增加。为了解决这些问题,“雾计算”诞生了。

OpenFog架构,从传统封闭式系统以及依赖云计算的模型,转变为一种新计算模型。它基于工作负载和设备能力,使计算更加接近网络边缘,即IoT传感器和制动器。雾计算并不是为了取代传统云计算,而是作为补充和扩展。

OpenFog架构中雾和云的角色

IoT系统部署,和客户关键需求以及应用场景息息相关。因此,这些系统采用计算智能,通过管理系统的处理流程,让信息物理处理 “cyber-physical process ”(CPP) 达到最佳状态。CPP被分为三个参数集:期望状态参数、观测参数、影响流程状态的参数。计算智能,可以通过OpenFog 以及后端云资源部署实现,和领域实现方案相关。


物联网应用范例,至少有三大类计算层:法定控制、监督控制、决策支持。法定控制,让处理更接近于期望状态。监督控制,基于对目前和以前的状态进行学习,从而保证期望状态得到优化。决策支持,对所有装置累积的数据进行操作,然后反馈给底层控制层,或者企业资源规划(ERP)系统,进行战略决策。所有法定控制和监督控制,都在相对于小的范围内,通常在单个装置上面进行。相反,决策支持,则基于分布式企业范围。这也相对规定了雾和云所扮演的角色范围。


OpenFo架构特征


OpenFog架构,使用大量边缘设备和计算终端,与传统云服务一起,进行数据存储、计算、网络连接以及管理相关的任务。OpenFog架构和传统架构相比,特征如下:

  • 在用户和商业部署附近,进行低延时存储。

  • 靠近最终用户进行运算,避免延时,网络和带宽损耗。

  • 低延时通信,而不是所有通信都要经过骨干网路由和同步。

  • 靠近最终节点实现管理元素,包括网络测量,控制和配置。

  • 通过安全方式,将遥测和本地计算数据拷贝到云端,做进一步分析。

云架构和雾架构,并不是二者只可选其一。什么样的任务采用雾,什么样任务采用云,取决于应用需求,也会动态地随着网络瞬时需求而改变。它基于网络状态,处理器负载,链接带宽,存储能力,故障事件,以及安全威胁。

OpenFog架构,定义了雾和云之间的接口,以及雾和雾之间的接口,优点在于:

  • 认知:以客户端为中心目标,具有自主性。

  • 效率:在最终用户设备上,动态合并本地资源。

  • 敏捷:快速创新和基于通用构架快速拓展。

  • 延时:实时处理和物理信息系统控制。

平台即服务(PaaS)是指云计算服务提供平台,让用户不需要构建和维护基础架构,就可以开发,运行,管理网络应用程序。而OpenFog架构,则构建了“雾即服务”(FaaS),来应对特定的业务挑战,如下图所示:

OpenFog Fabric:它由一些列行为模块组成,构建同质计算基础架构,使得有用的服务可发布到附近生态系统,例如设备、协议网关和其他雾节点。这种同质计算基础架构,通常构建在由多个供应商提供的不同硬件和平台上。

OpenFog Services:它构建在OpenFog Fabric基础上,可包括:网络加速、网络功能虚拟化、自防御网络、内容发布、设备管理、设备拓扑、复杂事件处理、视频编码、领域网关、协议桥接、流量卸载、加密、压缩、分析平台、分析算法库等等。

Devices/Applications:它包括边缘传感器、制动器、已经独立运行的应用程序,在雾部署中或者横跨雾部署。它在OpenFog服务层处理。

Cloud Services:可利用云计算,处理更大规模数据,或者预处理边缘数据建立策略。它应该在不妨碍自动性的情况下,起到一些作用。

Security:它是OpenFog部署的基础。由于每一层的功能模块具有自由访问控制机制,所以OpenFog 部署和围绕着的生态系统,必须在安全环境下运行。OpenFog架构,需要通过先进的信息安全处理,保证数据在不同端点间传输的安全性。

DevOps:它通过自动化驱动,通过框架和处理流程提高操作效率。OpenFog 中的DevOps支持驱动软件敏捷升级,以及通过可控的持续集成流程打补丁。

OpenFog架构8支柱模型

OpenFog部署呈8个支柱架构,每个支柱代表成功实现OpenFog的关键因素。如下图所示:

(1)安全性

OpenFog部署,从基础架构角度来看,雾节点和雾层可以出现在FaaS中。通过FaaS,每层位置和节点部署,不需要遵从单一数据中心。但是,这样并不意味着不需要安全性。因为分布式数据存储和网络拓扑,用户和雾服务提供者都面临安全性威胁。

安全基于“物”。这些物,必须在受信硬件基础上。这种“可信根”,必须通过其上运行的软件来证明。因为邻近最终用户以及边缘位置,雾节点必须首先被进行访问控制和加密,提供完整性和隔离,控制隐私敏感的数据。随着更加复杂的拓扑结构产生,整个雾节点“链”都要受信,对于其他雾节点,云端,都要提供安全保证。因为,雾节点也会动态实例化,所以软硬件资源必须可信赖。非法的组件不可以参与到雾节点中。

安全实现,可能有许多描述和属性例如:隐私、匿名、完整性、信任性、证据、硬件可信根(ROT),验证和测量。这些属性对于OpenFog架构很关键。

(2)可扩展性

可扩展性,对于驱动用户进行雾节点部署,处理动态技术和业务需求很重要。雾网络中的可扩展性,包括以下几个方面:

  • 性能可扩展,雾实例的性能可以增长,来满足关键应用性能需求。

  • 容量可扩展,雾网络随着应用,节点,物和用户增多而增长。

  • 信赖可扩展,在一定范围的信赖性,可以随着雾容量增加而扩展。

  • 安全可扩展,在一定范围的安全性,可以随着业务驱动而扩展。

  • 软件可扩展,雾节点和网络的软件,也要可扩展。

(3)开放性

开放性,是雾计算生态系统,成功应用于物联网平台的关键因素。如果只为单个供应商所有,限制供应商多元化,那么对于生态系统的成本、质量和创新都会产生消极影响

  • 可组合性,表示应用程序和服务在实例化时,具有可移植性和易变性。

  • 互操作性,安全的进行计算、网络和存储,保证执行时的易变性和可移植性。

  • 开放通信,网络能够获取附近边缘网络的资源,搜集闲置能量、存储能力、感知能力和无线连接性,最大化满足业务需求。

  • 位置透明,让节点可以存在于层次中的任意位置。

(4)自主性

操作自主性,让雾部署可以具有面对外部服务失败的功能,同时也可以获取跨越整个层次的支持。在边缘网络中的自主,意味“本地设备”产生的智能和“同伴”的数据,可以完全满足业务需求。OpenFog靠近设备进行决策,不像云那样集中化决策,支持一些列自主功能,例如:

  • 自主发现,让资源可以自主发现和注册。

  • 自主编制和管理,自动处理在线服务,对整个生命周期进行管理。

  • 自主安全,支持安全功能例如AAA(鉴权,授权和核算)、InfoSec等等。它让设备和服务可以在线进行安全鉴权。

  • 自主操作,本地化决策,可以保证IoT 系统满足动态业务要求。

(5)可编程性

可编程,带来高度自适应的部署,可以让雾节点和层,完成新的任务,容纳动态操作,完全自动化。OpenFog参考架构,有着不同部署方案,通过不同的标准,技术,框架和运行时容器来实现。可编程性,带来以下好处:

  • 自适应基础构架,不同的 IoT 部署方案,支持变化的业务需求。

  • 资源高效部署,最大化利用资源。

  • 多租期,让多个租期可以逻辑分离运行环境。

  • 经济化操作,带来高密度和自适应基础架构。

  • 提高安全性,通过补丁来应对威胁。

(6)可靠性/可用性/可服务性(RAS)

RAS,处于整个OpenFog系统架构之中,硬件,软件和网络层次上,是RAS三个主要领域。

信赖性包括

  • 可预测OpenFog平台硬件,软件和相关雾网络的健康,通常通过运行时间来测量。

  • 数据安全措施,和使用硬件,软件和网络设计的边缘网关,提高性能和支持OpenFog部署。

  • 系统健康需要自主预测和适应,自我管理能力,软硬件具有自我修复能力。

可用性包括

  • 可以访问雾架构的所有层,进行管理,控制,比如升级,诊断和安全的固件修改。

  • 可用性,在端到端的 IoT平台上通知设备,服务或者数据存储的冗余和重复。

  • 能够控制硬件的所有方面,包括访问传感器,从BIOS到操作系统层面的远程启动能力。

可服务性包括:

  • 高度自动化的安装,升级和修复,以便高效部署雾架构。

  • 潜在的软硬件支持,可以自动修复。

  • 雾系统的部署易被维护。

(7)自主性

自主性,对于OpenFog 系统,实现快速机敏的业务操作决策来说很重要。IoT系统产生的数据,和人类单独能够理解的数据,知识和决策的模式不同。在OpenFog架构中,自主性可以确保IoT 产生有用数据,快速传输,并且自动快速决策,以及自动化处理。

数据,是信息系统的关键,OpenFog架构也一样。由传感器和系统生成的数据,是混乱且突发的,有时数据量很大。最重要的是,数据没有上下文,上下文基于IoT系统内操作决策,上下文只有在数据被整理,聚合和分析的时候才用到。数据的分析可以在云层面进行,但是这样增加了延时,和多层传输带来的不确定性。所以,解决方法是将所有可操作的决策,在数据一旦被转化为有意义的上下文时,就做出。这样系统可以更快,更好的做决定。

(8)层次性

OpenFog计算资源,可以按照IoT系统的功能需求,进行逻辑分层。雾网络,需要支持分层结构,具有本地,邻居,和区域级别,有效的划分计算任务

OpenFog架构应用



OpenFog架构,可以应用于许多垂直市场,例如智慧农业,智能交通,智慧城市,智慧建筑,智能医疗等等,提供低延时,网络受限的IoT应用。

智能交通

OpenFog 可以满足运输行业的三个基本需求:低延时,维护用户隐私,和不同层面的获取资源。

例如,通过智能交通控制系统中的雾节点网络,可以分享高峰时刻的交通信息、进行本地化事故处理、重新规划交通路径。同样,人们也可以很容易从娱乐系统中获取资源,因为每个公共交通用户手机上具有雾计算应用,让用户可以共享相邻用户数据,相互提供可靠的网络连接。

最后,对于公共交通中的无人驾驶汽车安全系统、道路监控系统、售票系统来说,可以搜集许多基于传感器和视频的数据。这些系统,理想地来说,只将一些汇总的数据上传到云端,从而不侵犯用户隐私,同时智能地保证用户带宽。云,可以提取有用的商业价值,例如如何在更长时间级别规划路径,而不是短期提供低延时保证。在边缘,可以进行实时决策,策略控制。而在云端,可以进行大数据分析。

之前,IntelligentThings也在“‘雾计算’应用案例分析:无人机快递”(点此阅读)一文中描述过雾计算构架在无人机快递服务中的应用实例。

智慧农业

OpenFog 架构,对于农业来说,作用体现在肉类和乳制品,水产品,水稻,蔬菜,玉米等的种植和生产。在许多地区,农业通过合作农场形式进行优化。这些农场,已经经过技术革命,应用适量除草剂和杀虫剂,最大化利用水资源,保证产量。更进一步的说,小农场(小于2英亩),将在我们的粮食生产中扮演更重要的角色。这些小农场,也需要最大化资源使用效率。

但是,缺少可信赖或者节约的方法连接云端,无法实时高效的知道除草剂和杀虫剂的效率,动物健康,环境因素,以及水和土壤情况等等,阻碍了生产率提高。另外,农民没有专业IT知识,所以即使让农民和云基础架构连接,也不清楚他们可以如何利用这些资源。所以,本地化计算资源,对于农业来说,积极作用很大。

智慧城市

OpenFog架构,可以影响人到们在城市中的交互和生活方式,帮助提高基础城市相关操作效率,例如延时,连接性,隐私,安全等等,提供高效和人性化服务。建立智慧城市一个主要障碍就是:带宽和连接的可用性。当大多数现代城市小区网络容量和峰值带宽受限,只能满足现有居民的需求。对于额外的服务,所预留的带宽很少,OpenFog正是可以解决这个问题。

智慧城市挑战还来自于安全,关键指标和高级分析。城市网络,可能携带敏感数据以及生命攸关的系统,例如智能运输避障应用,第一应答者通信等等,所以需要安全和信赖。视频监控高级分析,也是保证快速有效定位城市犯罪的关键。所以,智慧城市部署需要本地化。因为OpenFog架构,最好的满足了智慧城市的需求。雾基础架构,具有安全性,数据加密和分布式分析,在智慧城市中扮演重要角色。

智慧建筑

建筑管理自动化,是边缘智能和本地化处理的一个经典案例。商业建筑,会包含许多传感器,测量不同建筑操作参数,包括温度,湿度,门开关,出入证读取,泊车位占有率,安全,电梯和空气质量。这些传感器不断测量建筑内部数据,存储在本地,然后驱动制动器,对于建筑内条件进行优化。从传感器测得的数据后,需要进行实时的计算,从而决定暖通空调是否要运行慢点,当房间没人时关灯,感知到火情时触发火警,在起火时启动消防装置等等。OpenFog部署模型,可自主的进行本地控制功能操作

另外,长期建筑遥测数据和控制动作,可以上传到云端,进行关于电、水、燃气消耗、操作效率、设备检修时间、预防性活动和其他相关操作的更大范围分析。基于这些存储的操作历史,可以训练机器学习模型,在本地“雾”基础架构中,使用“云”训练优化操作策略

参考资料

https://www.openfogconsortium.org/wp-content/uploads/OpenFog-Architecture-Overview-WP-2-2016.pdf

题图文图来源于:openfogconsortium.org


如果大家有什么关于物联网,智能硬件,创新方向的技术或者产品问题想了解,请写评论告诉IntelligentThings,我会定期参看大家的问题,并选择一些来回答。


OpenFog开放雾计算架构及其垂直市场应用
Tagged on: