概述
文章目录
- 系列文章目录
- 前言
- 一、简述
- 二、主要特性
- 三、应用领域
- 四、常见术语
- 总结
系列文章目录
MQTT协议详解 一、MQTT简介
MQTT协议详解 二、MQTT控制包格式
MQTT协议详解 三、MQTT控制包(CONNECT)
前言
本章将首先讲解一些关于MQTT协议的基础概念。一、简述
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。
MQTT是机器对机器(M2M)/物联网(IoT)连接协议。它被设计为一个极其轻量级的发布/订阅消息传输协议。对于需要较小代码占用空间和/或网络带宽非常宝贵的远程连接非常有用,是专为受限设备和低带宽、高延迟或不可靠的网络而设计。这些原则也使该协议成为新兴的“机器到机器”(M2M)或物联网(IoT)世界的连接设备,以及带宽和电池功率非常高的移动应用的理想选择。例如,它已被用于通过卫星链路与代理通信的传感器、与医疗服务提供者的拨号连接,以及一系列家庭自动化和小型设备场景。它也是移动应用的理想选择,因为它体积小,功耗低,数据包最小,并且可以有效地将信息分配给一个或多个接收器。
二、主要特性
- 开放消息协议,简单易实现
- 发布订阅关系,一对多消息发布
- 基于TCP/IP网络连接,提供有序,无损,双向连接
- 1字节固定报头,2字节心跳报文,最小传输开销和协议交换,有效减少网络流量
- 消息Qos支持,可靠传输保证
三、应用领域
MQTT协议广泛应用于物联网、移动互联网、智能硬件、车联网、电力能源等领域。
- 物联网M2M通信,物联网大数据采集
- Android消息推送,WEB消息推送
- 移动即时消息,例如Facebook Messenger
- 智能硬件、智能家具、智能电器
- 车联网通信,电动车站桩采集
- 智慧城市、远程医疗、远程教育
- 电力、石油与能源等行业市场
四、常见术语
Client(客户端)
使用MQTT的程序或设备。客户端主动建立和服务器之间的网络连接。
- 发布消息。
- 订阅消息
- 取消订阅。
- 断开与服务器的连接。
Server(服务端)
一种程序或设备,充当发布发布消息的客户端和已订阅的客户端之间的中介。
- 可接受多个客户端的网络连接请求。
- 接受客户端发布的消息
- 处理来自客户端的订阅和退订请求。
- 转发与客户端订阅匹配的消息
Pubilsh(发布者)
发布者一般为客户端(Client)
Broker(代理)
代理一般为服务端(Server)
Subscribe(订阅者)
订阅者一般为客户端(Client)
Topic(主题)
消息主题。客户端订阅主题后,客户端可接收到该主题的消息。
Payload(负载)
消息的具体内容。订阅者接收到消息中的具体内容。
Session(会话)
客户机和服务器之间的有状态交互。有些会话只持续网络连接的时间,有些会话可以跨越客户端和服务器之间的多个连续网络连接。
总结
- MQTT提供了可靠的消息传输方式:消息发布服务质量(QOS)
- 提供异常处理机制:遗言机制(Last Will)和遗嘱机制(Testament)
- 极低的网络传输流量。非常适合物联网中,传感器与传感器、传感器与服务器之间的数据交换
最后
以上就是甜美鸡为你收集整理的MQTT协议详解 一、MQTT简介系列文章目录前言一、简述二、主要特性三、应用领域四、常见术语总结的全部内容,希望文章能够帮你解决MQTT协议详解 一、MQTT简介系列文章目录前言一、简述二、主要特性三、应用领域四、常见术语总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复