物联网解决方案的典型架构通常比大多数企业系统的架构复杂得多。增加物联网系统复杂性的主要因素之一是,数据中心的后端服务实际上只是物联网更大图景的一部分。有了物联网解决方案,我们必须处理大量在现场工作的设备。因为这些设备在本质上与网络、桌面甚至移动客户端有很大不同,所以我们需要一个中间架构来充当现场设备世界和企业数据中心之间的代理。我们需要的是一个物联网网关。
为什么需要物联网网关
现在您可能想知道:在您的物联网架构中引入网关的主要原因是什么?让我通过讨论网关架构如何工作的一些最重要的方面来澄清这个问题。
首先,传感器在网络连接方面的能力通常非常有限。您的传感器可能使用低功耗的蓝牙,就像市场上的大多数信标一样;您的一些传感器也可能使用紫蜂协议来提供连接。在局域网、家庭局域网或个人局域网中可以找到许多其他协议。所有这些协议都有一个共同点:它们不能直接连接到大型网络,如广域网或互联网。您需要一个网关,通过使用WiFi、GSM或其他类型的连接,为您的传感器提供与外部网络的单点联系。
网关不仅仅是将数据从传感器转发到后端服务的转储代理。将传感器收集的所有信息发送到数据中心在性能和网络利用率方面效率非常低。在将信息发送到数据中心之前,需要物联网网关对现场信息进行预处理。这个预处理包括消息过滤和聚合。
网关还应作为监控作业现场选定区域的单一接入点。无需使用监控软件连接每个传感器;监控网关更容易,网关负责从传感器收集所有必要的数据。
建筑概述
下面的网关架构图是最常见的架构设计,其中网关本身没有配备传感器。安装在设备上的网关软件负责从传感器收集数据,对数据进行预处理,并将结果发送到数据中心。
请记住,这个传感器的架构可能会有变化,有些位于网关设备上,也可能存在于网关的嵌入式传感器中,包括使用GPIO接口连接到网关的GPS单元或温度传感器。
网关软件
软件应用是网关的核心。网关软件负责从传感器收集信息并正确存储,直到可以进行预处理并发送到数据中心。网关软件决定给定处理阶段的数据暂时和永久地存储在存储器中。
网关软件的设计应考虑故障和灾难恢复。由于网关设备通常在现场操作,您应该为不良的工作条件做好准备。例如,为可能导致网关处理中断的电源故障或其他操作准备网关软件。网关软件应在电源恢复后立即自动启动,并从中断点继续工作。
网关软件也应该足够智能,能够正确处理系统日志。它必须在存储在设备上的日志条目数量和发送到数据中心的日志条目数量之间找到适当的平衡。
软件安装和更新
网关软件如何进入设备?这个问题有三个主要的解决方案。
第一种方法是在网关磁盘上预安装软件。这种方法称为工厂启动程序。正如您可能猜测的那样,如果您的解决方案包含大量网关,这项技术将无法很好地扩展。
第二种方法是服务器启动引导。在这种模式下,中央软件管理服务器与网关设备通信,并向它们部署正确版本的软件。这种方法比工厂引导扩展得更好,但是它仍然需要在服务器端启动部署操作。
第三种方法是客户端启动的引导程序。此模式假设网关负责连接到中央存储库服务器并下载适当版本的软件。在这种情况下,网关需要安装轻量级引导软件,以便能够与软件管理服务器通信。这个方法是最具扩展性的方法
物联网网关的一个非常重要的特点是可以无线下载更新。网关软件安装在设备上并交付到现场后,您维护网关软件的功能非常有限。从安全角度来看,无线下载软件更新的能力尤其重要,因为它可能会影响关键安全修复的交付时间。因为它不需要部署操作的任何集中协调。每个网关设备在打开电源后都会立即下载软件。
传感器消费者
如果说软件应用是网关的核心,那么传感器就是网关的眼睛和耳朵。传感器是小型硬件设备,可以测量现实世界的某些方面。传感器采集的常见数据类型有温度、GPS坐标、湿度、气压等。
网关从传感器收集的信息通常很小。例如,传感器测量的当前温度值只是一个十进制数。全球定位系统坐标是代表经度和纬度的两个十进制数字。这是一件需要记住的重要事情:网关对大量的小消息进行操作。
虽然传感器本身经常可以生成消息,但是预测我们真正需要从传感器收集多少消息是很重要的。例如,我们可以每毫秒读取一次传感器的温度,但在测量温度变化时,我们真的需要这种精度吗?在大多数情况下,每秒读取几次传感器值就足够了,因为我们对测量标准更感兴趣的时间更长。网关软件通常会定期轮询传感器数据。好的网关软件允许您轻松配置每个传感器的轮询间隔。您肯定不想将不必要的传感器数据放入网关,因为过时的消息会占用受限网关设备的宝贵处理能力。
网关数据传输
一般网关通过GPS、WiFi或以太网连接互联网。有些网关还可以在GPS和WiFi模式下工作。一般来说,非全球定位系统连接优先于发送数据,因为它不需要付费的移动计划。有些网关会持续连接到廉价的本地网络,但那些通过GPS连接的网关在发送到数据中心的数据上应该非常保守。网关应该将业务逻辑应用于它收集的数据,以知道哪些消息应该通过昂贵的全球定位系统网络发送,哪些数据可以缓存在设备上以进行延迟的离线处理。
摘要
网关是所有物联网解决方案的关键组成部分。在决定购买哪种硬件作为网关平台之前,需要花一些时间分析消息和有效载荷的数据格式,并尝试在从网关发送到数据中心之前过滤或聚合尽可能多的数据。此外,虽然为物联网解决方案选择合适的硬件非常重要,但您必须记住,选择合适的网关软件和管理基础架构将对您的总维护成本产生重大影响。