Chinaunix首页 | 论坛 | 博客
  • 博客访问: 172207
  • 博文数量: 73
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 560
  • 用 户 组: 普通用户
  • 注册时间: 2018-07-05 10:07
文章分类

全部博文(73)

文章存档

2023年(1)

2022年(1)

2021年(13)

2020年(2)

2019年(8)

2018年(48)

我的朋友

分类: 网络与安全

2019-05-10 15:26:03

  协议MQTT 和 Modbus:用于短距离设备连接的本地协议 Modbus 以及支持物联网进行全局通信的可扩展互联网协议“消息队列遥测传输 (MQTT),两种网关协议有什么区别。

  Modbus协议

  Modbus 已经演变为一套全面的支持多种物理链接的协议集(如 RS-485)。 Modbus 的核心是一个串行通信协议,采用主从模式。 主机向从机发送请求,从机予以回复。 在标准 Modbus 网络中,有一台主机以及最多 247 台从机(但是,如果采用 2 字节寻址,则可显著提高这一界限)。


MQTT


  借助 RS-485,主从机之间的通信发生在指示功能码的帧中。 该功能码可识别要操作的功能,如读取独立输入;读取先进先出队列;或执行诊断函数。 然后,从机根据收到的功能码进行响应,该响应较为简单,由一组字节指示。 因此,从机可以是智能设备,也可以是只有一个传感器的简单设备。

  从该描述中,您可以看到 Modbus 协议非常简单,但是其作为协议的开放性使其成为整个行业或 SCADA 系统的实际通信协议。

  消息队列遥测传输

  MQTT 是一个开放的轻量级机器对机器协议,专为物联网交互设计。 MQTT 网络包含一个 MQTT 经纪人 (broker),负责协调 MQTT 代理之间的交互。 代理是发布器,负责发布供用户使用的信息。

  MQTT 的要求非常少,因为它专为资源有限的嵌入式设备设计。 除了占地空间少之外,MQTT还可提供出色的通信高效性(即使通过低带宽网络进行通信)和非常少的开销(较之 HTTP 等协议)。 在 3G 网络中,MQTT 的吞吐量速度是使用 HTTP 的表述性状态转移 (REST) 的 93 倍。

  MQTT 可使用最少的方法指示要在特定主题上实施的操作,进而实施发布/订阅模式。 代理先连接到经纪人,然后再发布或订阅主题。 完成后,代理将从经纪人上断开连接。 MQTT 方法定义:


MQTT


  连接 – 建立与 MQTT 经纪人之间的连接。

  断开连接 – 断开与 MQTT 经纪人之间的连接。

  发布 – 在 MQTT 经纪人上发布主题。

  订阅 – 从 MQTT 经纪人上订阅主题。

  退订 – 从 MQTT 经纪人上退订主题。

  MQTT 允许定义服务质量 (QoS)。 MQTT 中有三个等级的 QoS:

  QoS 0。 该等级表示“最多一次”交付(最佳状况)。 消息不会得到确认,因而,这是一种一劳永与的方法。

  QoS 1。 该等级表示“至少一次”交付。 用户可能不止一次获得消息,但是允许收到的人确认已经收到。

  QoS 2。 最慢但是最有保障的服务质量等级即为等级 2。 QoS 2 表示“只有一次”,并包含四个阶段的交付握手。 该等级最慢,但是最安全。

  您选择的 QoS 等级将取决于数据及其交付的重要性。

  MQTT 和 Modbus 能够互相补充提高物联网的性能。 使用 Modbus 作为本地接口来管理设备,使用 MQTT 作为全局协议来扩展设备的范围,二者都起到了重要的作用。

阅读(1391) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~