当前位置: 首页 > news >正文

【MQTT】

MQTT

  • ■ MQTT 简介
    • ■ 1、MQTT协议实现方式
    • ■ 2、MQTT客户端
    • ■ 3、MQTT服务器
    • ■ 4、MQTT协议中的订阅、主题、会话
    • ■ 5、MQTT协议数据包结构
  • ■ MQTT.fx 界面介绍
    • ■ 1、MQTT.fx 连接服务器
    • ■ 2、MQTT.fx 发布测试 (Sublish)
    • ■ 3、MQTT.fx 订阅测试 (Subscribe)
  • ■ 服务器-mosquitto
    • ■ 1、服务器启动 mosquitto
    • ■ 2、服务器-订阅主题
    • ■ 3、服务器-发布主题
  • ■ Ubuntu搭建mosquitto (下载源码编译)
    • ■ 1、安装mosquitto所需要依赖
    • ■ 2、下载源码包
    • ■ 3、解压源码 --编译与安装源码
  • ■ 在Ubuntu中安装mosquitto
    • ■ 1. apt-get命令安装mosquitto
    • ■ 2. 修改配置文件
    • ■ 3. 启动
    • ■ 4. 其他处理
    • ■ 5. 在Ubuntu下测试mosquitto
  • ■ 在Windows下用mqttfx和通信猫测试
    • ■ 1. 通信猫订阅mqttfx发布的主题
    • ■ 2. mqttfx订阅通信猫发布的主题
    • ■ 3. mosquitto客户端订阅通信猫发布的主题
    • ■ 4. 通信猫订阅mosquitto客户端发布的主题
  • ■ 自己测试结果,(用www.tongxinmao.com 做服务器,测试结果)
    • ■ 1、MQTT.fx 配置
    • ■ 2、通信猫调试软件-配置
    • ■ 3、MQTT.fx 发布主题消息,通信猫调试软件 订阅主题
    • ■ 4、通信猫调试软件 发布主题, MQTT.fx 订阅主题消息
  • ■ 通信猫调试助手

■ MQTT 简介

Mosquitto官网
Mosquitto最新的源码

官方下载地址 //需要许可证密钥

MQTT.Fx 下载
链接: https://pan.baidu.com/s/1zkOHAyP_nURebtk7x6yXvw?pwd=rbq9
提取码: rbq9
链接:https://pan.baidu.com/s/1jwA7GUcT8h-rk_kt4CZq1A
提取码:1234


MQTT(Message Queuing Telemetry Transport)**消息队列遥测传输协议,**是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。
MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)

MQTT.fx的许可证密钥是一种用于授权用户使用全部功能的授权凭证。
用户在下载并安装MQTT.fx后,可以在“注册”或“许可”菜单中找到“许可证”选项。
用户需要购买或申请许可证密钥,以便能够使用MQTT.fx的高级功能和服务。
用户还可以在百度网盘上找到MQTT.fx的不同版本,其中1.7版本无需许可证。
在这里插入图片描述

■ 1、MQTT协议实现方式

实现MQTT协议需要客户端和服务器端通讯完成,在通讯过程中,
MQTT协议中有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。
其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。
.
MQTT传输的消息分为:主题(Topic)和负载(payload)两部分:

(1)Topic,可以理解为消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload);
(2)payload,可以理解为消息的内容,是指订阅者具体要使用的内容。

■ 2、MQTT客户端

一个使用MQTT协议的应用程序或者设备,它总是建立到服务器的网络连接。客户端可以:

(1)发布其他客户端可能会订阅的信息;
(2)订阅其它客户端发布的消息;
(3)退订或删除应用程序的消息;
(4)断开与服务器连接。

■ 3、MQTT服务器

MQTT服务器以称为"消息代理"(Broker),可以是一个应用程序或一台设备。它是位于消息发布者和订阅者之间,它可以:

(1)接受来自客户的网络连接;
(2)接受客户发布的应用信息;
(3)处理来自客户端的订阅和退订请求;
(4)向订阅的客户转发应用程序消息。

■ 4、MQTT协议中的订阅、主题、会话

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

二、会话(Session)
每个客户端与服务器建立连接后就是一个会话,客户端和服务器之间有状态交互。会话存在于>一个网络之间,也可能在客户端和服务器之间跨越多个连续的网络连接。

三、主题名(Topic Name)
连接到一个应用程序消息的标签,该标签与服务器的订阅相匹配。服务器会将消息发送给订阅所匹配标签的每个客户端。

四、主题筛选器(Topic Filter)
一个对主题名通配符筛选器,在订阅表达式中使用,表示订阅所匹配到的多个主题。

五、负载(Payload)
消息订阅者所具体接收的内容。

■ 5、MQTT协议数据包结构

在MQTT协议中,一个MQTT数据包由:固定头(Fixed header)、可变头(Variable header)、消息体(payload)三部分构成。MQTT数据包结构如下:

(1)固定头(Fixed header)。存在于所有MQTT数据包中,表示数据包类型及数据包的分组类标识。
(2)可变头(Variable header)。存在于部分MQTT数据包中,数据包类型决定了可变头是否存在及其具体内容。
(3)消息体(Payload)。存在于部分MQTT数据包中,表示客户端收到的具体内容。

■ MQTT.fx 界面介绍

在这里插入图片描述
连接设置
在这里插入图片描述
用户信息设置
在这里插入图片描述
SSL安全证书设置
在这里插入图片描述
网络代理设置
在这里插入图片描述
医嘱设置
在这里插入图片描述

■ 1、MQTT.fx 连接服务器

在这里插入图片描述
下面是服务器地址
在这里插入图片描述
在这里插入图片描述

■ 2、MQTT.fx 发布测试 (Sublish)

在这里插入图片描述
先在服务器上订阅 在发布消息,服务器上才看的到
在这里插入图片描述
在这里插入图片描述

■ 3、MQTT.fx 订阅测试 (Subscribe)

在这里插入图片描述在虚拟机中发布一个主题nihao,消息内容为helloworld
在这里插入图片描述

■ 服务器-mosquitto

■ 1、服务器启动 mosquitto

在这里插入图片描述

sudo apt install mosquitto-clients  //安装客户端

sudo apt-get install mosquitto      //安装服务器端
sudo systemctl status mosquitto     //查看运行状态

//重启服务器程序
ps -aux | grep mosquitto        //查看运行进程号
kill -9 进程号        //执行命令杀死进程:
mosquitto -v         //启动代理服务:-v 详细模式——启用所有日志记录类型。

■ 2、服务器-订阅主题

订阅 nihao主题, 接受到如下信息
在这里插入图片描述

订阅主题:mosquitto_sub -v -t hello
      -t 指定订阅的主题,主题为:hello
      -v 详细模式 打印调试信息

■ 3、服务器-发布主题

服务器中发布一个主题nihao,消息韦helloworld
在这里插入图片描述

发布内容:mosquitto_pub -t hello -m world
      -t 指定订阅的主题,主题为:hello
      -m 指定发布的消息的内容

■ Ubuntu搭建mosquitto (下载源码编译)

■ 1、安装mosquitto所需要依赖

sudo apt-get install libssl-dev
sudo apt-get install uuid-dev
sudo apt-get install cmake

■ 2、下载源码包

wget http://mosquitto.org/files/source/mosquitto-1.6.10.tar.gz

或者 下载链接
在这里插入图片描述

■ 3、解压源码 --编译与安装源码

tar -zxvf mosquitto-1.6.10.tar.gz
cd mosquitto-1.6.10/
make         //编译与安装源码
sudo make install

■ 在Ubuntu中安装mosquitto

■ 1. apt-get命令安装mosquitto

# 安装mosquitto
sudo apt-get install mosquitto
# 安装客户端
sudo apt-get install mosquitto-clients
# 安装设备端
sudo apt-get install mosquitto-dev

■ 2. 修改配置文件

配置文件地址:/etc/mosquitto/mosquitto.conf
从上面的源码地址中下载源码,然后找到mosquitto.conf文件,将其替换掉/etc/mosquitto/mosquitto.conf文件。
你也可以根据需求,阅读手册自己写mosquitto.conf

在这里插入图片描述

■ 3. 启动

mosquitto -c /etc/mosquitto/mosquitto.conf

■ 4. 其他处理

  • 查看运行状态 systemctl status mosquitto
  • 开启/关闭systemctl start/stop mosquitto
  • 查看进程ps -aux | grep mosquitto
  • 查看1883端口占用netstat -apn | grep 1883
  • 关闭进程kill -9 pid

■ 5. 在Ubuntu下测试mosquitto

mosquitto_sub -v -t hello       //订阅主题:
	-h 指定域名
	-t 指定订阅的主题,主题为:hello
	-v 详细模式 打印调试信息

mosquitto_pub -t hello -m world    //发布内容:
	-t 指定订阅的主题,主题为:hello
	-m 指定发布的消息的内容

在这里插入图片描述

■ 在Windows下用mqttfx和通信猫测试

■ 1. 通信猫订阅mqttfx发布的主题

在这里插入图片描述

■ 2. mqttfx订阅通信猫发布的主题

在这里插入图片描述
在这里插入图片描述

■ 3. mosquitto客户端订阅通信猫发布的主题

在这里插入图片描述
在这里插入图片描述

■ 4. 通信猫订阅mosquitto客户端发布的主题

在这里插入图片描述

■ 自己测试结果,(用www.tongxinmao.com 做服务器,测试结果)

■ 1、MQTT.fx 配置

在这里插入图片描述

■ 2、通信猫调试软件-配置

在这里插入图片描述

■ 3、MQTT.fx 发布主题消息,通信猫调试软件 订阅主题

在这里插入图片描述

■ 4、通信猫调试软件 发布主题, MQTT.fx 订阅主题消息

在这里插入图片描述

■ 通信猫调试助手

通信猫调试软件 V313
集串口、并口、USB、TCP、UDP、MQTT、蓝牙、WIFI、摄像头调试功能及众多实用小工具于一身的小体积绿色软件
通信猫调试软件 V313 下载地址

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.dtcms.com/a/119761.html

相关文章:

  • RVOS-1.环境搭建与系统引导
  • 《当区块链穿上防弹衣:落盘加密技术全景拆解》
  • 如何在服务器里部署辅助域
  • 数据结构|排序算法(二)插入排序 希尔排序
  • 可执行程序是如何诞生的(一)——概览
  • opencv(C++)操作图像像素
  • 【NLP 面经 8】
  • pycharm连接autodl训练遇到绝对路径问题
  • 如何应对客户频繁变更需求
  • CMake使用
  • 李贵永任香港共工新闻社副社长
  • /sys/fs/cgroup/memory/memory.stat 关键指标说明
  • 山东大学离散数学第八章习题解析
  • 力扣hot100_回溯(2)_python版本
  • 升级 SAP S/4 HANA 之 EWM 攻略
  • aws(学习笔记第三十八课) codepipeline-build-deploy-github-manual
  • 系统配置篇,修改sem值
  • Docker 全面解析:从基础概念到实际应用
  • ARP攻击 DAI动态ARP检测学习笔记(超详细)
  • python网络爬虫
  • 一种反激变换器的设计思路(01)
  • golang-defer延迟机制
  • Spring Boot 邮件发送配置遇到的坑:解决 JavaMailSenderImpl 未找到的错误
  • 力扣第444场周赛
  • springMVC-拦截器详解
  • 算法精讲【整数二分】(实战教学)
  • Python语言的需求分析
  • 快速掌握Phoenix:简单易懂的搭建与配置指南
  • 2025 XYCTF Pwn-wp(含附件)
  • 【比赛编排软件的设计与实现】