MOTT初识

MOTT初识MOTT 初识 什么是 MQTT MQTT 英文名称 Message Queuing Telemetry Transport 中文即消息队列遥测传输协议 是一种基于发布 订阅模式 轻量级 通讯协议 该协议构建于 TCP IP 上 MQTT 是一个低开销 低带宽占用的即时通讯协议 使其在物联网 小型设备和移动应用有广泛的应用

大家好,我是讯享网,很高兴认识大家。

MOTT初识

什么是MQTT

  • MQTT,英文名称Message Queuing Telemetry Transport,中文即消息队列遥测传输协议,是一种基于发布/订阅模式“轻量级”通讯协议,该协议构建于TCP/IP上
  • MQTT是一个低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备和移动应用有广泛的应用

MQTT特点

  • 功能精简
  • 发布/订阅模式,方便消息在传感器之间传递
  • 允许用户动态创建主题
  • 传输量降到最低
  • 带宽、延迟时间和网络的稳定性考虑
  • 支持连续的会话控制
  • 提供服务质量管理(0最多一次;1最少一次;2有且只有一次)
  • 灵活性--数据格式不做强求

MQTT原理

  • 实现方式
    • 实现MQTT需要客户端和服务端通讯完成,在通讯过程中,MQTT中有三种身份
      1. 发布者(Publish)
      2. 代理(服务器:Broker)
      3. 订阅者(Subscribe)
    • 其中,消息的发布者和订阅者是客户端,消息代理是服务器,消息发布者可以同时是订阅者
    • MQTT传输的消息
      • Topic:主题,订阅者订阅后,就会收到该主题的消息内容
      • payload:消息的内容,是指订阅者具体要使用的内容
  • 网络传输与应用消息
    • 建立客户端到服务器的连接,提供两者之间一个有序的、无损的、基于字节流的双向传输
    • 当应用数据通过MQTT网络发送时,MQTT会把与之相关的服务质量和主题名相关联
  • MQTT客户端
    • 建立与服务器的网络连接
    • 发布信息
    • 订阅信息
    • 退订或删除应用程序信息
    • 断开与服务器连接
  • MQTT服务器
    • 也称“消息代理”,可以是一个应用或一台设备,它是位于消息发布者和订阅者之间
    • 接收来自客户端的网络连接
    • 接收客户发布的应用信息
    • 处理来自客户端的订阅和退订请求
    • 向订阅的客户转发应用程序消息

MQTT术语

  • 订阅Subscription
    • 订阅包含主题筛选器和最大服务质量,订阅与一个会话关联,一个会话可以包含多个订阅,一个会话中的每个订阅都有一个不同主题的筛选器
  • 会话Session
    • 每个客户端与服务器建立连接后就是一个会话,客户端和服务器端之间有状态交互,会话存在于一个网络之间,也可能在客户端和服务器之间跨越多个连续的网络连接
  • 主题名Topic Name
    • 连接到一个应用程序消息的标签,该标签与服务器的订阅相匹配,服务器会将消息发送给订阅是所匹配标签的每个客户端
  • 主题筛选器Topic Filter
    • 一个对主题名通配符筛选器,在订阅表达式中使用,表示订阅所匹配到的多个主题
  • 负载Payload
    • 消息订阅者所具体接收的内容

MQTT方法

  • Connect 等待与服务器建立连接
  • DisConnect等待MQTT客户端完成所做的工作,并与服务器断开TCP/IP会话
  • Subscribe等待订阅完成
  • UnSubscribe等待服务器取消客户端的一个多多个topics订阅
  • Publish客户端发送消息请求 ,发送完成后返回应用程序线程

MQTT数据包

  • 一个MQTT数据包由固定头、可变头、消息体三部分构成
    1. 固定头(Fixed header),存在于所有MQTT数据包中,表示数据包类型及数据包的分组类标识
    2. 可变头(Variable header),存在于部分MQTT数据包中,数据包类型决定了可变头是否存在及具体的内容
    3. 消息体(Payload),存在于部分MQTT数据包中,表示客户端收到的具体内容
小讯
上一篇 2025-03-16 13:40
下一篇 2025-04-02 10:48

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/52386.html