设为首页 收藏本站
开启辅助访问 快捷导航
菜单
猿人部落 主页 资讯 查看内容

物联网协议--MQTT整理

2019-8-1 05:10 发布者: y553649552 评论 0 查看 958
MQTT协议整理 1、界说 MQTT是一个轻量级的接纳Broker的基于TCP(默认端标语1833)的发布/订阅式异步遥信消息队列传输应用层协议。操持初始目标是为大量盘算本领有限、工作在低带宽、不可靠的长途传感器和控制器装

MQTT协议整理

1、界说

MQTT是一个轻量级的接纳Broker的基于TCP(默认端标语1833)的发布/订阅式异步遥信消息队列传输应用层协议。操持初始目标是为大量盘算本领有限、工作在低带宽不可靠的长途传感器和控制器装备通讯,非常恰当物联网通讯。IBM公司1999年提出的。

2、服务质量

Qo0:“最多一次”,消息发布完全依靠底层 TCP/IP 网络,分发的消息大概丢失或重复,不会收到发布确认相应。

比方,这个品级可用于环境传感器数据,单次的数据丢失不要紧,由于不久后还会有第二次发送

Qo1:“至少一次”,确保消息可以到达,但消息大概会重复;

Qo2:“只有一次”,确保消息只收到一次。publisher缓存了message和msgID,而服务器缓存了msgID,两方都做记载以是可以包管消息不重复,但是由于记载是须要删除的,这个删除流程同样多了一倍

比方,这个品级可用在一个计费体系中,这里如果消息重复或丢失会导致不准确的收费。

3、14种报文范例(版本3)--分为五大类

第一类:

Connect:客户端毗连服务器

Connack:服务器确认毗连哀求(保持长毗连,还要定时发心跳包与服务保持毗连)

第二类:

Publish:客户端/服务器发布消息(message:Payload)

Puback:服务器发布确认(QoS 1)

Pubrec:服务器发布收到(QoS 2 第一步 确认通报乐成)

Pubrel:客户端发布开释(QoS 2 第二步 告诉服务器删除msgID

Pubcomp:服务器发布完成(QoS 2 第三步 告诉客户端删除msg

第三类:

Subscribe:客户端订阅主题(Topic)

Suback:服务器订阅确认

Unsubscribe:客户端取消订阅

Unsuback:服务器取消订阅确认

第四类:

Pingreq:客户端心跳哀求(1. 在没有任何别的控制报文从客户端发给服务的时,告知服务器客户端还活着;2. 哀求服务端发送相应确认它还活着;3. 利用网络以确认网络毗连没有断开)

Pingresp:服务器心跳相应(表现服务端还活着)

第五类:

Disconnect:客户端断开毗连

4、MQTT控制报文

固定报头格式如下:

5、Connect return code

MQTT的CONNACK消息中对返回码(return code)作了如下的界说:

0x00 Connection Accepted

0x01 Connection Refused: unacceptable protocol version

0x02 Connection Refused: identifier rejected

0x03 Connection Refused: server unavailable

0x04 Connection Refused: bad user name or password

0x05 Connection Refused: not authorized

6-255 Reserved for future use



路过

雷人

握手

鲜花

鸡蛋
收藏 邀请
上一篇:android架构分享-MVP下一篇:微服务架构的核心关键点

相关阅读

一周热门

头条攻略!

日排行榜

相关分类