本发明专利技术涉及网络协议封装技术领域,具体地说是一种物联网终端平台数据封装的方法,其特征在于,在物联网终端与业务平台的应用层定义数据封装协议,为物联网终端与业务平台之间的通信提供通用的数据封装接口;当数据接收模块接收相应传感器采集的数据后,从物联网终端向业务平台发送,按照数据封装协议的格式对采集的数据进行编码封装处理形成数据包,然后将数据包传输给业务平台,业务平台接收相应的数据包后再对数据包进行解码处理。本发明专利技术与现有技术相比,为物联网终端设备和业务平台之间的通信提供了通用的数据封装接口,可以用来在不同的行业中,针对不同的传感器设备采集的数据进行统一的封装,从而可以减少业务平台的数据处理要求。
【技术实现步骤摘要】
本专利技术涉及网络协议封装
,具体地说是一种物联网终端平台数据封装的方法。
技术介绍
物联网应用涉及国民经济和人类社会生活的方方面面,随着技术的不断成熟,应用日渐广泛。物联网终端是物联网的关键设备,它是物联网中连接传感网络层和传输网络层,属于传感网络层和传输网络层的中间设备,实现采集数据及向网络层发送数据的设备。它担负着数据采集、初步处理、加密、传输等多种功能,它将数据通过各种网络接口方式传输到互联网中。如果没有他的存在,传感数据将无法送到指定位置,“物”的联网将不复存在。物联网终端基本由外围传感接口,中央处理模块和外部通讯接口三个部分组成,通过外围传感接口与传感设备连接,如RFID读卡器、二维码、红外感应器,环境传感器等,将这些传感设备的数据进行读取并通过中央处理模块处理后,按照网络协议,通过外部通讯接口,如:GPRS模块、以太网接口、WIFI等方式发送到以太网的指定中心处理平台。物联网在通信中比较常见的通讯协议包括:HTTP、websocket、XMPP、COAP、MQTT,但此类协议只是定义了数据传输的模式,考虑到物联网的终端将会链接各种传感器,采集数据种类很多,如温、湿度,加速度,重力计,经纬度等等信息,各种不同的数据格式/类型众多,为了能够简化后台系统处理以及业务数据的设计,很有必要设计一套完整的数据封装格式,支持物联网终端对于收集后的传感器数据进行传输。现今,制约物联网技术大规模推广的主要原因则是终端的不兼容问题,不同厂商的设备和软件无法在同一个平台上使用,设备间的协议没有统一的标准。因此,在物联网的普及和终端的大规模推广前必须解决标准化问题,具体表现为以下几个方面:一、硬件接口标准化物联网的传感设备由不同厂商提供,如果每家的接口规则或通讯规则都不同,便会导致终端接口设计的不同,而终端不可能为每个厂商都预留接口,所以需要传感设备厂商和终端厂商一同制定标准的物联网传感器与终端间的接口规范和通讯规范,以满足不同厂商设备间的硬件互通、互连需求。二、数据协议标准化数据协议指终端与平台层的数据流交互协议,该数据流可以分为业务数据流和管理数据流。中国移动与爱立信合作制定的WMMP协议就是一个很好的管理协议。该WMMP协议是为实现行业终端与M2M平台数据通信过程而设计,由于GPRS网络带宽较窄,延迟较大,不适于采用TCP协议进行通信,所以该协议是建立在UDP协议之上,而采用UDP协议无连接方式传输,其优点是效率高,流量小,节省网络带宽资源,缺点是没有确认机制,有可能引起丢包,一般还需要通过在UDP的上层应用层协议实现类似TCP的包确认和重传机制,以提高通信效率及可靠性,从而造成该WMMP协议数据传输控制和数据封装高度耦合,不能有效利用现有的物联网数据传输协议。
技术实现思路
本专利技术的目的是克服现有技术的不足,提供一种能方便为物联网终端与业务平台的数据传输提供统一数据封装协议的方法。为实现上述目的,一种物联网终端平台数据封装的方法,包括物联网终端、业务平台,若干传感器、数据接收模块,其特征在于,在物联网终端与业务平台的应用层定义数据封装协议,为物联网终端与业务平台之间的通信提供通用的数据封装接口;当数据接收模块接收相应传感器采集的数据后,从物联网终端向业务平台发送,按照数据封装协议的格式对采集的数据进行编码封装处理形成数据包,然后将数据包传输给业务平台,业务平台接收相应的数据包后再对数据包进行解码处理;当业务平台向物联网终端发送数据时,也按照数据封装协议的格式对数据进行编码封装处理形成数据包,然后将数据包传输给物联网终端,物联网终端接收相应的数据包后再对数据包进行解码处理;所述的编码封装处理采用如下处理步骤:(1)、开始;(2)设置STX字段的值为0x55;(3)设置CTRL字段的选项,设置协议版本ver,根据是否提供IMEI字段、TIMESTAMP字段、TTL字段、CHK字段,分别设置imei、ts、ttl和chk的值;(4)设置LEN字段:设置除STX字段和CTRL字段外的数据包的长度;(5)设置非CTRL字段中选项控制的字段:设置PACKET_TYPE字段、ACK字段、TRANS-MODE字段、PRIORITY字段和PACKET-ID字段的信息;(6)判断CTRL选项中imei、ts、ttl是否有任意一个被设置;如果已被设置,则根据CTRL字段中imei、ts、ttl的设置情况,设置IMEI字段、TIMESTAMP字段和TTL字段后,再进入“设置SERVICE字段数据”步骤;如果未设置,则进入“设置SERVICE字段数据”步骤;所述的“设置SERVICE字段数据”,包括设置ID号、CMD号、与SERVICE字段相关的DATA字段的长度值,如果定义了多个SERVICE字段+DATA字段组合,则除最后一个SERVICE字段+DATA字段组合中MULTIPLE字段置0外,其余中间的SERVICE字段+DATA字段组合中MULTIPLE字段置1;(7)再判断CTRL字段的选项中chk是否设置;如果未设置,则结束;如果已设置,则计算校验和,将值存入CHK字段中形成数据包,然后结束;所述的数据封装协议的格式如下:表1数据封装协议的格式其中,Bn表示该字段占n个BYTE;bn表示该字段占n个bit;如果传输数据的种类多和传输数据量大,数据封装协议的格式中分设若干个不同的SERVICE字段与DATA字段的组合以增加容量。所述的解码处理采用如下处理步骤:(1)、开始:(2)、输入字节流;(3)、判断STX字段的值是否为0x55,如果不是则结束;如果是,则进入“判断chk值是否为1”的步骤;(4)、如果chk值等于1,则进入“校验CHK”步骤,所述的校验CHK为计算数据包校验和,并与CHK字段内的值进行相等性比较;如果chk选项的值不等于1,则进入“检测版本号ver”步骤;(5)如果“校验CHK”步骤中,数据包检验和与CHK的值相等,则进入“检测版本号ver”步骤;如果数据包检验和与CHK字段内的值不相等,则结束;(6)如果检测协议版本号ver不是指定的版本,则结束;如果检测协议版本号ver是指定的版本,则进入“根据协议格式提取各个字段的值”步骤,再结束;所述的“根据协议格式提取各个字段的值”为根据CTRL字段的选项中imei、ts、ttl的值是否为1,判断IMEI字段、TIMESTAMP字段、TTL字段是否存在,然后根据数据封装协议的格式进行各个字段的解析,解析整个数据包。所述的STX字段表示:标识报文数据开始;所述的CTRL字段中,除ver表示协议版本以外,imei选项、ts选项、ttl选项、chk选项作为相应字段的控制开关,1表示存在,0表示不存在;spare表示保留,值必须为0;LEN字段中,LENlsb选项表示长度的低位;Ext选项值为1时,LENmsb选项表示长度的高位,Ext选项值不为1时,则表示不存在LENmsb选项;PACKET_TYPE字段表示:报文类型,值为0时表示Request报文,值为1时表示Ack报文;ACK字段表示:值为1时表示当报文类型为请求时,需要Ack报文确认;值为0时表示当报文类型为Request时,不需要Ack报文确认;对于Ack报文,ACK字段的值必须为0;TR本文档来自技高网...
【技术保护点】
一种物联网终端平台数据封装的方法,包括物联网终端、业务平台,若干传感器、数据接收模块,其特征在于,在物联网终端与业务平台的应用层定义数据封装协议,为物联网终端与业务平台之间的通信提供通用的数据封装接口;当数据接收模块接收相应传感器采集的数据后,从物联网终端向业务平台发送,按照数据封装协议的格式对采集的数据进行编码封装处理形成数据包,然后将数据包传输给业务平台,业务平台接收相应的数据包后再对数据包进行解码处理;当业务平台向物联网终端发送数据时,也按照数据封装协议的格式对数据进行编码封装处理形成数据包,然后将数据包传输给物联网终端,物联网终端接收相应的数据包后再对数据包进行解码处理;所述的编码封装处理采用如下处理步骤:(1)、开始;(2)设置STX字段的值为0x55;(3)设置CTRL字段的选项,设置协议版本ver,根据是否提供IMEI字段、TIMESTAMP字段、TTL字段、CHK字段,分别设置imei、ts、ttl和chk的值;(4)设置LEN字段:设置除STX字段和CTRL字段外的数据包的长度;(5)设置非CTRL字段中选项控制的字段:设置PACKET_TYPE字段、ACK字段、TRANS‑MODE字段、PRIORITY字段和PACKET‑ID字段的信息;(6)判断CTRL选项中imei、ts、ttl是否有任意一个被设置;如果已被设置,则根据CTRL字段中imei、ts、ttl的设置情况,设置IMEI字段、TIMESTAMP字段和TTL字段后,再进入“设置SERVICE字段数据”步骤;如果未设置,则进入“设置SERVICE字段数据”步骤;所述的“设置SERVICE字段数据”,包括设置ID号、CMD号、与SERVICE字段相关的DATA字段的长度值,如果定义了多个SERVICE字段+DATA字段组合,则除最后一个SERVICE字段+DATA字段组合中MULTIPLE字段置0外,其余中间的SERVICE字段+DATA字段组合中MULTIPLE字段置1;(7)再判断CTRL字段的选项中chk是否设置;如果未设置,则结束;如果已设置,则计算校验和,将值存入CHK字段中形成数据包,然后结束;所述的数据封装协议的格式如下:表1数据封装协议的格式其中,Bn表示该字段占n个BYTE;bn表示该字段占n个bit;如果传输数据的种类多和传输数据量大,数据封装协议的格式中分设若干个不同的SERVICE字段与DATA字段的组合以增加容量。...
【技术特征摘要】
1.一种物联网终端平台数据封装的方法,包括物联网终端、业务平台,若干传感器、数据接收模块,其特征在于,在物联网终端与业务平台的应用层定义数据封装协议,为物联网终端与业务平台之间的通信提供通用的数据封装接口;当数据接收模块接收相应传感器采集的数据后,从物联网终端向业务平台发送,按照数据封装协议的格式对采集的数据进行编码封装处理形成数据包,然后将数据包传输给业务平台,业务平台接收相应的数据包后再对数据包进行解码处理;当业务平台向物联网终端发送数据时,也按照数据封装协议的格式对数据进行编码封装处理形成数据包,然后将数据包传输给物联网终端,物联网终端接收相应的数据包后再对数据包进行解码处理;所述的编码封装处理采用如下处理步骤:(1)、开始;(2)设置STX字段的值为0x55;(3)设置CTRL字段的选项,设置协议版本ver,根据是否提供IMEI字段、TIMESTAMP字段、TTL字段、CHK字段,分别设置imei、ts、ttl和chk的值;(4)设置LEN字段:设置除STX字段和CTRL字段外的数据包的长度;(5)设置非CTRL字段中选项控制的字段:设置PACKET_TYPE字段、ACK字段、TRANS-MODE字段、PRIORITY字段和PACKET-ID字段的信息;(6)判断CTRL选项中imei、ts、ttl是否有任意一个被设置;如果已被设置,则根据CTRL字段中imei、ts、ttl的设置情况,设置IMEI字段、TIMESTAMP字段和TTL字段后,再进入“设置SERVICE字段数据”步骤;如果未设置,则进入“设置SERVICE字段数据”步骤;所述的“设置SERVICE字段数据”,包括设置ID号、CMD号、与SERVICE字段相关的DATA字段的长度值,如果定义了多个SERVICE字段+DATA字段组合,则除最后一个SERVICE字段+DATA字段组合中MULTIPLE字段置0外,其余中间的SERVICE字段+DATA字段组合中MULTIPLE字段置1;(7)再判断CTRL字段的选项中chk是否设置;如果未设置,则结束;如果已设置,则计算校验和,将值存入CHK字段中形成数据包,然后结束;所述的数据封装协议的格式如下:表1数据封装协议的格式其中,Bn表示该字段占n个BYTE;bn表示该字段占n个bit;如果传输数据的种类多和传输数据量大,数据封装协议的格式中分设若干个不同的SERVICE字段与DATA字段的组合以增加容量。2.如权利要求1所述的一种物联网终端平台数据封装的方法,其特征在于,所述的解码处理采用如下处理步骤:(1)、开始:(2)、输入字节流;(3)、判断STX字段的值是否为0x55,如果不是则结束;如果是,则进入“判断chk值是否为1”的步骤;(4)、如果chk值等于1,则进入“校验CHK”步骤,所...
【专利技术属性】
技术研发人员:陈木生,
申请(专利权)人:深圳市得润车联科技有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。