物联网网关协议比较:MQTT-与-Modbus

物联网网关协议比较:MQTT-与-Modbus

ID:46691405

大小:84.00 KB

页数:4页

时间:2019-11-26

物联网网关协议比较:MQTT-与-Modbus_第1页
物联网网关协议比较:MQTT-与-Modbus_第2页
物联网网关协议比较:MQTT-与-Modbus_第3页
物联网网关协议比较:MQTT-与-Modbus_第4页
资源描述:

《物联网网关协议比较:MQTT-与-Modbus》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、物联网(loT)不只是新技术,述是与旧技术的集成,其关键在于通信。可用的通信方法各不相同,但是,各种不同的协议在将海量“事物”连接到互联网时发挥着重要的作用。木文介绍了两种物联网补充协议:用于短距离设备连接的本地协议Modbus以及支持物联网进行全局通信的可扩展互联网协议“消息队列遥测传输(MQTT)”oModbus是一个串行通信协议,首次出现于1979年,是连接行业设备实际使用的标准协议°MQTT早在20年前便已出现,但是将这两个协议结合在一起使用,能够为深度嵌入式设备提供物联网的规模和连接性。图1展示了这些协议之间的一般关系,同时介绍了连接的支持解决方案:物

2、联网网关。图1.物联网(IoT)网关作为物联网通信的支持解决方案我们来看一下Modbus和MQTT,以了解其区别以及如何在物联网中互相补充。ApplicationModbus自1979年首次出现至今,Modbus已经演变为一套全面的支持多种物理链接的协议集(如RS-485)oModbus的核心是一个串行通信协议,釆用主从模式。主机向从机发送请求,从机予以回复。在标准Modbus网络中,有一台主机以及最多247台从机(但是,如果采用2字节寻址,则可显著提高这一界限)。借助RS-485,主从机之间的通信发生在指示功能码的帧中。该功能码可识别要操作的功能,如读取独立输

3、入;读取先进先出队列;或执行诊断函数。然后,从机根据收到的功能码进行响应,该响应较为简单,由一组字节指示。因此,从机可以是智能设备,也可以是只有一个传感器的简单设备。从该描述中,您可以看到Modbus协议非常简单,但是其作为协议的开放性使其成为整个行业或SCADA系统的实际通信协议。消息队列遥测传输MQTT是一个开放的轻量级机器对机器协议,专为物联网交互设计。MQTT网络包含一个MQTT经纪人(broker),负责协调MQTT代理之间的交互。代理是发布器,负责发布供用户使用的信息(参见图2)o图2.消息队列遥测传输网络中的作用因素PublisherBrokerM

4、QTTTCPIPMQTTTCPSubscriberMQTTIPMQTT的要求非常少,因为它专为资源有限的嵌入式设备设计。除了占地空间少之外,MQTT还可提供岀色的通信高效性(即使通过低带宽网络进行通信)和非常少的开销(较ZHTTP等协议)。在3G网络中,MQTT的吞吐量速度是使用HTTP的表述性状态转移(REST)的93倍。MQTT可使用最少的方法指示要在特定主题上实施的操作,进而实施发布/订阅模式。代理先连接到经纪人,然后再发布或订阅主题。完成后,代理将从经纪人上断开连接。MQTT方法定义:•连接-建立与MQTT经纪人之间的连接。•断开连接-断开与MQTT经纪

5、人之间的连接。•发布-在MQTT经纪人上发布主题。•订阅-从MQTT经纪人上订阅主题。•退订-从MQTT经纪人上退订主题。图3展示了发布者与订阅者使用MQTT经纪人进行的简单交互。如图所示,信息创建者(producer)连接至MQTT经纪人。同样,信息消费者(consumer)连接至MQTT经纪人。消费者订阅主题(此处定义为/home/alarms/l/status)0木示例主题可识别主页上针对区域1的警报系统的状态变化。当创建者有信息要分享吋,它会向经纪人发布一条消息,然后经纪人将会将信息分享给所有订阅该主题的用户。图3•消息队列遥测传输代理之间的简单交互Co

6、nnectConnect■ConnectAck■Publish(topic:7home/alarms/1/status')■ConnectAck•■Subscribe(topic:7home/alarms/1/status")■SubscribeAck—Publishftopic:7home/alarms/1/status,*)•■请注意此处分享的主题结构。它与文件系统层次结构相似,这可简化主题的结构。这种资源层次形式也常见于协议架构中,如RESToMQTT甚至允许使用通配符的形式,以简化订阅流程。如果用户想要获取所有警报的状态,则可直接订阅/home/alar

7、ms/+/status,该主题可通知用户所有的警报状态变化。整个子树还可使用主题/home/#进行订阅,该主题可以订阅/home下的所有事件。服务质量MQTT允许定义服务质量(QoS)oMQTT中有三个等级的QoS:•QoS0。该等级表示“最多一次”交付(最佳状况)。消息不会得到确认,因而,这是一种一劳永与的方法。•QoSlo该等级表示“至少一次”交付。用户可能不止一次获得消息,但是允许收到的人确认已经收到。•QoS2o最慢但是最有保障的服务质量等级即为等级2。QoS2表示“只有一次”,并包含四个阶段的交付握手。该等级最慢,但是最安全。您选择的QoS等级将取决于

8、数据及其交付的重要性。消

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。