
物联网通讯是物联网的一个核心内容,目前物联网的通讯协议并没有一个统一的标准,比较常见的有 MQTT、CoAP、DDS、XMPP 等,在这其中,MQTT(消息队列遥测传输协议)应该是应用最广泛的标准之一,资料也最全,最适合咱们学习。
MQTT是什么?
MQTT 的全称为 Message Queue Telemetry Transport,是在 1999 年,由 IBM 的 Andy Stanford-Clark 和 Arcom 的 Arlen Nipper 为了一个通过卫星网络连接输油管道的项目开发的。简单地来说 MQTT 协议有以下特性:
——基于 TCP 协议的应用层协议;
——采用 C/S 架构;
——使用订阅/发布模式,将消息的发送方和接受方解耦;
——提供 3 种消息的 QoS(Quality of Service): 至多一次,最少一次,只有一次;
——收发消息都是异步的,发送方不需要等待接收方应答。
MQTT通信原理是怎样的?

MQTT协议需要三个角色:发布者(publisher)、订阅者(subscriber)、代理服务器(broker)。以上图的智能电表为例,两个订阅者客户端(APP)订阅了主题为baidu/F1的消息,一旦电表向代理服务器发布主题为baidu/F1的消息,那么代理服务器就会向订阅了这个主题的两个APP推送电表的消息(比如用电量100度)。
MQTT协议的类型有哪些?

MQTT协议类型一共有14条,有兴趣可以先浏览下官方文档《MQTT 协议 3.1.1》,一共70页,刚开始看的时候觉得很枯燥,很头大,一旦结合了实例再去看这些协议简直就是小菜一碟。接下来的文章会从一个小白的角度去实践和理解这些协议。
网友评论