一种通用的网络协议解析方法技术

技术编号:15441804 阅读:369 留言:0更新日期:2017-05-26 06:50
本发明专利技术公开了一种通用的网络协议解析方法,该方法针对不同数字化网络通道下应用层协议的规范和特点:1)定义描述应用层协议的语义元模型;2)定义网络应用协议的建模标准与规范;3)基于“树”结构描述作战系统数字化网络应用层协议模型4)基于语义元模型设计协议自动解析的方法。通过验证,本发明专利技术方法可以满足主流应用层协,通过协议解析要求,可指导具有可通用性的联调装置、测试设备、模拟器的研制。

A general analytic method of network protocol

The invention discloses a universal network protocol analysis methods, specifications and characteristics of the method for different digital channel network application protocol: 1) the definition of semantic meta model to describe the application layer protocol; 2) modeling standard definition of network application protocol and specification; 3) based on the \tree\ structure describes the application layer the combat system of digital network protocol model 4) method of semantic model design based on protocol automatic analysis. Through verification, the method of the invention can meet the requirements of the main application layer Association, and can guide the development of a universal adjustable device, a testing device and an emulator through protocol analysis requirements.

【技术实现步骤摘要】
一种通用的网络协议解析方法
本专利技术涉及网络通信领域,特别是涉及一种通用的网络协议解析方法。
技术介绍
网络协议是计算机网络中进行数据交换而建立的规则、标准或约定的集合,是用来描述进程之间信息交换数据时的规则术语。在计算机网络中,两个相互通信的实体处在不同的地理位置,其上的两个进程相互通信,需要通过交换信息来协调它们的动作和达到同步,而信息的交换必须按照预先共同约定好的过程进行。网络协议通常包括两个部分,一是标准协议,通常由行业内某个组织或机构定义,是所有通信必须遵循的规范,如:TCP/IP协议、IPX/SPX协议、NetBEUI协议等;二是应用层协议,该部分通常由收发双方内部定义。一个网络协议至少包括三个要素:一、语法:用来规定信息格式;数据及控制信息的格式、编码及信号电平等;二、语义:用来说明通信双方应当怎么做;用于协调与差错处理的控制信息;三、同步,规定通信事件发生的顺序并详细说明。由于标准协议具有开放性的特点,因此对于标准协议的解析十分方便。而应用层协议属于定制化协议,不同收发端之间的通信内容差异较大,不同应用层协议的语法、语义完全不同,很难使用一套统一的解析器对其解析,因此市面上缺乏通用的应用层协议解析的方法。
技术实现思路
本专利技术主要解决的技术问题是提供一种通用的网络协议解析方法,能够满足主流应用层协议,通过协议解析要求,可指导具有可通用性的联调装置、测试设备、模拟器的研制。为解决上述技术问题,本专利技术采用的一个技术方案是:提供一种通用的网络协议解析方法,主要包括如下步骤:一、用户首先根据实际系统的应用层协议,基于网络协议元模型,建立该系统的应用层网络协议模型,定义各个报文模型的参数;二、录入完成后,点击保存,将录入的模型按照多级树结构的形式存储到内存及文件中;三、向该方法输入某个网络报文;四、该方法获得该报文后,调度自动解析算法,匹配该报文对应的协议模型,并按照模型的参数依次对报文的各个字段进行解析,获得该字段对应的实际含义;五、基于语法树将解析的结果反馈给用户。优选的,步骤一中的报文模型参数包括各个数据字段的起始字节、字段长度、字段类型、浮点型标志和精度。优选的,所述字段类型包括:数值型、枚举型、比特段型、数组型。优选的,网络协议的语义元模型由以下元素组成:报文协议、报文字段、数组、比特段、枚举。优选的,所述的报文字段包括:字段名称、首字节位置、字节长度、字段类型、分辨率、浮点型标志;所述的数组包括:数组维数、数组大小、单元长度;所述的比特段包括:字段名称、首位位置、位长,字段类型;所述的枚举包括:枚举元素和枚举值。优选的,所述字段类型包括:值类型、比特段、枚举、数组、嵌套结构体;所述浮点型标志包括:浮点型、非浮点型;所述字节长度分为:1、2、4、8。优选的,所述数组维数<5维;所述数组大小<100;所述单元长度分为:1、2、4、8。优选的,所述比特段位长之和/8<报文字段的长度;所述字段类型分为:值类型、枚举。优选的,同一枚举变量下所有枚举元素名称必须统一。优选的,运行载体采用普通计算机,所述计算机带有网卡。本专利技术的有益效果是:1)定义描述应用层协议的语义元模型;2)定义网络应用协议的建模标准与规范;3)基于“树”结构描述作战系统数字化网络应用层协议模型;4)基于语义元模型设计协议自动解析的方法;通过验证,本专利技术方法可以满足主流应用层协,通过协议解析要求,可指导具有可通用性的联调装置、测试设备、模拟器的研制。附图说明图1是本专利技术一种通用的网络协议解析方法一较佳实施例的算法原理图;图2是所示网络报文语义元模型关系图;图3是所示语法树表示形式图。具体实施方式下面结合附图对本专利技术的较佳实施例进行详细阐述,以使本专利技术的优点和特征能更易于被本领域技术人员理解,从而对本专利技术的保护范围做出更为清楚明确的界定。请参阅图1,本专利技术实施例包括:一种通用的网络协议解析方法,主要包括如下步骤:一、用户首先根据实际系统的应用层协议,基于网络协议元模型,建立该系统的应用层网络协议模型,定义各个报文模型的参数;二、录入完成后,点击保存,将录入的模型按照多级树结构的形式存储到内存及文件中;三、向该方法输入某个网络报文;四、该方法获得该报文后,调度自动解析算法,匹配该报文对应的协议模型,并按照模型的参数依次对报文的各个字段进行解析,获得该字段对应的实际含义;五、基于语法树将解析的结果反馈给用户。如图2所示是网络报文语义元模型图,网络报文语义元模型由以下元素组成:其语法树表示形式如图3所示。进一步的,自动解析算法包括如下步骤:一、按照某数字化网络报文格式,建立该报文协议模型;二、输入某数字化网络报文;三、基于语法树,根据协议模型中各个报文字段的首字节位置及报文长度,将报文分解为若干报文字段,放入到报文字段链表中;四、依次遍历报文字段链表,根据该字段的实际数据以及报文字段类型,进行如下的解析工作:a)数值型:若为数值型,则判断该字段的长度,若为1字节,则强制转换为char类型,若为2字节,则强制转换为short类型;若为4字节,则判断浮点标志,若非浮点型,则强制转换为int类型,否则转换为float类型;若为8字节,则判断浮点标志,若非浮点型,则强制转换为longlong,否则转换为double型;然后将转换后的数值乘以分辨率,该计算结果即为该字段的实际意义;b)枚举:若为枚举型,则根据报文协议模型将报文协议切分为枚举字段,并将该字段实际数据与枚举值进行匹配,若匹配成功,则将枚举元素作为解析结果,否则返回该字段解析失败;c)比特型:若为比特型,将根据报文协议模型将报文协议切分为比特字段,然后对每个比特字段,若为值类型,则按照a)步骤解析;若为枚举型,则按照b)步骤解析;d)数组:若为数组型,首先从报文协议解析模型中获取该数组的维数、大小及单元长度,然后针对数组的每个单元,按照数值型进行解析。以上所述仅为本专利技术的实施例,并非因此限制本专利技术的专利范围,凡是利用本专利技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的
,均同理包括在本专利技术的专利保护范围内。本文档来自技高网
...
一种通用的网络协议解析方法

【技术保护点】
一种通用的网络协议解析方法,其特征在于,主要包括如下步骤:一、用户首先根据实际系统的应用层协议,基于网络协议元模型,建立该系统的应用层网络协议模型,定义各个报文模型的参数;二、录入完成后,点击保存,将录入的模型按照多级树结构的形式存储到内存及文件中;三、向该方法输入某个网络报文;四、该方法获得该报文后,调度自动解析算法,匹配该报文对应的协议模型,并按照模型的参数依次对报文的各个字段进行解析,获得该字段对应的实际含义;五、基于语法树将解析的结果反馈给用户。

【技术特征摘要】
1.一种通用的网络协议解析方法,其特征在于,主要包括如下步骤:一、用户首先根据实际系统的应用层协议,基于网络协议元模型,建立该系统的应用层网络协议模型,定义各个报文模型的参数;二、录入完成后,点击保存,将录入的模型按照多级树结构的形式存储到内存及文件中;三、向该方法输入某个网络报文;四、该方法获得该报文后,调度自动解析算法,匹配该报文对应的协议模型,并按照模型的参数依次对报文的各个字段进行解析,获得该字段对应的实际含义;五、基于语法树将解析的结果反馈给用户。2.根据权利要求1所述的一种通用的网络协议解析方法,其特征在于,步骤一中的报文模型参数包括各个数据字段的起始字节、字段长度、字段类型、浮点型标志和精度。3.根据权利要求2所述的一种通用的网络协议解析方法,其特征在于,所述字段类型包括:数值型、枚举型、比特段型、数组型。4.根据权利要求1所述的一种通用的网络协议解析方法,其特征在于,网络协议的语义元模型由以下元素组成:报文协议、报文字段、数组、比特段、枚举。5.根据权利要求4所述的一种通用的网络协议解析方法,其特...

【专利技术属性】
技术研发人员:王卓妮
申请(专利权)人:南京仁谷系统集成有限公司
类型:发明
国别省市:江苏,32

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

1