[发明专利]一种基于MQTT协议的远程指令发布方法在审
申请号: | 202010891291.3 | 申请日: | 2020-08-30 |
公开(公告)号: | CN112104620A | 公开(公告)日: | 2020-12-18 |
发明(设计)人: | 孙成通;牛鹏;胡焱 | 申请(专利权)人: | 浪潮金融信息技术有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08 |
代理公司: | 北京权智天下知识产权代理事务所(普通合伙) 11638 | 代理人: | 王新爱 |
地址: | 215000 江苏省苏州*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 mqtt 协议 远程 指令 发布 方法 | ||
本发明公开了一种基于MQTT协议的远程指令发布方法,各设备连接MQTT Broker,订阅命令下发Topic;IoT平台与MQTT Broker建立连接,用户在IoT平台选择设备发布命令,向指定的设备命令下发Topic发送报文;MQTT Broker接收到IoT平台发布报文后,将报文转发给指定Topic的订阅者;设备接收到订阅报文后解析并执行命令;命令执行完成后,设备向命令执行响应Topic发送报文,上送执行结果;MQTT Broker接收到设备发布报文后,将报文转发给指定Topic的订阅者;IoT平台订阅命令执行响应Topic,收到报文后解析更新设备命令下发结果。通过上述方式,本发明让管理平台与设备间连接解耦,以有限的带宽,基于发布/订阅模式,为远程设备发布实时指令。
技术领域
本发明涉及远程控制技术领域,特别是涉及一种基于MQTT协议的远程指令发布方法。
背景技术
在当前的单位或公司中,会存在多个不同的设备类型,比如售货机、发卡机等等。公司提供统一的管理平台管理不同类型的大批量设备。如果每个设备都直接与平台建立网络连接,会给平台带来许多额外的网络开销与资源损耗。当通过批量管理控制一类设备时,基于传统方式可能会出现阻塞或网络延时等问题。
现有的方案在设备接入平台时,为其与平台建立长连接,平台通过建立的长连接通道与设备间进行远程指令交互。针对每台设备,平台都需要维护一条长连接,随着设备大批量的接入,加大了平台的网络开销与运维难度,同时占据并损耗着平台服务器的大量资源。增加了设备接入平台的难度。
现有技术调用HTTP协议接口发布指令,底层基于TCP/IP协议,平台与设备间建立短连接进行通信,两者效果几乎没有差异。不过现有技术的缺点包括以下几个方面:
网络开销大: HTTP协议报文包含消息头与消息体,报文格式长,高带宽,网络开销大。
平台与设备间无法解耦:平台通过HTTP协议控制远程设备,底层基于TCP/IP协议与设备间建立短连接进行通信,无法做到平台与设备之间连接的解耦。
消息发布质量差:在网络不稳定的情况下,HTTP协议发布的消息可能会存在消息丢失,无法送达设备的情况,并且HTTP协议不支持消息重发机制。
发明内容
本发明主要解决的技术问题是提供一种基于MQTT协议的远程指令发布方法,能够通过MQTT协议,采用发布/订阅模式,让管理平台与设备间解耦,为建立连接的远程设备提供实时可靠的消息服务,实现设备的指令控制。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种基于MQTT协议的远程指令发布方法,包括以下步骤:
S1、各设备连接MQTT Broker,订阅属于自己的命令下发Topic;
S2、IoT平台也与MQTT Broker建立连接,用户在IoT平台选择设备发布命令,向指定的设备命令下发Topic发送报文;
S3、MQTT Broker接收到IoT平台发布报文后,将报文转发给指定Topic的订阅者;
S4、设备接收到订阅报文后解析并执行命令;
S5、命令执行完成后,设备向命令执行响应Topic发送报文,上送执行结果;
S6、MQTT Broker接收到设备发布报文后,将报文转发给指定Topic的订阅者;
S7、IoT平台订阅命令执行响应Topic,收到报文后解析更新设备命令下发结果;
本方法提供三个级别的服务质量,包括至多一次、至少一次和只有一次。
进一步,选择至多一次服务质量时,步骤如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮金融信息技术有限公司,未经浪潮金融信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010891291.3/2.html,转载请声明来源钻瓜专利网。