技术
|
08 Jan 2022
通过 LPWA(低功耗广域)网络,低功耗物联网设备能够以最低的功耗成本在远距离内高效地连接和通信。该网络设计用于发送小型有效负载,包括来自传感器的信息、警报和状态更新。对于许多远程设备而言,低功耗对于延长续航时间至关重要,并且随着设备数量的呈指数增长,用户还需要考虑对环境的影响。
MQTT Anywhere 是由 u-blox 提供的物联网通信服务,旨在通过各种蜂窝通信网络技术和载体使用行业标准 MQTT-SN 协议(传感器网络 MQTT)为低功耗物联网设备提供通信。此服务由 Thingstream 技术平台提供和管理。
与其他端到端通信系统一样,u-blox 的低功耗物联网通信解决方案建立在从蜂窝无线接入网络到数据传输协议的一系列层之上。下图 显示了这种分层:
MQTT Anywhere 使用的协议和嵌入式网络集成可提供针对电源和数据效率进行高度优化的安全服务。
用户提出的一个常见问题是,MQTT Anywhere 与其他使用替代协议或在蜂窝通信网络中以不同方式实施协议的低功耗物联网通信供应商相比如何。本文提供了一些对比以下项目的并排测试结果:
HTTP/HTTPS 的通信层如下所示:
对于下述所有测试案例,我们将同时考虑功耗(执行典型操作所需的功率)和数据效率(发送给定消息负载时会产生多少开销)。
在设计测试时,我们尝试对案例进行建模,旨在既反映我们在客户处看到的实际使用情况,又能反映不同技术之间的可比较方案。
我们使用了相同的硬件技术平台执行所有测试,如下所示:
“Frankenbutton”是基于 NXP LPC824 微控制器的定制硬件技术平台。
选择该硬件是因为其支持我们编写“接近本质”运行的测试 – Frankenbutton 硬件无操作系统或任务计划程序,因此利用代码可以完全控制硬件。此外,与调制解调器相比,标准化微控制单元使用的电源更为简单。
测试所用的蜂窝通信调制解调器是一个 u-blox LARA-R211 模块。该模块支持我们控制用于测试的无线接入技术,并相对轻松地从同一软件库交换协议。
我们通过连接到 PC 的 Keithley 2280S 捕获数据,以进行整个系统的功率测量,同时结合使用 nginx 和 tshark 监控和测量网络流量。
如前所述,该测试是围绕我们在现实世界中的客户遇到的最常见情况构建的,即一种向远程系统发送少量数据负载的设备。因此,所有测试都使用针对每种协议正确编码的相同样本有效负载(在本例中为 12 字节字符串“Hello World!”),如下表所示:
载体/协议 | 传输方法 |
---|---|
MQTT Anywhere 2G/USSD | MQTT-SN 发布,QoS -1* |
MQTT Anywhere LTE Cat-1/UDP | MQTT-SN 发布,QoS -1* |
HTTP/LTE Cat-1 | HTTP 发布 |
HTTPS/LTE Cat-1 | HTTPS 发布 |
* QoS -1 = MQTT-SN QoS(服务质量)1 级,即发即弃。