[发明专利]一种使用Protobuf描述的物联网协议解析方法有效
| 申请号: | 201310171962.9 | 申请日: | 2013-05-12 |
| 公开(公告)号: | CN103281311A | 公开(公告)日: | 2013-09-04 |
| 发明(设计)人: | 杨飞;郑峰;魏大利 | 申请(专利权)人: | 南京载玄信息科技有限公司 |
| 主分类号: | H04L29/06 | 分类号: | H04L29/06 |
| 代理公司: | 南京知识律师事务所 32207 | 代理人: | 汪旭东 |
| 地址: | 211106 江苏省南*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 使用 protobuf 描述 联网 协议 解析 方法 | ||
技术领域
本发明涉及物联网领域协议解析方法,特别是一种使用数据交换格式Google Protocol Buffer(以下简称Protobuf)描述并基于此建立的一种用于物联网应用的协议解析方法。
背景技术
近年来,物联网已经成为继计算机、互联网与移动通信网之后的世界信息产业第三次浪潮。世界各国的未来信息化发展战略,均从不同概念向物联网演进。物联网在功能上超越了传统网络以传输为主的功能,在技术上融合了感知、网络、处理和应用等多项技术,在系统体系结构上从信息技术终端和系统延伸到了感知物理世界和多项应用业务,实质上已经成为以数据为核心、多业务融合的信息化系统。
物联网的体系结构是根据物联网的本质和应用特征抽象而成,其体系结构分为三层:感知互动层、网络传输层和应用服务层。
感知互动层:感知互动层完成数据采集、通信和协同信息处理等功能。通过各种类型的传感设备获取物理世界中发生的物理事件和数据信息,并通过网关接入广域承载网络。
网络传输层:网络传输层将来自感知互动层的各类信息通过基础承载网络传输到应用服务层。网络传输层主要关注于来自感知互动层的、经过初步处理的数据经由各类网络的传输问题。
应用服务层:应用服务层将物联网技术与行业专业系统相结合,实现广泛的物物互联应用。应用服务层的主要功能是根据底层采集的数据,形成与业务需求相适应、实时更新的动态数据资源库,为各类业务提供统一的信息资源支撑,从而最终实现物联网各个行业领域应用。
物联网中应用服务层接收到感知层数据后,面临的首要问题便是将数据解析为物件的实际状态信息,并传输给其他系统,在协议解析及数据传输的问题上,目前大部分应用服务层系统都采用自定义字节流协议或XML、JSON等标准数据格式来实现数据的解析及传输。对于这一类的协议解析系统大多存在以下一些问题:
1.)采用自定义字节流协议:可读性差,协议描述方法复杂,需要根据约定的字节序逐个读取每个字节,并将读取后的值再赋值给另外一个对象中的域变量,以便于程序中其他代码逻辑的编写。对于该类型程序而言,联调的基准是客户端和服务器双方均完成了消息报文构建程序的编写,之后才能联调,而该设计方式将会直接导致开发进度过慢;同时由于不能直观的判断拼接的字节流协议是否正确,扩展或修改协议时都容易出BUG;
2.)使用XML描述的协议:XML协议数据解析困难,解析效率较低;同时XML的文本表现手法、标记的符号化会导致XML数据比自定义协议字节流数据、Protobuf数据在数据量上极大的增加,当传输的数据量大的时候,传输效率就成为了很大的问题;
3.)使用JSON描述的协议:JSON数据的可读性较差、数据结构较简单,对于复杂数据结构的支持有限;
4.)系统不向后兼容,当系统间协议升级后,所有相关部分都必须重新编写协议解析部分,否者将不能正确解析协议。
发明内容
为了克服上述现有技术的不足,本发明提供了一种基于统一通信协议使用Protobuf描述的物联网应用协议解析方法。用于解决现有协议解析系统开发进度慢,易出错,传输效率低,传输数据量大以及不向后兼容等问题;
本协议解析方法所采用的技术方案如下:
1.)基于物联网应用统一通信协议,统一通信协议格式见附图1
2.)根据统一通信协议编写Protobuf结构化数据proto文件,其中主要分为原始数据Protobuf(以下简称:原始数据),状态数据Protobuf(以下简称:状态数据),下发命令数据Protobuf(以下简称:下发命令)三大类,此三类消息均包含消息头Protobuf(以下简称:消息头,为终端上传数据的公共部分);
3.)使用Protobuf工具将proto结构化文件生成相应编程语言的结构体(类);
4.)按照统一通信协议编写原始数据封装模块,将终端上传数据编解码为原始数据;便于数据采集模块与协议解析模块的灵活部署;
5.)按照统一通信协议编写状态数据解析模块,此部分输入为原始数据,输出为状态数据;根据消息头中的消息类型采用不同的协议解析方式,将字节流数据彻底解码为终端采集到的真实物件状态信息;
6.)编写下发命令封装模块,此部分输入为下发命令,输出为原始数据;按照统一通信协议将输入下发命令编解码为Protobuf结构的原始数据;便于数据采集模块与协议封装模块的灵活部署;
7.)编写原始数据解析模块;将输入的原始数据按照统一通信协议编解码为字节流数据;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京载玄信息科技有限公司,未经南京载玄信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310171962.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:由生物质制备糠醛的方法
- 下一篇:一种以青梅为砧木嫁接果桃的方法





