MQTT协议详解及开发教程(一)MQTT协议概述

 

推荐一款稳定的基于C编写的MQTT Client开源库《cMQTT》

一 概述    

MQTT协议目前在物联网技术中应用非常广泛,各种公有云的IOT平台通信基本上都是按照该协议来实现的,这里先简单的做个总结:

   (1)MQTT协议框架及内容比较标准,可以认为是“物联网行业的Modbus协议”。

   (2)不同厂家的MQTT 服务器或客户端在通信层面是完全一致的,只有业务数据不同而已。这也就意味着,如果知道client ID 、password、payload格式,

            那么任何的MQTT client都可以连接到MQTT 服务器上。

   (3)MQTT的模式是发布和订阅,发布既可以是客户端也可以是服务端,但是最终都是需要服务端broker进行转发。

    关于MQTT协议的定义及应用场景,网上的资料非常多,下面举一个简单的应用案例系统框图来说明:

   上图中,client1和client3 都“订阅”了Topic1,当client2向Topic1“发布”消息时,client1和client3都会收到client2 发送的消息。

二、名词解释

1、订阅 subscribe

    客户端通过“订阅”某个topic,当这个topic有新的消息时,服务器会自动将消息转发给这个client。

2、主题 Topic

   附加在应用消息上的一个标签,服务器broker就是根据topic名称,与订阅该topic的client进行关联,然后进行消息转发。

3、主题过滤器 Topic filter

   订阅操作中包含的topic,可以是具体的topic name,也可以通过“通配符”实现订阅多个主题。

4、会话 session

     从客户端向服务端发起MQTT连接请求开始,到连接中断,直到会话过期未知的消息手法序列称之为会话。

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值