CN110019243A - 物联网中数据的传输方法及装置、设备、存储介质 - Google Patents
物联网中数据的传输方法及装置、设备、存储介质 Download PDFInfo
- Publication number
- CN110019243A CN110019243A CN201810001046.3A CN201810001046A CN110019243A CN 110019243 A CN110019243 A CN 110019243A CN 201810001046 A CN201810001046 A CN 201810001046A CN 110019243 A CN110019243 A CN 110019243A
- Authority
- CN
- China
- Prior art keywords
- data
- numerical value
- internet
- sent
- processed
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2237—Vectors, bitmaps or matrices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明实施例公开了一种物联网中数据的传输方法及装置、设备、存储介质,所述方法包括:物联网终端接收所述物联网中各传感器发送的待处理的对象数据和待处理的对象实例数据;所述物联网终端按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据;所述物联网终端采用位图法对所述待处理的对象实例数据的数值进行处理,得到待发送的对象实例数据;所述物联网终端将所述待发送的对象数据和所述待发送的对象实例数据发送给所述物联网中的服务器。
Description
技术领域
本发明涉及电子技术,尤其涉及一种物联网中数据的传输方法及装置、设备、存储介质。
背景技术
随着通信技术、软件技术以及智能硬件技术的迅速发展,物联网终端的数量呈现爆发式增长态势。当物联网终端上有大量Object(对象)和对象实例时,按照现有的技术方案,客户端和业务平台之间交互需要发送的Object ID(对象标识)和Object Instance ID(对象实例标识)参数的数据量非常大,这将会导致如下问题:对于同一种类的对象的多个Instance(实例),相同的Object ID要重复发送多次,造成信息冗余。
发明内容
有鉴于此,本发明实施例为解决现有技术中存在的至少一个问题而提供一种物联网中数据的传输方法及装置、设备、存储介质,对于物联网设备和业务平台间进行通信时携带的资源模型中的对象数据采用差值法进行传输,同时对于对象实例数据采用位图法进行精简传输,减少冗余信息,从而减少对网络资源的消耗。
本发明实施例的技术方案是这样实现的:
本实施例提供一种物联网中数据的传输方法,所述方法包括:
物联网终端接收所述物联网中各传感器发送的待处理的对象数据和待处理的对象实例数据;
所述物联网终端按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据;
所述物联网终端采用位图法对所述待处理的对象实例数据的数值进行处理,得到待发送的对象实例数据;
所述物联网终端将所述待发送的对象数据和所述待发送的对象实例数据发送给所述物联网中的服务器。
本实施例提供一种物联网中对象数据的传输装置,所述装置包括:
接收单元,用于接收所述物联网中各传感器发送的待处理的对象数据和待处理的对象实例数据;
第一处理单元,用于按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据;
第二处理单元,用于采用位图法对所述待处理的对象实例数据的数值进行处理,得到待发送的对象实例数据;
发送单元,用于将所述待发送的对象数据和所述待发送的对象实例数据发送给所述物联网中的服务器。
本实施例提供一种物联网终端,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述物联网中数据的传输方法中的步骤。
本实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述物联网中数据的传输方法中的步骤。
本发明实施例中,对于物联网设备和业务平台间进行通信时携带的资源模型中的对象数据采用差值法进行传输,同时对于对象实例数据采用位图法进行精简传输,减少冗余信息,从而减少对网络资源的消耗。
附图说明
图1为本发明实施例物联网的网络架构示意图;
图2为本发明实施例物联网中数据的传输方法的实现流程示意图;
图3为本发明实施例物联网中对象数据的传输装置的组成结构示意图;
图4为本发明实施例物联网终端的组成结构示意图。
具体实施方式
随着物联网技术的发展,物理网资源模型的定义对于物联网平台来说,是进行数据分析和增值业务的前提,大部分的物联网设备在平台上注册时会携带设备自身的资源模型。对于设备上资源比较丰富的物联网终端来说,注册消息需要消耗较多地带宽和资源。
IPSO(Internet Protocolfor Smart Objects,智能对象的因特网协议)联盟,制定了一套物联网应用层协议中Object模型的Smart Object Guideline(智能对象指南),其中定义了一些智能对象,表1列举出了其中常用的一些Object(对象)及其Object ID(对象标识)。
表1 IPSO定义的一些智能对象
Object | Object ID |
IPSO Digital Input数字量输入 | 3200 |
IPSO Digital Output数字量输出 | 3201 |
IPSO Analogue Input模拟量输入 | 3202 |
IPSO Analogue Output模拟量输出 | 3203 |
IPSO Generic Sensor一般传感器 | 3300 |
IPSO luminance Sensor亮度传感器 | 3301 |
IPSO Presence Sensor电子传感器 | 3302 |
IPSO Temperature Sensor温度传感器 | 3303 |
IPSO Humidity Sensor湿度传感器 | 3304 |
IPSO Power Measurement功率测量 | 3305 |
IPSO Actuation驱动器 | 3306 |
IPSO Set Point设置点 | 3308 |
IPSO Load Control加载控制 | 3310 |
IPSO Light Control光控制 | 3311 |
IPSO Power Control功率控制 | 3312 |
IPSO Accelerometer加速计 | 3313 |
IPSO Magnetometer磁力计 | 3314 |
IPSO Barometer气压计 | 3315 |
以OMA(Open Mobile Alliance,开放移动联盟)发布的LwM2M(LightweightMachine to Machine,轻量级M2M)技术规范为例,当客户端向服务器发起注册或者注册更新时,需要发送的参数之一是Object ID和对象实例标识(Object Instance ID),发送的格式为</Object ID/Object Instance ID>,并且Object ID和Object Instance ID都是16位无符号整数。其他的物联网应用层协议比如zigbee以及MQTT等都有类似的要求。
如果一个物联网终端有3个光线传感器、5个温度传感器、2个湿度传感器需要通过客户端向服务器发起注册或者注册更新,则物联网终端需要传输的Object ID和ObjectInstance ID参数的格式应为:</3301/0>,</3301/1>,</3301/2>,</3303/0>,</3303/1>,</3303/2>,</3303/3>,</3303/4>,</3304/0>,</3304/1>。会占用比较多的网络资源,同时因为物联网终端Non-IP传输时MTU大小的限制,携带过多的资源模型的信息后可能需要物联网终端将注册消息拆分成不同的包发给平台,会更显著的增加物联网终端和平台的负荷。
随着通信技术、软件技术以及智能硬件技术的迅速发展,物联网终端的数量呈现爆发式增长态势。当物联网终端上有大量Object和Object实例时,按照现有的技术方案,客户端和业务平台之间交互需要发送的Object ID和ObjectInstance ID参数的数据量非常大,这将会导致如下问题:
(1)对于同一种类的Object的多个Instance,相同的Object ID要重复发送多次,造成信息冗余;
(2)对于每个Object Instance,都要传输一个16位的Object Instance ID,而在注册或注册更新流程中,客户端需要传递的信息仅为相应的Object Instance是否存在,因此,现有表达方式的信息传输效率较低。
(3)蜂窝网络的带宽是有限的,信息冗余以及低效的信息表达方式会降低频谱效率,不利于节约网络资源;
(4)报文的长度是有限的,当数据过长时,可能需要进行分片。
下面结合附图和实施例对本发明的技术方案进一步详细阐述。
本实施例先提供一种网络架构,图1为本发明实施例网络架构的组成结构示意图,如图1所示,该网络架构包括两个或多个物联网终端11至1N和服务器31,其中物联网终端11至1N与服务器31之间通过网络21进行交互。物联网终端在实现与IOT(物联网)所在的领域的有关。
本实施例提出一种物联网中数据的传输方法,该方法应用于物联网终端,该方法所实现的功能可以通过物联网终端中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该物联网终端至少包括处理器和存储介质。
图2为本发明实施例物联网中数据的传输方法的实现流程示意图,如图2所示,该方法包括:
步骤S201,物联网终端接收所述物联网中各传感器发送的待处理的对象数据和待处理的对象实例数据;
其中,所述待处理的对象数据中同一类的对象数据排列在数据格式的相同位置;
这里,所述对象数据包括对象标识。对象实例数据包括对象实例标识;或者,对象实例数据包括对象实例标识和对象实例采集的采集对象数值;例如传感器为温度传感器,那么对象标识为温度传感器的标识。当采用IPSO标准定义时,对象标识为3304。当传感器为温度传感器,对象实例标识为温度传感器的实例的标识,例如温度传感器有5个,即有5个实例,那么对象实例标识依次为0、1、2、3和4,那么对象实例采集的采集对象数值则为每一温度传感器所采集的数值,例如23度、25度、31度、29度和21度。
步骤S202,所述物联网终端按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据;
步骤S203,所述物联网终端采用位图法对所述待处理的对象实例数据的数值进行处理,得到待发送的对象实例数据;
步骤S204,所述物联网终端将所述待发送的对象数据和所述待发送的对象实例数据发送给所述物联网中的服务器。
本实施例中,对象数据可以看作为数值,例如,按照IPSO协议定义的规范,ObjectID和Object Instance ID都是16位无符号整数。IPSO协议中,对象为Digital Input(数字量输入)时,对象标识为3200;对象为Digital Output(数字量输出)时,对象标识为3201;对象为Analogue Input(模拟量输入)时,对象标识为3202;对象为Analogue Output(模拟量输出)时,对象标识为3203等等。目前物联网中对象标识是按照IPSO协议定义的规范来实现的,从IPSO协议可以看出,如果将对象标识看作为整数时,那么采用二进制表示时,需要占用很多数据位,例如数值3200采用二进制来表示时,需要十二位二进制数,IPSO为了保持更好的扩展性,而采用十六位二进制数来表示,那么前面空缺的字段既可以用来在对象增加的时候进行扩展,也可以用作其他用途。正因为为了保持好的扩展性,在采用IPSO协议时,需要传输的数据量很大,当物联网终端节点增多或传感器的数量增多时,对于物联网终端和服务器来说,交互是的带宽就显得很紧张,本实施例能够减少数据量传输,从而服务器面对大量物联网终端时,在固定带宽的情况下,也能够接收更多物联网终端发送的对象数据。
在其他的实施例中,待处理的对象数据具有统一的格式,传感器在发来数据的时候,就具有统一的格式;或者,由物联网终端对传感器发送的对象数据进行预处理,得到具有统一格式的对象数据。对应地,上述步骤S201,“所述物联网中的物联网终端确定待处理的对象数据”,包括:所述物联网终端确定(例如接收)所述物联网中各传感器发送的对象数据;所述物联网终端对所述对象数据进行分类,将所述对象数据中同一类的对象数据排列在数据格式的相同位置,得到待处理的对象数据。例如,如果一个物联网终端有1个光线传感器、1个温度传感器、2个湿度传感器需要通过客户端向服务器发起注册或者注册更新或者数据更新,则物联网终端需要传输的Object ID和Object Instance ID参数的格式应为:</3301/0>,</3303/0>,</3304/0>,</3304/1>。在该例中,Object ID和Object InstanceID被放在一对尖括号“<>”中,而Object ID和Object Instance ID之前都采用斜杠“/”作为开始。1个光线传感器、1个温度传感器、2个湿度传感器传输的数据就为上面的格式,那么物联网终端就不用在进行格式更改;反之,物联网终端就需要按照上面的格式进行更改。
在其他的实施例中,所述方法还包括:判断同一类的对象数据的数值中的最大值是否大于预设的阈值,如果所述同一类的对象数据的数值中的最大值大于预设的阈值,按照差值法对所述待处理的对象数据中同一类的对象数据的数值进行更改,得到待发送的对象数据。如果所述同一类的对象数据的数值中的最大值小于等于预设的阈值,则回到步骤S201。本实施例中,由于随着传感器数量和种类的增多,导致Object ID和Object InstanceID需要更多位数来能进行定位到具体的个体;但是如果Object ID和Object Instance ID本来的位数特别少,则无需采用差值法来传输,即本实施例提供了一种针对类似于采用IPSO协议定义的规范时对象数据的传输方法。
下面介绍一下差值法,差值法包括绝对差值和相对差值,即,如果确定了第一个对象数据的数值为非零数值,第二个对象数据的数值可以仅表示为与第一个对象数据的数值的差值,即,后一个对象数据的数值可以通过差值和前一个对象数据的数值进行累加而得到。绝对差值中,仅包括一个参考对象(作差的对象),即第一个对象数据的数值,从第二对象数据起其他对象数据的数值都是与第一个对象数据的数值进行差值;相对差值中,参考对象(作差的对象)是变化的而不是固定不变的,即后一个对象数据的数值都是与相邻的前一个对象数据的数值进行差值。例如,如果一个物联网终端有3个光线传感器、5个温度传感器、2个湿度传感器需要通过客户端向服务器发起注册或者注册更新或者数据更新,则物联网终端需要传输的Object ID和Object Instance ID参数的格式应为:</3301/0>,</3301/1>,</3301/2>,</3303/0>,</3303/1>,</3303/2>,</3303/3>,</3303/4>,</3304/0>,</3304/1>。如果采用绝对差值法的技术方案,则物联网终端需要传输的Object ID和ObjectInstance ID参数的格式应为:</3301/0>,</0/1>,</0/2>,</2/0>,</2/1>,</2/2>,</2/3>,</2/4>,</3/0>,</3/1>,其中对象数据包括Object ID和Object Instance ID,其中Object ID和Object Instance ID均采用绝对差值法表示。如果采用相对差值法的技术方案,则物联网终端需要传输的Object ID和Object Instance ID参数的格式应为:</3301/0>,</0/1>,</0/1>,</2/0>,</0/1>,</0/1>,</0/1>,</0/1>,</1/0>,</0/1>;其中,对象数据包括Object ID和Object Instance ID,其中Object ID和Object Instance ID均采用相对差值法表示。
实际上,物联网终端本来需要传输的Object ID和Object Instance ID参数的格式应为:</3301/0>,</3301/1>,</3301/2>,</3303/0>,</3303/1>,</3303/2>,</3303/3>,</3303/4>,</3304/0>,</3304/1>。为了减少传输过程中数据量过大的问题,采用差值法进行传输,能够减少数据传输量。当对象数据传输到服务器后,服务器进行与物联网终端相反的运算,将绝对差值法传输的数据</3301/0>,</0/1>,</0/2>,</2/0>,</2/1>,</2/2>,</2/3>,</2/4>,</3/0>,</3/1>恢复为</3301/0>,</3301/1>,</3301/2>,</3303/0>,</3303/1>,</3303/2>,</3303/3>,</3303/4>,</3304/0>,</3304/1>;将相对差值法传输的数据</3301/0>,</0/1>,</0/1>,</2/0>,</0/1>,</0/1>,</0/1>,</0/1>,</1/0>,</0/1>也恢复为</3301/0>,</3301/1>,</3301/2>,</3303/0>,</3303/1>,</3303/2>,</3303/3>,</3303/4>,</3304/0>,</3304/1>。
在其他的实施例中,所述待处理的对象数据包括第i个对象标识的数值与第一个对象标识的数值,i为大于等于2的整数;所述按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据,包括:计算第i个对象标识的数值与所述第一个对象标识的数值之间的绝对差值,所述绝对差值为所述第i个对象标识的待发送数据;所述待发送的对象数据包括所述第一对象标识的数值和所述绝对差值。
在其他的实施例中,所述待处理对象数据包括第i个对象标识的数值与所述第(i-1)个对象标识的数值,i为大于等于2的整数;所述按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据,包括:计算第i个对象标识的数值与所述第(i-1)个对象标识的数值之间的相对差值,所述相对差值为所述第i个对象标识的待发送数据;所述待发送的对象数据包括所述第一对象标识的数字和所述相对差值
在其他的实施例中,所述对象数据包括对象标识,所述按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据,包括:
步骤S11,对于同一类的对象数据的数值,对所述待处理的对象数据中第一个对象标识的数值不更改;
步骤S12,从所述待处理的对象数据中第二个对象标识起,按照差值法对所述待处理的对象数据中的对象标识的数值进行更改,得到待发送的对象数据。
在其他的实施例中,应用差值法时可以采用绝对差值法,即步骤S12,所述从所述待处理的对象数据中第二个对象标识起,按照差值法对所述待处理的对象数据中的对象标识的数值进行更改,得到待发送的对象数据,包括:
步骤S21,计算第i个对象标识的数值与所述第一个对象标识的数值之间的绝对差值,i为大于等于2的整数;
步骤S22,将所述绝对差值作为待处理的对象数据中对应的第i个对象标识的数值,得到所述待发送的对象数据。
在其他的实施例中,应用差值法时可以采用绝对差值法,即步骤S12,所述从所述待处理的对象数据中第二个对象标识起,按照差值法对所述待处理的对象数据中的对象标识的数值进行更改,得到待发送的对象数据,包括:
步骤S31,计算第i个对象标识的数值与所述第(i-1)个对象标识的数值之间的相对差值,i为大于等于2的整数;
步骤S32,将所述相对差值作为待处理的对象数据中第i个对象标识的数值,得到所述待发送的对象数据。
在其他的实施例中,所述对象实例数据包括对象实例标识,所述物联网终端采用位图法对所述待处理的对象实例数据的数值进行处理包括:
对于具有同一对象标识的对象实例标识,在向所述服务器注册或注册更新时,所述物联网终端按照位图法对所述待处理的对象数据中对象实例标识的数值进行更改。
这里,一个物联网终端上安装的客户端对应十个传感器,例如有3个光线传感器、5个温度传感器、2个湿度传感器;如果有部分传感器不工作,例如,仅有1个光线传感器、2个温度传感器、1个湿度传感器工作,而剩下的2个光线传感器、3个温度传感器、1个湿度传感器不工作,那么在上传数据的时候,需要对工作的和不工作的都得表示。在实现的过程中,可以采用固定的数值或字符来表示,例如,采用“non”来表示,或者“-”来表示。
这里,一个物联网设备有10个光线传感器,编号从0到9,当该设备需要和平台侧进行通信时,携带的实例参数放在一个10位的统一的字段里。如果使用二进制传输,且第1个、第3个、第5个、第7个、第9个这几个实例需要参与通信,先找到对象实例里最大的数值为9,那么该实例信息使用一个9个bit的二进制传输,即“101010101”,其中用1表示参与工作,0表示不参与工作。一个物联网设备有2个温度传感器,编号(对象实例标识)从0到1,且只有第1个需要参与通信,先找到对象实例里最大的数值为1,那么该实例信息使用一个2个bit的二进制传输,即“10”。如果将对象标识与对象实例标识一起传输,那么对象数据的格式为:
</3301/1010101010>,</3303/10>;
如果采用全量差值法表示时,如采用绝对差值时,则对象数据的格式为:
</3301/1/1/0/1/0/1/0/1/0/1>,</3303/1/1>;
如采用相对差值时,则对象数据的格式为:
</3301/1/1/1/1/1/1/1/1/1/1>,</3303/1/1>;
在实际应用中,同一个种类的传感器的数量一般为几十个,所以,采用位图法表示时和上面的差值法表示时也不会占用太多的字节。但是在极端的情况下,例如某一种传感器的数量例如几千个,但是只用到几个传感器,如果按照上面的办法进行传输,那么有效的数据量就非常少。所以在这种情况下,也可以直接传输对应的对象实例标识。需要说明的是,在注册或注册更新是,服务器侧要了解传感器的总量,就是要知道该物联网终端下一共有几个传感器,那么物联网终端还需要将传感器的最大标识也发送给服务器,例如,一共有一万零一个光线传感器,其中只用到第一个光线传感器和第二个光线传感器,那么对象的传输格式如下:
格式1:</3301/0/1>,</3301/1/1>,</3301/10001/0>;
其中,格式1中的3301表示光线传感器的对象标识,3301后面的“0”、“1”“1001”分别表示对象实例标识;其中格式1中的最后一位“1”表示参与工作,“0”表示不参与工作且为最大编号;如果最后一个光线传感器也参与工作,那么可以采用格式2:
</3301/0/1>,</3301/1/1>,</3301/10001/1>,</3301/10001/0>;
即如果最后一个光线传感器参与工作就正常表示,然后将最后一个光线传感器的最后一位0表示传感器的最大编号。通过这种办法能够减少数据量的传输,而且不用像前述的位图或全量差值法那样,只能连续依次地传输每一个对象实例标识,不能间隔或跳跃传输对象实例标识。
在其他的实施例中,,所述待发送的对象实例数据包括对象实例标识,所述物联网终端采用位图法对所述待处理的对象实例数据的数值进行处理包括:
所述物联网终端按顺序对具有同一对象标识的对象实例标识进行排序,得到排序结果;
按照位图法表示所述排序结果。
为了解决上述问题,本发明实施例针对物联网终端和业务平台之间通信时使用的资源模型,包括Object ID和Object Instance ID参数,提出了一种基于差值传输和位图法的参数传输方法,其中,对于物联网设备和业务平台间进行通信时携带的资源模型中的对象数据采用差值法进行传输,同时对于对象实例数据采用位图法进行精简传输,减少冗余信息,从而减少对网络资源的消耗。
下面介绍本实施例的实现方式:
第一,Object ID的差值传输
当客户端和服务器之间通信需要携带多个Object参数时,对于Object ID这一参数,可以采取如下两种差值传输方式:
(1)只传输第一个Object的Object ID绝对值,而对于其它Object,传输的是其Object ID绝对值与第一个Object的Object ID绝对值之间的差值。例如,假设光线传感器、温度传感器和湿度传感器需要通过客户端向服务器发起注册或者注册更新,则客户端发送的Object ID为</3301>,</2>,</3>。
(2)只传输第一个Object的Object ID绝对值,而对于其它Object,传输的是其Object ID绝对值与上一个Object的Object ID绝对值之间的差值。例如,假设光线传感器、温度传感器和湿度传感器需要通过客户端向服务器发起注册或者注册更新,则客户端发送的Object ID为</3301>,</2>,</1>。
其中,客户端在传输参数之前,先在需要注册或注册更新的所有Object中找出Object ID最小的一个Object,作为上述方案中的“第一个Object”。如果采用IPSO发布的Smart Object Guideline,Object ID的范围在3200到3345之间。由此可知,差值的范围在0到145之间,可以用8位无符号整数来表示,而不再需要使用16位无符号整数,从而减小了需要发送的数据量,提高了传输效率。
如上方案采用后,对于一个有8个传感器设备的物联网终端,假设其对象模型编号从3301到3308,其需要传输的对象资源模型从格式1:
<3301>,<3302>,<3303>,<3304>,<3305>,<3306>,<3307>,<3308>;
变成了格式2
<3301>,<1>,<2>,<3>,<4>,<5>,<6>,<7>;
这种从格式1到格式2的转变。减少了交互过程中数据的长度。
第二,Object Instance ID的位图法传输
当物联网终端和业务平台之间通信时,对于同一Object的各个Instance,可以采用位图法传输Object Instance ID这一参数。具体而言,不需要对每个Instance都按照</Object ID/Object Instance ID>这一格式进行参数传输,而只需要进行一次传输,传输该Object的Object ID以及用于表示各Instance是否存在的位图即可。如果Object InstanceID为n的Instance需要进行注册或者注册更新,则位图中第n位置为1,否则置为0。
例如,一个物联网设备有10个光线传感器,编号从0到9,当该设备需要和平台侧进行通信时,携带的实例参数放在一个10位的统一的字段里。如果使用二进制传输,且1、3、5、7、9这几个实例需要参与通信,先找到对象实例里最大的数值为9,那么该实例信息使用一个9个bit的二进制传输,即“101010101”。
流程为,客户端和业务平台在传输对象实例这个参数之前,先在属于某一Object的所有Instance中找出Object Instance ID的最大值,从而确定属于该Object的位图所需的位数。例如,假设光线传感器0、1、3、5、6、7需要通过客户端向服务器发起注册或者注册更新,则客户端发送的Object ID和Object Instance ID参数为</3301/11101011>。
可以看到,在这个例子里对于采用这种方式传输的3301这个对象的资源模型,从使用本方案之前的格式1:
<3301/0>,<3301/1>,<3301/3>,<3301/5>,<3301/6>,<3301/7>;
变成了格式2:
</3301/11101011>;
这种从格式1到格式2的转变极大地减少了对于资源的需求。
本实施例具有以下技术优点:1、本方案在物联网终端上有比较多的传感器和传感器实例时,可以减少传输过程中资源模型中的冗余数据,减少对网络资源的消耗。2、在Non-IP网络传输时,每个包的大小减少了,可以降低物联网终端和网络间交互时拆包的可能性,从而节约网络资源。
物联网领域中,大部分的物联网设备在平台上注册时会携带设备自身的资源模型,而注册消息需要消耗较多地带宽和资源。根据轻量级M2M技术规范,客户端向服务器发起注册或者注册更新时,需要发送的参数之一是Object ID和Object Instance ID,发送的格式为</Object ID/Object Instance ID>,并且Object ID和Object Instance ID都是16位无符号整数。其他的物联网应用层协议比如ZigBee(紫蜂)以及MQTT等都有类似的要求。
当物联网终端上有大量Object和Object实例时,客户端和业务平台之间交互需要发送的Object ID和Object Instance ID参数的数据量非常大,因物联网终端Non-IP传输时MTU大小的限制,携带过多的资源模型的信息,需要物联网终端将注册消息拆分成不同的包发给平台,增加物联网终端和平台的负荷。
本实施例提出一种基于差值传输和位图法的物联网中数据的传输方法,对通信时携带的资源模型中的对象数据采用差值法进行传输,对于对象实例数据采用位图法进行精简传输,减少冗余信息,从而减少对网络资源的消耗。
当物联网终端和服务器之间通信时,对象数据Object ID采取两种差值传输方式:
1)只传输第一个Object的Object ID绝对值,而对于其它Object,传输的是其Object ID绝对值与第一个Object的Object ID绝对值之间的差值。例如,假设光线传感器、温度传感器和湿度传感器需要通过客户端向服务器发起注册或者注册更新,则客户端发送的Object ID为</3301>,</2>,</3>。
2)只传输第一个Object的Object ID绝对值,而对于其它Object,传输的是其Object ID绝对值与上一个Object的Object ID绝对值之间的差值。例如,假设光线传感器、温度传感器和湿度传感器需要通过客户端向服务器发起注册或者注册更新,则客户端发送的Object ID为</3301>,</2>,</1>。
当物联网终端和业务平台之间通信时,对象实例数据Object Instance ID采用位图法传输方式:
不需要对每个Instance都按照</Object ID/Object Instance ID>这一格式进行参数传输,而只需要进行一次传输,传输该Object的Object ID以及用于表示各Instance是否存在的位图即可。如果Object Instance ID为n的Instance需要进行注册或者注册更新,则位图中第n位置为1,否则置为0。
本实施实施例中,将物联网设备和业务平台间之间通信时携带的资源模型中的对象数据采用差值传输,对象实例数据采用位图法传输的方法。
基于前述的实施例,本发明实施例提供一种物联网中对象数据的传输装置,该装置包括所包括的各单元、以及各单元所包括的各模块,可以通过物联网中物联网终端中的处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)或现场可编程门阵列(FPGA)等。
图3为本发明实施例物联网中对象数据的传输装置的组成结构示意图,如图3所示,所述装置300包括接收单元301、第一处理单元302、第二处理单元303和发送单元304,其中:
接收单元301,用于接收所述物联网中各传感器发送的待处理的对象数据和待处理的对象实例数据;
第一处理单元302,用于按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据;
第二处理单元303,用于采用位图法对所述待处理的对象实例数据的数值进行处理,得到待发送的对象实例数据;
发送单元304,用于将所述待发送的对象数据和所述待发送的对象实例数据发送给所述物联网中的服务器。
在其他的实施例中,所述待处理的对象数据包括第i个对象标识的数值与第一个对象标识的数值,i为大于等于2的整数;所述按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据,包括:
计算第i个对象标识的数值与所述第一个对象标识的数值之间的绝对差值,所述绝对差值为所述第i个对象标识的待发送数据;
所述待发送的对象数据包括所述第一对象标识的数值和所述绝对差。
在其他的实施例中,所述待处理对象数据包括第i个对象标识的数值与所述第(i-1)个对象标识的数值,i为大于等于2的整数;所述按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据,包括:
计算第i个对象标识的数值与所述第(i-1)个对象标识的数值之间的相对差值,所述相对差值为所述第i个对象标识的待发送数据;
所述待发送的对象数据包括所述第一对象标识的数字和所述相对差值。
在其他的实施例中,所述待发送的对象实例数据包括对象实例标识,所述物联网终端采用位图法对所述待处理的对象实例数据的数值进行处理包括:对于具有同一对象标识的对象实例标识,在向所述服务器注册或注册更新时,所述物联网终端按照位图法对所述待处理的对象数据中对象实例标识的数值进行更改。
在其他的实施例中,所述待发送的对象实例数据包括对象实例标识,所述物联网终端采用位图法对所述待处理的对象实例数据的数值进行处理包括:
所述物联网终端按顺序对具有同一对象标识的对象实例标识进行排序,得到排序结果;按照位图法表示所述排序结果。
以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明装置实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。
需要说明的是,本发明实施例中,如果以软件功能模块的形式实现上述的物联网中数据的传输方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read OnlyMemory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本发明实施例不限制于任何特定的硬件和软件结合。
对应地,本发明实施例提供一种物联网终端,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述物联网中数据的传输方法中的步骤。
对应地,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述物联网中数据的传输方法中的步骤。
这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明装置实施例中未披露的技术细节,请参照本发明存储介质和设备实施例的描述而理解。
需要说明的是,图4为本发明实施例中物联网终端的一种硬件实体示意图,如图4所示,该物联网终端400的硬件实体包括:处理器401、通信接口402和存储器403,其中
处理器401通常控制物联网终端400的总体操作。
通信接口402可以使物联网终端通过网络与其他物联网终端或服务器通信。
存储器403配置为存储由处理器401可执行的指令和应用,还可以缓存待处理器401以及物联网终端400中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(FLASH)或随机访问存储器(Random AccessMemory,RAM)实现。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种物联网中数据的传输方法,其特征在于,所述方法包括:
物联网终端接收所述物联网中各传感器发送的待处理的对象数据和待处理的对象实例数据;
所述物联网终端按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据;
所述物联网终端采用位图法对所述待处理的对象实例数据的数值进行处理,得到待发送的对象实例数据;
所述物联网终端将所述待发送的对象数据和所述待发送的对象实例数据发送给所述物联网中的服务器。
2.根据权利要求1所述的方法,其特征在于,所述待处理的对象数据包括第i个对象标识的数值与第一个对象标识的数值,i为大于等于2的整数;所述按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据,包括:
计算第i个对象标识的数值与所述第一个对象标识的数值之间的绝对差值,所述绝对差值为所述第i个对象标识的待发送数据;
所述待发送的对象数据包括所述第一对象标识的数值和所述绝对差值。
3.根据权利要求1所述的方法,其特征在于,所述待处理对象数据包括第i个对象标识的数值与所述第(i-1)个对象标识的数值,i为大于等于2的整数;所述按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据,包括:
计算第i个对象标识的数值与所述第(i-1)个对象标识的数值之间的相对差值,所述相对差值为所述第i个对象标识的待发送数据;
所述待发送的对象数据包括所述第一对象标识的数字和所述相对差值。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述待发送的对象实例数据包括对象实例标识,所述物联网终端采用位图法对所述待处理的对象实例数据的数值进行处理包括:
对于具有同一对象标识的对象实例标识,在向所述服务器注册或注册更新时,所述物联网终端按照位图法对所述待处理的对象数据中对象实例标识的数值进行更改。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述待发送的对象实例数据包括对象实例标识,所述物联网终端采用位图法对所述待处理的对象实例数据的数值进行处理包括:
所述物联网终端按顺序对具有同一对象标识的对象实例标识进行排序,得到排序结果;
按照位图法表示所述排序结果。
6.一种物联网中对象数据的传输装置,其特征在于,所述装置包括:
接收单元,用于接收所述物联网中各传感器发送的待处理的对象数据和待处理的对象实例数据;
第一处理单元,用于按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据;
第二处理单元,用于采用位图法对所述待处理的对象实例数据的数值进行处理,得到待发送的对象实例数据;
发送单元,用于将所述待发送的对象数据和所述待发送的对象实例数据发送给所述物联网中的服务器。
7.根据权利要求6所述的装置,其特征在于,所述待处理的对象数据包括第i个对象标识的数值与第一个对象标识的数值,i为大于等于2的整数;所述按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据,包括:
计算第i个对象标识的数值与所述第一个对象标识的数值之间的绝对差值,所述绝对差值为所述第i个对象标识的待发送数据;
所述待发送的对象数据包括所述第一对象标识的数值和所述绝对差。
8.根据权利要求6所述的装置,其特征在于,所述待处理对象数据包括第i个对象标识的数值与所述第(i-1)个对象标识的数值,i为大于等于2的整数;所述按照差值法对所述待处理的对象数据的数值进行处理,得到待发送的对象数据,包括:
计算第i个对象标识的数值与所述第(i-1)个对象标识的数值之间的相对差值,所述相对差值为所述第i个对象标识的待发送数据;
所述待发送的对象数据包括所述第一对象标识的数字和所述相对差值。
9.一种物联网终端,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至5任一项所述物联网中数据的传输方法中的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至5任一项所述物联网中数据的传输方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810001046.3A CN110019243A (zh) | 2018-01-02 | 2018-01-02 | 物联网中数据的传输方法及装置、设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810001046.3A CN110019243A (zh) | 2018-01-02 | 2018-01-02 | 物联网中数据的传输方法及装置、设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110019243A true CN110019243A (zh) | 2019-07-16 |
Family
ID=67187272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810001046.3A Pending CN110019243A (zh) | 2018-01-02 | 2018-01-02 | 物联网中数据的传输方法及装置、设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110019243A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113395730A (zh) * | 2020-03-12 | 2021-09-14 | 中国移动通信有限公司研究院 | 一种物联网终端网络参数上报方法、装置和存储介质 |
CN113760915A (zh) * | 2021-09-07 | 2021-12-07 | 百果园技术(新加坡)有限公司 | 一种数据处理方法、装置、设备及介质 |
CN114301756A (zh) * | 2021-12-23 | 2022-04-08 | 广州亿电邦科智能网络科技有限公司 | 一种iot设备管理系统、方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011161301A1 (en) * | 2010-06-24 | 2011-12-29 | Valtion Teknillinen Tutkimuskeskus | State inference in a heterogeneous system |
CN102843718A (zh) * | 2012-09-17 | 2012-12-26 | 无锡创灵科技有限公司 | 一种实现终端采集数据的系统及方法 |
CN105228265A (zh) * | 2015-08-25 | 2016-01-06 | 深圳市唯传科技有限公司 | 一种基于物联网设备的分享方法及装置 |
CN105871629A (zh) * | 2016-05-30 | 2016-08-17 | 自连电子科技(上海)有限公司 | 物联网设备传输数据的方法及系统 |
-
2018
- 2018-01-02 CN CN201810001046.3A patent/CN110019243A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011161301A1 (en) * | 2010-06-24 | 2011-12-29 | Valtion Teknillinen Tutkimuskeskus | State inference in a heterogeneous system |
CN102843718A (zh) * | 2012-09-17 | 2012-12-26 | 无锡创灵科技有限公司 | 一种实现终端采集数据的系统及方法 |
CN105228265A (zh) * | 2015-08-25 | 2016-01-06 | 深圳市唯传科技有限公司 | 一种基于物联网设备的分享方法及装置 |
CN105871629A (zh) * | 2016-05-30 | 2016-08-17 | 自连电子科技(上海)有限公司 | 物联网设备传输数据的方法及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113395730A (zh) * | 2020-03-12 | 2021-09-14 | 中国移动通信有限公司研究院 | 一种物联网终端网络参数上报方法、装置和存储介质 |
CN113395730B (zh) * | 2020-03-12 | 2023-05-09 | 中国移动通信有限公司研究院 | 一种物联网终端网络参数上报方法、装置和存储介质 |
CN113760915A (zh) * | 2021-09-07 | 2021-12-07 | 百果园技术(新加坡)有限公司 | 一种数据处理方法、装置、设备及介质 |
CN114301756A (zh) * | 2021-12-23 | 2022-04-08 | 广州亿电邦科智能网络科技有限公司 | 一种iot设备管理系统、方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10102227B2 (en) | Image-based faceted system and method | |
CN106056212B (zh) | 一种人工神经网络计算核 | |
CN110300115A (zh) | 一种基于多通道的数据传输方法以及相关装置 | |
CN110019243A (zh) | 物联网中数据的传输方法及装置、设备、存储介质 | |
CN107172187A (zh) | 一种负载均衡系统和方法 | |
CN105991731A (zh) | 一种获取信息的方法、智能终端和服务端 | |
CN108418768A (zh) | 业务数据的识别方法、装置、终端及存储介质 | |
CN104767833B (zh) | 一种移动终端的计算任务的云端转移方法 | |
CN110347708A (zh) | 一种数据处理方法以及相关设备 | |
CN108337214A (zh) | 一种数据处理方法,终端和网络设备 | |
CN110955463A (zh) | 支持边缘计算的物联网多用户计算卸载方法 | |
CN112449009A (zh) | 一种基于svd的联邦学习推荐系统通信压缩方法及装置 | |
Li et al. | DrawerPipe: A reconfigurable pipeline for network processing on FPGA-based SmartNIC | |
CN110831039A (zh) | 多路并发系统中的数据传输方法及传输服务器 | |
Banaie et al. | Performance analysis of multithreaded IoT gateway | |
CN110213380A (zh) | 一种消息推送方法、装置、计算机设备及存储介质 | |
CN112000454A (zh) | 一种多媒体数据的处理方法及设备 | |
CN106776733A (zh) | 数据处理系统中的数据分级抽样方法 | |
CN105335313A (zh) | 一种基础数据的传输方法及装置 | |
CN114510299A (zh) | 处理人工智能业务的方法、装置以及存储介质 | |
CN106776694A (zh) | 一种基于软件定义的网络分布式图片搜索引擎框架 | |
CN107493312A (zh) | 一种服务调用方法及装置 | |
CN110247818A (zh) | 一种数据监控方法、装置、存储介质和服务器 | |
CN113254215B (zh) | 数据处理方法和装置、存储介质及电子设备 | |
Lin et al. | Data synchronization algorithm for IoT gateway and platform |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190716 |