CN114301982A - 一种基于租户和网关的物联网设备终端接入系统及方法 - Google Patents

一种基于租户和网关的物联网设备终端接入系统及方法 Download PDF

Info

Publication number
CN114301982A
CN114301982A CN202210003376.2A CN202210003376A CN114301982A CN 114301982 A CN114301982 A CN 114301982A CN 202210003376 A CN202210003376 A CN 202210003376A CN 114301982 A CN114301982 A CN 114301982A
Authority
CN
China
Prior art keywords
module
application system
gateway
tenant
receiving
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210003376.2A
Other languages
English (en)
Inventor
遆好贺
黄凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
XCMG Hanyun Technologies Co Ltd
Original Assignee
XCMG Hanyun Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by XCMG Hanyun Technologies Co Ltd filed Critical XCMG Hanyun Technologies Co Ltd
Priority to CN202210003376.2A priority Critical patent/CN114301982A/zh
Publication of CN114301982A publication Critical patent/CN114301982A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了物联网应用技术领域的一种基于租户和网关的物联网设备终端接入系统及方法,包括:接收设备终端的连接信息;将连接信息解析成应用系统支持的格式后发送到应用系统;接收应用系统鉴权通过后下发的令牌并响应到设备终端;接受设备终端的上传信息和令牌;将上传信息解析成应用系统支持的格式后和令牌一同发送到应用系统;接收应用系统下发的控制指令;将控制指令解析成设备终端支持的格式后反馈给设备终端。本发明为租户项目提供了数据处理系统,节约了大量的开发和测试时间,提升了效率,降低了成本,保证了质量。

Description

一种基于租户和网关的物联网设备终端接入系统及方法
技术领域
本发明涉及一种基于租户和网关的物联网设备终端接入系统及方法,属于物联网应用技术领域。
背景技术
随着物联网技术的快速发展,越来越多的物理设备终端连接到网络,并将数据传送到应用系统。这些设备终端采用不同的协议上传数据,如HTTP协议,UDP协议,TCP协议,MQTT协议,COAP协议等。又由不同的厂家组装制造,同一协议的不同厂家有不同的报文格式,千差万别。
在以项目为交付对象的情况下,人们往往只考虑项目中用到的具体协议和报文格式,并将设备终端直接接入应用系统。当更换项目后,新项目的设备终端可能用到新的通讯协议或者报文格式,这时,原有的应用系统不再支持新项目设备终端的接入,需要重新开发和测试,这降低了开发和测试的效率,造成了大量的人力资源浪费,成本大增。
发明内容
本发明的目的在于克服现有技术中的不足,提供一种基于租户和网关的物联网设备终端接入系统及方法,为租户项目提供了数据处理系统,节约了大量的开发和测试时间,提升了效率,降低了成本,保证了质量。
为达到上述目的,本发明是采用下述技术方案实现的:
第一方面,本发明提供了一种基于租户和网关的物联网设备终端接入系统,包括:
网关模块:接收设备终端的连接信息,将连接信息解析成应用系统支持的格式后发送到应用系统,以及,接收应用系统鉴权通过后下发的令牌并响应到设备终端,以及,接受设备终端的上传信息和令牌,将上传信息解析成应用系统支持的格式后和令牌一同发送到应用系统,以及,接收应用系统下发的控制指令,将控制指令解析成设备终端支持的格式后反馈给设备终端;
应用系统:接收解析后的连接信息后,基于连接信息进行鉴权,响应于鉴权通过后将令牌反馈给网关模块,以及,接收网关模块上传的上报信息和令牌后,基于令牌进行验证,响应于验证通过后保存上报信息,以及,发送控制指令至网关模块对设备终端进行控制。
进一步的,所述网关模块包括多个协议的通用框架和具体报文格式的网关,所述网关是具体处理不同协议和不同格式报文的模块,且一个网关仅对应一个租户而一个租户可对应多个网关。
进一步的,所述应用系统包括:
租户模块:隔离不同项目和不同租户的物理设备终端之间的数据;
设备模块:维护物理设备终端的信息,所述设备模块通过租户模块将设备终端划分到不同的租户;
鉴权模块:按照连接信息中租户ID和认证信息两个字段,同租户下设备终端的认证方式和认证信息进行比对,响应于对比一致时为鉴权通过并返回令牌给网关模块;
数据接收模块:接收网关模块上报的令牌和上报信息,通过鉴权模块对令牌进行验证,响应于验证通过后保存上报信息;
命令模块,通过设备模块和租户模块发送控制指令至网关模块对设备终端进行控制。
进一步的,所述设备模块、鉴权模块、数据接收模块和命令模块为分布式部署或集中部署。
进一步的,所述设备模块所维护的信息包括设备编号、设备名称、设备类型、设备状态、最后一次登录时间、认证方式和认证信息,且一个设备编号对应一个租户及设备终端。
进一步的,所述网关模块和应用系统之间还设有供二者之间进行解耦的队列模块,所述队列模块采用集群部署且支持横向扩展,且队列模块可对网关模块和应用系统之间的往来数据按照数据类型进行隔离。
进一步的,同一报文格式的所述设备终端和网关模块二者之间部署负载均衡,所述物理设备终端和网关之间的负载均衡由报文格式确定,且一种报文格式确定一种负载均衡。
第二方面,本发明提供了一种基于租户和网关的物联网设备终端接入方法,包括:
接收设备终端的连接信息;
将连接信息解析成应用系统支持的格式后发送到应用系统;
接收应用系统鉴权通过后下发的令牌并响应到设备终端;
接受设备终端的上传信息和令牌;
将上传信息解析成应用系统支持的格式后和令牌一同发送到应用系统;
接收应用系统下发的控制指令;
将控制指令解析成设备终端支持的格式后反馈给设备终端。
第三方面,本发明提供了一种基于租户和网关的物联网设备终端接入装置,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行根据上述所述方法的步骤。
第四方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述所述方法的步骤。
与现有技术相比,本发明所达到的有益效果:
采用本发明提出的一种基于租户和网关的物联网设备终端接入系统及方法,通过网关模块和应用系统接对设备终端的信息进行解析处理和保存,且应用系统可发送控制指令至网关模块对设备终端进行控制,为租户项目提供了数据处理系统,当一个项目完成交付后或开始新的项目时,只需要更新网关模块,其他模块保持原状即可,这样可以节约大量的开发和测试时间,提升了效率的同时还保证了质量,且可用于不同的传输协议,不同的报文格式的设备终端接入,有助于减少应用系统的重复开发,节省成本,并提升开发和测试的效率。
附图说明
图1是本发明实施例一提供的基于租户和网关的物联网设备终端接入系统示意图;
图2是本发明实施例一提供的网关模块示意图;
图3是本发明实施例一提供的单个网关服务和应用系统间的数据流向图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
实施例一:
一种基于租户和网关的物联网设备终端接入系统,用于不同的传输协议,不同的报文格式的设备终端接入,有助于减少应用系统的重复开发,节省成本,并提升开发和测试的效率,请参阅图1,包括连接设备终端的网关模块、供网关和应用系统间进行解耦的队列模块以及应用系统,其中:
设备终端:物理设备终端,是带有软件的硬件设备,可以向网关发送数据,并且响应网关的命令,物理设备终端只和网关进行通讯,二者之间可以部署负载均衡,本实施例中的物理设备终端在逻辑上属于一个租户。
网关模块是独立的功能模块,是设备终端和应用系统进行沟通的桥梁和翻译官,网关接收设备终端请求,解析成应用系统支持的格式,发送到应用系统,并将应用系统下发的控制指令解析成设备终端支持的格式,再发送给设备终端,请结合参阅图2,网关模块又提炼出各个协议的通用框架和具体报文格式的网关,网关是具体处理不同协议和不同格式报文的模块。网关和应用系统间通过队列模块进行解耦,即使一方的服务宕掉,另一方的数据仍然可以保存在队列中,另外也可以提升性能。一个网关能且只能属于一个租户,但一个租户可以有多个网关。每种协议的网关可以提炼出通用框架,基于通用框架处理不同格式的报文,以提高开发效率和质量,网关间可以做负载均衡或者横向扩容,同一功能的网关服务支持负载均衡。
队列模块的目的是提升系统的可靠性和可用性,并进行流量的削峰填谷,防止流量过大时冲垮系统。另外,设备终端的申请鉴权请求,鉴权响应请求,鉴权通过后接入请求,接入响应等位于不同的主题,对各种数据类型进行了隔离。队列模块作为消息中间件,一般采用集群部署,支持横向扩展,如kafka集群。
业务流程是:接收设备终端的连接信息,然后通过队列发送到应用系统进行鉴权,鉴权通过后将结果响应给设备终端,后续将设备终端的上报信息,附上鉴权时应用系统返回的token(令牌),发送到数据接收模块,并响应到设备终端。
应用系统包括:租户模块、设备模块、鉴权模块、数据接收模块和命令模块,其中:
租户模块:采用多租户技术,不同租户可以共用相同的程序组件,并且确保各租户间数据的隔离性。实践中,可以将每个项目作为一个租户,或者每个客户作为一个租户。需要注意的是,租户不同于用户,用户偏向于操作权限,租户偏向于数据隔离,不同租户的操作权限可能一致,只是操作的数据不同。租户模块可作为权限功能集的一部分,可以通过租户模块隔离不同项目和不同客户的数据。一个租户下有多台设备终端,多个网关服务。
设备模块:维护物理设备终端的信息,包括但不限于设备编号、设备名称、设备类型、设备状态、最后一次登录时间、认证方式和认证信息等。一个设备编号对应一台物理设备终端,一个设备编号能且只能属于一个租户。设备模块依赖租户模块,将设备终端划分到不同的租户。
鉴权模块:对网关上报的设备终端信息进行统一鉴权,通过后才允许网关上报设备终端的数据。鉴权模块按照租户ID和认证信息两个字段,同租户下设备终端的认证方式,认证信息进行比对,一致则鉴权通过,并返回token给网关。每台设备终端对应一个token,鉴权模块依赖设备模块。
数据接收模块:网关在鉴权通过后,携带鉴权模块的token,将设备终端上报的数据发送到数据接收模块。数据接收模块在接收到数据后,验证token,通过后将上报的报文进行保存。数据接收模块依赖鉴权模块。
命令模块:用于应用系统对设备终端的控制。命令模块下发命令到设备终端,设备终端收到命令后进行相应处理。命令模块依赖设备模块和租户模块。
租户模块、设备模块、鉴权模块、数据接收模块和命令模块,都是应用系统的功能模块。可以分布式部署或集中部署。
如上所述,当一个项目完成交付后,开始新的项目时,只需要更新网关模块,其他模块保持原状即可。这样可以节约大量的开发和测试时间,提升了效率,降低了成本,还保证了质量。
一个具体的网关服务,只针对单个租户下采用一种协议的具体报文格式。同样功能的网关服务,可以部署多个;同一报文格式的物理设备终端和网关之间可以部署负载均衡,以支持系统的横向扩容,并提高可靠性;实践中,租户下同一报文格式的物理设备终端和网关之间部署负载均衡。不同报文格式的物理设备终端和网关间可以部署多个负载均衡。也可以说,物理设备终端和网关之间的负载均衡由报文格式确定,一种报文格式确定一种负载均衡。
请参阅图3,多个网关服务时,从网关到应用系统的主题相同;从应用系统流向网关的数据的主题名称不一致,一个网关服务对应一个主题。目的是保证各网关服务的数据隔离,并减少重复消费,提升性能。当应用系统集群部署时,每个节点上的服务只消耗网关写入主题的一部分分区(即一部分数据),进而实现负载的均衡和横向扩容,提升整体的性能和可靠性。
实施例二:
一种基于租户和网关的物联网设备终端接入方法,可基于实施例一中一种基于租户和网关的物联网设备终端接入系统实现,包括:
接收设备终端的连接信息;
将连接信息解析成应用系统支持的格式后发送到应用系统;
接收应用系统鉴权通过后下发的令牌并响应到设备终端;
接受设备终端的上传信息和令牌;
将上传信息解析成应用系统支持的格式后和令牌一同发送到应用系统;
接收应用系统下发的控制指令;
将控制指令解析成设备终端支持的格式后反馈给设备终端。
实施例三:
本发明实施例还提供了一种基于租户和网关的物联网设备终端接入装置,可实现实施例一中一种基于租户和网关的物联网设备终端接入方法,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行下述方法的步骤:
接收设备终端的连接信息;
将连接信息解析成应用系统支持的格式后发送到应用系统;
接收应用系统鉴权通过后下发的令牌并响应到设备终端;
接受设备终端的上传信息和令牌;
将上传信息解析成应用系统支持的格式后和令牌一同发送到应用系统;
接收应用系统下发的控制指令;
将控制指令解析成设备终端支持的格式后反馈给设备终端。
实施例四:
本发明实施例还提供了一种计算机可读存储介质,可实现实施例一中一种基于租户和网关的物联网设备终端接入方法,其上存储有计算机程序,该程序被处理器执行时实现下述方法的步骤:
接收设备终端的连接信息;
将连接信息解析成应用系统支持的格式后发送到应用系统;
接收应用系统鉴权通过后下发的令牌并响应到设备终端;
接受设备终端的上传信息和令牌;
将上传信息解析成应用系统支持的格式后和令牌一同发送到应用系统;
接收应用系统下发的控制指令;
将控制指令解析成设备终端支持的格式后反馈给设备终端。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

Claims (10)

1.一种基于租户和网关的物联网设备终端接入系统,其特征是,包括:
网关模块:接收设备终端的连接信息,将连接信息解析成应用系统支持的格式后发送到应用系统,以及,接收应用系统鉴权通过后下发的令牌并响应到设备终端,以及,接受设备终端的上传信息和令牌,将上传信息解析成应用系统支持的格式后和令牌一同发送到应用系统,以及,接收应用系统下发的控制指令,将控制指令解析成设备终端支持的格式后反馈给设备终端;
应用系统:接收解析后的连接信息后,基于连接信息进行鉴权,响应于鉴权通过后将令牌反馈给网关模块,以及,接收网关模块上传的上报信息和令牌后,基于令牌进行验证,响应于验证通过后保存上报信息,以及,发送控制指令至网关模块对设备终端进行控制。
2.根据权利要求1所述的基于租户和网关的物联网设备终端接入方法,其特征是,所述网关模块包括多个协议的通用框架和具体报文格式的网关,所述网关是具体处理不同协议和不同格式报文的模块,且一个网关仅对应一个租户而一个租户可对应多个网关。
3.根据权利要求1所述的基于租户和网关的物联网设备终端接入方法,其特征是,所述应用系统包括:
租户模块:隔离不同项目和不同租户的物理设备终端之间的数据;
设备模块:维护物理设备终端的信息,所述设备模块通过租户模块将设备终端划分到不同的租户;
鉴权模块:按照连接信息中租户ID和认证信息两个字段,同租户下设备终端的认证方式和认证信息进行比对,响应于对比一致时为鉴权通过并返回令牌给网关模块;
数据接收模块:接收网关模块上报的令牌和上报信息,通过鉴权模块对令牌进行验证,响应于验证通过后保存上报信息;
命令模块,通过设备模块和租户模块发送控制指令至网关模块对设备终端进行控制。
4.根据权利要求3所述的基于租户和网关的物联网设备终端接入方法,其特征是,所述设备模块、鉴权模块、数据接收模块和命令模块为分布式部署或集中部署。
5.根据权利要求3所述的基于租户和网关的物联网设备终端接入方法,其特征是,所述设备模块所维护的信息包括设备编号、设备名称、设备类型、设备状态、最后一次登录时间、认证方式和认证信息,且一个设备编号对应一个租户及设备终端。
6.根据权利要求1所述的基于租户和网关的物联网设备终端接入方法,其特征是,所述网关模块和应用系统之间还设有供二者之间进行解耦的队列模块,所述队列模块采用集群部署且支持横向扩展,且队列模块可对网关模块和应用系统之间的往来数据按照数据类型进行隔离。
7.根据权利要求1所述的基于租户和网关的物联网设备终端接入方法,其特征是,同一报文格式的所述设备终端和网关模块二者之间部署负载均衡,所述物理设备终端和网关之间的负载均衡由报文格式确定,且一种报文格式确定一种负载均衡。
8.一种基于租户和网关的物联网设备终端接入方法,其特征是,包括:
接收设备终端的连接信息;
将连接信息解析成应用系统支持的格式后发送到应用系统;
接收应用系统鉴权通过后下发的令牌并响应到设备终端;
接受设备终端的上传信息和令牌;
将上传信息解析成应用系统支持的格式后和令牌一同发送到应用系统;
接收应用系统下发的控制指令;
将控制指令解析成设备终端支持的格式后反馈给设备终端。
9.一种基于租户和网关的物联网设备终端接入装置,其特征是,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行根据权利要求8所述方法的步骤。
10.计算机可读存储介质,其上存储有计算机程序,其特征是,该程序被处理器执行时实现权利要求8所述方法的步骤。
CN202210003376.2A 2022-01-04 2022-01-04 一种基于租户和网关的物联网设备终端接入系统及方法 Pending CN114301982A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210003376.2A CN114301982A (zh) 2022-01-04 2022-01-04 一种基于租户和网关的物联网设备终端接入系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210003376.2A CN114301982A (zh) 2022-01-04 2022-01-04 一种基于租户和网关的物联网设备终端接入系统及方法

Publications (1)

Publication Number Publication Date
CN114301982A true CN114301982A (zh) 2022-04-08

Family

ID=80975381

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210003376.2A Pending CN114301982A (zh) 2022-01-04 2022-01-04 一种基于租户和网关的物联网设备终端接入系统及方法

Country Status (1)

Country Link
CN (1) CN114301982A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120215918A1 (en) * 2011-02-21 2012-08-23 Microsoft Corporation Multi-tenant services gateway
CN106685815A (zh) * 2017-01-04 2017-05-17 上海建坤信息技术有限责任公司 一种多协议硬件采集网关系统
CN109983748A (zh) * 2016-09-19 2019-07-05 亚马逊技术公司 设备组的组命令管理
US20200412538A1 (en) * 2019-06-25 2020-12-31 Salesforce.Com, Inc. Serverless connected app design
CN113364820A (zh) * 2020-03-04 2021-09-07 青岛海尔空调电子有限公司 物联网业务系统的设备管控方法与装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120215918A1 (en) * 2011-02-21 2012-08-23 Microsoft Corporation Multi-tenant services gateway
CN109983748A (zh) * 2016-09-19 2019-07-05 亚马逊技术公司 设备组的组命令管理
CN106685815A (zh) * 2017-01-04 2017-05-17 上海建坤信息技术有限责任公司 一种多协议硬件采集网关系统
US20200412538A1 (en) * 2019-06-25 2020-12-31 Salesforce.Com, Inc. Serverless connected app design
CN113364820A (zh) * 2020-03-04 2021-09-07 青岛海尔空调电子有限公司 物联网业务系统的设备管控方法与装置

Similar Documents

Publication Publication Date Title
US10089106B2 (en) Communications network, computer architecture, computer-implemented method and computer program product for development and management of femtocell-based applications
CN108256118B (zh) 数据处理方法、装置、系统、计算设备以及存储介质
CN108063714B (zh) 一种网络请求的处理方法及装置
CN107070752B (zh) 一种长连接容量的测试方法及测试系统
CN105991412A (zh) 消息推送方法及装置
CN109412878A (zh) 多租户业务接入实现方法、装置及电子设备
CN114189525B (zh) 服务请求方法、装置和电子设备
CN111858050B (zh) 服务器集群混合部署方法、集群管理节点及相关系统
CN112162925A (zh) 一种基于服务虚拟化的测试方法和系统
CN112346980B (zh) 软件性能测试方法、系统和可读存储介质
CN113806037A (zh) 服务的调用方法、装置、存储介质及电子设备
CN113900941A (zh) 一种微服务处理方法、微服务系统及电子设备和存储介质
CN113553260B (zh) 测试方法、测试装置、设备和介质
CN118250329A (zh) 适用于灰度发布的流量分配方法、装置和计算机设备
CN109286617B (zh) 一种数据处理方法及相关设备
CN112202862B (zh) 一种基于kafka的集群数据以及文件的同步方法及装置
CN116233283B (zh) 一种设备通信协议的动态扩展和热插拔方法
CN113114503A (zh) 基于应用交付网络需求的部署方法及装置
CN111930625A (zh) 基于云服务平台的日志获取方法、装置及系统
CN114301982A (zh) 一种基于租户和网关的物联网设备终端接入系统及方法
CN109274533B (zh) 一种基于规则引擎的Web服务故障的定位装置和方法
CN114070824B (zh) 物联网设备的注册方法、注册云服务器及介质
US9176797B1 (en) Workflow processing and methods for auditing and playback of data
CN115250233A (zh) 一种灰度路由控制方法、灰度路由组件及计算机设备
CN115952003A (zh) 一种集群服务器负载均衡的方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination