基于边缘计算的物联网架构
本文提出一种面向物联网的边缘计算架构,通过智能网关集成轻量级虚拟化与可视化编程框架,实现数据实时处理与低延迟响应。该架构扩展自λ‐CoAP,支持容器化管理与边缘逻辑开发,有效减轻云端负载和网络带宽压力,适用于结构健康监测等高实时性场景。
物联网中的边缘计算架构
摘要
在过去的几年中,物联网(IoT)作为一种颠覆性新技术应运而生,正在改变世界。云计算一直伴随该领域发展,以克服其处理和存储限制。然而,这一演进导致了物联网设备和数据量的巨大增长,将给当前网络带来瓶颈,并造成云通信的低延迟缺失。边缘计算正是为应对这一挑战而发展起来的技术,将处理能力推向网络边缘。本文提出了一种边缘计算架构来克服这些挑战。该架构基于我们先前在 λ‐CoAP架构方面的研究工作,全面覆盖了从物联网设备、边缘智能网关到云基础设施的边缘计算部署整体构想。
一、引言
物联网(IoT)是无线传感器网络和射频识别(RFID)等先前技术融合的产物。这催生了一个包含广泛嵌入式技术和设备的生态系统,从无源RFID标签到自主设备皆在其中。如今,物联网正在实现对全球范围内的感知与控制[1]。该领域持续扩展到众多领域[2],将住宅转变为家庭自动化系统,并通过与交通、清洁和交通流量相关的数字服务,提升市民的城市生活体验。
这种前所未有的增长同时也伴随着供应商锁定和异构性问题,这些问题使当前物联网增长预测变得复杂[3]。
互联网工程任务组(IETF)下属的受限RESTful环境(CoRE)工作组针对此问题发布了受限应用协议(CoAP)[4],旨在将REST Web服务引入资源受限的设备。CoAP是一种适用于资源受限设备的RESTful网络传输协议。CoAP通过在UDP上应用RESTful Web服务,减少了HTTP和TCP等重量级协议的开销。这些协议的数据包重排序、头部特征和握手过程对于能力有限且处于受限网络中的设备构成了严重障碍。CoAP提供了具有类似HTTP交互的客户端/服务器模型,并通过其观察操作支持异步交互。这对于需要持续监控物联网设备的应用尤其重要。观察操作允许设备启动睡眠周期以减少能耗,它们的功耗,仅在有数据时才发送。传感器和执行器被抽象化,可以通过每个CoAP服务器中定义的资源轻松访问,从而实现与Web的兼容性,这种兼容性可以通过简单的映射代理来实现。
物联网还旨在产生大量数据,这些数据在未来几年将持续增长[5]。由于物联网设备存在局限性,使得应对大数据或深度学习等当前范式变得非常复杂,因为这些范式需要在处理和存储方面具备强大的能力。这些范式旨在从原始物联网数据中提取知识并生成操作。近年来,物联网与云计算等颠覆性技术的融合为物联网提供了应对这些范式所需的能力[1]。然而,这在某些情况下导致了物联网通信延迟的增加(例如,基于云计算处理后的执行操作),并且依赖于可用性、路由和网络等多种因素,从而需要使用外部服务。
某些物联网应用,例如结构健康监测[6],只需通过监控基础设施的多个简单节点即可检测损伤。高层次概念可以从低层次概念中提取,而这些低层次概念还有助于定义高层次概念。这一过程被称为深度学习[7]。深度学习依赖于多个来源和大量数据,用于提取复杂模式。该范式可能需要强大的处理和存储能力,这可以通过云计算来实现。然而,对于地震或意外爆炸载荷等突发事件,需要及时响应并尽可能降低延迟。一种被称为边缘计算[8]的新范式旨在减少物联网通信的响应时间,并减少向云上传的带宽,将计算任务迁移至网络边缘。边缘计算与雾计算可互换使用,但边缘计算更侧重于设备端[8]。例如,下一代汽车每秒将产生1GB数据,因此需要实时处理以做出正确决策[8]。尽管下一代移动网络5G旨在提升带宽并显著降低延迟,但在汽车等应用场景中,与飞机等其他许多场景类似,网络仍将成为基于云的计算的瓶颈。
在这些场景中,需要采用边缘计算方法来优化通信延迟并避免网络饱和。这并不意味着云计算将从物联网应用中消失,而是仅在必要时使用。本工作的贡献是基于之前在物联网和云计算方面的研究,提供一个基于λ‐CoAP架构[9]的边缘计算框架。该框架将支持结合边缘计算与云计算的物联网应用开发。所构建的应用将能够利用边缘侧的实时交互以及云侧的长期分析能力。
本文的其余部分结构如下。第二节介绍了我们在λ‐CoAP方面的工作。第三节提出了所建议架构的总体方案。第四节讨论了相关工作。最后,第五节给出了结论和未来工作。
II. λ‐CoAP 架构
尽管CoAP能够抽象化异构问题并使设备可通过互联网访问,但由于物联网产生的数据量巨大,网络、存储和处理仍然受到限制。根据各种估计,物联网数据随着连接设备数量的增加呈指数级增长[5]。这种巨大的扩展以及需要处理和存储大量数据的环境与应用,必须由更高层次的抽象来支持。
如前所述,云计算已被用于弥补和减少物联网(IoT)的局限性,这一范式也被称为物联云。为了实现一个能够在任意数据上进行实时处理任意函数的框架,并保护大量数据免受人为错误的影响,内森·马兹(Nathan Marz)提出了Lambda架构(LA)[10]。Lambda架构(LA)是一种由多种云计算组件构成的云计算架构,提供处理、分析和使用大量任意数据的功能。LA的核心概念是预计算视图,该视图限制了可被用于减少处理时间的预计算结果。LA将数据流划分为三个层次:
- real-time layer:处理流数据并生成实时预计算视图。
- batch layer:通过处理历史数据生成批处理预计算视图。
- serving layer:提供一种方式来显示和访问所有生成的视图。
因此,上述三个层具有减少处理大量不可变数据时延迟的具体任务。在使用大规模数据集提取高层模式的深度学习技术中,LA显著减少了处理时间。
我们关于λ‐CoAP架构的研究提供了一种物联网与云计算架构,采用CoAP和洛杉矶(LA)。一方面,在物理基础设施内的物联网异构性被抽象的同时实现了轻量级Web服务已启用,可通过CoAP进行访问。物联网设备中的传感器和执行器也可以在运行时创建[11],而无需重新配置和重启过程。另一方面,洛杉矶能够基于物联网产生的大量数据进行分析和控制,从而降低处理延迟。
λ‐CoAP架构通过智能网关与洛杉矶(LA)和底层设备互联,并通过代理支持HTTP交互。最后,Web用户界面(UI)实现对物联网数据和设备的管理和可视化。到目前为止,该架构已使设备能够自主运行,但所有处理能力,包括对底层物联网基础设施的操作以及知识提取,均通过云中的LA提供。

III. 一种边缘计算架构
物联网正在产生大量数据,这些数据将难以由当前云基础设施进行管理。边缘计算作为一种新范式应运而生,以应对大量物联网数据带来的问题,通过将计算推向网络边缘,从而降低云通信的延迟,并使网络摆脱由此带宽引发的瓶颈。然而,云基础设施并不会从物联网应用中消失,相反,其高可用性以及强大的处理和存储能力等优势将继续为这些应用提供补充。
我们关于λ‐CoAP架构的研究提供了一种物联网与云计算架构,能够实现大量数据的消费、处理和分析。然而,该架构采用集中式方法,以云基础设施作为处理引擎。如前所述,该架构在某些物联网环境中可能造成网络瓶颈,并增加响应延迟,从而在需要实时交互时产生限制。因此,本研究补充了如图1所示的边缘计算架构。λ‐CoAP架构与边缘计算架构之间的主要区别位于智能网关中,智能网关在此承担了更重要的角色。在λ‐CoAP架构中,智能网关仅作为连接云平台、底层设备和终端用户的桥梁,而在边缘计算架构中,智能网关还能够为具备处理能力的自主设备提供支持。凭借其计算能力,它可以减少通信延迟并减轻网络负担。边缘层由该架构中部署的智能网关组成。以下小节将展示本文在智能网关的边缘节点方面的创新。
A. 轻量级虚拟化
最初,λ‐CoAP架构中的智能网关采用由一组组件构成的封闭式基础设施,用于互连上述参与者。每当进行新开发或修改组件时,都必须手动重新配置或安装这些组件,且缺乏组件隔离。近年来,轻量级虚拟化技术因其特性而受到广泛关注:构建容器速度快、每个容器的高服务密度以及实例间的高隔离性[12]。与传统虚拟机管理程序相比,轻量级虚拟化技术通过在操作系统中使用容器实现进程虚拟化。这减少了传统虚拟机管理程序中硬件和虚拟设备虚拟化的开销,从而允许部署高密度的容器[13]。因此,使用这种虚拟化技术有助于物联网网关中组件的管理。
轻量级虚拟化架构已应用于智能网关。图2展示了配备容器的智能网关。智能网关新增了两个组件:用于管理设备和容器的Web管理界面,以及用于开发边缘逻辑的边缘计算框架。该架构支持在运行时对进程进行管理,并实现容器的复用与备份。因此,这种虚拟化将有助于流程的更新、备份和管理智能网关。此外,每个容器都与其他容器相互隔离。尽管存在多种轻量级虚拟化技术,但选择了Docker¹,因其与目标物联网网关(例如树莓派²)的兼容性以及对REST API的支持,该API将集成到Web用户界面中。通过与Web用户界面的集成,该API将全面管理容器。此外,该API还为第三方集成提供了途径,以实现对智能网关的管理。
¹ https://www.docker.com/
² https://blog.hypriot.com/

B. 物联网设备和虚拟化管理 Web用户界面
已在智能网关内部集成一个Web管理界面,用于管理物联网设备和容器。这使得无需云基础设施即可对智能网关进行管理。尽管如此,云端的另一个用户界面仍可与其共存以实现全局管理。通过使用我们先前的工作[11],可在Web用户界面中对已部署的物联网设备中的传感器和执行器进行运行时创建和管理。这使得可以在无需重新配置和中断其服务的情况下管理物联网设备中的物理组件。在此情况下,使用了CoAP,但基于容器的架构为集成新的物联网协议提供了可能。
通过Docker集成,还可以在智能网关中对容器进行管理。容器表示在智能网关中运行的进程。这种管理方式有助于更好地控制其当前组件,便于维护并支持组件的重复使用。如图2所示,这些组件是容器的一部分,反过来也可由该组件容器进行管理。除了支持容器管理外,Web用户界面还支持提交新的容器镜像,这些镜像将被自动安装,并在智能网关中作为新容器可用。
C. 边缘计算框架
边缘计算通过在网络边缘引入应用逻辑得以实现,从而降低了通信延迟并减轻了与云之间的带宽压力。该组件在边缘(本例中为智能网关)上为应用开发提供了一个框架。更具体地说,该框架基于Node‐RED³,一个基于浏览器的编辑器,支持可视化数据流编程。已创建了一组用于过滤和聚合物联网数据的组件,使得应用开发者只需专注于应用逻辑。该组件决定哪些数据应立即处理,哪些数据应发送到云。对于物联网执行操作而言,通信延迟将不再依赖于与云基础设施的通信,因此延迟应得以降低。图3展示了Node‐RED框架的概览。在左侧,应用开发者可以从调色板中选择节点以加入系统,形成数据流。发现和物联网交互由边缘计算框架透明地完成,因此应用开发者只需专注于应用逻辑。此外,生成的流程可以在智能网关之间轻松移植。
³ https://nodered.org/

该边缘计算框架采用基于组件的架构,支持在流中复用组件,并允许为应用开发创建新组件。开发过程通过创建组件流以可视化方式进行。可视化编程能够提供更好的用户体验,同时降低感知工作负载并提高感知成功率。
IV. 相关工作
与云计算相比,边缘计算在某些计算服务中可能更加高效,尤其是在物联网[8]中。在[14]中,作者提出了一种边缘计算架构。该架构仅关注噪声过滤和少量预处理,以减轻与云基础设施之间的带宽压力。LEGIoT [12]也提出了一种基于轻量级虚拟化技术的智能网关。尽管该架构能够实现容器的节能激活,但无法像本文提出的方案一样对容器和物联网设备进行全面管理。在[15]中,作者同样提出了一种支持传感器和网络虚拟化的智能网关,但未考虑进程管理。本文提出的架构涵盖了边缘计算部署的更广视野,并改进了智能网关的管理能力。
V. 结论与未来工作
本文提出了一种面向物联网的边缘计算架构。该架构涵盖了边缘计算部署的完整范围。本文重点介绍了边缘智能网关的设计。采用轻量级虚拟化技术,以实现对运行中进程的更好控制和隔离。边缘逻辑可通过基于数据流的可视化框架进行定义。该框架集成了常用操作符,用于过滤和聚合数据,此外还可发现底层物联网基础设施,使应用程序只需专注于应用逻辑。最后,通过Web用户界面实现对虚拟化实例和物联网设备的管理。
结构健康监测等物联网应用可利用此架构来降低延迟并减轻通往云的带宽压力。在不久的将来,我们将完成智能网关的开发,并对整个架构进行评估。此外,面向云和边缘计算的编程抽象已被规划为长期开发目标。
更多推荐
所有评论(0)