物联网数据通信方法和装置转让专利

申请号 : CN202310000508.0

文献号 : CN115695594B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 遆好贺许晨李明亮

申请人 : 徐工汉云技术股份有限公司

摘要 :

本申请公开一种物联网数据通信方法和装置,通过网关节点从终端设备发送的上报数据报文解析得到终端设备的设备标识、数据信息和与数据信息对应的属性信息,判断本地缓存中是否存在与终端设备对应的会话标识,如果本地缓存中存在与终端设备对应的会话标识,则从会话标识中获取与属性信息关联的数据压缩选项,根据数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示,将一定时间周期内持续接收的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,压缩得到压缩数据信息。本申请能够保证物联网平台对不同的终端设备接入的兼容性和可扩展性,同时满足不同的终端设备对上报数据处理的个性化需求。

权利要求 :

1.一种物联网数据通信方法,其特征在于,包括:

响应于接收到终端设备发送的上报数据报文,网关节点从所述上报数据报文解析得到所述终端设备的设备标识、数据信息和与所述数据信息对应的属性信息,并根据所述设备标识判断本地缓存中是否存在与所述终端设备对应的会话标识,其中所述会话标识包括所述设备标识、网关节点的标识和与所述属性信息关联的数据压缩选项;

如果所述本地缓存中存在与所述终端设备对应的所述会话标识,则所述网关节点从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示,执行第一处理:将一定时间周期内持续接收的所述终端设备发送的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,对所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,发送给第一消息队列;

平台服务节点从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列,并存储至后台数据库。

2.根据权利要求1所述的物联网数据通信方法,其特征在于,所述将一定时间周期内持续接收的所述终端设备发送的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,对所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,包括:网关节点将一定时间周期内持续接收的所述终端设备发送的上报数据报文中携带的同一属性信息的数据信息依次缓存在所述本地缓存;

从所述本地缓存中读取所述同一属性信息的数据信息组成数据信息序列,按照预定的压缩编码规则进行压缩,得到所述压缩数据信息,将所述会话标识、压缩编码规则的标识和所述压缩数据信息组装为所述第一数据接收报文。

3.根据权利要求2所述的物联网数据通信方法,其特征在于,所述平台服务节点从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列,包括:平台服务节点判断所述第一数据接收报文中携带的所述会话标识是否是平台服务节点已生成的与所述终端设备对应的会话标识;

如是,则根据所述第一数据接收报文中的压缩编码规则的标识对应的所述压缩编码规则对所述第一数据接收报文中的压缩数据信息进行解压缩,得到所述数据信息序列。

4.根据权利要求3所述的物联网数据通信方法,其特征在于,所述方法在所述网关节点从所述会话标识中获取与所述属性信息关联的数据压缩选项之后,包括:所述网关节点根据所述数据压缩选项指示的对所述属性信息对应的数据信息不进行压缩的第二指示,执行第二处理:将所述会话标识和所述数据信息组装为第二数据接收报文,发送给所述第一消息队列;

平台服务节点从所述第一消息队列读取所述第二数据接收报文,在确认所述第二数据接收报文中携带的所述会话标识有效时,从所述第二数据接收报文解析出所述数据信息,存储至后台数据库。

5.根据权利要求4所述的物联网数据通信方法,其特征在于,所述方法包括:

如果所述本地缓存中不存在与所述终端设备对应的所述会话标识,则所述网关节点生成所述终端设备对应的令牌,将所述令牌、网关节点的标识、所述设备标识和属性信息组装为鉴权请求报文,发送给第二消息队列;

平台服务节点从所述第二消息队列读取所述鉴权请求报文,根据所述鉴权请求报文中的所述令牌、设备标识对所述终端设备鉴权通过之后,生成所述终端设备对应的会话标识,并发送给与所述网关节点对应的第三消息队列,所述会话标识包括所述设备标识、网关节点的标识和与所述属性信息关联的数据压缩选项;

所述网关节点从所述第三消息队列读取所述会话标识,在所述本地缓存中缓存所述会话标识,并从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示或者不进行压缩的第二指示,分别执行所述第一处理或者所述第二处理。

6.根据权利要求5所述的物联网数据通信方法,其特征在于,所述会话标识包括活跃时间计时器和最大有效时长,所述方法还包括:网关节点在每次接收到所述终端设备发送的上报数据报文,不论执行所述第一处理或者所述第二处理,都会更新所述会话标识的活跃时间计时器为初始状态,以便在所述本地缓存的所述会话标识继续处于有效状态;

网关节点定期判断所述本地缓存中的所述会话标识的活跃时间计时器是否大于所述最大有效时长,如是,则从所述本地缓存清除所述会话标识。

7.根据权利要求4所述的物联网数据通信方法,其特征在于,所述方法包括:

所述网关节点从所述上报数据报文解析得到第一数据信息和与所述第一数据信息对应的第一属性信息、第二数据信息和与所述第二数据信息对应的第二属性信息;

所述网关节点从所述会话标识中分别获取与所述第一属性信息和第二属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述第一属性信息对应的第一数据信息进行压缩的第一指示以及对所述第二属性信息对应的第二数据信息不进行压缩的第二指示,分别对所述第一数据信息执行所述第一处理,对所述第二数据信息执行所述第二处理。

8.根据权利要求7所述的物联网数据通信方法,其特征在于,所述方法在平台服务节点生成所述终端设备对应的会话标识之后,包括:所述平台服务节点在共享缓存中保存所述终端设备对应的所述会话标识,以便任一平台服务节点都可以从所述共享缓存中读取所述会话标识。

9.根据权利要求8所述的物联网数据通信方法,其特征在于,所述一定时间周期包括所述会话标识中的与所述属性信息关联的数据压缩选项中指定的压缩时间周期。

10.一种物联网数据通信装置,其特征在于,包括:

数据解析单元,用于响应于接收到终端设备发送的上报数据报文,网关节点从所述上报数据报文解析得到所述终端设备的设备标识、数据信息和与所述数据信息对应的属性信息,并根据所述设备标识判断本地缓存中是否存在与所述终端设备对应的会话标识,其中所述会话标识包括所述设备标识、网关节点的标识和与所述属性信息关联的数据压缩选项;

数据处理单元,用于如果所述本地缓存中存在与所述终端设备对应的所述会话标识,则网关节点从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示,执行第一处理:将一定时间周期内持续接收的所述终端设备发送的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,对所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,发送给第一消息队列;

数据接收单元,用于平台服务节点从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列,并存储至后台数据库。

说明书 :

物联网数据通信方法和装置

技术领域

[0001] 本申请涉及物联网通信技术领域,具体而言,涉及一种物联网数据通信方法和装置。

背景技术

[0002] 随着物联网通信技术的快速发展,越来越多的终端设备开始通过物联网网关接入到云端物联网平台,向云端物联网平台发送各种监测数据,通过云端物联网平台进行数据分析、处理、展示、预警等业务增值服务。这些大量的监测数据通过物联网网关发送到云端物联网平台,极大地占用物联网的通信带宽,占用物联网网关和云端物联网平台的系统资源。为此,一些物联网数据采集系统通过在物联网网关中对终端设备的监测数据按照设备类型进行分类处理,并对分类数据执行字典压缩或者帧压缩等压缩处理,向云端物联网平台传送压缩后的归类数据,从而降低物联网的通信带宽和系统资源的占用。
[0003] 但是,一方面,这种现有的方案需要针对终端设备的设备类型及其数据特征为物联网网关和云端物联网平台开发特定的数据压缩处理代码,这些数据压缩处理代码与终端设备及其数据应用场景深度耦合,不具有通用性,导致物联网平台对不同的终端设备接入的兼容性和可扩展性较差;另一方面,不同的终端设备发送的监测数据具有不同的特征属性和应用场景,有些不需要进行压缩处理,而另一些则需要进行压缩处理,上述现有的方案无法满足这些不同的终端设备对上报数据处理的个性化需求。

发明内容

[0004] 有鉴于此,本申请提出一种物联网数据通信方法和装置,能够在降低对物联网平台中的通信带宽和系统资源的占用时,保证物联网平台对不同的终端设备接入的兼容性和可扩展性,同时满足不同的终端设备对上报数据处理的个性化需求。
[0005] 第一方面,本申请提出一种物联网数据通信方法,包括:
[0006] 响应于接收到终端设备发送的上报数据报文,网关节点从所述上报数据报文解析得到所述终端设备的设备标识、数据信息和与所述数据信息对应的属性信息,并根据所述设备标识判断本地缓存中是否存在与所述终端设备对应的会话标识,其中所述会话标识包括所述设备标识、网关节点的标识和与所述属性信息关联的数据压缩选项;
[0007] 如果所述本地缓存中存在与所述终端设备对应的所述会话标识,则所述网关节点从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示,执行第一处理:将一定时间周期内持续接收的所述终端设备发送的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,对所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,发送给第一消息队列;
[0008] 平台服务节点从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列,并存储至后台数据库。
[0009] 在可选的实施方式中,所述将一定时间周期内持续接收的所述终端设备发送的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,对所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,包括:
[0010] 网关节点将一定时间周期内持续接收的所述终端设备发送的上报数据报文中携带的同一属性信息的数据信息依次缓存在所述本地缓存;
[0011] 从所述本地缓存中读取所述同一属性信息的数据信息组成数据信息序列,按照预定的压缩编码规则进行压缩,得到所述压缩数据信息,将所述会话标识、压缩编码规则的标识和所述压缩数据信息组装为所述第一数据接收报文。
[0012] 在可选的实施方式中,所述平台服务节点从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列,包括:
[0013] 平台服务节点判断所述第一数据接收报文中携带的所述会话标识是否是平台服务节点已生成的与所述终端设备对应的会话标识;
[0014] 如是,则根据所述第一数据接收报文中的压缩编码规则的标识对应的所述压缩编码规则对所述第一数据接收报文中的压缩数据信息进行解压缩,得到所述数据信息序列。
[0015] 在可选的实施方式中,所述方法在所述网关节点从所述会话标识中获取与所述属性信息关联的数据压缩选项之后,包括:
[0016] 所述网关节点根据所述数据压缩选项指示的对所述属性信息对应的数据信息不进行压缩的第二指示,执行第二处理:将所述会话标识和所述数据信息组装为第二数据接收报文,发送给所述第一消息队列;
[0017] 平台服务节点从所述第一消息队列读取所述第二数据接收报文,在确认所述第二数据接收报文中携带的所述会话标识有效时,从所述第二数据接收报文解析出所述数据信息,存储至后台数据库。
[0018] 在可选的实施方式中,所述方法包括:
[0019] 如果所述本地缓存中不存在与所述终端设备对应的所述会话标识,则所述网关节点生成所述终端设备对应的令牌,将所述令牌、网关节点的标识、所述设备标识和属性信息组装为鉴权请求报文,发送给第二消息队列;
[0020] 平台服务节点从所述第二消息队列读取所述鉴权请求报文,根据所述鉴权请求报文中的所述令牌、设备标识对所述终端设备鉴权通过之后,生成所述终端设备对应的会话标识,并发送给与所述网关节点对应的第三消息队列,所述会话标识包括所述设备标识、网关节点的标识和与所述属性信息关联的数据压缩选项;
[0021] 所述网关节点从所述第三消息队列读取所述会话标识,在所述本地缓存中缓存所述会话标识,并从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示或者不进行压缩的第二指示,分别执行所述第一处理或者所述第二处理。
[0022] 在可选的实施方式中,所述会话标识包括活跃时间计时器和最大有效时长,所述方法还包括:
[0023] 网关节点在每次接收到所述终端设备发送的上报数据报文,不论执行所述第一处理或者所述第二处理,都会更新所述会话标识的活跃时间计时器为初始状态,以便在所述本地缓存的所述会话标识继续处于有效状态;
[0024] 网关节点定期判断所述本地缓存中的所述会话标识的活跃时间计时器是否大于所述最大有效时长,如是,则从所述本地缓存清除所述会话标识。
[0025] 在可选的实施方式中,所述方法包括:
[0026] 所述网关节点从所述上报数据报文解析得到第一数据信息和与所述第一数据信息对应的第一属性信息、第二数据信息和与所述第二数据信息对应的第二属性信息;
[0027] 所述网关节点从所述会话标识中分别获取与所述第一属性信息和第二属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述第一属性信息对应的第一数据信息进行压缩的第一指示以及对所述第二属性信息对应的第二数据信息不进行压缩的第
二指示,分别对所述第一数据信息执行所述第一处理,对所述第二数据信息执行所述第二处理。
[0028] 在可选的实施方式中,所述方法在平台服务节点生成所述终端设备对应的会话标识之后,包括:所述平台服务节点在共享缓存中保存所述终端设备对应的所述会话标识,以便任一平台服务节点都可以从所述共享缓存中读取所述会话标识。
[0029] 在可选的实施方式中,所述一定时间周期包括所述会话标识中的与所述属性信息关联的数据压缩选项中指定的压缩时间周期。
[0030] 第二方面,本申请提出一种物联网数据通信装置,包括:
[0031] 数据解析单元,用于响应于接收到终端设备发送的上报数据报文,网关节点从所述上报数据报文解析得到所述终端设备的设备标识、数据信息和与所述数据信息对应的属性信息,并根据所述设备标识判断本地缓存中是否存在与所述终端设备对应的会话标识,其中所述会话标识包括所述设备标识、网关节点的标识和与所述属性信息关联的数据压缩选项;
[0032] 数据处理单元,用于如果所述本地缓存中存在与所述终端设备对应的所述会话标识,则网关节点从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示,执行第一处理:将一定时间周期内持续接收的所述终端设备发送的上报数据报文中携带的同一属性信息
的数据信息组成数据信息序列,对所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,发送给第一消息队列;
[0033] 数据接收单元,用于平台服务节点从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列,并存储至后台数据库。
[0034] 本申请实施例至少可以达到如下有益效果:
[0035] 本申请实施例通过网关节点从终端设备发送的上报数据报文解析得到所述终端设备的设备标识、数据信息和与所述数据信息对应的属性信息,判断本地缓存中是否存在与所述终端设备对应的会话标识,如果所述本地缓存中存在与所述终端设备对应的所述会话标识,则网关节点从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示,执行第一处理,即将一定时间周期内持续接收的所述终端设备发送的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,将所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,发送给第一消息队列;平台服务节点从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列。从而,本申请实施例无需根据不同的终端设备的接入的应用场景为物联网网关和云端物联网平台开发特定的数据压缩处理代码,能够在降低对物联网平台中的通信带宽和系统资源的占用时,保证物联网平台对不同的终端设备接入的兼容性和可扩展性,同时满足不同的终端设备对上报数据处理的个性化需求。

附图说明

[0036] 为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍。应当理解,以下附图仅示出了本申请的某些实施例,而不应被看作是对本申请范围的限制。
[0037] 图1是本申请实施例涉及的物联网通信系统100的结构示意图;
[0038] 图2是根据本申请一实施例的物联网数据通信方法的流程示意图;
[0039] 图3是根据本申请另一实施例的物联网数据通信方法的部分流程示意图;
[0040] 图4是根据本申请另一实施例的物联网数据通信方法的部分流程示意图;
[0041] 图5是根据本申请另一实施例的物联网数据通信方法的部分流程示意图;
[0042] 图6是根据本申请另一实施例的物联网数据通信方法的部分流程示意图;
[0043] 图7是根据本申请另一实施例的物联网数据通信方法的部分流程示意图;
[0044] 图8是根据本申请一实施例的物联网数据通信装置的结构示意图;
[0045] 图9是根据本申请另一实施例的物联网数据通信装置的部分结构示意图。

具体实施方式

[0046] 为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请实施例的附图,对本申请实施例中的技术方案进行清楚、完整地描述。然而,应当理解,所描述的实施例仅仅是本申请的部分示例性实施例,而不是全部实施例,因此以下对本申请实施例的详细描述并非旨在限制本申请要求保护的范围。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0047] 需要说明的是,本申请的说明书和权利要求书中的术语“第一”、“第二”等仅是用于区别描述类似的对象,而不是用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。
[0048] 如前所述,现有的一些物联网数据通信系统通过在物联网网关中对终端设备的监测数据按照设备类型进行分类处理,并对分类数据执行字典压缩或者帧压缩等压缩处理,向云端物联网平台传送压缩后的归类数据,从而降低物联网的通信带宽和系统资源的占用。但是,一方面,这种现有的方案需要针对终端设备的设备类型及其数据特征为物联网网关和云端物联网平台开发特定的数据压缩处理代码,这些数据压缩处理代码与终端设备及其数据应用场景深度耦合,不具有通用性,导致物联网平台对不同的终端设备接入的兼容性和可扩展性较差;另一方面,不同的终端设备发送的监测数据具有不同的特征属性和应用场景,有些不需要进行压缩处理,而另一些则需要进行压缩处理,上述现有的方案无法满足这些不同的终端设备对上报数据处理的个性化需求。因此,为了解决上述问题,本申请提出一种物联网数据通信方法和装置,能够在降低对物联网平台中的通信带宽和系统资源的占用时,保证物联网平台对不同的终端设备接入的兼容性和可扩展性,同时满足不同的终端设备对上报数据处理的个性化需求。
[0049] 图1是本申请实施例涉及的物联网通信系统100的结构示意图。该系统100包括一个或多个终端设备110、一个或多个网关节点120、消息队列130以及一个或多个平台服务节点140。其中,一个或多个终端设备110可以通过多种通信协议与所述一个或多个网关节点
120中的对应的网关节点120进行通信连接,向所述一个或多个网关节点120中的对应的网关节点120发送上报数据报文,所述一个或多个网关节点120对接收的上报数据报文进行解析,转换为平台服务节点140所支持的统一报文格式的数据接收报文,发送给所述消息队列
130。一个或多个平台服务节点140中的任一平台服务节点140可以从所述消息队列130读取所述数据接收报文,实现上报数据的接收、存储和转发。
[0050] 在一些实施方式中,终端设备110可以是拟接入平台服务节点140的物理传感器或者其他物理终端设备,终端设备110可以基于多种物联网通信协议,例如MQTT、TCP、UDP、COAP、HTTP等协议格式,向网关节点120发送上报数据报文。每个终端设备110都具有唯一的设备标识。
[0051] 在一些实施方式中,一个或多个网关节点120可以实现为分布式集群中的一个或多个服务节点,每个网关节点120可以用唯一的标识来标识。网关节点120还可以根据接入的终端设备110的数量进行节点的数量扩展。
[0052] 在一些实施方式中,消息队列130可以包括一个或多个消息队列的分布式消息队列,基于生产者和消费者模式实现网关节点120和平台服务节点140之间的消息交互通信,实现网关节点120和平台服务节点140之间的解耦的异步通信。
[0053] 在一些实施方式中,一个或多个平台服务节点140是云端物联网平台中提供平台服务的一个或多个服务节点,与网关节点120一样,也可以实现为分布式集群中的一个或多个服务节点,每个平台服务节点140可以用唯一的标识来标识。平台服务节点140可以根据云端物联网平台性能的需要进行动态数量扩展,以实现云端物联网平台的可伸缩性和负载均衡。一个或多个平台服务节点140可以作为一个消费者组,使得任一平台服务节点可以基于负载均衡的方式从所述消息队列130读取消息。
[0054] 图2是根据本申请一实施例的物联网数据通信方法的流程示意图。如图2所示,该方法基于上述物联网通信系统100,包括以下步骤:
[0055] 步骤S201,响应于接收到终端设备110发送的上报数据报文,网关节点120从所述上报数据报文解析得到所述终端设备110的设备标识、数据信息和与所述数据信息对应的属性信息,并根据所述设备标识判断本地缓存中是否存在与所述终端设备110对应的会话标识,其中所述会话标识包括所述设备标识、网关节点120的标识和与所述属性信息关联的数据压缩选项。
[0056] 步骤S202,如果所述本地缓存中存在与所述终端设备110对应的所述会话标识,则网关节点120从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示,执行第一处理:将一定时间周期内持续接收的所述终端设备110发送的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,对所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,发送给第一消息队列。
[0057] 步骤S203,平台服务节点140从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列,并存储至后台数据库。
[0058] 本实施例中,终端设备110基于多种物联网通信协议,例如MQTT、TCP、UDP、COAP、HTTP等协议格式,向对应的网关节点120发送上报数据报文。上报数据报文携带有所述终端设备110的设备标识、数据信息和与所述数据信息对应的属性信息。所述终端设备110的设备标识用于唯一标识所述终端设备110。其中,数据信息是所述终端设备110拟向云端物联网平台上报的一个或多个监测数据。与所述数据信息对应的属性信息包括用于指示所述数据信息属于周期数据或者非周期数据的属性信息。其中,周期数据是指需要按照一定时间间隔持续定时向网关节点120发送的监测数据,例如从传感器以一定时间间隔定期采集的数据,而非周期数据是指非周期性地向网关节点120发送的监测数据,例如基于用户或外部触发事件驱动产生的监测数据。在另一个实施方式中,可选地,与所述数据信息对应的属性信息还可以包括数据名称等其他属性信息。
[0059] 本实施例中,在网关节点120接收到终端设备110发送的上报数据报文之后,网关节点120首先从所述上报数据报文解析得到所述终端设备110的设备标识、数据信息和与所述数据信息对应的属性信息,然后根据所述设备标识判断本地缓存中是否存在与所述终端设备110对应的会话标识,其中所述会话标识包括所述设备标识、网关节点120的标识和与所述属性信息关联的数据压缩选项。网关节点120的本地缓存中的与所述终端设备110对应的会话标识是网关节点120在首次接收到终端设备110的上报数据报文,而向云端的平台服务节点140请求对所述终端设备110进行鉴权通过后,由平台服务节点140为所述终端设备110生成的全局唯一的会话标识。所述会话标识用于提供在所述终端设备110鉴权通过之后的网关节点120和平台服务节点140之间的可信数据通信。
[0060] 本实施例中,所述会话标识包括所述终端设备110的设备标识、网关节点120的标识和与所述属性信息关联的数据压缩选项。其中,终端设备110的设备标识、网关节点120的标识用于表征所述会话标识与所述终端设备110、所述网关节点120的唯一关联性。与所述属性信息关联的数据压缩选项是平台服务节点140根据所述终端设备110上报的数据信息对应的属性信息而为所述终端设备110生成的个性化的数据压缩选项。在一个实施方式中,与所述属性信息关联的数据压缩选项可以是每个终端设备110注册到云端物联网平台时,云端物联网平台给每个终端设备110提供的个性化的配置选项。该配置选项在终端设备110注册到云端物联网平台时由终端设备110所属的租户进行初始化配置得到,该配置选项可以根据所述终端设备110的上报数据的特征属性以及应用场景进行个性化设置。本实施例通过平台服务节点140给终端设备110生成的会话标识中同时携带与所述属性信息关联的
数据压缩选项,每个网关节点120无需在本地节点中动态维护针对各个终端设备110的数据压缩配置选项,可以针对不同终端设备110的上报数据报文中的数据信息对应的属性信息对数据信息执行个性化的上报数据处理。
[0061] 本实施例中,如果网关节点120的本地缓存中存在与所述终端设备110对应的所述会话标识,则网关节点120从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示,执行第一处理,即将一定时间周期内持续接收的所述终端设备110发送的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,将所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,发送给第一消息队列。
[0062] 例如,如果平台服务节点140为所述终端设备110生成的会话标识中,与所述属性信息关联的数据压缩选项指定了对所述终端设备110上报的数据信息对应的某个目标属性信息启用压缩处理的选项,那么网关节点120在收到来自所述终端设备110的上报数据报文时,如果所述上报数据报文中携带了所述目标属性信息关联的数据信息,则网关节点120不对本次接收的上报数据报文进行数据接收报文的转换组装和向第一消息队列发送,而是将一定时间周期内持续接收的所述终端设备110发送的上报数据报文中携带的同一目标属性信息的数据信息组成数据信息序列,将所述数据信息序列进行压缩得到压缩数据信息,随后再将所述会话标识和所述压缩数据信息组装为第一数据接收报文,即转换为平台服务节点140支持的统一报文格式,发送给第一消息队列。在一些实施方式中,所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示可以包括对终端设备110上报的周期数据进行压缩的指示。
[0063] 而后,平台服务节点140从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列,并存储至后台数据库。从而,平台服务节点140在基于会话标识确认所述第一数据接收报文的可信数据通信的基础上,可以得到经过解压后的数据信息序列。
[0064] 在一个实施方式中,持续接收所述终端设备110发送的上报数据报文的所述一定时间周期也可以在所述会话标识中的与所述属性信息关联的数据压缩选项中进行指定。
[0065] 本实施例通过网关节点120从终端设备110发送的上报数据报文解析得到所述终端设备110的设备标识、数据信息和与所述数据信息对应的属性信息,根据所述设备标识判断本地缓存中是否存在与所述终端设备110对应的会话标识,如果所述本地缓存中存在与所述终端设备110对应的所述会话标识,则网关节点102从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示,执行第一处理,即将一定时间周期内持续接收的所述终端设备110发送的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,将所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,发送给第一消息队列;平台服务节点140从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列,并存储至后台数据库。
从而,本申请实施例无需根据不同的终端设备的接入的应用场景为物联网网关和云端物联网平台开发特定的数据压缩处理代码,能够在降低对物联网平台中的通信带宽和系统资源的占用时,保证物联网平台对不同的终端设备接入的兼容性和可扩展性,同时满足不同的终端设备对上报数据处理的个性化需求。
[0066] 图3是根据本申请另一实施例的物联网数据通信方法的部分流程示意图。如图3所示,在前述任一实施例的方法步骤的基础上,所述步骤S202中将一定时间周期内持续接收的所述终端设备110发送的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,对所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,可以包括以下步骤:
[0067] 步骤S301,将一定时间周期内持续接收的所述终端设备发送的上报数据报文中携带的同一属性信息的数据信息依次缓存在所述本地缓存;
[0068] 步骤S302,从所述本地缓存中读取所述同一属性信息的数据信息组成数据信息序列,按照预定的压缩编码规则进行压缩,得到所述压缩数据信息,将所述会话标识、压缩编码规则的标识和所述压缩数据信息组装为所述第一数据接收报文。
[0069] 本实施例中,预定的压缩编码规则可以包括但不限于一阶差分编码和二阶差分编码。一阶差分编码是保持所述数据信息序列中的第一个数据不变,其他数据转换为第一个数据的差值或者上一个数据的差值。二阶差分编码是在一阶差分编码的基础上再一次使用一阶差分编码。本实施例通过在网关节点120和平台服务节点140预置一阶差分编码和二阶差分编码的压缩编码规则,网关节点120从本地缓存中读取所述同一属性信息的数据信息组成数据信息序列之后,按照预定的压缩编码规则对所述数据信息序列进行压缩,得到所述压缩数据信息,然后将所述会话标识、压缩编码规则的标识和所述压缩数据信息组装为所述第一数据接收报文。所述压缩编码规则的标识是用于标识所述第一数据接收报文具体采用哪个压缩编码规则的标志字段。如此,平台服务节点140在接收到所述第一数据接收报文之后可以根据具体的压缩编码规则对相应的压缩数据信息进行解压缩,从而实现对不同终端设备110的上报数据报文的兼容性和个性化的压缩处理。
[0070] 在此基础上,如图4所示,在前述任一实施例的方法步骤的基础上,所述步骤S203中所述平台服务节点140从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列,可以包括以下步骤:
[0071] 步骤S401,平台服务节点140判断所述第一数据接收报文中携带的所述会话标识是否是平台服务节点140已生成的与所述终端设备110对应的会话标识;
[0072] 步骤S402,如是,则根据所述第一数据接收报文中的压缩编码规则的标识对应的所述压缩编码规则对所述第一数据接收报文中的压缩数据信息进行解压缩,得到所述数据信息序列。
[0073] 本实施例通过平台服务节点140在接收到所述第一数据接收报文之后,判断所述第一数据接收报文中携带的所述会话标识是否是任一平台服务节点140已生成的与所述终端设备110对应的会话标识,在确保所述会话标识是任一平台服务节点140已生成的与所述终端设备110对应的会话标识,即该第一数据接收报文属于可信数据通信之后,可以进一步根据所述第一数据接收报文携带的压缩编码规则的标识获得对应的压缩编码规则,对该第一数据接收报文中相应的压缩数据信息进行解压缩,从而实现对不同终端设备110的上报数据报文的兼容性和个性化的压缩处理。
[0074] 图5是根据本申请另一实施例的物联网数据通信方法的部分流程示意图。如图5所示,在前述任一实施例的方法步骤基础上,所述方法在所述网关节点120从所述会话标识中获取与所述属性信息关联的数据压缩选项之后,可以进一步包括以下步骤:
[0075] 步骤S501,网关节点120根据所述数据压缩选项指示的对所述属性信息对应的数据信息不进行压缩的第二指示,执行第二处理:将所述会话标识和所述数据信息组装为第二数据接收报文,发送给所述第一消息队列;
[0076] 步骤S502,平台服务节点140从所述第一消息队列读取所述第二数据接收报文,在确认所述第二数据接收报文中携带的所述会话标识有效时,从所述第二数据接收报文解析出所述数据信息,存储至后台数据库。
[0077] 本实施例通过网关节点120从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息不进行压缩的第二指示,执行第二处理,直接将所述会话标识和所述数据信息组装为第二数据接收报文,发送给所述第一消息队列。在一些实施方式中,所述数据压缩选项指示的对所述属性信息对应的数据信息不进行压缩的第二指示可以包括对终端设备110上报的非周期数据不进行压缩的指示或者对特定的终端设备110上报的周期数据不进行压缩的指示,这些特定的终端设备110上报的周期数据可能因为应用场景对上报数据的实时性需求而不要求进行压缩处
理。随后,平台服务节点140从所述第一消息队列读取所述第二数据接收报文,在确认所述第二数据接收报文中携带的所述会话标识有效时,可以直接从所述第二数据接收报文解析出所述数据信息,存储至后台数据库。从而,本申请实施例无需根据不同的终端设备的接入的应用场景为物联网网关和云端物联网平台开发特定的数据压缩处理代码,能够在降低对物联网平台中的通信带宽和系统资源的占用时,保证物联网平台对不同的终端设备接入的兼容性和可扩展性,同时满足不同的终端设备对上报数据处理的个性化需求。
[0078] 图6是根据本申请另一实施例的物联网数据通信方法的部分流程示意图。如图6所示,本申请实施例在前述任一实施例的方法步骤基础上,还可以包括以下步骤:
[0079] 步骤S601,如果所述本地缓存中不存在与所述终端设备110对应的所述会话标识,则所述网关节点120生成所述终端设备110对应的令牌,将所述令牌、网关节点120的标识、所述设备标识和属性信息组装为鉴权请求报文,发送给第二消息队列;
[0080] 步骤S602,平台服务节点140从所述第二消息队列读取所述鉴权请求报文,根据所述鉴权请求报文中的所述令牌、设备标识对所述终端设备110鉴权通过之后,生成与所述终端设备110对应的会话标识,并发送给与所述网关节点120对应的第三消息队列,所述会话标识包括所述设备标识、网关节点120的标识和与所述属性信息关联的数据压缩选项;
[0081] 步骤S603,所述网关节点120从所述第三消息队列读取所述会话标识,在所述本地缓存中缓存所述会话标识,并从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示或者不进行压缩的第二指示,分别执行所述第一处理或者所述第二处理。
[0082] 本实施例在终端设备110首次向网关节点120发送上报数据报文时,网关节点120本地缓存中没有缓存所述终端设备110对应的会话标识,网关节点120和平台服务节点140无法确认该终端设备110是否属于可信的终端设备,因此网关节点120需要启用设备鉴权认证过程。具体而言,所述网关节点120生成所述终端设备110对应的令牌,将所述令牌、网关节点120的标识、所述终端设备110的设备标识和上报数据报文中的数据信息对应的属性信息组装为鉴权请求报文,发送给第二消息队列。平台服务节点140从所述第二消息队列读取所述鉴权请求报文之后,根据所述鉴权请求报文中的所述令牌、设备标识对所述终端设备
110进行鉴权,判断所述终端设备110是否属于云端物联网平台中已注册的可信终端设备,在设备鉴权通过之后,生成与所述终端设备110对应的会话标识,并发送给与所述网关节点
120对应的第三消息队列,所述会话标识包括所述终端设备110的设备标识、网关节点120的标识和与所述属性信息关联的数据压缩选项。所述网关节点120从所述第三消息队列读取所述会话标识,在所述本地缓存中缓存所述会话标识,并从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示或者不进行压缩的第二指示,分别执行前述实施例的所述第一处理或者所述第二处理。
[0083] 在一个实施方式中,与所述属性信息关联的数据压缩选项可以是每个终端设备110注册到云端物联网平台时提供的个性化的配置选项。该配置选项在终端设备110注册到云端物联网平台时由终端设备110所属的租户进行初始化配置得到。
[0084] 如下表1示出了一种示例性的终端设备110的配置选项。如表1所示,该配置选项中,对于设备标识Device01的终端设备110的属性信息1“周期数据”、属性信息2指定的数据名称“DataName1”,是否启用压缩的标志设置为“是”,压缩时间周期为“15分钟”;对于设备标识Device01的终端设备的属性信息1“非周期数据”、属性信息2指定的数据名称
“DataName2”,是否启用压缩的标志设置为“否”,压缩时间周期为“0”,即对于该设备标识Device01的终端设备110,对于其数据名称“DataName1”的周期数据启用压缩处理,且压缩时间周期(一次压缩的时间周期)为15分钟,对于其数据名称“DataName2”的非周期数据不启用压缩处理。如此,平台服务节点140在收到网关节点120发送的针对设备标识Device01的终端设备110的鉴权请求报文时,如果所述鉴权请求报文中携带的属性信息包含了类似{“周期数据”,“DataName1”;“非周期数据”,“DataName2”}的多元组集合,那么平台服务节点140在对该终端设备110鉴权通过后,生成与所述终端设备110对应的会话标识,所述会话标识包括所述终端设备110的设备标识、网关节点120的标识和与所述属性信息关联的数据压缩选项,与所述属性信息关联的数据压缩选项例如可以是如下形式:{“周期数据”,“DataName1”,“启用压缩”,“15分钟”;“非周期数据”,“DataName2”,“不启用压缩”,“0”}。由此,网关节点120在本地缓存该会话标识之后,根据所述会话标识携带的该与所述属性信息关联的数据压缩选项,对于来自设备标识Device01的终端设备110的上报数据报文,会在每个压缩时间周期15分钟内持续接收的上报数据报文中携带的属性信息为{“周期数据”,“DataName1”}的数据信息组成数据信息序列,将所述数据信息序列进行压缩得到压缩数据信息,然后将所述会话标识和所述压缩数据信息组装为第一数据接收报文,发送给第一消息队列。而对于上报数据报文中携带的属性信息为{“非周期数据”,“DataName2”}的数据信息,每次接收到之后不执行压缩处理,直接将所述会话标识和所述数据信息组装为第二数据接收报文,发送给所述第一消息队列。
[0085] 再如表1所示,对于设备标识Device02的终端设备110的属性信息1“周期数据”、属性信息2指定的数据名称“DataName3”以及属性信息1“非周期数据”、属性信息2指定的数据名称“DataName4”,其是否启用压缩的标志都设置为“否”,压缩时间周期为“0””,即对于该设备标识Device02的终端设备110,对于其数据名称“DataName3”的周期数据和数据名称“DataName4”的非周期数据都不启用压缩处理。这种情形下,可能因为应用场景对设备标识Device02的终端设备110的上报数据的实时性要求而不要求进行压缩处理,从而满足该终端设备110的应用场景的个性化处理需求。
[0086] 表1
[0087]
[0088] 需要说明的是,在其他的一些实施方式,与所述数据信息对应的属性信息中,数据名称等其他属性信息是可选的,可以仅依据周期数据或者非周期数据的属性信息来指定数据压缩选项。
[0089] 在一些实施方式中,平台服务节点140为所述终端设备110和网关节点120生成的所述会话标识包括活跃时间计时器和最大有效时长。活跃时间计时器是表征所述会话标识当前的活跃时间的状态属性,最大有效时长是表征所述会话标识在网关节点120的本地缓存中的最大有效期。如果活跃时间计数器大于了最大有效时长,那么就表示该会话标识已经超过有效期,处于失效状态。这种失效状态下,会话标识会被从网关节点120的本地缓存中清除,网关节点120如果再次接收到来自终端设备110的上报数据报文,就要重新向平台服务节点140发起鉴权请求报文,对该终端设备110执行重新鉴权认证。
[0090] 在一些实施方式中,网关节点120在每次接收到所述终端设备110发送的上报数据报文时,不论执行所述第一处理或者所述第二处理,都会更新所述会话标识的活跃时间计时器为初始状态,以便在所述本地缓存的所述会话标识继续处于有效状态。
[0091] 网关节点120还会定期判断所述本地缓存中的所述会话标识的活跃时间计时器是否大于所述最大有效时长,如是,则从所述本地缓存清除所述会话标识。从而,在会话标识的每个有效期期间,网关节点120接收到来自终端设备110的上报数据报文,因为本地缓存中的会话标识仍然在最大有效时长之内处于有效状态,网关节点120不会重新针对该终端设备110向平台服务节点140发起鉴权请求报文。只有当终端设备110的单次上报数据报文的间隔时间超过了该会话标识的最大有效时长之后,此时可以判定所述终端设备110可能发生设备故障或离线,这时与该终端设备110对应的会话标识因为超过最大有效时长而被网关节点120从本地缓存中清除,当所述终端设备110后续重新上线向所述网关节点120发送上报数据报文时,网关节点120会重新发起鉴权请求报文,以便平台服务节点140重新为所述终端设备110和网关节点120生成新的会话标识。此外,在会话标识的每个有效时长期间,网关节点120接收到来自终端设备110的上报数据报文,都会更新所述会话标识的活跃时间计时器为初始状态,以便在下一个有效时长期间继续监测和接收所述终端设备110的上报数据报文。
[0092] 在一些实施方式中,所述方法在平台服务节点140生成所述终端设备110对应的会话标识之后,包括:所述平台服务节点140在共享缓存中保存所述终端设备110对应的所述会话标识,以便所有的平台服务节点140都可以从所述共享缓存中访问所述会话标识。这种方式的好处是云端物联网平台的任一平台服务节点140处理了所述网关节点120发送的鉴权请求报文,并为所述终端设备110和网关节点120生成了唯一的会话标识之后,由于全部平台服务节点属于对等节点的结构,当云端物联网平台的分布式集群基于负载均衡机制调度任一其他平台服务节点接收后续网关节点120传送给第一消息队列的第一数据接收报文或第二数据接收报文之后,任一其他平台服务节点都可以基于共享缓存中的所述终端设备
110对应的会话标识进行可信数据通信认证。
[0093] 图7是根据本申请另一实施例的物联网数据通信方法的部分流程示意图。如图7所示,在前述任一实施例的方法步骤基础上,所述方法还可以包括以下步骤:
[0094] 步骤S701,所述网关节点120从所述上报数据报文解析得到第一数据信息和与所述第一数据信息对应的第一属性信息、第二数据信息和与所述第二数据信息对应的第二属性信息;
[0095] 步骤S702,所述网关节点120从所述会话标识中分别获取与所述第一属性信息和第二属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述第一属性信息对应的第一数据信息进行压缩的第一指示以及对所述第二属性信息对应的第二数据信息不
进行压缩的第二指示,分别对所述第一数据信息执行所述第一处理,对所述第二数据信息执行所述第二处理。
[0096] 本实施例中,终端设备110向网关节点120发送的上报数据报文中同时携带有第一数据信息和第二数据信息,其中第一数据信息具有对应的第一属性信息、第二数据信息具有对应的第二属性信息。网关节点120可以根据从本地缓存中的会话标识中获得与所述第一属性信息和第二属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述第一属性信息对应的第一数据信息进行压缩的第一指示,对所述第一数据信息执行所述第一处理,即将一定时间周期内持续接收的所述终端设备110发送的上报数据报文中携带的同属于第一属性信息的第一数据信息组成数据信息序列,将所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,发送给第一消息队列。同时,根据所述数据压缩选项指示的对所述第二属性信息对应的第二数据信息不进行压缩的第二指示,对所述第二数据信息执行所述第二处理,即直接将所述会话标识和所述第二数据信息组装为第二数据接收报文,发送给所述第一消息队列。从而,可以针对每个终端设备110发送的上报数据报文中携带的多种属性信息的数据信息分别执行不同的数据处理,在保证物联网平台对不同的终端设备110接入的兼容性和可扩展性的基础上,实现对不同的终端设备110的上报数据报文的个性化处理。
[0097] 图8是根据本申请一实施例的物联网数据通信装置的结构示意图。如图8所示,本申请实施例的物联网数据通信装置,可以包括以下单元:
[0098] 数据解析单元801,用于响应于接收到终端设备110发送的上报数据报文,网关节点120从所述上报数据报文解析得到所述终端设备110的设备标识、数据信息和与所述数据信息对应的属性信息,并根据所述设备标识判断本地缓存中是否存在与所述终端设备110对应的会话标识,其中所述会话标识包括所述设备标识、网关节点120的标识和与所述属性信息关联的数据压缩选项。
[0099] 数据处理单元802,用于如果所述本地缓存中存在与所述终端设备110对应的所述会话标识,则网关节点120从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示,执行第一处理:将一定时间周期内持续接收的所述终端设备110发送的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,对所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,发送给第一消息队列。
[0100] 数据接收单元803,用于平台服务节点140从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列,并存储至后台数据库。
[0101] 在前述任一实施例的基础上,所述数据处理单元802还用于:
[0102] 将一定时间周期内持续接收的所述终端设备110发送的上报数据报文中携带的同一属性信息的数据信息依次缓存在所述本地缓存;
[0103] 从所述本地缓存中读取所述同一属性信息的数据信息组成数据信息序列,按照预定的压缩编码规则进行压缩,得到所述压缩数据信息,将所述会话标识、压缩编码规则的标识和所述压缩数据信息组装为所述第一数据接收报文。
[0104] 在前述任一实施例的基础上,所述数据接收单元803还可以用于:
[0105] 平台服务节点140判断所述第一数据接收报文中携带的所述会话标识是否是平台服务节点140已生成的与所述终端设备110对应的会话标识;
[0106] 如是,则根据所述第一数据接收报文中的压缩编码规则的标识对应的所述压缩编码规则对所述第一数据接收报文中的压缩数据信息进行解压缩,得到所述数据信息序列。
[0107] 在前述任一实施例的基础上,所述数据处理单元802还用于:
[0108] 网关节点120根据所述数据压缩选项指示的对所述属性信息对应的数据信息不进行压缩的第二指示,执行第二处理:将所述会话标识和所述数据信息组装为第二数据接收报文,发送给所述第一消息队列;
[0109] 平台服务节点140从所述第一消息队列读取所述第二数据接收报文,在确认所述第二数据接收报文中携带的所述会话标识有效时,从所述第二数据接收报文解析出所述数据信息,存储至后台数据库。
[0110] 在前述任一实施例的基础上,如图9所示,所述装置还包括:
[0111] 鉴权请求单元901,用于如果所述本地缓存中不存在与所述终端设备110对应的所述会话标识,则所述网关节点120生成所述终端设备110对应的令牌,将所述令牌、网关节点120的标识、所述设备标识和属性信息组装为鉴权请求报文,发送给第二消息队列;
[0112] 会话生成单元902,用于平台服务节点140从所述第二消息队列读取所述鉴权请求报文,根据所述鉴权请求报文中的所述令牌、设备标识对所述终端设备110鉴权通过之后,生成与所述终端设备110对应的会话标识,并发送给与所述网关节点120对应的第三消息队列,所述会话标识包括所述设备标识、网关节点120的标识和与所述属性信息关联的数据压缩选项;
[0113] 会话处理单元903,用于所述网关节点120从所述第三消息队列读取所述会话标识,在所述本地缓存中缓存所述会话标识,并从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示或者不进行压缩的第二指示,分别执行所述第一处理或者所述第二处理。
[0114] 在前述任一实施例的基础上,所述数据解析单元801还用于:所述网关节点120从所述上报数据报文解析得到第一数据信息和与所述第一数据信息对应的第一属性信息、第二数据信息和与所述第二数据信息对应的第二属性信息;
[0115] 所述数据处理单元802还用于:所述网关节点120从所述会话标识中分别获取与所述第一属性信息和第二属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述第一属性信息对应的第一数据信息进行压缩的第一指示以及对所述第二属性信息对应的第二数据信息不进行压缩的第二指示,分别对所述第一数据信息执行所述第一处理,对所述第二数据信息执行所述第二处理。
[0116] 本申请实施例的物联网数据通信方法和装置,通过网关节点从终端设备发送的上报数据报文解析得到所述终端设备的设备标识、数据信息和与所述数据信息对应的属性信息,判断本地缓存中是否存在与所述终端设备对应的会话标识,如果所述本地缓存中存在与所述终端设备对应的所述会话标识,则网关节点从所述会话标识中获取与所述属性信息关联的数据压缩选项,根据所述数据压缩选项指示的对所述属性信息对应的数据信息进行压缩的第一指示,执行第一处理,即将一定时间周期内持续接收的所述终端设备发送的上报数据报文中携带的同一属性信息的数据信息组成数据信息序列,将所述数据信息序列进行压缩得到压缩数据信息,将所述会话标识和所述压缩数据信息组装为第一数据接收报文,发送给第一消息队列;平台服务节点从所述第一消息队列读取所述第一数据接收报文,在确认所述第一数据接收报文中携带的所述会话标识有效时,对所述第一数据接收报文中的所述压缩数据信息进行解压缩,得到所述数据信息序列。从而,本申请实施例无需根据不同的终端设备的接入的应用场景为物联网网关和云端物联网平台开发特定的数据压缩处
理代码,能够在降低对物联网平台中的通信带宽和系统资源的占用时,保证物联网平台对不同的终端设备接入的兼容性和可扩展性,同时满足不同的终端设备对上报数据处理的个性化需求。
[0117] 需要说明的是,本领域技术人员可以理解,本申请的方法实施例所描述的不同实施方式及其说明解释和所达到的技术效果,同样适用于本申请的装置实施例中,在此不再赘述。
[0118] 进一步地,本申请实施例还提出一种电子设备,该电子设备可以包括:处理器和存储器。其中,存储器存储有计算机程序指令,处理器可以调用存储器中的计算机程序指令以执行本申请任一实施方式所述方法的全部或部分步骤。上述的存储器中的计算机程序指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。
[0119] 进一步地,本申请还提供一种计算机程序产品,所述计算机程序产品包括存储有计算机程序的非暂态计算机可读存储介质,当该计算机可读存储介质连接至计算机设备,所述计算机程序被计算机设备的一个或多个处理器执行时,能够执行本申请任一实施方式所述方法的全部或部分步骤。
[0120] 进一步地,本申请还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序可以被一个或多个处理器执行以执行本申请任一实施方式所述方法的全部或部分步骤。
[0121] 通过以上的实施方式的描述,本领域技术人员可以清楚地了解到本申请的各实施方式可借助软件或者软件结合必要的通用硬件平台的方式来实现,当然也可以通过硬件功能实现。基于这样的理解,本申请的技术方案本质上或者对现有技术做出贡献的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备,例如包括但不限于个人计算机,服务器,或者网络设备等,来执行本申请任一实施方式所述方法的全部或部分步骤。前述的存储介质可以包括:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储计算机程序代码的介质。
[0122] 以上描述了本申请示例性的实施例,应当理解,上述示例性的实施例不是限制性的,而是说明性的,本申请的保护范围不限于此。应理解,本领域技术人员在不脱离本申请的精神和范围的情况下,可以对本申请实施例进行修改和变型,这些修改和变型理应在本申请的保护范围之内。