首页 理论教育 Contiki操作系统应用与MQTT-SN协议

Contiki操作系统应用与MQTT-SN协议

时间:2026-01-27 理论教育 眠眠 版权反馈
【摘要】:MQTT-SN协议类似MQTT 协议,但它考虑了无线通信环境的特点,如低带宽、链路容易出现故障及短消息长度等因素,对于处理和存储资源受限的低成本电池供电设备上的实现也做了相应的优化。与MQTT相比,MQTT-SN具有以下不同特征:CONNECT 消息分为三条消息,增加的两条消息是可选的,这两条消息用于把Will主题和Will消息传送给服务器。

MQTT-SN(MQTT for wireless Sensor Networks)协议类似MQTT 协议,但它考虑了无线通信环境的特点,如低带宽、链路容易出现故障及短消息长度等因素,对于处理和存储资源受限的低成本电池供电设备上的实现也做了相应的优化。与MQTT相比,MQTT-SN具有以下不同特征:

(1)CONNECT 消息分为三条消息,增加的两条消息是可选的,这两条消息用于把Will主题和Will消息传送给服务器。

(2)为了应对无线网络中的短消息长度和有限传输带宽,PUBLISH 消息中的主题名称用短的、两个字节长的“主题id”来代替。注册过程定义为允许客户端向服务器/网关注册它们的主题名并获取相应的主题id,它也用于相反的方向以通知客户端主题名称,这些信息将包含在后续的PUBLISH消息中。

(3)引入了“预定义”主题ids 和“简短”主题名称,这种主题无需注册,预定义主题ids也是主题名称的两个字节长的代替。然而,客户端应用程序和网关/服务器事先知道主题ids和主题名称之间的映射,因此,双方可以开始使用预定义的主题ids,没有必要注册上文提到的“正常”主题ids。短主题名称是具有两个8 位字节的固定长度的主题名称,它们足够短,以便可以与PUBLISH 消息中的数据一起携带。对于预定义的主题ids,也不需要注册短主题名称。(https://www.xing528.com)

(4)发现过程可帮助没有预先配置的服务器/网关地址的客户端发现操作服务器/网关的实际网络地址,多个网关可以在单个无线网络内同时存在,并且可以在负载共享或备用模式下协作。

(5)“clean session”的语义扩展到了Will功能,即不仅客户端的订阅是持久的,而且Will 主题和Will 消息也是持久的,客户端还可以在会话期间修改其Will主题和Will消息。

(6)为处于“睡眠”状态的客户端的支持定义了一个新的离线保持活动过程,通过该过程,电池供电的设备可以进入休眠状态,在此期间,发往它们的所有消息都在服务器/网关处缓存,并在它们处于“唤醒”状态时发送给它们。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈