CN114338827B - 物联网协议适配网关、方法及可读存储介质 - Google Patents
物联网协议适配网关、方法及可读存储介质 Download PDFInfo
- Publication number
- CN114338827B CN114338827B CN202011050141.6A CN202011050141A CN114338827B CN 114338827 B CN114338827 B CN 114338827B CN 202011050141 A CN202011050141 A CN 202011050141A CN 114338827 B CN114338827 B CN 114338827B
- Authority
- CN
- China
- Prior art keywords
- internet
- things
- protocol
- data
- gateway
- 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.)
- Active
Links
- 230000006978 adaptation Effects 0.000 title claims abstract description 191
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000005540 biological transmission Effects 0.000 claims abstract description 155
- 238000006243 chemical reaction Methods 0.000 claims abstract description 32
- 238000004891 communication Methods 0.000 claims abstract description 29
- 230000004044 response Effects 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 3
- 230000006855 networking Effects 0.000 claims 2
- 230000003993 interaction Effects 0.000 abstract description 14
- 238000007726 management method Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 8
- 230000003139 buffering effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
本发明提供了一种物联网协议适配网关、方法及可读存储介质,涉及物联网技术领域,该物联网协议适配网关包括:第一适配模块,用于对泛协议设备进行网关接入,并接收泛协议设备传输的第一数据包,泛协议设备包括多个使用不同通信协议的设备;泛协议编解码模块,用于将第一数据包解码成物联网协议适配网关所支持的第一预设格式数据;数据转换模块,用于将第一预设格式数据转化为对应的业务数据;第二适配模块,用于建立与物联网平台连接的第一数据传输通道,并通过第一数据传输通道将业务数据传输至物联网平台。由此可以通过该物联网协议适配网关对泛协议设备进行接入,实现泛协议设备与物联网平台的业务交互。
Description
技术领域
本发明涉及物联网技术领域,尤其涉及一种物联网协议适配网关、方法及可读存储介质。
背景技术
随着物联网技术的发展,需要接入至物联网平台的物联网设备也越来越多,而每种物联网设备使用的通信协议不尽相同,如使用消息队列遥测通信协议(Message QueuingTelemetry Transport,简称MQTT)、高级消息队列协议(Advanced Message QueuingProtocol,简称AMQP)、受限应用协议(Constrained Application Protocol,简称CoAP)等等,而且目前有许多设备因历史原因或行业准则原因,使用的是非主流的协议或者用户/厂商自定义的私有协议或设备已生产发布但无法升级固件适配物联网平台,这就导致这些使用不同类型通信协议或已生产发布的设备,无法正常接入至物联网平台,从而限制了物联网平台的业务拓展。
发明内容
本发明实施例提供了一种物联网协议适配网关、方法及可读存储介质,以解决现有的物联网设备不同类型通信协议或为已生产发布的设备,无法正常接入至物联网平台,从而限制了物联网平台的业务拓展的问题。
为解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供了一种物联网协议适配网关,所述物联网协议适配网关包括:第一适配模块、泛协议编解码模块、数据转换模块、第二适配模块;
所述第一适配模块,用于对泛协议设备进行网关接入,并接收所述泛协议设备传输的第一数据包,所述泛协议设备包括多个使用不同通信协议的设备;
所述泛协议编解码模块,用于将所述第一数据包解码成所述物联网协议适配网关所支持的第一预设格式数据;
所述数据转换模块,用于将所述第一预设格式数据转化为对应的业务数据;
所述第二适配模块,用于建立与所述物联网平台连接的第一数据传输通道,并通过所述第一数据传输通道将所述业务数据传输至所述物联网平台。
第二方面,本发明实施例还提供了一种物联网协议适配方法,所述物联网协议适配方法应用于如第一方面的物联网协议适配网关,所述物联网协议适配方法包括:
所述第一适配模块对泛协议设备进行网关接入,并接收所述泛协议设备传输的第一数据包,所述泛协议设备包括多个使用不同通信协议的设备;
所述泛协议编解码模块将所述第一数据包解码成所述物联网协议适配网关所支持的第一预设格式数据;
所述数据转换模块将所述第一预设格式数据转化为对应的业务数据;
所述第二适配模块建立与所述物联网平台连接的第一数据传输通道,并通过所述第一数据传输通道将所述业务数据传输至所述物联网平台。
第三方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面的物联网协议适配方法的步骤。
在本发明实施例中,该物联网协议适配网关包括:所述第一适配模块,用于对泛协议设备进行网关接入,并接收所述泛协议设备传输的第一数据包,所述泛协议设备包括多个使用不同通信协议的设备;所述泛协议编解码模块,用于将所述第一数据包解码成所述物联网协议适配网关所支持的第一预设格式数据;所述数据转换模块,用于将所述第一预设格式数据转化为对应的业务数据;所述第二适配模块,用于建立与所述物联网平台连接的第一数据传输通道,并通过所述第一数据传输通道将所述业务数据传输至所述物联网平台。由此可以通过该物联网协议适配网关对泛协议设备进行接入,实现泛协议设备与物联网平台的业务交互,避免泛协议设备由于使用通信协议类型不同,而导致无法正常接入物联网平台的情况。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的物联网协议适配网关的结构示意图;
图2为本发明实施例提供的物联网协议适配方法的流程图之一;
图3为本发明实施例提供的物联网协议适配方法的流程图之二;
图4为本发明实施例提供的物联网协议适配方法的流程图之三。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,图1是本发明实施例提供的物联网协议适配网关的结构示意图,如图1所示,该物联网协议适配网关1000包括:第一适配模块1001、泛协议编解码模块1002、数据转换模块1003、第二适配模块1004;
第一适配模块1001,用于对泛协议设备1100进行网关接入,并接收泛协议设备1100传输的第一数据包,泛协议设备1100包括多个使用不同通信协议的设备;
泛协议编解码模块1002,用于将第一数据包解码成物联网协议适配网关1000所支持的第一预设格式数据;
数据转换模块1003,用于将第一预设格式数据转化为对应的业务数据;
第二适配模块1004,用于建立与物联网平台1200连接的第一数据传输通道,并通过第一数据传输通道将业务数据传输至物联网平台1200。
具体地,物联网协议适配网关1000是连接泛协议设备1100和物联网平台1200的桥梁,泛协议设备1100先通过自身的通信协议接入至物联网协议适配网关1000,再由物联网协议适配网关1000建立泛协议设备1100与物联网平台1200的第一数据传输通道,通过第一数据传输通道实现泛协议设备1100与物联网平台1200之间的数据交互。需要说明的是,远程部署物联网协议适配网关1000只需要给物联网协议适配网关1000一个网际协议地址(Internet Protocol Address,简称IP地址),物联网协议适配网关1000就可灵活部署在本地或异地,这样泛协议设备1100就能主动发现物联网协议适配网关1000。
需要说明的是,泛协议设备1100包括多个使用不同通信协议的设备,如使用消息队列遥测通信协议(Message Queuing Telemetry Transport,简称MQTT)、高级消息队列协议(Advanced Message Queuing Protocol,简称AMQP)、受限应用协议(ConstrainedApplication Protocol,简称CoAP)、局域网协议、设备用户/设备厂商自定义的私有协议等通信协议。由于不同的设备支持的通信协议不同,因而将运行着不同通信协议的设备的集合称之为泛协议设备1100。物联网平台1200可以是部署在物联网中的任意一台或多台服务器,可以是部署的云服务平台,本发明不做具体限定。物联网平台1200主要提供物联网协议适配网关1000的接入、泛协议设备1100的接入、泛协议设备1100的管理、业务数据存储及管理,以及物联网协议适配网关1000及泛协议设备1100的下行数据发送等功能。
物联网协议适配网关1000至少包括第一适配模块1001、泛协议编解码模块1002、数据转换模块1003、第二适配模块1004等功能模块,每个功能模块完成其对应的功能。
其中,第一适配模块1001,用于对泛协议设备1100进行网关接入,并接收泛协议设备1100传输的第一数据包。在该第一适配模块1001中,可以通过可插拔的方式,给泛协议设备1100提供多种不同底层传输协议连接到物联网协议适配网关1000的能力。例如,该第一适配模块1001可以提供基于网际互连协议(Internet Protocol,简称IP)的协议适配,如MQTT、AMQP、CoAP协议等,也可以提供基于串口的数据传输协议,获取串口中的数据。这样用户可以通过手动配置网关的启动配置文件,来增加或者减少与网关适配的通信协议,从而实现第一适配模块1001的多通信协议适配的可插拔的功能。泛协议设备1100接入至第一适配模块1001后,接收泛协议设备1100传输的第一数据包。其中,第一数据包为泛协议设备1100通过自身使用的通信协议组装的数据报文。
第一适配模块1001将第一数据包传输至泛协议编解码模块1002,泛协议编解码模块1002,用于将第一数据包解码成物联网协议适配网关1000所支持的第一预设格式数据。该泛协议编解码模块1002为用户提供编解码器接口,通过编解码器接口,实现泛协议设备1100中的第一数据包与物联网协议适配网关1000所支持的第一预设格式数据之间的转换。在一实施例中,可以对解码器接口和编码器接口进行定义,例如,解码器接口定义为:public DeviceMessage decode(byte[]data);编码器接口定义为:public byte[]encode(DeviceMessage message);那么从上述接口定义可知,解码器接口用于从二进制数据(即byte[]data)至网关内部数据(即Device Message)的转换,编码器接口用于网关内部数据至二进制数据的转换。
泛协议编解码模块1002将第一预设格式数据传输至数据转换模块1003,数据转换模块1003,用于将第一预设格式数据转化为对应的业务数据。由于在该数据转换模块1003中,可以根据第一预设格式数据与业务数据之间的映射关系,确定各第一预设格式数据所对应的业务数据,并完成格式转化。需要说明的是,此处的第一预设格式数据为物联网协议适配网关1000所支持的格式数据,而业务数据为物联网平台1200所支持的格式数据。第一预设格式数据通过该数据转换模块1003进行转化得到对应的业务数据,才可以实现与物联网平台1200进行业务数据交互。
第二适配模块1004,用于建立与物联网平台1200连接的第一数据传输通道,并通过第一数据传输通道将业务数据传输至物联网平台1200。第一数据传输通道可以为一个,也可以为多个,本发明不做具体限定。当第一数据传输通道为一个时,需要使用这一个第一数据传输通道来代理泛协议设备1100,会给对物联网平台1200的单台服务器带来过多的压力。当第一数据传输通道为多个时,可以通过多个第一数据传输通道与不同的泛协议设备1100连接,并通过多个第一数据传输通道与物联网平台1200的服务集群中的不同服务器连接,由此,可以将大量的泛协议设备1100均匀地分配至多个第一数据传输通道上,每个第一数据传输通道只承担一部分设备的业务数据交互,且多个第一数据传输通道也会以负载均衡的方式连接到物联网平台1200服务集群的不同服务器上,采用这样的分布式连接策略,会分散物联网协议适配网关1000对于物联网平台1200单台服务器的压力,使物联网平台1200整体更加稳定、可靠性高。多个第一数据传输通道还能降低异常情况下,泛协议设备1100掉线的概率,当某个第一数据传输通道异常断开,只会影响该第一数据传输通道上接入的设备,其他第一数据传输通道上的接入设备则不受影响,从而减小对物联网平台1200服务的冲击。
进一步地,在第一数据传输通道为多个的情况下,第二适配模块1004,还用于:分别获取多个第一数据传输通道的泛协议设备1100的接入数量;根据接入数量,从多个第一数据传输通道中确定目标传输通道,其中,目标传输通道为多个第一数据传输通道中接入数量最小的第一数据传输通道;通过目标传输通道将业务数据传输至物联网平台1200。
具体地,上述第一数据传输通道表示泛协议设备1100与物联网平台1200之间的传输控制协议(Transmission Control Protocol,简称TCP)连接通道,当第一数据传输通道为多个,物联网协议适配网关1000需要根据每个TCP连接通道上设备的接入数量,由此来确定每个TCP连接的负载压力。在获取每个TCP连接通道上的设备接入数量后,可以根据对应的接入数量,确定多个第一数据传输通道中接入数量最小的第一数据传输通道,并将该第一数据传输通道作为当前接入的泛协议设备1100的业务数据的目标传输通道。由此,可以将大量的泛协议设备1100均匀地分配至多个第一数据传输通道上,每个第一数据传输通道只承担一部分设备的业务数据交互,且多个第一数据传输通道也会以负载均衡的方式连接到物联网平台1200的服务集群中的不同服务器上,这样的分布式连接策略,会分散物联网协议适配网关1000对于物联网平台1200单台服务器的压力。
进一步地,第二适配模块1004,还用于:建立与物联网平台1200连接的第二数据传输通道,通过第二数据传输通道向物联网平台1200上报物联网协议适配网关1000的上行数据,以及接收物联网平台1200下发给物联网协议适配网关1000的下行数据;其中,第二数据传输通道与第一数据传输通道相互独立。
具体地,第二数据传输通道与第一数据传输通道相互独立,与第一数据传输通道不同的是,第二数据传输通道是用于传输物联网协议适配网关1000自身与物联网平台1200之间的上下行数据,使得物联网协议适配网关1000可以方便地向物联网平台1200上报网关运行状态、统计数据等上行数据,并接收用户通过物联网平台1200下发给物联网协议适配网关1000自身的下行数据,如控制信息。
进一步地,第二适配模块1004,还用于通过第一数据传输通道,接收物联网平台1200发送的业务响应数据;数据转换模块1003,还用于将业务响应数据转化为物联网协议适配网关1000所支持的第二预设格式数据;泛协议编解码模块1002,还用于将第二预设格式数据编码成对应的泛协议设备1100所支持的第二数据包;第一适配模块1001,还用于将第二数据包传输至对应的泛协议设备1100。
具体地,上述业务响应数据可以为物联网平台1200基于接收到的业务数据作为的响应而生成的响应数据,也可以包括物联网平台1200接收到的用户对某一泛协议设备1100的控制指令等下行数据。物联网协议适配网关1000接收到物联网平台1200发送的业务响应数据后,需要对业务响应数据进行格式转化,转化成物联网协议适配网关1000所支持的第二预设格式数据。泛协议编解码模块1002接收到第二预设格式数据后,通过编码器接口将第二预设格式数据编码成对应的泛协议设备1100所支持的第二数据包。最后通过第一适配模块1001将第二数据包传输至对应的泛协议设备1100,使得该泛协议设备1100可以根据接收到的第二数据包做出对应的响应,从而达到泛协议设备1100与物联网平台1200交互的过程。
进一步地,物联网协议适配网关1000还包括:网关管理模块1006;其中,网关管理模块1006,用于对泛协议设备1100和/或物联网协议适配网关1000进行配置管理,以实现泛协议设备1100和/或物联网协议适配网关1000与物联网平台1200的连接鉴权。
具体地,泛协议设备1100的配置管理是在物联网平台1200注册生成与泛协议设备1100对应的平台虚拟设备的配置,可以用于泛协议设备1100与物联网平台1200之间的连接鉴权。物联网协议适配网关1000的配置管理是在物联网平台1200注册与物联网协议适配网关1000对应的服务实例的配置,可以用于物联网协议适配网关1000自身与物联网平台1200之间的连接鉴权。在具体实施时,物联网协议适配网关1000还可以对泛协议设备1100的配置,以及物联网协议适配网关1000的配置进行灵活加载,在提供从文件加载默认配置的基础上,可以通过接口化设计,允许用户从自定义的输入源加载配置,如本地文件、数据库等,以方便用户根据其需求选择合适的配置加载方式。
进一步地,网关管理模块,还用于获取泛协议设备1100和/或物联网协议适配网关1000在物联网平台1200上的虚拟身份信息;基于虚拟身份信息,生成泛协议设备1100和/或物联网协议适配网关1000对应的令牌;将令牌通过第一数据传输通道传输至物联网平台1200;其中,令牌至少包括预设签名算法和签名,令牌用于物联网平台1200根据预设签名算法对签名进行校验,以完成对泛协议设备1100和/或物联网协议适配网关1000的身份鉴权。
具体地,泛协议设备1100的虚拟身份信息为在物联网平台1200上的产品标识、设备名称、设备密钥等信息,物联网协议适配网关1000的虚拟身份信息为在物联网平台1200上的服务实例标识、服务实例名称和服务实例密钥等信息。在获取虚拟身份信息后,将令牌的过期时间、版本,以及虚拟身份信息,采用预设签名算法计算得到签名。在根据令牌的过期时间、版本、虚拟身份信息和签名,生成泛协议设备1100和/或物联网协议适配网关1000对应的令牌。其中,预设签名算法包括但不限于信息-摘要算法5(Message-DigestAlgorithm5,简称MD5)、安全散列算法(Secure Hash Algorithm,简称SHA)等中的任意一种。物联网协议适配网关1000在生成令牌后,通过第一数据传输通道将令牌传输至物联网平台1200,物联网平台1200根据令牌中的预设签名算法对该令牌进行验证,完成对泛协议设备1100和/或物联网协议适配网关1000进行身份鉴权。在本实施例中,由于不是直接传输设备密钥进行身份鉴权,而是通过密钥及签名算法来计算签名的方式来保证认证身份的合法性,从而避免被恶意篡改,提高了设备接入的安全性。在本发明实施例的物联网协议适配网关1000,可以对泛协议设备进行接入,实现泛协议设备与物联网平台的业务交互,避免泛协议设备由于使用通信协议类型不同或设备已生产发布但无法升级固件适配物联网平台,而导致无法正常接入物联网平台的情况。
进一步地,物联网协议适配网关1000还包括:扩展模块1005;其中,扩展模块1005用于对泛协议设备1100所属的用户提供可扩展的功能接口。上述扩展模块1005用于对物联网协议适配网关1000的功能的扩展,可以通过在扩展模块1005中增加其他功能模块,来实现更多的功能。扩展模块1005可以包括鉴权子模块、日志子模块、性能统计子模块、数据缓存子模块等中的一个或多个子模块的组合。其中,鉴权子模块用于对泛协议设备1100进行精细化的安全认证及权限控制,以保障泛协议设备1100的接入安全。日志子模块用于记录和输出物联网协议适配网关1000的运行日志;性能统计子模块用于记录和输出物联网协议适配网关1000的运行状态和性能统计结果。数据缓存子模块用于对接入的泛协议设备1100的上下行数据进行缓存。
需要说明的是,扩展模块1005还可以包括集成了由物联网平台1200提供的应用程序编程接口API和软体开发工具包SDK,可以支持用户自行对物联网协议适配网关1000进行自定义功能扩展。
参见图2,图2为本发明实施例提供的物联网协议适配方法的流程图之一,如图2所示,该物联网协议适配方法应用于上述物联网协议适配网关,物联网协议适配方法包括:
步骤101、第一适配模块对泛协议设备进行网关接入,并接收泛协议设备传输的第一数据包,泛协议设备包括多个使用不同通信协议的设备。
在第一适配模块中,可以通过可插拔的方式,给泛协议设备提供多种不同底层传输协议连接到物联网协议适配网关的能力。例如,该第一适配模块可以提供基于网际互连协议(Internet Protocol,简称IP)的协议适配,如MQTT、AMQP、CoAP协议等,也可以提供基于串口的数据传输协议,获取串口中的数据。这样用户可以通过手动配置网关的启动配置文件,来增加或者减少与网关适配的通信协议,从而实现第一适配模块的多通信协议适配的可插拔的功能。泛协议设备接入至第一适配模块后,接收泛协议设备传输的第一数据包。其中,第一数据包为泛协议设备通过自身使用的通信协议组装的数据报文。
步骤102、泛协议编解码模块将第一数据包解码成物联网协议适配网关所支持的第一预设格式数据。
泛协议编解码模块为用户提供编解码器接口,通过编解码器接口,实现泛协议设备中的第一数据包与物联网协议适配网关所支持的第一预设格式数据之间的转换。在一实施例中,可以对解码器接口和编码器接口进行定义,例如,解码器接口定义为:publicDeviceMessage decode(byte[]data);编码器接口定义为:public byte[]encode(DeviceMessage message);那么从上述接口定义可知,解码器接口用于从二进制数据(即byte[]data)至网关内部数据(即Device Message)的转换,编码器接口用于网关内部数据至二进制数据的转换。
步骤103、数据转换模块将第一预设格式数据转化为对应的业务数据。
由于在该数据转换模块中,可以根据第一预设格式数据与业务数据之间的映射关系,确定各第一预设格式数据所对应的业务数据,并完成格式转化。需要说明的是,此处的第一预设格式数据为物联网协议适配网关所支持的格式数据,而业务数据为物联网平台所支持的格式数据。第一预设格式数据通过该数据转换模块进行转化得到对应的业务数据,才可以实现与物联网平台进行业务数据交互。
步骤104、第二适配模块建立与物联网平台连接的第一数据传输通道,并通过第一数据传输通道将业务数据传输至物联网平台。
第一数据传输通道可以为一个,也可以为多个,本发明不做具体限定。当第一数据传输通道为一个时,需要使用这一个第一数据传输通道来代理泛协议设备,会给对物联网平台的单台服务器带来过多的压力。当第一数据传输通道为多个时,可以通过多个第一数据传输通道与不同的泛协议设备连接,并通过多个第一数据传输通道与物联网平台的服务集群中的不同服务器连接,由此,可以将大量的泛协议设备均匀地分配至多个第一数据传输通道上,每个第一数据传输通道只承担一部分设备的业务数据交互,且多个第一数据传输通道也会以负载均衡的方式连接到物联网平台服务集群的不同服务器上,采用这样的分布式连接策略,会分散物联网协议适配网关对于物联网平台单台服务器的压力,使物联网平台整体更加稳定、可靠性高。
在本实施例中,可以通过该物联网协议适配网关对泛协议设备进行接入,实现泛协议设备与物联网平台的业务交互,避免泛协议设备由于使用通信协议类型不同或设备已生产发布但无法升级固件适配物联网平台,而导致无法正常接入物联网平台的情况。
进一步地,参见图3,图3为本发明实施例提供的物联网协议适配方法的流程图之二,在第一数据传输通道为多个的情况下,上述步骤104、通过第一数据传输通道将业务数据传输至物联网平台,包括:
步骤201、分别获取多个第一数据传输通道的泛协议设备的接入数量。
上述第一数据传输通道表示泛协议设备与物联网平台之间的传输控制协议(Transmission Control Protocol,简称TCP)连接通道,当第一数据传输通道为多个,物联网协议适配网关需要根据每个TCP连接通道上设备的接入数量,由此来确定每个TCP连接的负载压力。
步骤202、根据接入数量,从多个第一数据传输通道中确定目标传输通道,其中,目标传输通道为多个第一数据传输通道中接入数量最小的第一数据传输通道。
在获取每个TCP连接通道上的设备接入数量后,可以根据对应的接入数量,确定多个第一数据传输通道中接入数量最小的第一数据传输通道,并将该第一数据传输通道作为当前接入的泛协议设备的业务数据的目标传输通道。由此,可以将大量的泛协议设备均匀地分配至多个第一数据传输通道上,每个第一数据传输通道只承担一部分设备的业务数据交互,且多个第一数据传输通道也会以负载均衡的方式连接到物联网平台服务集群的不同服务器上,这样的分布式连接策略,会分散物联网协议适配网关对于物联网平台单台服务器的压力。
步骤203、通过目标传输通道将业务数据传输至物联网平台。
在确定目标传输通道之后,可以通过目标传输通道将业务数据传输至物联网平台。
在本实施例中,通过获取多个第一数据传输通道对应的泛协议设备的接入数量,对泛协议设备进行均匀接入,实现物联网平台服务集群中各服务器的负载均衡。
进一步地,在上述步骤104、第二适配模块建立与物联网平台连接的第一数据传输通道之后,方法还包括:
第二适配模块建立与物联网平台连接的第二数据传输通道,通过第二数据传输通道向物联网平台上报物联网协议适配网关的上行数据,以及接收物联网平台下发给物联网协议适配网关的下行数据;其中,第二数据传输通道与第一数据传输通道相互独立。
具体地,第二数据传输通道与第一数据传输通道相互独立,与第一数据传输通道不同的是,第二数据传输通道是用于传输物联网协议适配网关自身与物联网平台之间的上下行数据,使得物联网协议适配网关可以方便地向物联网平台上报网关运行状态、统计数据等上行数据,并接收用户通过物联网平台下发给物联网协议适配网关自身的下行数据,如控制信息。
在本实施例中,通过建立第二数据传输通道,将第二数据传输通道与第一数据传输通道分离开来,使得每个数据传输通道职责更明确、调试更方便。并且,物联网平台可以通过第二数据传输通道上传的上行数据,对物联网协议适配网关做可视化的上行数据展示、数据汇总、数据分析等服务,以方便用户通过简单的web页面知晓物联网协议适配网关的运行状态,从而提高用户的使用体验。
进一步地,参见图4,图4为本发明实施例提供的物联网协议适配方法的流程图之三,在上述步骤104、第二适配模块建立与物联网平台连接的第一数据传输通道之后,方法还包括:
步骤401、第二适配模块通过第一数据传输通道,接收物联网平台发送的业务响应数据。
上述业务响应数据可以为物联网平台基于接收到的业务数据作为的响应而生成的响应数据,也可以包括物联网平台接收到的用户对某一泛协议设备的控制指令等下行数据。
步骤402、数据转换模块将业务响应数据转化为物联网协议适配网关所支持的第二预设格式数据。
物联网协议适配网关接收到物联网平台发送的业务响应数据后,需要对业务响应数据进行格式转化,转化成物联网协议适配网关所支持的第二预设格式数据
步骤403、泛协议编解码模块将第二预设格式数据编码成对应的泛协议设备所支持的第二数据包。
泛协议编解码模块接收到第二预设格式数据后,通过编码器接口将第二预设格式数据编码成对应的泛协议设备所支持的第二数据包。在解码前,需要解析获取第二预设格式数据中的目标设备标识,以及该目标设备使用的通信协议类型,由此确定泛协议设备的通信协议所支持的数据包格式。
步骤404、第一适配模块将第二数据包传输至对应的泛协议设备。
通过第一适配模块将第二数据包传输至对应的泛协议设备,使得该泛协议设备可以根据接收到的第二数据包做出对应的响应,从而达到泛协议设备与物联网平台交互的过程。
在本实施例中,通过物联网协议适配网关来实现物联网平台与泛协议设备之间的下行数据传输过程,保证了泛协议设备与物联网平台的正常交互过程。
进一步地,在上述步骤104、第二适配模块建立与物联网平台连接的第一数据传输通道之前,方法还包括:
网关管理模块对泛协议设备和/或物联网协议适配网关进行配置管理,以实现泛协议设备和/或物联网协议适配网关与物联网平台的连接鉴权。
具体地,泛协议设备的配置管理是在物联网平台注册生成与泛协议设备对应的平台虚拟设备的配置,可以用于泛协议设备与物联网平台之间的连接鉴权。物联网协议适配网关的配置管理是在物联网平台注册与物联网协议适配网关对应的服务实例的配置,可以用于物联网协议适配网关自身与物联网平台之间的连接鉴权。在具体实施时,物联网协议适配网关还可以对泛协议设备的配置,以及物联网协议适配网关的配置进行灵活加载,在提供从文件加载默认配置的基础上,可以通过接口化设计,允许用户从自定义的输入源加载配置,如本地文件、数据库等,以方便用户根据其需求选择合适的配置加载方式。
在本实施例中,通过网关管理模块实现对泛协议设备和物联网协议适配网关的配置管理,以及泛协议设备与物联网平台之间的会话管理,有利于保证网关正常有序的运行。
进一步地,在上述步骤104、第二适配模块建立与物联网平台连接的第一数据传输通道之后,方法还包括:
网关管理模块获取泛协议设备和/或物联网协议适配网关在物联网平台上的虚拟身份信息;
基于虚拟身份信息,生成泛协议设备和/或物联网协议适配网关对应的令牌;
将令牌通过第一数据传输通道传输至物联网平台。
具体地,泛协议设备的虚拟身份信息为在物联网平台上的产品标识、设备名称、设备密钥等信息,物联网协议适配网关的虚拟身份信息为在物联网平台上的服务实例标识、服务实例名称和服务实例密钥等信息。在获取泛协议设备和/或物联网协议适配网关的虚拟身份信息后,将令牌的过期时间、版本,以及虚拟身份信息,采用预设签名算法计算得到签名。在根据令牌的过期时间、版本、虚拟身份信息和签名,生成泛协议设备和/或物联网协议适配网关对应的令牌。其中,预设签名算法包括但不限于信息-摘要算法5(Message-Digest Algorithm 5,简称MD5)、安全散列算法(Secure Hash Algorithm,简称SHA)等中的任意一种。物联网协议适配网关在生成令牌后,通过第一数据传输通道将令牌传输至物联网平台,物联网平台根据令牌中的预设签名算法对该令牌进行验证,完成对泛协议设备和/或物联网协议适配网关进行身份鉴权。在本实施例中,由于不是直接传输设备密钥进行身份鉴权,而是通过密钥及签名算法来计算签名的方式来保证认证身份的合法性,从而避免被恶意篡改,提高了设备接入的安全性。
在本实施例中,通过采用令牌的认证鉴权方式,对泛协议设备和物联网协议适配网关进行身份鉴权,提高设备接入的安全性,同时,由于令牌过期时间可控,用户可根据实际业务需求设置合理的过期时间,以控制设备的接入时间。且由于不同令牌版本之间可以兼容,当物联网平台安全策略变更时,无需用户修改任何代码就可以保证向前兼容性。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述物联网协议适配方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (12)
1.一种物联网协议适配网关,其特征在于,所述物联网协议适配网关包括:第一适配模块、泛协议编解码模块、数据转换模块、第二适配模块;
所述第一适配模块,用于对泛协议设备进行网关接入,并接收所述泛协议设备传输的第一数据包,所述泛协议设备包括多个使用不同通信协议的设备,所述第一适配模块通过可插拔的方式给所述泛协议设备提供多种不同底层传输协议连接到物联网协议适配网关的能力;
所述泛协议编解码模块,用于将所述第一数据包解码成所述物联网协议适配网关所支持的第一预设格式数据;
所述数据转换模块,用于将所述第一预设格式数据转化为对应的业务数据;
所述第二适配模块,用于建立与物联网平台连接的第一数据传输通道,并通过所述第一数据传输通道将所述业务数据传输至所述物联网平台;
所述物联网协议适配网关由文件加载默认配置或者自定义输入源加载配置;
所述第二适配模块,还用于:
建立与所述物联网平台连接的第二数据传输通道,通过所述第二数据传输通道向所述物联网平台上报所述物联网协议适配网关的上行数据,以及接收所述物联网平台下发给所述物联网协议适配网关的下行数据;
其中,所述第二数据传输通道与所述第一数据传输通道相互独立。
2.根据权利要求1所述的物联网协议适配网关,其特征在于,在所述第一数据传输通道为多个的情况下,所述第二适配模块,还用于:
分别获取多个所述第一数据传输通道的泛协议设备的接入数量;
根据所述接入数量,从多个所述第一数据传输通道中确定目标传输通道,其中,所述目标传输通道为多个所述第一数据传输通道中接入数量最小的第一数据传输通道;
通过所述目标传输通道将所述业务数据传输至所述物联网平台。
3.根据权利要求1所述的物联网协议适配网关,其特征在于,所述第二适配模块,还用于通过所述第一数据传输通道,接收所述物联网平台发送的业务响应数据;
所述数据转换模块,还用于将所述业务响应数据转化为所述物联网协议适配网关所支持的第二预设格式数据;
所述泛协议编解码模块,还用于将所述第二预设格式数据编码成对应的泛协议设备所支持的第二数据包;
所述第一适配模块,还用于将所述第二数据包传输至对应的泛协议设备。
4.根据权利要求1所述的物联网协议适配网关,其特征在于,所述物联网协议适配网关还包括:网关管理模块;
其中,所述网关管理模块,用于对所述泛协议设备和/或所述物联网协议适配网关进行配置管理,以实现所述泛协议设备和/或所述物联网协议适配网关与所述物联网平台的连接鉴权。
5.根据权利要求4所述的物联网协议适配网关,其特征在于,所述网关管理模块,还用于:
获取所述泛协议设备和/或所述物联网协议适配网关在所述物联网平台上的虚拟身份信息;
基于所述虚拟身份信息,生成所述泛协议设备和/或所述物联网协议适配网关对应的令牌;
将所述令牌通过所述第一数据传输通道传输至所述物联网平台;
其中,所述令牌至少包括预设签名算法和签名,所述令牌用于所述物联网平台根据所述预设签名算法对所述签名进行校验,以完成对所述泛协议设备和/或所述物联网协议适配网关的身份鉴权。
6.根据权利要求1所述的物联网协议适配网关,其特征在于,所述物联网协议适配网关还包括:扩展模块;
其中,所述扩展模块用于对所述泛协议设备所属的用户提供可扩展的功能接口。
7.一种物联网协议适配方法,其特征在于,所述物联网协议适配方法应用于如权利要求1至6中任一所述的物联网协议适配网关,所述物联网协议适配方法包括:
所述第一适配模块对泛协议设备进行网关接入,并接收所述泛协议设备传输的第一数据包,所述泛协议设备包括多个使用不同通信协议的设备,所述第一适配模块通过可插拔的方式给所述泛协议设备提供多种不同底层传输协议连接到物联网协议适配网关的能力;
所述泛协议编解码模块将所述第一数据包解码成所述物联网协议适配网关所支持的第一预设格式数据;
所述数据转换模块将所述第一预设格式数据转化为对应的业务数据;
所述第二适配模块建立与物联网平台连接的第一数据传输通道,并通过所述第一数据传输通道将所述业务数据传输至所述物联网平台;
所述物联网协议适配网关由文件加载默认配置或者自定义输入源加载配置;
在所述第二适配模块建立与所述物联网平台连接的第一数据传输通道之后,所述方法还包括:
所述第二适配模块建立与所述物联网平台连接的第二数据传输通道,通过所述第二数据传输通道向所述物联网平台上报所述物联网协议适配网关的上行数据,以及接收所述物联网平台下发给所述物联网协议适配网关的下行数据;
其中,所述第二数据传输通道与所述第一数据传输通道相互独立。
8.根据权利要求7所述的物联网协议适配方法,其特征在于,在所述第一数据传输通道为多个的情况下,所述通过所述第一数据传输通道将所述业务数据传输至所述物联网平台,包括:
分别获取多个所述第一数据传输通道的泛协议设备的接入数量;
根据所述接入数量,从多个所述第一数据传输通道中确定目标传输通道,其中,所述目标传输通道为多个所述第一数据传输通道中接入数量最小的第一数据传输通道;
通过所述目标传输通道将所述业务数据传输至所述物联网平台。
9.根据权利要求7所述的物联网协议适配方法,其特征在于,在所述第二适配模块建立与所述物联网平台连接的第一数据传输通道之后,所述方法还包括:
所述第二适配模块通过所述第一数据传输通道,接收所述物联网平台发送的业务响应数据;
所述数据转换模块将所述业务响应数据转化为所述物联网协议适配网关所支持的第二预设格式数据;
所述泛协议编解码模块将所述第二预设格式数据编码成对应的泛协议设备所支持的第二数据包;
所述第一适配模块将所述第二数据包传输至对应的泛协议设备。
10.根据权利要求7所述的物联网协议适配方法,其特征在于,在所述第二适配模块建立与所述物联网平台连接的第一数据传输通道之前,所述方法还包括:
网关管理模块对所述泛协议设备和/或所述物联网协议适配网关进行配置管理,以实现所述泛协议设备和/或所述物联网协议适配网关与所述物联网平台的连接鉴权。
11.根据权利要求10所述的物联网协议适配方法,其特征在于,在所述第二适配模块建立与所述物联网平台连接的第一数据传输通道之后,所述方法还包括:
所述网关管理模块获取所述泛协议设备和/或所述物联网协议适配网关在所述物联网平台上的虚拟身份信息;
基于所述虚拟身份信息,生成所述泛协议设备和/或所述物联网协议适配网关对应的令牌;
将所述令牌通过所述第一数据传输通道传输至所述物联网平台;
其中,所述令牌至少包括预设签名算法和签名,所述令牌用于所述物联网平台根据所述预设签名算法对所述签名进行校验,以完成对所述泛协议设备和/或所述物联网协议适配网关的身份鉴权。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求7至11中任一项所述的物联网协议适配方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011050141.6A CN114338827B (zh) | 2020-09-29 | 2020-09-29 | 物联网协议适配网关、方法及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011050141.6A CN114338827B (zh) | 2020-09-29 | 2020-09-29 | 物联网协议适配网关、方法及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114338827A CN114338827A (zh) | 2022-04-12 |
CN114338827B true CN114338827B (zh) | 2024-04-09 |
Family
ID=81011349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011050141.6A Active CN114338827B (zh) | 2020-09-29 | 2020-09-29 | 物联网协议适配网关、方法及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114338827B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114817671B (zh) * | 2022-05-09 | 2024-06-04 | 宁波奥克斯电气股份有限公司 | 一种空调物联网的日志分析方法及系统 |
CN114726720B (zh) * | 2022-06-10 | 2022-09-30 | 广东卓维网络有限公司 | 小流量物联网网关升级方法、装置、设备和存储介质 |
CN115102800A (zh) * | 2022-06-16 | 2022-09-23 | 珠海格力电器股份有限公司 | 物联网设备的接入系统及接入方法 |
CN115314572B (zh) * | 2022-06-24 | 2024-01-16 | 国网信息通信产业集团有限公司 | 一种针对电力通信协议的协议转换方法、系统及设备 |
CN115550463A (zh) * | 2022-09-16 | 2022-12-30 | 深圳市润腾智慧科技有限公司 | 一种跨云物联网平台数据处理方法、装置及相关设备 |
CN115801912A (zh) * | 2022-10-30 | 2023-03-14 | 重庆旱獭信息技术有限公司 | 一种物联网设备接入网关的方法和系统 |
CN117097589B (zh) * | 2023-10-16 | 2024-01-12 | 四川省公路规划勘察设计研究院有限公司 | 一种应用于野外公路工程的多通道多协议设备接入网关 |
CN117156649B (zh) * | 2023-11-01 | 2024-03-01 | 中节能晶和科技有限公司 | 一种支持自动扩缩容接入不同数量单灯控的系统和方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102045896A (zh) * | 2010-11-22 | 2011-05-04 | 中山爱科数字科技有限公司 | 实现多协议及网络自适应的虚拟物联网网关系统 |
CN102638582A (zh) * | 2012-04-12 | 2012-08-15 | 华为技术有限公司 | 数据通信方法及通信端 |
CN103179027A (zh) * | 2011-12-22 | 2013-06-26 | 中兴通讯股份有限公司 | 一种实现电器设备兼容的方法和系统、通用外设接入网关 |
EP3148226A1 (en) * | 2015-09-24 | 2017-03-29 | Amrita Vishwa Vidyapeetham | Lot gateway capable of handling heterogenous protocols |
WO2018233029A1 (zh) * | 2017-06-21 | 2018-12-27 | 深圳市盛路物联通讯技术有限公司 | 一种基于汇聚单元的配置上报物联网数据的方法及设备 |
CN109150703A (zh) * | 2018-08-23 | 2019-01-04 | 北方工业大学 | 一种工业物联网智能云网关及其通信方法 |
CN110798329A (zh) * | 2018-08-01 | 2020-02-14 | 中兴通讯股份有限公司 | 物联网网关接入方法、设备以及存储介质 |
CN110971614A (zh) * | 2019-12-17 | 2020-04-07 | 软通动力信息技术(集团)有限公司 | 物联网适配方法、系统、计算机设备及存储介质 |
CN111586120A (zh) * | 2020-04-26 | 2020-08-25 | 上海锐至信息技术股份有限公司 | 物联网网关设备、数据传输方法、存储介质及安装方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105678647A (zh) * | 2016-03-26 | 2016-06-15 | 成都秦川科技发展有限公司 | 可用于智慧城市体系的智慧家用能源物联网系统 |
US20200225655A1 (en) * | 2016-05-09 | 2020-07-16 | Strong Force Iot Portfolio 2016, Llc | Methods, systems, kits and apparatuses for monitoring and managing industrial settings in an industrial internet of things data collection environment |
-
2020
- 2020-09-29 CN CN202011050141.6A patent/CN114338827B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102045896A (zh) * | 2010-11-22 | 2011-05-04 | 中山爱科数字科技有限公司 | 实现多协议及网络自适应的虚拟物联网网关系统 |
CN103179027A (zh) * | 2011-12-22 | 2013-06-26 | 中兴通讯股份有限公司 | 一种实现电器设备兼容的方法和系统、通用外设接入网关 |
CN102638582A (zh) * | 2012-04-12 | 2012-08-15 | 华为技术有限公司 | 数据通信方法及通信端 |
EP3148226A1 (en) * | 2015-09-24 | 2017-03-29 | Amrita Vishwa Vidyapeetham | Lot gateway capable of handling heterogenous protocols |
WO2018233029A1 (zh) * | 2017-06-21 | 2018-12-27 | 深圳市盛路物联通讯技术有限公司 | 一种基于汇聚单元的配置上报物联网数据的方法及设备 |
CN110798329A (zh) * | 2018-08-01 | 2020-02-14 | 中兴通讯股份有限公司 | 物联网网关接入方法、设备以及存储介质 |
CN109150703A (zh) * | 2018-08-23 | 2019-01-04 | 北方工业大学 | 一种工业物联网智能云网关及其通信方法 |
CN110971614A (zh) * | 2019-12-17 | 2020-04-07 | 软通动力信息技术(集团)有限公司 | 物联网适配方法、系统、计算机设备及存储介质 |
CN111586120A (zh) * | 2020-04-26 | 2020-08-25 | 上海锐至信息技术股份有限公司 | 物联网网关设备、数据传输方法、存储介质及安装方法 |
Non-Patent Citations (2)
Title |
---|
M2M业务泛在支撑平台的设计与实现;蒋丽华;曹毅;;微电子学(02);全文 * |
基于云计算的物联网数据网关的建设研究;梁爽;;计算机产品与流通(12);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114338827A (zh) | 2022-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114338827B (zh) | 物联网协议适配网关、方法及可读存储介质 | |
US20230144444A1 (en) | Virtual Gateway Control and Management | |
US9794304B2 (en) | Enterprise client-server system and methods of providing web application support through distributed emulation of websocket communications | |
US9118657B1 (en) | Extending secure single sign on to legacy applications | |
US8713177B2 (en) | Remote management of networked systems using secure modular platform | |
CN110808948B (zh) | 远程过程调用方法、装置及系统 | |
KR102407334B1 (ko) | 게이트웨이 장치 및 그 동작 방법 | |
CN112449315A (zh) | 一种网络切片的管理方法及相关装置 | |
US20120036208A1 (en) | Polling-based secure network message notification system and method with performance enhancing features | |
CN113556359B (zh) | 一种通讯协议转换方法、设备、系统及网关设备 | |
CN104394067A (zh) | 局域网通讯方法和装置 | |
KR101120778B1 (ko) | 브로드캐스트 서비스 가이드의 관리 객체 변경 방법,시스템 및 단말 | |
WO2020104010A1 (en) | Method and system for a network device to obtain a trusted state representation of the state of the distributed ledger technology network | |
CN110290176B (zh) | 基于mqtt的点对点信息推送方法 | |
US20220109980A1 (en) | Template-based registration | |
CN113037471A (zh) | 基于政务领域的跨系统、跨部门业务协作信息交换方法 | |
CN110391922B (zh) | 一种业务平台的版本提示方法和装置 | |
WO2020253330A1 (zh) | 客户端设备配置管理的方法和装置 | |
EP2203025A1 (en) | Method for transmitting sms and sms platform | |
WO2021082945A1 (zh) | 一种远程管理方法、系统、终端设备及服务器 | |
WO2019125202A1 (ru) | Система и способ управления push-уведомлениями | |
CN112153580B (zh) | 设置mcptt群组的方法、设备及系统 | |
KR100930953B1 (ko) | 메시징 서비스 시스템 및 그 방법 | |
US10097643B2 (en) | Technique for remote administration of a device belonging to a private network | |
CN113037541B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |