[发明专利]一种公有协议物联网平台系统的设备接入方法有效
申请号: | 201811405403.9 | 申请日: | 2018-11-23 |
公开(公告)号: | CN109587228B | 公开(公告)日: | 2021-08-10 |
发明(设计)人: | 徐驰;孙善宝;谭强;马辰 | 申请(专利权)人: | 山东浪潮科学研究院有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 姜明 |
地址: | 250100 山东省济*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 公有 协议 联网 平台 系统 设备 接入 方法 | ||
1.一种公有协议物联网平台系统的设备接入方法,其特征在于,包括以下步骤:
(1)开发者用户登录物联网平台后,可以建立多个连接Hub,Hub实例的编码是全局唯一的,对外提供MQTT连接地址和端口;
连接到同一Hub下的设备之间可以通过主题发布和订阅消息,不同Hub之间通过顶级主题消息路由机制,实现数据隔离;
(2)进入连接Hub中,创建设备连接需要的证书;
在平台创建证书后,平台为设备生成根证书,已签名的公钥和私钥,提供下载;用户可以在Hub创建多套证书,证书的编码即作为证书的使用者;
(3)创建证书下的主题权限;
在证书创建完成后,平台预置主题权限已经增加,可以直接使用;用户还可以根据业务场景在证书下创建自定义主题,并定义每个主题的具体权限,权限包括仅发布,仅订阅,发布和订阅三种;用户定义好主题权限后,权限管理服务把数据存入数据库,MQTT主题权限认证由eMQTT消息中间件完成;
(4)在设备端开发业务场景,使用证书访问MQTT连接地址建立SSL连接,根据需要发布或订阅自定义主题,可以发布或订阅影子操作主题;
(5)若在设备处于离线状态时,控制端对期望主题发布了消息,设备管理服务会将此状态更新到Redis数据库,在设备端上线后,向获取影子状态主题发布消息,获取最新状态,执行期望值,并上报更新执行后的状态;
(6)设备端携带证书访问HTTPS端口,参数是发布的主题和报文内容,Nginx服务反向代理接受到请求后,验证设备端证书是否合法,如果证书不合法,则拒绝客户端请求;如果证书验证通过,Nginx服务反向代理将客户端证书内容设置为HTTPS请求中的标头,然后代理请求后端权限管理服务;
(7)权限管理服务检查Nginx服务反向代理转发过来的设备端证书,对比数据库中证书使用者对应的主题权限表,判断使用者是否有定义了主题的发布权限;如果主题权限认证失败,则拒绝HTTPS请求;如果主题权限认证通过,设备管理服务获取HTTPS请求的主题和报文参数,设备管理服务内置的MQTT客户端向该主题转发报文内容,使订阅该主题的设备能接收到该报文。
2.根据权利要求1所述的公有协议物联网平台系统的设备接入方法,其特征在于:所述步骤(3)中,MQTT主题权限认证由eMQTT消息中间件完成,在eMQTT消息中间件配置指定的数据库访问方式,在进行发布或订阅主题时,通过查询数据库,验证此主题与证书使用者关联的主题权限是否一致,若不一致,则验证失败,不允许发布或订阅此主题。
3.根据权利要求1所述的公有协议物联网平台系统的设备接入方法,其特征在于:所述步骤(4)中,发布或订阅影子操作主题包括以下几种方式:
(a)设备向平台影子状态上报主题发布状态数据,设备管理服务内置的MQTT客户端接收到消息后,解析报文中的每个属性,存储到Redis数据库;
(b)设备向平台影子获取主题发布空的消息,设备管理服务收到消息后查询Redis数据库最新的设备状态数据,并通过影子获取反馈主题发送给对应的设备;
(c)设备向影子删除主题发送消息,设备管理服务清空Redis数据库中对应的设备记录;
(d)设备控制端向影子期望状态主题发送消息,报文内容是属性期望改变的目标值,设备管理服务比较期望目标值和当前最新状态值的差异后,向影子期望反馈主题发送变化量,设备被控端订阅对应的主题,收到控制消息后执行相应动作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东浪潮科学研究院有限公司,未经山东浪潮科学研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811405403.9/1.html,转载请声明来源钻瓜专利网。