CN107612919B - 协议配置方法及装置 - Google Patents
协议配置方法及装置 Download PDFInfo
- Publication number
- CN107612919B CN107612919B CN201710911821.4A CN201710911821A CN107612919B CN 107612919 B CN107612919 B CN 107612919B CN 201710911821 A CN201710911821 A CN 201710911821A CN 107612919 B CN107612919 B CN 107612919B
- Authority
- CN
- China
- Prior art keywords
- protocol
- header
- jump
- configuring
- form page
- 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.)
- Active
Links
Images
Landscapes
- Communication Control (AREA)
Abstract
本发明提供一种协议配置方法及装置,属于轨道交通控制领域。该方法包括:对于excel协议配置文档中任一协议表单页,基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称;基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头;基于协议头,配置任一协议表单页的表头,并基于表头配置每一表项的值。由于形成了一个统一的面向解析工具的接口,解析工具针对这套统一的通用的语法来解析用户根据具体协议配置出来的各个协议进行解析,使得协议的语法解析工作不再需要编写代码来实现,只需要配置一个excel表即可,从而节省了协议开发资源,并可满足用户各方面的使用需求。
Description
技术领域
本发明涉及轨道交通控制领域,更具体地,涉及一种协议配置方法及装置。
背景技术
网络协议是两侧通信计算机共同遵从的一组约定,每一个通信过程的协议都是不同的。在有些应用场景中会涉及多个协议的解析开发,而要针对每个协议编制相应逻辑的代码去处理是一种普遍的做法,不过问题在于可扩展性差,要针对具体的协议定义去编码解决,如目前已有的组态软件会代码编写专门的驱动程序。在相关技术中通常需要开发人员配合才可实现协议的变动修改。由于每有一种新的协议出现就要调动软件开发资源去实现协议逻辑,这造成了协议开发资源的浪费。另外,当遇到已有协议存在语法定义变动时,用户不能根据变动立即做修改,需要开发人员配合才可进行,从而导致每次修改极为不便,不能满足用户各方面的使用需求。
发明内容
由于每有一种新的协议出现就要调动软件开发资源去实现协议逻辑,这造成了协议开发资源的浪费。另外,当遇到已有协议存在语法定义变动时,用户不能根据变动立即做修改,需要开发人员配合才可进行,从而导致每次修改极为不便,不能满足用户各方面的使用需求。为了解决上述问题,本发明提供一种克服上述问题或者至少部分地解决上述问题的协议配置方法及装置。
根据本发明的第一方面,提供了一种协议配置方法,该方法包括:
对于excel协议配置文档中任一协议表单页,基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称;
基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头;
基于协议头,配置任一协议表单页的表头,并基于表头配置每一表项的值。
本发明实施例提供的方法,对于excel协议配置文档中任一协议表单页,通过基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称。基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头。基于协议头,配置任一协议表单页的表头,并基于表头配置每一表项的值。由于可将协议结构信息通过自定义的简单语法直观的表示出来,将所有协议都接口化成一个通用的配置文件,形成了一个统一的面向解析工具的接口,解析工具针对这套统一的通用的语法来解析用户根据具体协议配置出来的各个协议进行解析,使得协议的语法解析工作不再需要编写代码来实现,只需要配置一个excel表即可,进行协议解析时可将此配置好的协议加载进特定的协议解析工具中去解析,从而节省了协议开发资源,并可满足用户各方面的使用需求。
根据本发明的第二方面,提供了一种协议配置装置,包括:
第一配置模块,用于对于excel协议配置文档中任一协议表单页,基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称;
第二配置模块,用于基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头;
第三配置模块,用于基于协议头,配置任一协议表单页的表头,并基于表头配置每一表项的值。
根据本发明的第三方面,提供了一种协议配置设备,包括:
至少一个处理器;以及
与处理器通信连接的至少一个存储器,其中:
存储器存储有可被处理器执行的程序指令,处理器调用程序指令能够执行如第一方面所提供的方法。
根据本发明的第四方面,提供了一种非暂态计算机可读存储介质,非暂态计算机可读存储介质存储计算机指令,计算机指令使计算机执行如第一方面所提供的方法。
应当理解的是,以上的一般描述和后文的细节描述是示例性和解释性的,并不能限制本发明。
附图说明
图1为本发明实施例的一种协议配置方法的流程示意图;
图2为本发明实施例的一种协议配置方法的流程示意图;
图3为本发明实施例的一种协议表单页名称的配置示意图;
图4为本发明实施例的一种协议头的配置示意图;
图5为本发明实施例的一种普通表表头的配置示意图;
图6为本发明实施例的一种#keyword协议结构的配置示意图;
图7为本发明实施例的一种#length协议结构的配置示意图;
图8为本发明实施例的一种#loop协议结构的配置示意图;
图9为本发明实施例的一种#jump_conditon协议结构的配置示意图;
图10为本发明实施例的一种#jump_point协议结构的配置示意图;
图11为本发明实施例的一种码位表的配置示意图;
图12为本发明实施例的一种协议配置装置的结构示意图;
图13为本发明实施例的一种协议配置设备的框图;
图14为本发明实施例的一种普通表长度配置的配置示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
网络协议是两侧通信计算机共同遵从的一组约定,每一个通信过程的协议都是不同的。在有些应用场景中会涉及多个协议的解析开发,而要针对每个协议编制相应逻辑的代码去处理是一种普遍的做法,不过问题在于可扩展性差,要针对具体的协议定义去编码解决,如目前已有的组态软件会代码编写专门的驱动程序。在相关技术中通常需要开发人员配合才可实现协议的变动修改。由于每有一种新的协议出现就要调动软件开发资源去实现协议逻辑,这造成了协议开发资源的浪费。另外,当遇到已有协议存在语法定义变动时,用户不能根据变动立即做修改,需要开发人员配合才可进行,从而导致每次修改极为不便,不能满足用户各方面的使用需求。
针对相关技术中的问题,现急需一种协议配置方法,以适应不同的协议,即不需要客户有编写代码的功底,只需要按照简单规则配置协议文件,再利用专门的协议解析工具去实现解析的过程,这样就会在短时间内开发出协议解析逻辑,利用特定的协议解析工具便可将协议信息展示完全。基于此,本发明实施例旨在提出一种基于excel的通用协议配置方法,目的是让绝大部分应用层协议都能够按此方法配置成一个协议文件,解析时加载协议文件即可进行相应的解析。
需要说明的是,通用在这里意味着工具并不是针对某一特定协议而工作,而是能够根据用户的需要去解析相应类型的协议,从而能够由使用者进行配置后,对协议进行在线及离线的解析功能,以解决各方面人员的使用需求。在本发明实施例中选用excel文档作为协议配置文档。主要理由如下:
1)按行配置,每行可代表的是一个协议变量。
2)每列表示的是协议变量的一种属性,包括协议变量的名称,长度及描述信息等。
3)相比使用xml配置文档而言,用户不必了解类似于xml文档编写的语法,只需会编辑excel文档即可。
4)excel文档的每个sheet页可表示一个协议块,从而比较容易区分。
5)配置协议时方便复制粘贴,易于操作。
除了表头之外每一行代表一个具体变量,每个变量是协议中的一个解析单元,包含名称,长度大小端等方面的属性,协议结构属性是变量的关键属性。由于协议解析是按流程走的,控制流程的是由协议结构属性控制的,变量之间如果存在某种关联,即一个变量的取值会影响到其他变量的解析,那么这个变量就要配置上特殊的协议结构属性。如果每个变量之间没有任何关联的话解析流程是自上而下解析的,按顺序从第一个变量解析至最后一个变量。
基于上述内容,本发明实施例提供了一种协议配置方法。参见图1,该方法包括:101、对于excel协议配置文档中任一协议表单页,基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称;102、基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头;103、基于协议头,配置任一协议表单页的表头,并基于表头配置每一表项的值。
其中,excel协议配置文档即为excel文件,协议表单页即为excel文件中sheet页。跳转标识用于指向不同的目标跳转sheet页,码位表序号可用数字编码,以区分同种跳转标识的sheet页。
本发明实施例提供的方法,对于excel协议配置文档中任一协议表单页,通过基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称。基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头。基于协议头,配置任一协议表单页的表头,并基于表头配置每一表项的值。由于可将协议结构信息通过自定义的简单语法直观的表示出来,将所有协议都接口化成一个通用的配置文件,形成了一个统一的面向解析工具的接口,解析工具针对这套统一的通用的语法来解析用户根据具体协议配置出来的各个协议进行解析,使得协议的语法解析工作不再需要编写代码来实现,只需要配置一个excel表即可,进行协议解析时可将此配置好的协议加载进特定的协议解析工具中去解析,从而节省了协议开发资源,并可满足用户各方面的使用需求。
作为一种可选实施例,条件跳转识别码用于记录跳转的条件信息,条件信息至少包括跳转标识、跳转条件值和跳转点的行数。
作为一种可选实施例,表类型包括普通表及码位表,比特序用于指示解析比特值的解析顺序。
作为一种可选实施例,基于协议头,配置任一协议表单页的表头,包括:
当协议头对应的表类型为普通表时,基于协议结构、变量长度、协议变量的名称、大小端、显示格式、取值范围及说明信息,配置任一协议表单页的表头;
当协议头对应的表类型为码位表时,基于当前设备的标识名称及当前设备的码位名称,配置任一协议表单页的表头。
作为一种可选实施例,协议结构至少包括关键字属性结构、长度关键字属性结构、循环控制属性结构及跳转点结构;
关键字属性结构用于对报文取值进行筛选检验,长度关键字属性结构用于校验协议整体长度,循环控制属性结构用于控制循环解析流程,跳转点结构用于指示跳转的目标协议表单页。
作为一种可选实施例,当变量长度的值为正整数时,变量长度以字节为单位表示;当变量长度的值为小数时,变量对应的类型为比特串,小数点前的整数部分取值为比特串所在字节块的字节长度范围,小数点后的小数部分取值对应比特串的所占位宽。
其中,当整数部分取值为零时,则代表比特串所在字节块的字节长度范围在1个字节的范围内。
作为一种可选实施例,当跳转分支的数量大于1时,协议结构还包括:跳转条件控制属性结构;
跳转条件控制属性结构用于在跳转逻辑中记录跳转条件值、跳转点的行数及跳转标识。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
基于上述实施例的内容,本发明实施例提供了一种协议配置方法。参见图2,该方法包括:201、对于excel协议配置文档中任一协议表单页,基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称;202、基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头;203、基于协议头,配置任一协议表单页的表头;204、基于表头,配置任一协议表单页中每一表项的值。
其中,201、对于excel协议配置文档中任一协议表单页,基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称。
在本步骤中,excel的每一协议表单页,即sheet页可用来表示一个协议块。其中,第一个sheet页是协议解析的起始页。因此,需对从第一个sheet页开始,为每个sheet页配置协议。其中,每一sheet页的名称可按照如下格式进行命名:
<跳转ID,条件跳转识别码,码位表序号>协议块名
在上述命名格式中,跳转标识对应分支号,且不可省略。分支号可用大写的A、B、C...来表示。其中,可从A开始,按照分支出现的先后顺序来从A开命名。条件跳转识别码用于记录跳转的条件信息,条件信息至少包括跳转标识、跳转条件值和跳转点的行数。当解析到“跳转点”变量时,解析流程会相应查找相匹配的跳转ID对应的所有sheet页,并在这些sheet页中继续将“跳转条件变量”的值与各个条件跳转识别码相比较,如发现匹配值,则在匹配的sheet页继续解析流程。当条件跳转识别码为空时,则代表限定跳转长度的跳转。在写入条件跳转识别码的数值时,如果条件跳转识别码不是比特信息,则可直接写其十六进制值,如:<A,0x0102>。反之,如果条件跳转识别码是比特信息,则可直接将二进制值写入,如:<B,1010>。
另外,码位表序号用于区分各个不同的码位表序号,可用数字编码。协议块名为自定义的协议块名称,可由用户自行命名。需要说明的是,由于excel第一个sheet页为解析流程的开始,从而可以省略尖括号内这部分信息,而直接将sheet页的名称命名为“协议块名”即可。其中,配置协议表单页的名称可如图3所示。
其中,202、基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头。
在本步骤中,表类型包括普通表及码位表,具体可通过0、1来表示表类型。例如,普通表可配置成0,也即集合了按流程解析的变量集合的表;如果为码位表,则配置成1,码位表是指变量表内数据区的每个单元格对应收到报文中的一个比特值,一个码位对应一个单元格,这样的表为码位表。比特序用于指示解析比特值的解析顺序,即在表内如果涉及比特取值变量时,用于确定解析比特值的顺序是从高到低解析还是从低到高解析。其中,协议头的配置说明可如图4所示。
其中,203、基于协议头,配置任一协议表单页的表头。
本发明实施例不对基于协议头,配置任一协议表单页的表头的方式作具体限定,包括但不限于:当协议头对应的表类型为普通表时,基于协议结构、变量长度、协议变量的名称、大小端、显示格式、取值范围及说明信息,配置任一协议表单页的表头;当协议头对应的表类型为码位表时,基于当前设备的标识名称及当前设备的码位名称,配置任一协议表单页的表头。其中,普通表的配置说明可如图5所示。
其中,协议结构至少包括关键字属性结构、长度关键字属性结构、循环控制属性结构及跳转点结构;
关键字属性结构用于对报文取值进行筛选检验,长度关键字属性结构用于校验协议整体长度,循环控制属性结构用于控制循环解析流程,跳转点结构用于指示跳转的目标协议表单页。
当变量长度的值为正整数时,变量长度以字节为单位表示;当变量长度的值为小数时,变量对应的类型为比特串,小数点前的整数部分取值为比特串所在字节块的字节长度范围,小数点后的小数部分取值对应比特串的所占位宽。其中,当整数部分取值为零时,则代表比特串所在字节块的字节长度范围在1个字节的范围内。
例如,若变量长度的值为整数且为正整数时,表示长度是字节为单位。如果该值为带小数点的数值时,小于1的小数情况,则小数后的值为1个字节范围内所占的位宽,如0.3表示报文的比特流中接下来一个字节内紧挨着的三个比特用于表示变量长度。当小数点前整数部分取值大于零时,表示其整数取值字节的范围内依次按比特位宽取出比特群,变量长度带小数点的情况配置示例可见图14所示。如果该值为X或x,即为第一预设字符,则表示长度是不定长的数据,只用于“条件跳转点”变量中。
需要说明的是,当跳转分支的数量大于1时,协议结构还包括:跳转条件控制属性结构;跳转条件控制属性结构用于在跳转逻辑中记录跳转条件值、跳转点的行数及跳转标识。
例如,对于普通表,其协议结构可包括如下五种:#keyword、#length、#loop、#jump_condition及#jump_point。
其中,#keyword称为关键字属性,用作筛校验功能,将此属性配置在相应变量上,能够在解析时去检查收到的报文取值是否与特征值相等,如果不等则解析至此变量后即停止解析,用作识别当前协议是否为目标协议。#keyword的格式为#keyword<特征值>,#keyword的配置示例可参考图6。
#length称为长度关键字属性,用作校验协议整体长度的,将此属性配置在相应的变量上,能够在解析时将当前变量的值按运算规则算出要接收协议的整体长度。#length的格式为#length<报文整体长度>,如#lengh<108>代表协议长度共108字节。#length的配置示例可参考图7。
#loop称为循环控制属性,用作控制循环的流程,将此属性配置在相应的变量上,能够在解析时控制循环的流程。在得到被解析报文后,可在解析过程中获取循环流程的执行次数。#loop的格式为#loop<起始行,终止行>,#loop的配置示例可参考图8。
#jump_condition称为跳转条件控制属性,用作跳转逻辑中记录跳转的条件值,跳转点的行数,跳转的ID信息。#jump_point称为跳转点,此变量仅代表解析流程将从这里跳转到另一个sheet页去解析,解析完成后将回到当前sheet页此跳转点的下一个变量接着解析。而这个跳转点变量会被跳转后的sheet页的所有字节信息赋值,以展示这部分字节的概况。这两个配置项相配合,从而控制流程跳转。
例如,#jump_conditon<14,A>所在行为具有分支识别码的行,14代表当解析流程走至行14时,将会检查此处报文中的数据与分支识别码的对应情况,然后找到sheet页中与此分支识别码匹配的协议块,跳转至匹配的分支进行解析,当协议块解析完毕后,跳转回之前示例中行15继续解析流程。行14的长度如果用X来表示,则表示接下来要解析的协议块为长度未知的协议块,需要用X来表示,解析完该协议块后跳回来后接着解析当前协议块。
如果行14的长度如果不是X来表示,比如配置成0.720,表示将要解析的协议块长度有720比特,是长度确定的协议块,跳转至协议块解析内容如果不足720比特,则剩下不足的部分也不进行解析,跳转回当前协议解析后要在之后的720比特后接着解析。
需要说明的是,对于解析流程只有一个分支的情况,则不必配置#jump_conditon,只需在出现分支的位置配置#jump_point即可。其中,#jump_conditon与#jump_point的配置示例可参考图9及图10。
其中,204、基于表头,配置任一协议表单页中每一表项的值。
对于普通表,配置协议表单页,也即sheet页的过程可参考上述步骤中的内容。而对于码位表,码位表的配置只是将码位位置写入除第一列的各个单元格内即可,第一列为码位所属的设备单元标识名称,这里命名为NAME,其他各列代表的是当前所属的设备单元的码位的名称。例如,如附图11所示,B5单元格代表的是DC2设备单元的D码位所处位置为1673。
本发明实施例提供的方法,对于excel协议配置文档中任一协议表单页,通过基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称。基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头。基于协议头,配置任一协议表单页的表头,并基于表头配置每一表项的值。由于可将协议结构信息通过自定义的简单语法直观的表示出来,将所有协议都接口化成一个通用的配置文件,形成了一个统一的面向解析工具的接口,解析工具针对这套统一的通用的语法来解析用户根据具体协议配置出来的各个协议进行解析,使得协议的语法解析工作不再需要编写代码来实现,只需要配置一个excel表即可,进行协议解析时可将此配置好的协议加载进特定的协议解析工具中去解析,从而节省了协议开发资源,并可满足用户各方面的使用需求。
基于上述实施例所提供的协议配置方法,本发明实施例提供了一种协议配置装置。参见图12,该装置包括:
第一配置模块1201,用于对于excel协议配置文档中任一协议表单页,基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称;
第二配置模块1202,用于基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头;
第三配置模块1203,用于基于协议头,配置任一协议表单页的表头,并基于表头配置每一表项的值。
作为一种可选实施例,条件跳转识别码用于记录跳转的条件信息,条件信息至少包括跳转标识、跳转条件值和跳转点的行数。
作为一种可选实施例,表类型包括普通表及码位表,比特序用于指示解析比特值的解析顺序。
作为一种可选实施例,第三配置模块1203,用于当协议头对应的表类型为普通表时,基于协议结构、变量长度、协议变量的名称、大小端、显示格式、取值范围及说明信息,配置任一协议表单页的表头;
当协议头对应的表类型为码位表时,基于当前设备的标识名称及当前设备的码位名称,配置任一协议表单页的表头。
作为一种可选实施例,协议结构至少包括关键字属性结构、长度关键字属性结构、循环控制属性结构及跳转点结构;
关键字属性结构用于对报文取值进行筛选检验,长度关键字属性结构用于校验协议整体长度,循环控制属性结构用于控制循环解析流程,跳转点结构用于指示跳转的目标协议表单页。
作为一种可选实施例,当变量长度的值为正整数时,变量长度以字节为单位表示;当变量长度的值为小数时,变量对应的类型为比特串,小数点前的整数部分取值为比特串所在字节块的字节长度范围,小数点后的小数部分取值对应比特串的所占位宽。
作为一种可选实施例,当跳转分支的数量大于1时,协议结构还包括:跳转条件控制属性结构;
跳转条件控制属性结构用于在跳转逻辑中记录跳转条件值、跳转点的行数及跳转标识。
本发明实施例提供的装置,对于excel协议配置文档中任一协议表单页,通过基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称。基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头。基于协议头,配置任一协议表单页的表头,并基于表头配置每一表项的值。由于可将协议结构信息通过自定义的简单语法直观的表示出来,将所有协议都接口化成一个通用的配置文件,形成了一个统一的面向解析工具的接口,解析工具针对这套统一的通用的语法来解析用户根据具体协议配置出来的各个协议进行解析,使得协议的语法解析工作不再需要编写代码来实现,只需要配置一个excel表即可,进行协议解析时将此配置好的协议加载进特定的协议解析工具中去解析即可,从而节省了协议开发资源,并可满足用户各方面的使用需求。
本发明实施例提供了一种协议配置设备。参见图13,该协议配置设备包括:处理器(processor)1301、存储器(memory)1302和总线1303;
其中,处理器1301及存储器1302分别通过总线1303完成相互间的通信;
处理器1301用于调用存储器1302中的程序指令,以执行上述实施例所提供的协议配置方法,例如包括:对于excel协议配置文档中任一协议表单页,基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称;基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头;基于协议头,配置任一协议表单页的表头,并基于表头配置每一表项的值。
本发明提供一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令使计算机执行上述实施例所提供的协议配置方法,例如包括:对于excel协议配置文档中任一协议表单页,基于跳转标识、条件跳转识别码及码位表序号配置任一协议表单页的名称;基于任一协议表单页中的表类型及比特序,配置任一协议表单页的协议头;基于协议头,配置任一协议表单页的表头,并基于表头配置每一表项的值。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的信息交互设备等实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分方法。
最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种协议配置方法,其特征在于,包括:
对于excel协议配置文档中任一协议表单页,基于跳转标识、条件跳转识别码及码位表序号配置所述任一协议表单页的名称;
基于所述任一协议表单页中的表类型及比特序,配置所述任一协议表单页的协议头;
基于所述协议头,配置所述任一协议表单页的表头,并基于所述表头配置每一表项的值;
所述条件跳转识别码用于记录跳转的条件信息,所述条件信息至少包括跳转标识、跳转条件值和跳转点的行数;
所述表类型包括普通表及码位表,所述比特序用于指示解析比特值的解析顺序;
所述基于所述协议头,配置所述任一协议表单页的表头,包括:
当所述协议头对应的表类型为普通表时,基于协议结构、变量长度、协议变量的名称、大小端、显示格式、取值范围及说明信息,配置所述任一协议表单页的表头;
当所述协议头对应的表类型为码位表时,基于当前设备的标识名称及当前设备的码位名称,配置所述任一协议表单页的表头。
2.根据权利要求1所述的方法,其特征在于,所述协议结构至少包括关键字属性结构、长度关键字属性结构、循环控制属性结构及跳转点结构;
所述关键字属性结构用于对报文取值进行筛选检验,所述长度关键字属性结构用于校验协议整体长度,所述循环控制属性结构用于控制循环解析流程,所述跳转点结构用于指示跳转的目标协议表单页。
3.根据权利要求1所述的方法,其特征在于,当所述变量长度的值为正整数时,所述变量长度以字节为单位表示;当所述变量长度的值为小数时,变量对应的类型为比特串,小数点前的整数部分取值为所述比特串所在字节块的字节长度范围,小数点后的小数部分取值对应所述比特串的所占位宽。
4.根据权利要求2所述的方法,其特征在于,当跳转分支的数量大于1时,所述协议结构还包括:跳转条件控制属性结构;
所述跳转条件控制属性结构用于在跳转逻辑中记录跳转条件值、跳转点的行数及跳转标识。
5.一种协议配置装置,其特征在于,包括:
第一配置模块,用于对于excel协议配置文档中任一协议表单页,基于跳转标识、条件跳转识别码及码位表序号配置所述任一协议表单页的名称;
第二配置模块,用于基于所述任一协议表单页中的表类型及比特序,配置所述任一协议表单页的协议头;
第三配置模块,用于基于所述协议头,配置所述任一协议表单页的表头,并基于所述表头配置每一表项的值;
所述条件跳转识别码用于记录跳转的条件信息,所述条件信息至少包括跳转标识、跳转条件值和跳转点的行数;
所述表类型包括普通表及码位表,所述比特序用于指示解析比特值的解析顺序;
所述基于所述协议头,配置所述任一协议表单页的表头,包括:
当所述协议头对应的表类型为普通表时,基于协议结构、变量长度、协议变量的名称、大小端、显示格式、取值范围及说明信息,配置所述任一协议表单页的表头;
当所述协议头对应的表类型为码位表时,基于当前设备的标识名称及当前设备的码位名称,配置所述任一协议表单页的表头。
6.一种协议配置设备,其特征在于,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至4任一所述的方法。
7.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至4任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710911821.4A CN107612919B (zh) | 2017-09-29 | 2017-09-29 | 协议配置方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710911821.4A CN107612919B (zh) | 2017-09-29 | 2017-09-29 | 协议配置方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107612919A CN107612919A (zh) | 2018-01-19 |
CN107612919B true CN107612919B (zh) | 2020-05-08 |
Family
ID=61067316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710911821.4A Active CN107612919B (zh) | 2017-09-29 | 2017-09-29 | 协议配置方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107612919B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111611507A (zh) * | 2020-05-27 | 2020-09-01 | 掌阅科技股份有限公司 | 基于模块化的应用内页面跳转方法及计算设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101835175A (zh) * | 2009-03-11 | 2010-09-15 | 中兴通讯股份有限公司 | 一种实现网管配置的方法和工具 |
CN102082797A (zh) * | 2011-01-21 | 2011-06-01 | 中兴通讯股份有限公司 | 一种对数据流进行协议解析处理的方法及装置 |
CN103838706A (zh) * | 2012-11-22 | 2014-06-04 | 江苏现代造船技术有限公司 | 一种可定制流程与表单的柔性管理信息系统 |
CN104536887A (zh) * | 2014-12-18 | 2015-04-22 | 珠海格力电器股份有限公司 | 通讯数据检测方法和装置 |
CN105224447A (zh) * | 2014-06-11 | 2016-01-06 | 联创汽车电子有限公司 | 发动机控制器软件诊断模块测试方法及测试系统 |
-
2017
- 2017-09-29 CN CN201710911821.4A patent/CN107612919B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101835175A (zh) * | 2009-03-11 | 2010-09-15 | 中兴通讯股份有限公司 | 一种实现网管配置的方法和工具 |
CN102082797A (zh) * | 2011-01-21 | 2011-06-01 | 中兴通讯股份有限公司 | 一种对数据流进行协议解析处理的方法及装置 |
WO2012097641A1 (zh) * | 2011-01-21 | 2012-07-26 | 中兴通讯股份有限公司 | 一种对数据流进行协议解析处理的方法及装置 |
CN103838706A (zh) * | 2012-11-22 | 2014-06-04 | 江苏现代造船技术有限公司 | 一种可定制流程与表单的柔性管理信息系统 |
CN105224447A (zh) * | 2014-06-11 | 2016-01-06 | 联创汽车电子有限公司 | 发动机控制器软件诊断模块测试方法及测试系统 |
CN104536887A (zh) * | 2014-12-18 | 2015-04-22 | 珠海格力电器股份有限公司 | 通讯数据检测方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107612919A (zh) | 2018-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8091071B2 (en) | Method and system for template-based code generation | |
US7508985B2 (en) | Pattern-matching system | |
CN110502227B (zh) | 代码补全的方法及装置、存储介质、电子设备 | |
CN106294493B (zh) | 实现文档格式转换的方法及装置 | |
US5594892A (en) | Method for automated software application testing | |
US20150128114A1 (en) | Parser | |
CN103853650A (zh) | 一种模糊测试的测试用例生成方法及装置 | |
JPS6375835A (ja) | 目的コ−ド、プログラム・リスト及び設計文書を生成する装置 | |
CN101253478A (zh) | 类型推理和类型导向的后期绑定 | |
CN112148343B (zh) | 规则发布方法、装置及终端设备 | |
CN109460231B (zh) | 基于xml的上位机软件实现方法 | |
AU2023258402A1 (en) | Techniques for dynamically defining a data record format | |
CN107612919B (zh) | 协议配置方法及装置 | |
US9436664B2 (en) | Performing multiple scope based search and replace within a document | |
CN111026604B (zh) | 一种日志文件解析方法及装置 | |
CN116088846A (zh) | 一种持续集成代码格式的处理方法、相关装置及设备 | |
US10929121B2 (en) | Method, device and related system for dynamically repairing application | |
CN115904480B (zh) | 代码重构方法、装置、电子设备及存储介质 | |
CN117435230A (zh) | 基于神经网络的代码注释处理方法及装置 | |
CN107943519B (zh) | 一种时序数据乱序操作处理方法和装置 | |
CN115080444A (zh) | 测试用例转换方法、装置、电子设备及存储介质 | |
CN115794186A (zh) | 游戏数据的热更新方法、装置、服务器及存储介质 | |
CN114626358A (zh) | 一种语言混写解析方法、装置、设备及存储介质 | |
CN113886748A (zh) | 网页内容的编辑信息生成、信息输出方法、装置及设备 | |
CN108132780B (zh) | 一种基于自定义脚本的航空显示控制方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20201016 Address after: Unit a, building 2, No. 1166 Tianlong Avenue, Jinniu hi tech Industrial Park, Chengdu, Sichuan 610037 Patentee after: Chengdu traffic control technology Co., Ltd Address before: 100070 Beijing science and Technology Park of Fengtai District Haiying Road No. 6 hospital of Beijing, the headquarters of the International 2 Building No. 3 Patentee before: Traffic Control Technology Co.,Ltd. |