CN109450730A - 一种基于标准数据交换格式的动态应用层协议测试方法 - Google Patents

一种基于标准数据交换格式的动态应用层协议测试方法 Download PDF

Info

Publication number
CN109450730A
CN109450730A CN201811331478.7A CN201811331478A CN109450730A CN 109450730 A CN109450730 A CN 109450730A CN 201811331478 A CN201811331478 A CN 201811331478A CN 109450730 A CN109450730 A CN 109450730A
Authority
CN
China
Prior art keywords
protocol
application layer
test
field
layer protocol
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.)
Pending
Application number
CN201811331478.7A
Other languages
English (en)
Inventor
付韬
吴恒奎
孙宏
胡亚平
董继刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Electronics Technology Instruments Co Ltd CETI
Original Assignee
China Electronics Technology Instruments Co Ltd CETI
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Electronics Technology Instruments Co Ltd CETI filed Critical China Electronics Technology Instruments Co Ltd CETI
Priority to CN201811331478.7A priority Critical patent/CN109450730A/zh
Publication of CN109450730A publication Critical patent/CN109450730A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)
  • Communication Control (AREA)

Abstract

本发明涉及一种基于标准数据交换格式的动态应用层协议测试方法,包括采用标准数据交换格式自定义应用层协议的步骤;自定义协议仿真的步骤;自定义协议测试的步骤;不需额外设计测试脚本,直接使用内部标准通信模拟结果和仿真通信结果进行对比,最终经分析模块处理将测试结果从可视化界面给出。本发明将协议设计、通信流程设计与测试流程设计统一完成,实现可动态实现的协议测试,具有协议切换便捷、测试时间大大缩短、自定义协议测试效率明显提高、测试管理更加简单的特点。

Description

一种基于标准数据交换格式的动态应用层协议测试方法
技术领域
本发明属于网络协议构造与测试领域,涉及一种基于标准数据交换格式的动态应用层协议测试方法,具体涉及采用标准数据交换格式实现的动态设计协议结构、通信语义和通信时序,在此基础上实现动态应用层协议测试的方法。
背景技术
应用层协议测试指在知晓应用层协议的条件下模仿该协议在网络中正确与安全的测试,测试支持被测协议的设备在结构语义设计与处理流程上的安全性和健壮性。具体包含针对各种应用层协议的数据包进行数据包编辑发送、对接收到的数据包解析、仿真相关协议交互过程、测试被测设备是否正确符合协议标准、验证出现错误或攻击时该协议的处理方式等等。随着互联网成为网络电子商务、人们信息交换的主要途径,许多企业在其网络服务中设计了私有的应用层协议,需要对实现这些协议的服务器或客户端的协议一致性、安全性、健壮性进行评估。应用层协议测试因此成为了重要的网络测试手段,广泛用于各类网络服务的设计开发过程,具有广阔的市场。它在网络测试方面具备需要同时测试多种不同的应用层协议,这些协议在结构、字段语义、交互流程上均有各自的特点,为高效验证应用层协议带来了巨大的困难。同时,协议测试过程中需要保障不同协议测试的隔离,避免泄密或协议间干扰。
在现有方案中,从协议解析、协议仿真和协议测试三个方面分析已有方案:
(1)动态协议解析,有方案提出使用状态机构造协议结构,该方案在协议频繁测试和修改时需要不断修改状态机;有方案提出使用正则表达式构造协议结构,该类方式能高效匹配,但不具备测试发包功能。有方案提出使用XML等设计协议,但相关工作没有对字段赋予详尽的描述,无法用于仿真与测试。上述技术方案是仅用于协议解析的方案。
(2)协议仿真,有方案使用状态机配合消息模板实现协议仿真,但相关方案多针对设计好的标准协议,或者是固定的协议文件,无法针对自定义协议灵活测试的需求动态修改协议模板。有方案可以对标准协议进行组合,再按照预设的方法处理,无法针对自定义的复杂协议进行测试。
(3)当前的应用层协议测试执行主要依靠单独编写协议测试脚本和开发对应的处理程序。这种方式需要大量人力且处理时间冗长,并且不具备面相多种应用层协议的弹性,每测试仪中心的协议都需要进行相关开发。上述方式已跟不上互联网发展的速度,亟待设计动态可扩展的应用层协议测试方案。
综上,现有测试程序只能够在软件层面使用协议的库文件和专门设计的测试程序,处理流程无法针对自定义的协议进行自动调整。在现有仪器设备中,Spirent公司中采用预先由专业人士设计的协议文件,主要针对标准化的应用层协议进行测试。而且,上述方案没有针对协议进行保密隔离。
此外,应用层协议具有灵活的字段长度和复杂的字段分割方法,其灵活性远远大于2至4层协议。手工编写应用层协议的处理程序并设计与之相对应的测试软件是目前常见的方案,该方案的缺点是开发周期极长。并且在协议需要修改时,需要大量修改测试软件,为研发测试工作带来巨大的时间工时开销。应用于复杂网络系统(如云数据中心、公司内部网络等)时,由于涉及到的应用层能协议涉及多种,需要进行大量的重复开发,阻碍了相关测试的快速执行。现有方案没有同时实现协议结构、通信语法和测试流程的同步设计,至少某一个环节采用固定文件,这无法实现高效的应用层协议测试。在某些条件下,测试过程中不希望测试人员掌握协议敏感信息。现有工作无法同时在应用层协议灵活设计、处理程序通用性、测试程序通用性和保密安全性上达到简单高效的结果。
发明内容
针对现有技术存在的不足,本发明的目的是针对可以自由组合和修改的自定义应用层协议,设计一种基于标准数据交换格式的动态应用层协议测试方法,通过协议语法、语义和时序的模板化将协议规范与处理过程分离的技术,将协议设计、通信流程设计与测试流程设计统一完成,同时采用身份验证的数据库提高被测协议的敏感信息,最终实现可动态实现的协议测试;具有协议切换便捷、测试时间大大缩短、自定义协议测试效率明显提高、测试管理更加简单的特点。
为了解决上述技术问题,本发明采用的技术方案是:
一种基于标准数据交换格式的动态应用层协议测试方法,包括以下步骤:
步骤1、采用标准数据交换格式自定义应用层协议的步骤;
步骤2、自定义协议仿真的步骤;
步骤3、自定义协议测试的步骤;
其中,步骤3中,不需额外设计测试脚本,直接使用内部标准通信模拟结果和仿真通信结果进行对比,最终经分析模块处理将测试结果从可视化界面给出。
优选的是,在选择自定义协议、测试相关的状态机之后,开始进行协议测试;在进行一致性测试时,应用层协议测试模块开启两个进程,一个进程仿真被测设备状态机,另一个进程仿真测试设备状态机;其中,两个状态机必须是某一通信过程的通信双方,同样的测试数据,测试状态机会发送给被测设备和仿真进程,两者的响应数据会被发送到分析模块进行对比;分析模块将两者除地址以外的字段进行对比分析,当所有的响应消息均一致判定为符合协议规范的要求;否则,认为被测设备的实现存在问题。
优选的是,步骤1中,应用层协议采用标准数据交换格式定义,具体格式包括但不限于XML、JSON、Protobuf;使用交换格式存储协议结构、每个字段取值及对应含义、数据处理状态机;GUI界面对协议文件进行管理,通过具备身份验证的数据库将被测应用层协议信息隔离。
优选的是,步骤1中包括以下步骤:
(1)自定义协议字段设计:一个协议的数据包包括若干字段,每个字段独立设计并加入标准数据交换格式中;用户采用标准数据交换格式设计完协议结构后,使用自定义协议软件将模板导入;
(2)协议仿真状态机:一个状态机包括若干状态,每一个状态由状态编号、转换条件、计数器、计时器组成,由状态定义所需的变换事件;
(3)模板一致性检查:在设计协议结构和状态机后,需要对两者一致性进行验证。
优选的是,步骤(1)自定义协议字段设计时,每个字段具备的基本属性包括:
a)字段名称:用于标志该字段的名称;
b)编号:该协议中的唯一编号,依据该编号决定生成数据结构时该字段的位置,同时依据该编号读取字段取值列表;
c)类型:给出该字段在协议中的作用,字段类型包括但不限于数据字段、分割字段、分片字段、校验字段;
d)字段长度:给出该字段的长度,是固定长度或可变长度;
e)校验方式;
f)校验输入。
优选的是,自定义协议导入过程是,首先导入自定义协议结构的标准数据交换格式文件,然后进行解析,获得协议基本信息,最后将文件中每一个字段的描述读入并生成动态结构。
优选的是,一致性检查需要对以下几个方面进行检测:
a)协议交换格式下的协议文件不存在编号错误;
b)校验方式在系统库中存在;
c)状态机中的事件没有使用协议中未定义的字段取值;
d)状态机动作中没有使用协议中未定义的字段取值。
优选的是,步骤2、自定义协议仿真的步骤是:
1)设置输入参数,包括需要仿真的应用层协议、状态机文件、端口号;
2)开启监听数据包的进程;
3)判断是否收到数据包,如果收到数据包则继续下面步骤;
4)完成传输层以下各层解析,根据端口号确定是否是被测应用层协议;符合调制第6)步,不符合直接进行第5)步;
5)对不符合应用层协议所用端口号的数据包丢弃;
6)由于对事件的定义在状态机中实现,因此访问当前状态确定根据那些字段判断处理方式;状态机返回所需事件及相关参数;
7)通信仿真程序根据步骤6)返回的事件,参照协议模板决定数据包是否满足状态切换的条件:如果满足则进行步骤8),否则直接跳转步骤10);
8)如果满足状态的事件,执行相关动作;
9)根据当前状态和事件决定下一个状态,进行状态切换;
10)记录数据包和处理过程,将相关数据写入日志。
与现有技术相比,本发明优点在于:
(1)本发明提出了一种适用于需要全面灵活定制、不同协议保密隔离的应用层协议测试场景,是一种基于标准数据交换格式的应用层协议发包、解包、仿真与测试方法。使用统一的协议管理软件实现自定义协议自由导入、同时运行多个协议测试状态机,实现协议结构和语法的自由编辑,使测试程序直接根据输入的协议模板执行测试,实现动态根据协议输入调整测试方案,围绕自定义的应用层协议进行协议数据发送、解析、协议仿真和协议测试验证,具有协议切换便捷、测试时间大大缩短、测试管理更加简单的特点。
(2)基于标准数据交换格式的弹性可扩展应用层协议测试系统,通过标准化定义的数据格式设计和保存应用层协议的数据结构、处理状态机,将协议设计、通信流程设计与测试流程设计统一完成;通过保密模块实现了协议敏感信息的保护,保护被测协议的安全。
(3)通过可视化界面提供的接口实现了应用层协议测试程序与应用层协议具体实现的抽象和分离,使得两者相互独立,协议仿真与测试流程灵活可扩展,能够用统一的模板描述各类应用层协议,实现应用协议模板并行化编写;减少了大量针对应用层协议开发处理流程的开销,提高了应用层协议仿真测试程序的复用性。
(4)定义了可自由修改并测试的应用层协议表示格式,设计了应用层协议字段的抽象格式,详细设计了多种字段类型和字段属性,能够反映应用层所需的各种字段,提高了协议设计完备性、字段功能描述能力和协议测试灵活性。
(5)将应用层协议处理流程抽象为若干状态构成的标准数据交换格式文件,定义了状态机中状态的相关架构,可以实现各种测试、仿真流程;程序可以直接导入大量遵循同一协议编写规范的文件,提高了应用层协议测试效率。
(6)实现了测试程序的模板化,利用软件内部协议通信模拟和仿真通信实现的自动化测试模式,不再需要单独设计大量测试脚本。
附图说明
图1为测试架构图;
图2为字段定义结构图;
图3为自定义协议导入流程图;
图4为协议数据包结构示意图;
图5为状态示意图;
图6为应用层协议仿真流程图;
图7为自定义协议测试示意图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的说明。
本发明提出一种适用于需要全面灵活定制、不同协议保密隔离的应用层协议测试场景,是一种基于标准数据交换格式的应用层协议发包、解包、仿真与测试方法,它通过采用标准数据交换格式编写的自定义协议模板和具备通用性的测试模块来实现,将应用层协议规范以不限于XML、Json、Protobuf等标准的数据形式直接存入协议模板文件、状态机文件中,测试管理软件读入相关文件后存入保密数据库。在进行身份验证的前提下,通过数据库读取接口保存为内部数据结构,应用层协议测试模块根据协议结构和状态机信息进行数据包收发、数据包解析与协议仿真与测试。
本发明通过应用层测试管理软件实现应用层协议测试任务统一管理,该软件由统一的可视化界面、自定义协议设计、运行时的数据结构和具备协议接口测试程序组成。
本发明基于标准数据交换格式的弹性可扩展应用层协议测试系统,通过标准化定义的数据格式设计和保存应用层协议的数据结构、处理状态机,通过保密模块实现了协议敏感信息的保护。通过可视化界面提供的接口实现了应用层协议测试程序与应用层协议具体实现的抽象和分离,使得两者相互独立,易于扩展和灵活变化。
下面分别详细介绍本发明基于标准数据交换格式的动态应用层协议测试方法步骤。
一、采用标准数据交换格式自定义应用层协议的步骤;
利用自定义协议软件做管理界面,应用层协议采用标准数据交换格式定义,具体格式包括但不限于XML、JSON、Protobuf等,如图1所示。使用交换格式存储协议结构、每个字段取值及对应含义、数据处理状态机。GUI界面可以对协议文件进行管理,通过具备身份验证的数据库将被测应用层协议信息隔离,提高保密性,导入协议后可交由测试程序执行。一份基于标准数据交换格式定义的应用层协议可同时用于仿真与测试。下面详细介绍相关各组成部分:
(1)自定义协议字段设计:
自定义协议采用标准数据交换格式设计并保存,本发明所指的协议交换格式包括结构化格式、半结构化格式。其中结构化格式以XML、JSON、、Protobuf为典型,本发明中以结构图表示设计结果,具体实现受采用的数据交换格式影响。一个协议的数据包由若干字段组成,具体结构由图2所示,图中的各元素必须具备图中所列的属性,可选择的可以扩展更多的属性。
每一个字段是协议的基本单元,独立进行设计并加入标准数据交换格式中,最基本的属性包括:
a)字段名称:用于标志该字段的名称,使得编辑和解析协议数据包时用户易于理解。
b)编号:该协议中的唯一编号,依据该编号决定生成数据结构时该字段的位置,同时依据该编号读取字段取值列表。
c)类型:给出该字段在协议中的作用。为了实现通用化处理,将字段分类,依据字段的类型选择处理方法。字段类型包括但不限于数据字段、分割字段、分片字段、校验字段等:
数据字段:表明该字段只是用于数据的传输;
分割字段:应用层协议使用灵活的字符进行字段分割,分割字段使用编号加内容的方法给出特定位置的分割方法;
分片字段:应用层协议在内容数据量过大时会使用多个分片,该字段给出分片相关信息,用于恢复原始数据;
校验字段:为了防止传输过程中出现错误或恶意篡改,使用校验字段进行错误控制,该字段需要特定的处理函数。
Bitmap字段:使用若干位二进制码指定某些配置,每一比特定义一种开关或一种指标;
TTL字段:某些协议需要制定数据包转发的最多次数以控制网络流量;
时间戳字段:用于需要计时的网路;
协议版本字段:给出协议的版本号;
完成应用层协议所需的其他字段等。
d)字段长度:给出该字段的长度,可以是固定长度或可变长度。
e)校验方式:此处指为了防止人为编写错误,系统应该如何检查错误。
f)校验输入:此处指检查错误时需要使用那些数据作为输入。
用户采用标准数据交换格式(以XML为例,不限于XML)设计完协议结构后,使用自定义协议软件将模板导入,导入过程如图3所示,首先读入自定义协议XML文件,然后进行解析,将协议基本信息如协议如端口号、是否有特殊分割符等读入,最后将文件中每一个字段的描述读入并生成动态结构。结构示意图如图4,但具体实现不限于该形式,可采用树或图来存储,以提高检索效率。
(2)协议仿真状态机:
本发明将处理流程模板化,判断条件状态机化,将状态及相关信息同样使用标准数据交换格式保存。一个状态机由若干状态组成,具体结构由图5所示,每一个状态由状态编号,转换条件、计数器、计时器组成,由状态定义所需的变换事件。相关解释如下:
a)状态编号:用于标识状态的唯一编号;
b)转换条件:转化条件由事件、下一个状态和动作组成。
c)计数器:在某些协议中,需要根据某些消息的发送次数决定响应方式,本方法为每一个状态设置一组计数器,在设计状态机时可对计数器作使能设置;
d)计时器:在某些协议中,需要根据某些状态的时间决定响应方式,本方法为每一个状态设置一组计时器,在设计状态机时可对计时器作使能设置。
特别声明,事件的定义与实现可根据协议结构指定,在本发明中不作特别限制没可以使用字段及取值、计数器满足特定条件、计时器满足特定条件等决定。
(3)模板一致性检查:
在设计协议结构和状态机后,需要对两者一致性进行验证,该过程在自定义协议处理流程中被称为一致性检测。需要对以下几个方面进行检测:
a)协议交换格式下的协议文件不存在编号错误;
b)校验方式在系统库中存在;
c)状态机中的事件没有使用协议中未定义的字段取值;
d)状态机动作中没有使用协议中未定义的字段取值。
二、自定义协议仿真的步骤:
自定义协议软件可读取、编写、保存上述协议文档,可选择但不限于使用数据库存储相关数据。整个系统仿真应用层协议的流程如图6:
1)设置输入参数,包括需要仿真的应用层协议、状态机文件、端口号等。
2)开启监听数据包的进程。
3)判断是否收到数据包,如果收到数据包则继续下面步骤。
4)完成传输层以下各层解析,根据端口号确定是否是被测应用层协议。符合调制第6)步,不符合直接进行第5)步。
5)对不符合应用层协议所用端口号的数据包丢弃。
6)由于对事件的定义在状态机中实现,因此访问当前状态确定根据那些字段判断处理方式。状态机返回所需事件及相关参数。
7)通信仿真程序根据步骤6)返回的事件,参照协议模板决定数据包是否满足状态切换的条件:如果满足则进行步骤8),否则直接跳转步骤10)。
8)如果满足状态的事件,执行相关动作。
9)根据当前状态和事件决定下一个状态,进行状态切换。
10)记录数据包和处理过程,将相关数据写入日志。
三、自定义协议测试的步骤:
本发明的特色在于在实现协议仿真后,不需额外设计测试脚本。直接使用内部标准通信模拟结果和仿真通信结果进行对比,最终经分析模块处理将测试结果从可视化界面给出。具体示意图如图7。
在选择自定义协议、测试相关的状态机之后,开始进行协议测试。在进行一致性测试时,应用层协议测试模块开启两个进程,一个进程仿真被测设备状态机,另一个进程仿真测试设备状态机。两个状态机必须是某一通信过程的通信双方,同样的测试数据,测试状态机会发送给被测设备和仿真进程,两者的响应数据会被发送到分析模块进行对比。分析模块将两者除地址以外的字段进行对比分析,当所有的响应消息均一致判定为符合协议规范的要求。否则,认为被测设备的实现存在问题。在进行字段验证时,只开启测试状态机,采用穷举字段的方式向被测设备发送测试数据,并将所有相应结果发送至分析模块。
综上所述,本发明基于标准数据交换格式的弹性可扩展应用层协议测试系统,通过标准化定义的数据格式设计和保存应用层协议的数据结构、处理状态机,通过保密模块实现了协议敏感信息的保护。通过可视化界面提供的接口实现了应用层协议测试程序与应用层协议具体实现的抽象和分离,使得两者相互独立,易于扩展和灵活变化,提高了应用层协议仿真测试程序的复用性。
定义了可自由修改并测试的应用层协议表示格式,详细设计了多种字段类型和字段属性,能够反映应用层所需的各种字段,提高了协议设计完备性、字段功能描述能力和协议测试灵活性。
将应用层协议处理流程抽象为若干状态构成的标准数据交换格式文件,定义了状态机中状态的相关架构,可以实现各种测试、仿真流程;程序可以直接导入大量遵循同一协议编写规范的文件,提高了应用层协议测试效率。
当然,上述说明并非是对本发明的限制,本发明也并不限于上述举例,本技术领域的普通技术人员,在本发明的实质范围内,做出的变化、改型、添加或替换,都应属于本发明的保护范围。

Claims (8)

1.一种基于标准数据交换格式的动态应用层协议测试方法,其特征在于,包括以下步骤:
步骤1、采用标准数据交换格式自定义应用层协议的步骤;
步骤2、自定义协议仿真的步骤;
步骤3、自定义协议测试的步骤;
其中,步骤3中,不需额外设计测试脚本,直接使用内部标准通信模拟结果和仿真通信结果进行对比,最终经分析模块处理将测试结果从可视化界面给出。
2.根据权利要求1所述的基于标准数据交换格式的动态应用层协议测试方法,其特征在于,在选择自定义协议、测试相关的状态机之后,开始进行协议测试;在进行一致性测试时,应用层协议测试模块开启两个进程,一个进程仿真被测设备状态机,另一个进程仿真测试设备状态机;其中,两个状态机必须是某一通信过程的通信双方,同样的测试数据,测试状态机会发送给被测设备和仿真进程,两者的响应数据会被发送到分析模块进行对比;分析模块将两者除地址以外的字段进行对比分析,当所有的响应消息均一致判定为符合协议规范的要求;否则,认为被测设备的实现存在问题。
3.根据权利要求1所述的基于标准数据交换格式的动态应用层协议测试方法,其特征在于:步骤1中,应用层协议采用标准数据交换格式定义,具体格式包括但不限于XML、JSON、Protobuf;使用交换格式存储协议结构、每个字段取值及对应含义、数据处理状态机;GUI界面对协议文件进行管理,通过具备身份验证的数据库将被测应用层协议信息隔离。
4.根据权利要求3所述的基于标准数据交换格式的动态应用层协议测试方法,其特征在于,步骤1中包括以下步骤:
(1)自定义协议字段设计:一个协议的数据包包括若干字段,每个字段独立设计并加入标准数据交换格式中;用户采用标准数据交换格式设计完协议结构后,使用自定义协议软件将模板导入;
(2)协议仿真状态机:一个状态机包括若干状态,每一个状态由状态编号、转换条件、计数器、计时器组成,由状态定义所需的变换事件;
(3)模板一致性检查:在设计协议结构和状态机后,需要对两者一致性进行验证。
5.根据权利要求4所述的基于标准数据交换格式的动态应用层协议测试方法,其特征在于:步骤(1)自定义协议字段设计时,每个字段具备的基本属性包括:
a)字段名称:用于标志该字段的名称;
b)编号:该协议中的唯一编号,依据该编号决定生成数据结构时该字段的位置,同时依据该编号读取字段取值列表;
c)类型:给出该字段在协议中的作用,字段类型包括但不限于数据字段、分割字段、分片字段、校验字段;
d)字段长度:给出该字段的长度,是固定长度或可变长度;
e)校验方式;
f)校验输入。
6.根据权利要求5所述的基于标准数据交换格式的动态应用层协议测试方法,其特征在于:自定义协议导入过程是,首先导入自定义协议结构的标准数据交换格式文件,然后进行解析,获得协议基本信息,最后将文件中每一个字段的描述读入并生成动态结构。
7.根据权利要求5或6所述的基于标准数据交换格式的动态应用层协议测试方法,其特征在于:一致性检查需要对以下几个方面进行检测:
a)协议交换格式下的协议文件不存在编号错误;
b)校验方式在系统库中存在;
c)状态机中的事件没有使用协议中未定义的字段取值;
d)状态机动作中没有使用协议中未定义的字段取值。
8.根据权利要求1-5任一项所述的基于标准数据交换格式的动态应用层协议测试方法,其特征在于,步骤2、自定义协议仿真的步骤是:
1)设置输入参数,包括需要仿真的应用层协议、状态机文件、端口号;
2)开启监听数据包的进程;
3)判断是否收到数据包,如果收到数据包则继续下面步骤;
4)完成传输层以下各层解析,根据端口号确定是否是被测应用层协议;符合调制第6)步,不符合直接进行第5)步;
5)对不符合应用层协议所用端口号的数据包丢弃;
6)由于对事件的定义在状态机中实现,因此访问当前状态确定根据那些字段判断处理方式;状态机返回所需事件及相关参数;
7)通信仿真程序根据步骤6)返回的事件,参照协议模板决定数据包是否满足状态切换的条件:如果满足则进行步骤8),否则直接跳转步骤10);
8)如果满足状态的事件,执行相关动作;
9)根据当前状态和事件决定下一个状态,进行状态切换;
10)记录数据包和处理过程,将相关数据写入日志。
CN201811331478.7A 2018-11-09 2018-11-09 一种基于标准数据交换格式的动态应用层协议测试方法 Pending CN109450730A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811331478.7A CN109450730A (zh) 2018-11-09 2018-11-09 一种基于标准数据交换格式的动态应用层协议测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811331478.7A CN109450730A (zh) 2018-11-09 2018-11-09 一种基于标准数据交换格式的动态应用层协议测试方法

Publications (1)

Publication Number Publication Date
CN109450730A true CN109450730A (zh) 2019-03-08

Family

ID=65551694

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811331478.7A Pending CN109450730A (zh) 2018-11-09 2018-11-09 一种基于标准数据交换格式的动态应用层协议测试方法

Country Status (1)

Country Link
CN (1) CN109450730A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110147536A (zh) * 2019-05-24 2019-08-20 深圳市多翼创新科技有限公司 一种基于文件映射的数据处理方法、装置及设备
CN110198254A (zh) * 2019-05-31 2019-09-03 卡斯柯信号有限公司 一种通信协议在线诊断方法及诊断系统
CN111935070A (zh) * 2020-06-18 2020-11-13 云南电网有限责任公司信息中心 一种基于自动编排的数据安全交换系统及方法
CN112055062A (zh) * 2020-08-21 2020-12-08 深圳市信锐网科技术有限公司 数据通信方法、装置、设备及可读存储介质
CN112104634A (zh) * 2020-09-08 2020-12-18 中国电力科学研究院有限公司 数据报文处理方法、系统、设备及可读存储介质
CN112231222A (zh) * 2020-10-27 2021-01-15 南京林洋电力科技有限公司 一种面向对象通信协议的自动化测试方法及系统
CN112367356A (zh) * 2020-10-14 2021-02-12 北京易观智库网络科技有限公司 多终端的物联网数据互联同步方法、装置和电子设备
CN112436903A (zh) * 2020-11-16 2021-03-02 国网北京市电力公司 测试系统
CN112491645A (zh) * 2020-11-11 2021-03-12 深圳数联天下智能科技有限公司 一种自动化测试方法和自动化测试设备
CN116776849A (zh) * 2023-06-06 2023-09-19 深圳市平方科技股份有限公司 船舶edi的模板编辑方法、装置、电子设备及存储介质
CN117240738A (zh) * 2023-11-15 2023-12-15 国汽(北京)智能网联汽车研究院有限公司 车载以太网的测试方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1787460A (zh) * 2004-12-10 2006-06-14 中兴通讯股份有限公司 一种通信协议一致性测试系统
CN101707608A (zh) * 2009-11-27 2010-05-12 成都市华为赛门铁克科技有限公司 应用层协议自动化测试方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1787460A (zh) * 2004-12-10 2006-06-14 中兴通讯股份有限公司 一种通信协议一致性测试系统
CN101707608A (zh) * 2009-11-27 2010-05-12 成都市华为赛门铁克科技有限公司 应用层协议自动化测试方法及装置

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110147536B (zh) * 2019-05-24 2023-03-24 深圳市多翼创新科技有限公司 一种基于文件映射的数据处理方法、装置及设备
CN110147536A (zh) * 2019-05-24 2019-08-20 深圳市多翼创新科技有限公司 一种基于文件映射的数据处理方法、装置及设备
CN110198254A (zh) * 2019-05-31 2019-09-03 卡斯柯信号有限公司 一种通信协议在线诊断方法及诊断系统
CN111935070A (zh) * 2020-06-18 2020-11-13 云南电网有限责任公司信息中心 一种基于自动编排的数据安全交换系统及方法
CN112055062A (zh) * 2020-08-21 2020-12-08 深圳市信锐网科技术有限公司 数据通信方法、装置、设备及可读存储介质
CN112055062B (zh) * 2020-08-21 2024-04-09 深圳市信锐网科技术有限公司 数据通信方法、装置、设备及可读存储介质
CN112104634A (zh) * 2020-09-08 2020-12-18 中国电力科学研究院有限公司 数据报文处理方法、系统、设备及可读存储介质
CN112367356A (zh) * 2020-10-14 2021-02-12 北京易观智库网络科技有限公司 多终端的物联网数据互联同步方法、装置和电子设备
CN112231222A (zh) * 2020-10-27 2021-01-15 南京林洋电力科技有限公司 一种面向对象通信协议的自动化测试方法及系统
CN112231222B (zh) * 2020-10-27 2024-04-09 南京林洋电力科技有限公司 一种面向对象通信协议的自动化测试方法及系统
CN112491645A (zh) * 2020-11-11 2021-03-12 深圳数联天下智能科技有限公司 一种自动化测试方法和自动化测试设备
CN112436903A (zh) * 2020-11-16 2021-03-02 国网北京市电力公司 测试系统
CN116776849A (zh) * 2023-06-06 2023-09-19 深圳市平方科技股份有限公司 船舶edi的模板编辑方法、装置、电子设备及存储介质
CN117240738A (zh) * 2023-11-15 2023-12-15 国汽(北京)智能网联汽车研究院有限公司 车载以太网的测试方法、装置、设备及存储介质
CN117240738B (zh) * 2023-11-15 2024-03-29 国汽(北京)智能网联汽车研究院有限公司 车载以太网的测试方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN109450730A (zh) 一种基于标准数据交换格式的动态应用层协议测试方法
KR100962532B1 (ko) 부하 테스트를 위한 패킷의 부하 재생성 시스템 및 그 방법
CN104412565B (zh) 用于涉及承载无关协议的套接字管理的方法
Philipps et al. Model-based test case generation for smart cards
CN107861852A (zh) 网页错误处理方法、系统及可读存储介质
Pferscher et al. Fingerprinting Bluetooth Low Energy devices via active automata learning
CN103530209A (zh) 一种密码键盘自动化测试方法
Probert et al. TTCN: the international notation for specifying tests of communications systems
Lal et al. Blockchain testing: Challenges, techniques, and research directions
CN109902015A (zh) 一种智能合约仿真测试方法、装置、系统及存储介质
Wen et al. Toward exploiting access control vulnerabilities within mongodb backend web applications
US10310962B2 (en) Infrastructure rule generation
Berger et al. Does my bft protocol implementation scale?
Backes et al. Causality-based abstraction of multiplicity in security protocols
Ziauddin et al. Formal analysis of ISO/IEC 9798-2 authentication standard using AVISPA
Cortier et al. A decidable class of security protocols for both reachability and equivalence properties
Mahapatra et al. A survey of sq1 injection countermeasures
Seifi et al. Analysis of two authorization protocols using Colored Petri Nets
Couch An expectant chat about script maturity
Vlaovič et al. Automated generation of Promela model from SDL specification
Dahl Using coloured petri nets in penetration testing
Salva et al. Using Model Learning for the Generation of Mock Components
Marksteiner et al. Using Automata Learning for Compliance Evaluation of Communication Protocols on an NFC Handshake Example
Abbors et al. Applying Model-Based Testing in the Telecommunication Domain.
Ammann Symbolic-Model-Guided Fuzzing of Cryptographic Protocols

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190308