1.3 边缘计算的架构
随着万物互联概念的兴起与5G等通信技术的发展,边缘计算被认为是继物联网与人工智能之后的下一代通信网络关键技术之一。边缘计算通常涉及传统云计算中心节点、边缘设备和终端设备等实体,即“云-边-端”三类实体。边缘计算架构关注如何有效组织云、边、端三类实体的结构、运行与管理方式,从而实现高效的计算。本节将简要介绍边缘计算的一般结构、边缘计算产业联盟提出的边缘计算参考架构以及目前使用较为广泛的EdgeX Foundry边缘计算框架。
1.3.1 边缘计算的一般架构
边缘计算的系统架构根据计算模式、边缘服务器接入方式、通信方式等的不同,分为云-边-端架构模式、边-端架构模式、多接入模式等多种架构模式。目前,云-边-端架构模式在一定程度上,被认为是对目前所广泛使用的传统云计算模式的改进,在目前的边缘计算场景中应用最为广泛。本节将从此模式入手,介绍边缘计算的一般架构。
在云-边-端架构中,从网络中心到边缘可划分为云计算中心层、边缘层、终端层,如图1-2所示。
图1-2 云-边-端架构示意图
1.终端层
终端层由连接到边缘网络的各类设备组成,包括互联网电视、个人计算机、智能手机、传感器、智能汽车、摄像头等移动设备与物联网设备。在终端层,设备不仅是数据的消费者,也是提供者。部分终端拥有对数据的处理能力,但更多的情况下,为了减少终端服务延迟,终端层通常更多考虑数据的感知,即原始数据的获取,而不过多考虑终端设备的计算能力。终端层上数量巨大的终端设备收集原始信息,并上传原始数据或简易处理过的数据至边缘层,由边缘层对数据进行处理,并确定运算策略。
2.边缘层
边缘层是三层体系结构的核心。边缘层位于网络的边缘,由广泛分布在终端设备与云计算中心之间的边缘计算节点组成。边缘层通常包含基站、接入点(Access Point, AP)、路由器、交换机、网关以及边缘服务器等。边缘层支持终端设备向下接入,对终端设备上传的数据进行存储与计算,并与云端相连,将需要云计算中心处理的数据以及自身性能无法处理的任务递交给云计算中心,以满足计算需求。由于边缘层离用户的距离近,因此边缘计算具有较高的实时性,更适合进行实时数据分析与处理,比传统云计算模式更高效、安全。
3.云计算中心层
在云-边-端架构中,云计算中心层仍然是整个体系中计算能力最强的数据处理单元。云计算中心层由大量高性能服务器与存储设备组成,具有强大的计算与存储能力,在日常运营维护、业务决策支持、非实时模型训练等需要大量数据、高计算量的场景中可以很好地发挥作用。云计算中心层可以存储边缘层上传的数据,也可以完成边缘层无法处理的分析任务、整合全局信息、高计算量与高数据量计算等处理任务。此外,云计算中心还可以使用控制策略动态调整边缘计算层的部署策略与算法,以提高整个系统的运行效率、降低时延与运行成本。目前,边缘计算的动态调整策略仍是学术界较为关注的研究方向。
1.3.2 边缘计算参考架构3.0
由华为公司、中国科学院沈阳自动化研究所、中国信息通信研究院等知名企业与研究机构发起的边缘计算产业联盟于2018年12月提出了边缘计算参考架构3.0(Edge Computing Reference Frame 3.0)。该参考架构采用了基于模型驱动的工程方法,提出对数字世界与物理世界模型化时需要完成以下四个目标:
❑在物理世界与数字世界之间建立一个实时系统认知模型,以实现物理世界与数字世界的协作。
❑基于建模方法建立各垂直行业间可重用的知识模型系统,以完成跨产业的生态合作。
❑基于模型的接口实现系统对系统、服务到服务的交互,实现软件接口与开发语言的解耦,降低系统异构性,简化跨平台移植。
❑可以有效支持开发服务、部署操作、数据处理和安全等系统生命周期活动。
边缘计算产业联盟提出的边缘计算参考架构3.0以多视图的方式从不同角度呈现边缘计算的参考架构,通过多层透视图展示各层功能。整体架构图如图1-3所示。
边缘计算参考架构3.0的底层为一个连接整个框架的服务层,包括管理服务、数据生命周期服务与安全服务。其中,管理服务提供一致的管理、操作整个框架的功能,并向管理平台提供系统信息。数据生命周期服务提供数据的预处理、分析、分发、执行、可视化与存储提供集成管理服务。安全服务可以通过业务编排定义数据全生命周期的业务逻辑、灵活部署与数据优化服务,满足业务的实时性需求。安全服务覆盖边缘计算架构的各个层次,适应边缘计算的特定架构,利用统一的安全管理与感知系统,保证架构的安全可靠运行。从垂直结构上看,模型驱动的统一服务框架位于框架的顶端,实现服务的开发与部署。
图1-3 边缘计算参考架构3.0
边缘服务架构中的云数据中心层、边缘层和终端层分别对应边缘计算参考架构3.0中的云层、边缘层和现场设备层,其中边缘层包含边缘管理器与边缘节点。边缘节点是承载边缘计算业务的实体硬件,边缘管理器使用软件对边缘节点进行统一管理。根据硬件特点与服务类型,边缘计算节点可以分为用于处理与转换网络协议的边缘网关、用于控制实时闭环服务的边缘服务器、用来处理大批量数据的边缘云、用来处理低成本信息的手机与边缘传感器等,将边缘计算层的设备抽象为计算设备、网络设备、存储设备。框架使用计算、网络、存储API实现通用功能的调用,利用控制、分析与优化模块实现上下两层的信息传输和局部边缘资源的规划[3]。
边缘计算参考架构3.0提供了从终端到云的四种业务开发框架,包括轻量级计算系统、实时计算系统、智能分布式系统与智能网关系统。
1.3.3 EdgeX Foundry
面向物联网边缘计算的通用开放框架EdgeX Foundry是一个由Linux基金托管的开源项目。该框架托管在一个完全独立于硬件和操作系统的参考软件平台上,是一个支持即插即用的组件生态系统,以统一物联网边缘的计算开放平台,并加快解决方案的部署。图1-4展示了EdgeX Foundry的愿景:为工业互联网边缘计算提供一个可以支持任意异构组件、与硬件或环境解耦的、灵活统一的微服务架构,实现设备、传感器等物联网对象和其他物联网对象的交互。
图1-5展示EdgeX Foundry的架构。可以从图中看出,“南向”包含了所有直接和边缘网络通信的边缘网络应用设备,“北向”包括云计算中心和云计算中心的通信网络。“南向”是数据的来源,“北向”从“南向”收集数据,并对数据进行存储、集成与分析。EdgeX Foundry位于“南向”与“北向”之间,由一组微服务组成,这些微服务分为四个服务层和两个底层增强服务。
从垂直的角度看,软件工具开发包(Software Development Kit, SDK)由设备服务层提供,用于与“南向”建立数据链路。设备服务层将转化来自设备的数据,并将其发送至核心服务层。同时,设备服务层还可以从其他微服务接收命令并将其传递给设备。EdgeX Foundry支持多种访问方法,包括消息队遥感传输协议(MQTT)、虚拟(virtual)设备和低功耗蓝牙(BLE)。
图1-4 EdgeX Foundry愿景
处于架构中心的核心服务层是实现边缘计算的关键。核心服务层由四个微服务组件组成:核心数据、指令、元数据、注册与配置。核心数据服务为设备数据提供存储与管理服务。指令服务负责将设备文件中的操作命令定义为通用API、缓存与管理命令,并可将云计算中心的需求传递到设备端。元数据服务负责设备与服务系统的配对。注册和配置服务为其他微服务提供配置信息。
支持服务层用于提供边缘分析和智能服务,并为框架本身提供规则引擎、时序安排、提醒与消息和其他服务等。
应用服务层可以与云计算中心连接,向云计算中心传输数据,保证EdgeX Foundry的独立运行。在应用服务层,客户端注册服务,记录后端注册系统的相关信息,分发服务将对应的数据导出至指定客户端。
与边缘计算参考架构3.0类似,EdgeX Foundry架构也有一个贯穿整个框架的基础服务层:管理服务与安全服务。管理服务提供安装、升级、停止、启动和监视EdgeX Foundry操作等功能,并提供其他管理服务。安全服务中的组件用于保护数据不受设备和操作的伤害,包括密钥保存、反向代理在内的安全服务。
总的来说,EdgeX Foundry架构可看作一个为了简化以及标准化工业物联网而开发的边缘计算框架。它提供了一个可操作的开源平台,所有的微服务都能以容器的形式运行在各种操作系统上,并支持动态增加或减少,具有很强的可扩展性。目前,EdgeX Foundry的应用领域已经涉及零售、制造业、能源、交通、城市建设等多个行业领域[5]。
图1-5 EdgeX Foundry架构图