随笔分类 -  MQTT

MQTT协议以及开源MQTTBroker源码解析
摘要:一、心跳请求 就是跟所有心跳报文一样,主要是让服务端知道自己还活着,并测试目前网络是否通顺。服务端收到这个报文必须响应一个心跳响应报文。 1.固定头 控制报文类型是12,其他没啥。 2.可变头 没有。 3.有效载荷 没有。 二、心跳响应 收到心跳请求报文后响应的报文。 1.固定头 控制报文类型是13 阅读全文
posted @ 2021-01-04 11:29 胖达利亚 阅读(2340) 评论(0) 推荐(0)
摘要:一、订阅主题 这个就是客户端发送给服务端要求订阅指定topic的报文了,在服务端可以设定是否支持通配符。 1.报文头 报文类型是8,其他啥也没有。 2.可变头 里面有一个报文标识符,前文讲过,只要需要服务端答复的,都必须有这个标识符,不然服务端不知道针对哪个报文进行答复。 示例:假设报文标识符是10 阅读全文
posted @ 2021-01-04 11:19 胖达利亚 阅读(1920) 评论(0) 推荐(0)
摘要:一、消息发布 PUBLISH控制报文不光是客户端发送给服务端,也能服务端发送给客户端,就是个传递应用消息的。 1.固定头 推送的固定头报文类型是3。 DUP是重发标志,如果DUP标志被设置为0,表示这是客户端或服务端第一次请求发送这个PUBLISH报文。如果DUP标志被设置为1,表示这可能是一个早前 阅读全文
posted @ 2020-12-09 16:56 胖达利亚 阅读(5988) 评论(0) 推荐(1)
摘要:一、CONNECT – 连接服务端 客户端到服务端的网络连接建立后,客户端发送给服务端的第一个报文必须是CONNECT报文。 在一个网络连接上,客户端只能发送一次CONNECT报文。服务端必须将客户端发送的第二个CONNECT报文当作协议违规处理并断开客户端的连接 。 有效载荷包含一个或多个编码的字 阅读全文
posted @ 2020-12-08 16:56 胖达利亚 阅读(2190) 评论(0) 推荐(0)
摘要:一、协议介绍 MQTT协议可以理解为一个类似于kakfa或者rocketmq这种中间件的形式。它主要功能就是可以实现发布和订阅。 不同的客户端去跟客户端连接,然后就可以订阅一些主题(topic),有些客户端如果发布了这些主题,这些订阅的都能收到。 实用场景举例: 比如一个楼中的人都想在手机上每天收到 阅读全文
posted @ 2020-12-08 14:40 胖达利亚 阅读(1526) 评论(0) 推荐(0)