可配置的网络协议数据解析方法及电子设备技术

技术编号:34631353 阅读:17 留言:0更新日期:2022-08-24 15:03
本公开提供一种可配置的网络协议数据解析方法及电子设备,所述方法应用于电子设备,电子设备包括解析引擎,解析引擎内设置有协议解析器;所述方法,包括:通过解析引擎分析待解析网络协议数据,以确定待解析网络协议数据采用的待解析协议;通过协议解析器对待解析网络协议数据进行解析;其中,协议解析器是根据预先编写的协议配置文件相应配置的,协议配置文件与待解析协议对应;该方法通过编写协议配置文件代替常规的编写代码的工作,使用协议配置文件驱动解析引擎的方式,完成网络协议数据的正确解析,即完成对于网络协议数据中所采用的协议的正确解析,具有开发周期短、安全系数高、需求响应速度快的优点。需求响应速度快的优点。需求响应速度快的优点。

【技术实现步骤摘要】
可配置的网络协议数据解析方法及电子设备


[0001]本公开涉及
,尤其涉及一种可配置的网络协议数据解析方法及电子设备。

技术介绍

[0002]网络协议是计算机网络中相互通信的对等实体之间数据交换时所必须遵守的规则、标准集合。因为网络节点之间联系的复杂性和网络协议的多层次结构设计,这就提升了网络协议解析的复杂性和多样性。以往常规的协议解析实现都是采用硬编码方式。硬编码方式虽然保证了解码的正确性,但是面临开发周期长、后期维护成本高和扩展难度大等问题。

技术实现思路

[0003]有鉴于此,本公开的目的在于提出一种可配置的网络协议数据解析方法及电子设备。
[0004]基于上述目的,本公开第一方面提供了一种可配置的网络协议数据解析方法,应用于电子设备,所述电子设备包括解析引擎,所述解析引擎内设置有协议解析器;
[0005]所述方法,包括:
[0006]通过所述解析引擎分析待解析网络协议数据,以确定所述待解析网络协议数据采用的待解析协议;
[0007]通过所述协议解析器对所述待解析网络协议数据进行解析;其中,所述协议解析器是根据预先编写的协议配置文件相应配置的,所述协议配置文件与所述待解析协议对应。
[0008]基于相同目的,本公开第二方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的方法。
[0009]从上面所述可以看出,本公开提供的可配置的网络协议数据解析方法及电子设备,该方法应用于电子设备,且电子设备包括解析引擎,解析引擎内设置有多个协议解析器;进行解析时,首先通过解析引擎分析待解析网络协议数据,以确定待解析网络协议数据采用的待解析协议和待解析协议对应的协议解析器,协议解析器是根据预先编写的协议配置文件相应配置的,然后通过协议解析器对待解析网络协议数据进行解析;该方法通过编写协议配置文件代替常规的编写代码的工作,使用协议配置文件驱动解析引擎的方式,完成网络协议数据的正确解析,即完成对于网络协议数据中所采用的协议的正确解析,具有开发周期短、安全系数高、需求响应速度快的优点。
附图说明
[0010]为了更清楚地说明本公开或相关技术中的技术方案,下面将对实施例或相关技术
描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0011]图1为本公开实施例提供的网络协议数据解析的简略流程示意图;
[0012]图2为本公开实施例提供的顺序型数据结构示意图;
[0013]图3为本公开实施例提供的IP协议头数据格式示意图;
[0014]图4为本公开实施例提供的迭代型数据结构示意图;
[0015]图5为本公开实施例提供的RADIUS协议数据格式示意图;
[0016]图6为本公开实施例提供的嵌套型数据结构示意图;
[0017]图7为本公开实施例提供的OSPFv2协议LSU报文数据格式示意图;
[0018]图8为本公开实施例提供的协议解析器中所有节点的关联关系结构为顺序型结构的示意图;
[0019]图9为本公开实施例提供的协议解析器中所有节点的关联关系结构为迭代型结构的示意图;
[0020]图10为本公开实施例提供的协议解析器中所有节点的关联关系结构为嵌套型结构的示意图;
[0021]图11为本公开实施例提供的协议解析器中所有节点的关联关系结构为多级复杂嵌套型结构的示意图;
[0022]图12为本公开实施例提供的示例性的可配置的网络协议数据解析方法的流程示意图;
[0023]图13为本公开实施例所提供的一种更为具体的电子设备硬件结构示意图。
具体实施方式
[0024]为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
[0025]需要说明的是,除非另外定义,本公开实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
[0026]网络协议,是计算机网络中相互通信的对等实体之间数据交换时所必须遵守的规则和标准的集合。因为网络节点之间联系的复杂性和网络协议的多层次结构设计,这就提升了网络协议解析的复杂性和多样性。以往常规的协议解析实现都是采用硬编码方式。硬编码方式虽然保证了解码的正确性,但是硬编码的方式是针对每一种协议分别进行开发,当新增一种或几种协议解析需求时,需要单独为其编写代码进行解析。
[0027]这种情况下,作为开发人员,往往会面临一个问题:字段需求无法保证。因为在开发过程中,重点关注的是用户需求内所明确指出的字段,后期如有新增字段解析需求时,仍
需编写、修改代码,可能反复出现开发周期和开发质量无法保证问题。
[0028]针对上述问题,本公开提供了一种可配置的网络协议数据解析方法及电子设备,该方法应用于电子设备,且电子设备包括解析引擎,解析引擎内设置有多个协议解析器;进行解析时,首先通过解析引擎分析待解析网络协议数据,以确定待解析网络协议数据采用的待解析协议和待解析协议对应的协议解析器,协议解析器是根据预先编写的协议配置文件相应配置的,然后通过协议解析器对待解析网络协议数据进行解析;该方法可以应用于桌面计算机、移动电脑、手机、平板电脑、计算机、智能可穿戴设备、个人数字助理等,具体不做限定。
[0029]为了便于理解,下面结合附图对该可配置的网络协议数据解析方法进行说明。
[0030]如图1所示,执行本方法的电子设备(以下简称本电子设备)接收到网络协议数据后,为了获得网络协议数据所携带的内容,则需要对网络协议数据进行解析;为了对网络协议数据进行解析,可以在本电子设备内设置解析引擎(简称PAE),解析引擎为用来完成网络协议数据解析的虚拟模块。解析引擎可以包括至少一个具体用于执行解析工作的协议解析器,每个协议解析器负责解析一个协议,并且可以采用协议解析器负责解析的协议的编号对其进行标号,以标识协议解析器的唯一性。
[0031]解析引擎内还可以包括预先构建的解析函数,进行网络协议数据解析时,解析引擎调用相应的解析函数,协议解析器基于解析函数解析网络协议数据。
[0032]在一些实施例中,根据协议格式不同,待解析网络协议数据的类型可以划分为顺序型结构、迭代型结构、嵌套型结构中的一种或多种。
[0033]顺序型结构的待解析网络协议数据,包括一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种可配置的网络协议数据解析方法,应用于电子设备,所述电子设备包括解析引擎,所述解析引擎内设置有协议解析器;所述方法,包括:通过所述解析引擎分析待解析网络协议数据,以确定所述待解析网络协议数据采用的待解析协议;通过所述协议解析器对所述待解析网络协议数据进行解析;其中,所述协议解析器是根据预先编写的协议配置文件相应配置的,所述协议配置文件与所述待解析协议对应。2.根据权利要求1所述的可配置的网络协议数据解析方法,其中,所述协议配置文件是根据目标协议相应编写的;根据协议配置文件进行配置后的所述协议解析器为包括多个节点的解析链,所述解析链中包括的各节点和相应的目标协议中包括的各字段一一对应。3.根据权利要求2所述的可配置的网络协议数据解析方法,其中,所述通过所述协议解析器对所述待解析网络协议数据进行解析,包括:通过所述解析引擎确定所述协议解析器中所有节点的关联关系结构,基于所述关联关系结构,确定并调用相应的解析函数;基于所述解析函数,通过所述协议解析器由所述待解析网络协议数据中,提取所述协议解析器中所有节点相应的字段信息。4.根据权利要求3所述的可配置的网络协议数据解析方法,其中,所述协议解析器中包括的所有节点的关联关系结构包括顺序型结构、迭代型结构、嵌套型结构中的一种或多种;当所述协议解析器中所有节点的关联关系结构为顺序型结构时,基于所述所有节点的排列顺序依次由所述待解析网络协议数据中提取信息;当所述协议解析器中所有节点的关联关系结构为迭代型结构或嵌套型结构时,由所述关联关系结构的内层节点到外层节点依次由所述待解析网络协议数据中提取信息。5.根据权利要求1所述的可配置的网络协议数据解析方法,其中,所述协议配置文件的编写方法包括:根据用户需求准备目标协议列表,所述目...

【专利技术属性】
技术研发人员:张子中罗浩
申请(专利权)人:北京思信飞扬信息技术股份有限公司
类型:发明
国别省市:

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

1