如何配置数以万计的物联网设备连接到 MQTT 服务器?

物联网 MQTT 供应
2021-06-20 06:21:22

我正在做一个项目,我的传感器连接到 WIFI 模块。每当传感器被触发时,它就会通过 MQTT 向云端发送一条消息。最终,我将数以万计的这些设备部署到了各处。这些传感器很少被触发,可能每周随机触发一次。

配置这些设备的最佳方法是什么?假设我有 10K 用户,每个用户有 1 个传感器。我需要设置 10K MQTT 用户帐户还是仅设置 1 个帐户并拥有 10K 主题?我希望能够知道哪个设备被触发并将信息发送回设备。

用户将使用移动应用程序来设置物联网设备。从应用程序中,他们可以设置物联网设备的 WiFi SSID 和密码,以连接到他们的家庭 WiFi。我认为用户还需要在我们的平台上注册一个帐户,然后在应用程序上为他们创建一个 MQTT 服务器地址、端口号、用户 ID 和密码,并转发到 IOT 设备以连接到 MQTT 服务器。

这个创建 MQTT 账户的过程如何自动化?有没有办法在任何云物联网服务(例如 AWS、谷歌云、微软 Azure、IBM 等)上做到这一点。

1个回答

云物联网提供商都倾向于使用每个设备证书来单独识别每个设备。

您在这里有 2 个选择:

  1. 您在制造时将证书刷入设备。
  2. 您可以使用平台 HTTP 接口在设备连接到 wifi 并注册到用户时为设备提供证书。

这两种方法都很有效,但第一种方法意味着您需要为每个设备闪存一个唯一的映像,这会增加制造开销。

每个设备的证书意味着您可以在该证书遭到破坏时撤销该证书。

使用证书的一个缺点是您选择的硬件可能需要支持一个安全元件来存储私钥,这样它就不容易被破坏,这可能会增加成本。

设备应根据证书的 CN 或序列号发布到主题,然后您可以将其与用户帐户相关联。