MQTT 入门介绍

      最后更新:2022-05-10 00:41:45 手机定位技术交流文章

      参考

      一,简述

      MQTT(Message Queuing Telemetry Transport,这篇文章是全球之声在线特稿的一部分。它是一种“轻量级”通信协议,以公开/订阅(出版/订阅)模式运作。该协议以TCP/IP议定书为基础。IBM于199年发布。MQTT的最佳特征是,这是最好的办法。他们可以使用很少的代码 并且有少量带宽。为连接远程设备,它提供实时和可靠的新闻服务。对于如何将其作为低成本、低带宽的即时通信安排,缺乏知识。它在物体联网、小型设备、移动应用等方面有更广泛的应用。

      MQTT是用于信息传播和订阅传输的客户-服务器协议。MQTT协议是小型、简单、开放和直截了当的执行。由于这些特点,其适用范围相当广泛。在很多情况下,包括受限的环境中,例如,机器(M2M)与物体联网(IOT)之间的通信。其在,卫星通信传感器、拨号医疗设备、智能房屋和各种小型装置经常被使用。

      二,设计规范

      ( 一 ) 简化, 不 增加 不存在 的 职能 ;
      (2) 促进传感器之间电文传输的发射/订阅(Pub/Sub)机制;
      (3) 使用户动态能够产生主题和零维支出。
      (4) 将传输量减少到最低限度,以提高传输效率。
      (5) 考虑各种变数,例如带宽有限、长期性强和网络不可靠。
      (6) 规定持续控制片段。
      (7) 认识到客户计算能力可能受到限制;
      (8) 对提供的服务进行质量控制;
      (9) 假设数据未知,则不强调所通报数据的类型和格式,保留灵活性。

      三、主要特性

      制定MQTT协议是为了与低带宽、不可靠的网络中的遥控传感器和控制设备连接,协议包含以下关键特征:

      (1) 发送不止一对电文和未连接的应用程序,使用分发/订阅电文机制。

      这与XMP相当相似,尽管MQTT信息冗余大大小于XMP,因为XMPs以XML格式广播数据。

      (2) 受载荷内容阻碍的电文传输。

      (3) TCP/IP用于网络通信。

      由于这两个版本基于不同的交流模式,其利弊必然会不同。 主流MQTT是一种基于 TCP 连接的数据驱动器,但也有一个基于 UDP 的版本,叫做 MQTT-SN。

      (4) 信息分发服务分为三类:

      “至多一次”,信息发布完全取决于底部TCP/IP网络。将出现信息丢失或重复。这一水平适用于下列情况:环境传感器数据,记录丢失也无济于事。因为它很快将再次交付。这是最受欢迎的APP推手之一。即使您的智能设备在发送信件时不在网络上, 您也可以使用它 。推送过去没收到,我们再次无法做到这一点。

      “至少一次”来保证电文被发送, 但重复是可能的。

      “只有一次”,确保消息到达一次。一些最复杂的计费系统可以使用此级别。在计费系统中,重复或丢失的信息可能会产生不准确的结果。最佳的新闻传送服务也可用于需要即时通讯的APP信息。确保用户收到一次,只收到一次。

      (5) 成本低的小规模传输(两字节固定长头)和很少交换减少网络交通的协议。

      这就是为什么在演示文稿中说,“在物体联网、传感器和服务器之间的通信、信息收集等领域,”是完全可以接受的,因为知道嵌入装置在计算能力和带宽方面相对差,所以这种协议绝对适合传送信息。

      (6) 利用《最后意愿》和《条约》的特征向当事人通报异常客户中断的程序。

      最后遗嘱和约言:在同一主题下与其他设备联系以发送最后一分钟电文的最后一分钟机制已经失效。

      说明:一种与最后意愿和声明相仿的机制。

      四. MQTT 说明

      MQTT 实施方法第4号
      为完成 MQTT 协议,客户端和服务器通信必须完成。在通讯过程中,MQTT协议界定了三个实体:出版商(出版商)、代理商(Broker)(服务器)和订户(订阅商)。其中,客户既包括信息出版商,也包括信息订阅人。消息代理是服务器,同时,出版商可能是订阅者。

      MQTT 信件分两部分:主题( Topic) 和装入( payload) :

      (1) 订阅者在订阅(订阅)时,将获得关于该主题的通信(有效载荷)。
      (2) 有效载荷,又称电文内容,具体指订户要使用的内容。
      4.2 网络通信和应用信息
      MQTT将建立一个底层网络传输:一个客户对服务器的链接,使两者之间能够有序、无破坏性、基于字节的双向通信。

      由于数据用于跨MQTT网络,MQTT将相关服务质量(Qos)与主题名称(Topic)联系起来。

      4.3 MQTT 客户端客户端
      使用 MQTT 协议的应用程序或设备总是建立与服务器的网络连接。

      (1) 传播其他客户可能订阅的信息;
      ( 二 ) 其他 客户 发出 的 电文 订阅 ;
      (3) 撤回或删除申请书的通知;
      从服务器断开连接 。
      MQTT 服务器 4. 4
      MQTT 服务器(又称Broker)可以是应用程序或设备。 它位于发件人和用户之间,可以:

      (一) 接受客户网络连接;
      (2) 接受客户的申请信息;
      (3) 客户订阅和退款申请得到处理。
      (4) 向用户提供应用信息。
      四.5 MQTT协议的订阅、专题和会议
      一. 成员

      订阅内容包括专题过滤器(Topic过滤器)和最高服务质量(QoS)。订阅内容与届会链接。届会可有若干个订阅内容。会议每次订阅内容都有一个单独的主题过滤器。

      二、第二届会议

      每个客户端连接到服务器后, 它是一个客户端和服务器互动的会话。 会话存在于一个网络之间, 并且可以连接客户端和服务器之间的多个后续网络连接 。

      三. 主题标题

      服务器向每个订阅标签的客户发送通知 。

      四、按专题分列的困难

      在订阅表达式中,使用主题名称通配符过滤器来确定与订阅相对应的若干主题。

      平凡的V。

      无法删除文件夹“{0}”。

      4 6 MQTT协定4方法
      在 MQTT 协议中,提供了多种方法(也称为行动)来信号资源识别过程,这种资源可能代表先前存在的或动态的数据生成,视服务器的性能而定。一般而言,资源与服务器上的文档或输出有关。

      (1) 连接。等待服务器连接。
      (2) 中断。 等待MQTT客户端在结束与服务器的TCP/IP会话之前完成任务。
      (3) 正在处理订阅事宜。
      (4) 取消订阅。等待服务器取消客户的一个或多个主题订阅。
      (5) 发布。 MQTT 客户端在发出信息请求后, 返回应用程序线索 。
      MQTT 协议协议数据包结构
      根据MQTT协议,MQTT数据包由一个固定头(固定头)、一个可变头(可变头)和一个信息体(有效载荷)组成。

      (1) 固定头(固定页眉)。 MQTT 所有数据集都存在,提供软件包类型和组类识别。
      (2) 变量页眉。 它作为MQTT数据包的一部分出现;数据包的类型影响到变量的存在和内容。
      (3) 信件正文( payload)。 MQTT 数据包中显示客户收到的确切内容的一个元素。
      5.11 MQTT MQTT 固定头
      MQTT所有数据集都有固定头,其组织如下:

      5.1.1 MQTT数据包类型

      位数 1 位数 1 中的位数 7-5

      无符号四位元值、类型、值和说明如下:

      5.1.2 标识位

      字节 1位位数 1 位数位置: 0-3

      标记位置用作不使用标记位置的信息中的保留位置。 如果收到错误的标记, 收件人必须终止网络连接 :

      (1) DUP:释放的复制件。如果对可靠的电文传输设定为1,则在下面的长度上加上MemailId, 并需要答复确认,以保证电文完整,但不能探测重复电文传输。

      (2) 质保:信息传播服务质量,即信息数量保障

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/24315.html

          热门文章

          文章分类