IoT Edge AMQP 流量开销

IoT Edge AMQP traffic overhead

在过去的几天里,我一直在努力分析 IoT Edge 设备在将数据传输到 IoT 中心时产生的流量。

集线器中的指标完全符合我每小时 120KB 左右的预期,这大致是我使用模块客户端发送的消息的大小。

但是当我监控设备的网络流量时,结果是发送了 20MB,接收了大约 10MB,对于 AMQPS,每小时总共超过 30MB,这是一个巨大的差异。

有没有人遇到过这种情况,有没有办法找出数据不一致的原因。

IoT Hub 提供了几个 metrics 来让您大致了解 hub 的运行状况和连接的设备总数。在您的提及中,该指标仅包括 d2c 消息。客户端和服务之间的通信不仅包括d2c消息协议,还包括其他协议。

Azure IoT Edge 通过 AMQP 1.0 将流量桥接到 IoT 中心。它插入用于专门处理的组件,例如自定义身份验证、消息转换、compression/decompression 或 encryption/decryption 设备与 IoT 中心之间的流量。 Azure IoT协议网关和MQTT/AMQP实现是在一个开源软件中提供的project.You可以参考Microsoft.Azure.Devices.Edge.Hub.Amqp.

这最终成为 IoT Edge 运行时中的一个错误,并在版本 1.0.2 中解决了更多信息,请访问 GitHub