Chinaunix首页 | 论坛 | 博客
  • 博客访问: 57961
  • 博文数量: 22
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 221
  • 用 户 组: 普通用户
  • 注册时间: 2015-08-28 11:18
文章分类

全部博文(22)

文章存档

2021年(4)

2020年(1)

2016年(10)

2015年(7)

我的朋友

分类: 其他平台

2016-08-08 09:12:18

       这几天就是看mqtt协议原文。四十来页,看完以后对mqtt协议比原来了解一点。
       知道协议实体就是两个客户端、服务器(或者叫broker)。消息类型有十四种。
       主要的行为方式就是:心跳检测、订阅过程、发布消息过程、连接过程、断开链接过程等等。
       其中着重需要介绍的是qos的等级有三种,自我感觉就是三种对于消息的处理方式。qos为0就是发后不管,所以只能是至多接收一次,因为没有到达确认,所以服务器可能没接受到。而且这种消息不会进行保存。另外两种qos都会进行消息保存。两种消息的处理方式有不同。qos=1时通过puback确认收到消息。但是可能这个返回消息不能被收到,所以服务器收到的消息至少为一次。也就是说。消息发送后没有收到puback返回。发送端会再次发送消息,但是需要将dup标签设置一下,表示这个消息是重发的。qos=2的时候过程比较复杂。但是可以保证消息只会被接收到一次。
      然后就是mqtt支持的一些通配符,两个:分别是 +和#  第一个可以放在任意位置表示匹配一层topic  ,比如  fm/+/ibm  可以匹配 fm/a/ibm  fm/b/ibm  等等。#可以进行零到多层匹配,但是只能放在末尾。fm/ibm/#  可以匹配fm/ibm  fm/ibm/a  fm/ibm/b  等等

        只是初步看完了协议内容。了解了大概,便于下一步的研究。
阅读(1058) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~