[发明专利]一种物联网关中MQTT主题的快速匹配方法及系统在审
申请号: | 202010419171.3 | 申请日: | 2020-05-18 |
公开(公告)号: | CN111651476A | 公开(公告)日: | 2020-09-11 |
发明(设计)人: | 张强强;魏志强;宋宪明;姜善宸;贾东宁;桂琳 | 申请(专利权)人: | 青岛海洋科学与技术国家实验室发展中心 |
主分类号: | G06F16/245 | 分类号: | G06F16/245;G06F16/22 |
代理公司: | 青岛联信知识产权代理事务所(普通合伙) 37227 | 代理人: | 潘晋祥 |
地址: | 266200 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 联网 关中 mqtt 主题 快速 匹配 方法 系统 | ||
本发明提出一种物联网关中MQTT主题的快速匹配方法及系统,属于物联网技术领域。本发明所提出的MQTT主题的快速匹配方法基于分层主题树,通过将订阅主题进行分层并作为key构成多层有序二叉树从而形成分层主题树,再将消息主题与和分层主题树上的订阅主题进行匹配达到MQTT主题快速匹配的效果。本发明还设计利用该方法实现一种MQTT主题的快速匹配系统。本发明的有益效果:相较于传统字符串逐个比较的主题匹配方式,该发明提出的主题匹配方式能够快速高效的进行MQTT主题匹配,简化用户程序,节省物联网关的资源。
技术领域
本发明涉及物联网技术领域,具体是涉及一种物联网关中MQTT主题的快速匹配方法及系统。
背景技术
近几年来,随着物联网技术的飞速发展,万物互联已经成为了一种趋势。万物互联的关键是物联网通信,而物联网通信协议则是物联网通信的基础,在这其中又以MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)协议最为流行。工作在TCP协议之上的基于发布/订阅模式的MQTT协议在设计之初就充分考虑了控制器内存有限、网络带宽低以及网络不可靠情况下的数据传输问题,是实现物联网架构的理想选择。
MQTT协议是基于主题(Topic)来进行订阅和发布消息的。对于一个客户端而言,当收到一个消息时首先要对消息主题和本设备订阅主题进行匹配,匹配上了才会对消息进行处理。某些功能比较简单的客户端(如各种传感器)通常只关心几个主题,主题匹配采用简单的字符串比较就可以。而物联网关作为数据汇集的设备,通常会订阅成千上万的主题,并且受限于其紧缺的资源,继续采用效率低下的字符串逐个比较方式无法满足性能要求。另一方面,MQTT主题是以“/”为符号进行层级分隔的,并且还有“+”和“#”两种通配符,传统的哈希、树等数据结构无法直接应用于主题匹配,需要针对MQTT主题特点设计出一种专门高效的主题匹配方法。
发明内容
本发明的目的在于提供一种物联网关中MQTT主题的快速匹配方法及系统,能够快速高效的进行MQTT主题匹配。
本发明提供一种物联网关中MQTT主题的快速匹配方法,所述物联网关中 MQTT主题的快速匹配方法是一种基于分层主题树的方法,包括以下步骤:
S1:客户端创建分层主题树;
S2:客户端获得消息主题,根据主题层级分隔符“/”将消息主题分层并与分层主题树匹配。
作为本发明的进一步优化,S1进一步包括:
S10、客户端创建分层主题树第一层树根;
S11、客户端在向MQTT broker订阅一个MQTT主题时,根据主题层级分隔符“/”将订阅主题分割成若干层,然后分别将每层主题添加到对应层次的主题树中,若该主题此时不存在于相应层次的主题树当中,则自动创建,如果是最后一层主题,该主题节点还负责匹配结果的输出,需将主题回调函数同步保存到该节点。
作为本发明的进一步优化,S2进一步包括:
S20、客户端等待消息到达,当有消息到达时,解析消息获得消息主题,将消息主题分层并与分层主题树进行匹配,若匹配成功,则直接执行该订阅主题的主题回调函数,若匹配失败,则丢弃该消息;
S21、本次匹配完成,继续回到S20等待下一次匹配。
作为本发明的进一步优化,S11的具体步骤为:
S110、确定当前步骤的订阅主题和当前树根;
S111、查找订阅主题中的第一个“/”,若找到,则“/”之前的部分即为该层要添加的层主题,执行S1110;若没找到,则整个传入的订阅主题为该层要添加的层主题,执行S1111;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛海洋科学与技术国家实验室发展中心,未经青岛海洋科学与技术国家实验室发展中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010419171.3/2.html,转载请声明来源钻瓜专利网。