[发明专利]一种基于路由模式、MQTT协议的IOT集群通讯方法有效
申请号: | 202010991432.9 | 申请日: | 2020-09-21 |
公开(公告)号: | CN111935028B | 公开(公告)日: | 2021-01-08 |
发明(设计)人: | 钱佳俊;王磊 | 申请(专利权)人: | 浙江百应科技有限公司 |
主分类号: | H04L12/801 | 分类号: | H04L12/801;H04L29/08;H04L29/06 |
代理公司: | 杭州浙言专利代理事务所(普通合伙) 33370 | 代理人: | 易朝晖 |
地址: | 311121 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 路由 模式 mqtt 协议 iot 集群 通讯 方法 | ||
1.一种基于路由模式、MQTT协议的IOT集群通讯方法,应用于服务端,其特征是,所述方法包括:
服务端向设备端发送消息;
当设备端不在线时,服务端将所述消息发送给第二IOT,所述第二IOT将所述消息持久化保存在本地;
所述第二IOT接收到设备端上线的消息后,所述第二IOT将所述消息路由至第一IOT中,所述第一IOT将所述消息持久化保存在本地;
所述第一IOT将所述消息通过MQTT Publish进行发送;
所述设备端接收到所述消息;
所述设备端基于MQTT协议与所述第一IOT建立长连接,包括:
所述设备端经过nginx由nginx最小连接算法与所述第一IOT连接,所述第一IOT将所述设备端的设备信息、所述第一IOT的IP信息存储于redis
中,并基于netty内部协议将所述设备端上线的消息转发至各个IOT服务上;所述第一IOT将所述消息通过MQTT Publish进行发送之前,所述第一IOT注册重试任务;
所述设备端收到所述第一IOT发送的消息后,所述设备端返回消息ACK
至所述第一IOT;
所述第一IOT清除重试任务并删除持久化保存在本地的消息。
2.根据权利要求1所述的一种基于路由模式、MQTT协议的IOT集群通讯方法,其特征是,所述第一IOT基于MQTT的头部MessageID和设备端的设备信息寻找对应的重试任务。
3.一种基于路由模式、MQTT协议的IOT集群通讯方法,应用于设备端,其特征是,所述方法包括:
设备端向第一IOT发送消息,所述第一IOT将所述消息持久化保存在本地;所述第一IOT基于所述设备端上报的消息主题从订阅树中查询服务端的订阅者列表;
所述第一IOT根据在线服务端的订阅者的IP,将所述消息通过内部消息路由到第二IOT;
所述第二IOT将所述消息持久化保存在本地,并查找本地在线服务端的订阅者,将所述消息通过MQTT发送给在线的服务端;
所述设备端基于MQTT协议与所述第一IOT建立长连接,包括:
所述设备端经过nginx由nginx最小连接算法与所述第一IOT连接,所述第一IOT将所述设备端的设备信息、所述第一IOT的IP信息存储于redis
中,并基于netty内部协议将所述设备端上线的消息转发至各个IOT服务上;所述第一IOT查询到在线服务端的订阅者之后,所述第一IOT注册重试任务;
当所述第二IOT收到所述第一IOT发送的消息后,所述第二IOT返回消息ACK至所述第一IOT;
所述第一IOT清除重试任务和删除持久化保存在本地的消息。
4.根据权利要求3所述的一种基于路由模式、MQTT协议的IOT集群通讯方法,其特征是,所述方法还包括:
所述第二IOT查询到本地在线服务端的订阅者之后,所述第二IOT注册重试任务;
当所述服务端接受到所述第二IOT发送的消息后,所述服务端返回消息ACK至所述第二IOT;
所述第二IOT清除重试任务和删除持久化保存在本地的消息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江百应科技有限公司,未经浙江百应科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010991432.9/1.html,转载请声明来源钻瓜专利网。