一种可扩展的数据字描述结构方法技术

技术编号:17784100 阅读:51 留言:0更新日期:2018-04-22 15:28
本发明专利技术公开了一种可扩展的数据字描述结构方法,采用数据ID‑数据内容一一对应的对数据进行描述,一个数据ID‑数据内容称之为PLV,多个PLV可以组成一个组称之为GNV,GNV可以进行嵌套。通过这种方式,我们可以很轻易将数据流转为可读性更高的数据结构,可以将数据结构转化为数据流进行传输;同时在协议维护方面我们可以很容易的增加字段或删减字段,只需要修改某个PLV函数即可,而不需要大量修改各种解析子函数、重新计算偏移量等。

【技术实现步骤摘要】
一种可扩展的数据字描述结构方法
本专利技术涉及数据描述结构
,具体为一种可扩展的数据字描述结构方法。
技术介绍
传输协议中各层都为上一层提供业务功能。为了提供这种业务功能,下一层将上一层中的数据并入到本层的数据域中,然后通过加入报头或报尾来实现该层业务功能,该过程叫做数据封装。用户的数据要经过一次次包装,最后转化成可以在网络上传输的信号,发送到网络上。当到达目标计算机后,再执行相反的拆包过程。现今民用工业领域流行的传输协议,如:Modbus、TCP/IP、Zigbee等协议均采用偏移量方式进行进行数据包拼装和解析;偏移量方式在需要在协议中添加字段或删除字段时,需要对应修改多个解析子程序,且个断点程序都需要同步修改,否则系统将无法正常工作;此种方式及其不利于程序的升级和维护。
技术实现思路
本专利技术的目的在于提供一种可扩展的数据字描述结构方法,以解决上述
技术介绍
中提出的问题。为实现上述目的,本专利技术提供如下技术方案:一种可扩展的数据字描述结构方法,采用数据ID-数据内容一一对应的对数据进行描述,一个数据ID-数据内容称之为PLV,多个PLV可以组成一个组称之为GNV,GNV可以进行嵌套;采用PLV/GNV的无序排列:PLV/GNV解析器,将数据流转为可读性更高的数据结构,将数据结构转化为数据流进行传输;PLV/GNV数据存储结构分为:ROOT、SUB、PLV三种节点;ROOT为根节点,所有数据从该节点衍生;SUB节点为分支节点,可以扩展子结构和同时可以指向下一节点;PLV为数据节点,包含实体数据内容;节点关系可以分为:父子关系、前后关系,ROOT、SUB、PLV节点分别具有不能的节点关系。优选的,包括数据流到PLV/GNV的解析:解析过程如下:A、解析函数根据PLV/GNV个数循环解析每个PLV/GNV数据结构,如果不是GNV结构直接将数据放入PLV/GNV数据结构,如果是GNV结构递归调用“数据流->PLV/GNV”函数,直至所有数据结构被解析完成;B、PLV/GNV数据结构到数据流解析:解析函数根据节点数目循环解析每个节点,如果不是SUB节点,直接将该节点数据填入数据流,如果是SUB节点递归调用“PLV/GNV->数据”函数,直至所有节点被解析完成。与现有技术相比,本专利技术的有益效果是:本专利技术采用数据ID-数据内容一一对应的对数据进行描述,一个数据ID-数据内容称之为PLV,多个PLV可以组成一个组称之为GNV,GNV可以进行嵌套。通过这种方式,我们可以很轻易将数据流转为可读性更高的数据结构,可以将数据结构转化为数据流进行传输;同时在协议维护方面我们可以很容易的增加字段或删减字段,只需要修改某个PLV函数即可,而不需要大量修改各种解析子函数、重新计算偏移量等;此外,本专利技术采用的可扩展数据字描述方法具备可扩展特性,将极大减少协议修改后系统升级的工作量,提高工作效率;本专利技术采用的可扩展数据字描述方法具备PLV无需特性,协议修改后无需所有设备都进行升级,提高系统的兼容性。附图说明图1为本专利技术PLV/GNV数据存储结构图;图2为本专利技术数据流->PLV/GNV解析流程图;图3为本专利技术PLV/GNV->数据解析流程图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参阅图1-3,本专利技术提供一种技术方案:一种可扩展的数据字描述结构方法,采用数据ID-数据内容一一对应的对数据进行描述,一个数据ID-数据内容称之为PLV,多个PLV可以组成一个组称之为GNV,GNV可以进行嵌套;采用PLV/GNV的无序排列:PLV/GNV解析器,将数据流转为可读性更高的数据结构,将数据结构转化为数据流进行传输;PLV/GNV数据存储结构分为:ROOT、SUB、PLV三种节点;ROOT为根节点,所有数据从该节点衍生;SUB节点为分支节点,可以扩展子结构和同时可以指向下一节点;PLV为数据节点,包含实体数据内容;节点关系可以分为:父子关系、前后关系,ROOT、SUB、PLV节点分别具有不能的节点关系。本专利技术可扩展数据字描述方法支持PLV/GNV的无序排列,传统偏移量数据描述方式如果协议稍作修改,系统内的设备均需跟随升级,否则系统将无法工作;而可扩展数据字描述方法将不会出现这种情况,系统只需要对无法解析的PLV项直接抛弃即可,当一个设备协议修改,其它设备计时不进行升级也可继续工作。同时该方式还支持嵌套,对于需要在同一协议中传输多个相同结构的数据时,只需在GNV中进行嵌套即可,而不需要决定复杂的通讯协议。本专利技术中,包括数据流到PLV/GNV的解析:解析过程如下:A、解析函数根据PLV/GNV个数循环解析每个PLV/GNV数据结构,如果不是GNV结构直接将数据放入PLV/GNV数据结构,如果是GNV结构递归调用“数据流->PLV/GNV”函数,直至所有数据结构被解析完成;B、PLV/GNV数据结构到数据流解析:解析函数根据节点数目循环解析每个节点,如果不是SUB节点,直接将该节点数据填入数据流,如果是SUB节点递归调用“PLV/GNV->数据”函数,直至所有节点被解析完成。本专利技术采用数据ID-数据内容一一对应的对数据进行描述,一个数据ID-数据内容称之为PLV,多个PLV可以组成一个组称之为GNV,GNV可以进行嵌套。通过这种方式,我们可以很轻易将数据流转为可读性更高的数据结构,可以将数据结构转化为数据流进行传输;同时在协议维护方面我们可以很容易的增加字段或删减字段,只需要修改某个PLV函数即可,而不需要大量修改各种解析子函数、重新计算偏移量等;此外,本专利技术采用的可扩展数据字描述方法具备可扩展特性,将极大减少协议修改后系统升级的工作量,提高工作效率;本专利技术采用的可扩展数据字描述方法具备PLV无需特性,协议修改后无需所有设备都进行升级,提高系统的兼容性。尽管已经示出和描述了本专利技术的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本专利技术的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本专利技术的范围由所附权利要求及其等同物限定。本文档来自技高网...
一种可扩展的数据字描述结构方法

【技术保护点】
一种可扩展的数据字描述结构方法,其特征在于:采用数据ID‑数据内容一一对应的对数据进行描述,一个数据ID‑数据内容称之为PLV,多个PLV可以组成一个组称之为GNV,GNV可以进行嵌套;采用PLV/GNV的无序排列:PLV/GNV解析器,将数据流转为可读性更高的数据结构,将数据结构转化为数据流进行传输;PLV/GNV数据存储结构分为:ROOT、SUB、PLV三种节点;ROOT为根节点,所有数据从该节点衍生;SUB节点为分支节点,可以扩展子结构和同时可以指向下一节点;PLV为数据节点,包含实体数据内容;节点关系可以分为:父子关系、前后关系,ROOT、SUB、PLV节点分别具有不能的节点关系。

【技术特征摘要】
1.一种可扩展的数据字描述结构方法,其特征在于:采用数据ID-数据内容一一对应的对数据进行描述,一个数据ID-数据内容称之为PLV,多个PLV可以组成一个组称之为GNV,GNV可以进行嵌套;采用PLV/GNV的无序排列:PLV/GNV解析器,将数据流转为可读性更高的数据结构,将数据结构转化为数据流进行传输;PLV/GNV数据存储结构分为:ROOT、SUB、PLV三种节点;ROOT为根节点,所有数据从该节点衍生;SUB节点为分支节点,可以扩展子结构和同时可以指向下一节点;PLV为数据节点,包含实体数据内容;节点关系可以分为:父子关系、前后关系,ROOT、SUB、PLV节点分别...

【专利技术属性】
技术研发人员:吕翔梁有超石甫
申请(专利权)人:吉旗成都科技有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1