工业路由器
您当前位置: 首页 >> 服务与支持 >> 产品百科 >> 工业路由器

MQTT是什么?MQTT协议简介

发布时间:2020-07-03浏览:1790

MQTT



简介:MQTT由IBM公司开发,是一个即时通讯协议,也是一个物联网传输协议,主要用于轻量级的订阅/发布式的消息传输。其设计目的主要是为低带宽和不稳定网络环境下的物联网设备提供服务。


MQTT中的概念



订阅(Subscribtion): 

订阅包含主题筛选器(Topic Filter)和最大服务质量(QoS)。订阅会与一个会话(Session)关联。一个会话可以包含多个订阅。每一个会话中的每个订阅都有一个不同的主题筛选器。


会话(Session): 
每个客户端与服务器建立连接后就是一个会话,客户端和服务器之间有状态交互。会话存在于一个网络之间,也可能在客户端和服务器之间跨越多个连续的网络连接。
主题名(Topic Name): 
连接到一个应用程序消息的标签,该标签与服务器的订阅相匹配。服务器会将消息发送给订阅所匹配标签的每个客户端。 
需要注意的是,MQTT中消息主题按照层级命名,使用 ‘/’ 进行分割 
此外,主题中可以使用通配符进行多个主题或多层级的订阅,有两种常见的通配符: 
1. 单层通配符 +:单层通配符只能匹配一层的主题,例如:China/Beijing/+,可以匹配的只有Beijing这个主题下面一层的主题,例如Xicheng, DongCheng, Xuanwu等等。 
2. 多层通配符 #:顾名思义,多层通配符就是可以匹配多个层级的主题,例如:China/#,可以匹配到的主题可能有:China/Beijing/Dongcheng, China/Shanghai/PuDong,等等。
主题筛选器(Topic Filter): 
一个对主题名通配符筛选器,在订阅表达式中使用,表示订阅所匹配到的多个主题。
负载(Payload): 

消息订阅者所具体接收的内容。


MQTT中的角色


Publisher和Subscriber为客户端,Broker为服务器端,消息主题为消息类型,Broker根据Topic过滤消息,并将消息向客户端推送。


MQTT中用QoS表示服务质量,MQTT协议中有三种服务质量(QoS): 
QoS =0,至多一次,可能会出现丢包的情况,使用在对实时性要求不高的情况,例如,将此服务质量与通信环境传感器数据一起使用。 对于是否丢失个别读取或是否稍后立即发布新的读取并不重要。
QoS =1,至少一次,保证包会到达目的地,但是可能出现重包。

QoS =2, 刚好一次,保证包会到达目的地,且不会出现重包的现象。



客户端



Publisher和Subscriber都属于客户端。
发布应用消息给其它相关的客户端。
订阅以请求接受相关的应用消息。
取消订阅以移除接受应用消息的请求。

从服务端断开连接。


服务器端


服务器端即所谓的MQTT Broker服务器。
接受来自客户端的网络连接。
接受客户端发布的应用消息。
处理客户端的订阅和取消订阅请求。
转发应用消息给符合条件的已订阅客户端。
MQTT提供的公共服务器端(Broker)有: 
test.mosquitto.org
broker.hivemq.com
iot.eclipse.org



上一篇:没有了! 下一篇:深入浅出全面解析 TCP/IP 协议栈
免费样机申请 样机免费试用,提前沟通确保爱陆通产品深度契合贵司业务需求
  • *您的姓名:
  • *手机号码:
  • *公司名称:
  • 您的职位:
  • 您的邮箱:
  • 您的QQ:
相关产品
产品百科
隐私政策网站地图 Copyright © 2015-2022 厦门爱陆通通信科技有限公司 All Rights Reserved.   闽ICP备15018514号
在线咨询 拨打电话