CN111162959B - 一种基于参数的航电接口数据通信协议模糊测试方法 - Google Patents
一种基于参数的航电接口数据通信协议模糊测试方法 Download PDFInfo
- Publication number
- CN111162959B CN111162959B CN201911189710.2A CN201911189710A CN111162959B CN 111162959 B CN111162959 B CN 111162959B CN 201911189710 A CN201911189710 A CN 201911189710A CN 111162959 B CN111162959 B CN 111162959B
- Authority
- CN
- China
- Prior art keywords
- sending
- message
- message sending
- parameter
- state
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0677—Localisation of faults
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/14—Arrangements for monitoring or testing data switching networks using software, i.e. software packages
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/02—Protocol performance
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Environmental & Geological Engineering (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
Abstract
本发明涉及一种基于参数的航电接口数据通信协议模糊测试方法,解决航电接口数据通信协议的健壮性测试问题,其包括主进程、发送进程和监控进程,主进程包括以下步骤:步骤一、判断用户结构树是否有特殊要求;若没有,进入步骤二,若有,进入步骤三;步骤二、调用默认结构树,进入步骤四;步骤三、成新的结构树,并调用新生成的结构树,进入步骤四;步骤四、调用协议参数变异算法,给待使用结构树中的参数赋值;步骤五、将共享数据初始化;步骤六、根据运行的状态对共享数据进行赋值:步骤七、启动发送进程和监控进程;步骤八、等待来自发送进程和监控进程的通知参数;步骤九、如果接收到通知参数,则返回步骤六,如果没有,返回步骤八。
Description
技术领域
本发明属于通信技术领域,具体涉及一种基于参数的航电接口数据通信协议模糊测试方法,用于对机载信息网络中的航电接口数据通信协议进行模糊测试。
背景技术
航电接口数据通信协议随着机载信息技术的发展而应用到机载应用间的通信中。它是一种应用层协议,建立在基于TCP/IP协议栈的航空以太网通信中。该协议主要用于为连接在航空以太网接口上的应用提供飞机参数,以进行状态监控、故障分析、维护和统计。
该协议的健壮性,是该协议以及相关功能成功运行的保证。但是由于该协议是机载环境下的特有协议,当前还没有针对该协议进行健壮性测试的方法和工具,无法对该协议实现功能的健壮性进行评估。
发明内容
为了解决航电接口数据通信协议的健壮性测试问题,本发明提供了一种基于参数的航电接口数据通信协议模糊测试方法,该方法是一种针对该协议的客户端进行健壮性测试的方法。
本发明的技术方案是:
一种基于参数的航电接口数据通信协议模糊测试方法,包括主进程、发送进程和监控进程;
主进程包括以下步骤:
步骤一、接收用户的输入要求,判断用户对协议的元素构成结构树是否有特殊要求;若没有特殊要求,进入步骤二,若有特殊要求,进入步骤三;
步骤二、调用协议报文对应的默认结构树,进入步骤四;
步骤三、按照协议报文的结构定义文件及用户定义生成新的结构树,并调用新生成的结构树,进入步骤四;
步骤四、调用协议参数变异算法,给待使用结构树中的参数赋值,形成赋值参数列表;
步骤五、将报文发送状态参数和报文发送完成状态参数分别初始化为0;
步骤六、根据报文发送状态参数和报文发送完成状态参数择一进行以下操作:
a)如果报文发送状态和报文发送完成状态分别为初始化状态,则按照赋值参数列表,为报文参数赋值,构建初始报文发送序列,报文发送状态=0;
b)如果报文发送状态为3,报文发送完成状态为0,则结束发送进程和监控进程,按照监控进程中已发送的测试序列,构建出错报文发送序列;
c)如果报文发送状态为4,或报文发送状态、报文发送完成状态分别为3和1,则结束发送进程和监控进程,按照赋值参数列表中未使用的参数项,重新为报文参数赋值,构建遗留报文发送序列,报文发送状态=0;
d)如果报文发送完成状态为2,则表明测试完成,终止发送进程和监控进程,向用户反馈测试结果,返回步骤一;
步骤七、启动发送进程和监控进程;
步骤八、等待来自发送进程和监控进程的通知参数;
步骤九、如果接收到通知参数,则返回步骤六,如果没有,返回步骤八。
进一步地,发送进程包括以下步骤:
1)本地计时,按照主进程步骤六中形成的发送报文序列,发送报文并存储报文;
2)判断报文序列中的报文是否全部发送,若没有全部发送,则返回步骤1),若是测试报文全部发送完成,则进入步骤3),若是错误确认报文发送完成,则进入步骤4);
3)报文发送完成状态参数赋值为2,进入步骤5);
4)报文发送完成状态参数赋值为1,进入步骤5);
5)向主进程发送通知参数,通知主进程,结束流程。
进一步地,监控进程包括以下步骤:
第1步、发送主进程构建的发送报文序列中的心跳消息报文;
第2步、对心跳消息的计数及计时进行监控;
第3步、判断是否出现异常,若出现异常则进入第4步,若没有异常,则返回第1步;
第4步、报文发送状态检测参数,如果状态为0,则进入第5步,如果状态参数为3,则进入第7步;
第5步、报文发送状态参数赋值为3,进入第6步;
第6步、按照用户定义的时间范围,存储该时间范围内已发送的测试序列,进入第9步;
第7步、报文发送状态参数赋值为4,进入第8步;
第8步、进行故障加强记录,进入第9步;
第9步、向主进程发送通知参数,通知主进程,结束流程。
与现有技术相比,本发明技术方案的优点是:
1.本发明方法实现了对AIDCP协议的健壮性测试,满足AIDCP协议的发送序列要求。
2.本发明方法提供算法调用接口,可以调用不同的算法,实现算法多样性及兼容性。
3.本发明方法采用基于AIDCP协议报文结构树的测试方法,在原有协议构成的基础上,仅对协议中的参数进行变异,测试目的性强。
4.本发明方法通过监控进程的反馈信息,提供故障确认机制,分别记录偶发故障和确认故障。
附图说明
图1为本发明基于参数的航电接口数据通信协议模糊测试方法中主进程的流程图;
图2为本发明基于参数的航电接口数据通信协议模糊测试方法中的发送进程的流程图;
图3为本发明基于参数的航电接口数据通信协议模糊测试方法中的监控进程的流程图。
具体实施方式
以下结合附图和具体实施例对本发明的内容作进一步详细描述。
本发明针对航电接口数据通信协议(AIDCP协议)的模糊测试,设计了一种基于参数的航电接口数据通信协议模糊测试方法,用于对机载信息网络中的航电接口数据通信协议进行模糊测试,实现了对航电接口数据通信协议产品的健壮性评估,并填补了这一空白。
本发明方法包括三个进程:主进程、发送进程和监控进程。其中,主进程最先启动,并一直运行。在主进程运行过程中,根据运行时机启动发送进程和监控进程,并和它们进行信息交互。启动发送进程和监控进程执行过程中,与主进程并发执行,它们根据自己的运行条件结束自己的运行周期。
主进程接收用户输入,进行AIDCP协议报文结构树生成,调取变异算法,生成测试用例,构建AIDCP协议发送报文序列,启动发送进程和监控进程,并根据测试反馈终止发送进程和监控进程。发送进程主要用于按照构建的报文序列发送报文,在报文发送结束后自动终止,或者在报文异常后,因连接中断而自动终止。监控进程发送心跳消息,依据心跳消息的内容判断通信是否正常,如果正常,则继续发送心跳消息,如果异常,则将异常状态通知主进程。
主进程将测试用例序列和重复测试导致出错的测试用例序列存储在不同的地方,向发送进程发送不同的地址,使其发送不同的测试用例序列。按照用户定义的时间段要求,发送进程对发送的测试序列进行存储。当需要进行错误确认时,主进程从存储的测试序列中读取内容,并补全测试序列,保证和被测设备的通信序列的完整性,然后通知发送进程发送测试序列。
主进程和发送进程、监控进程之间的通信有两种机制:通知机制和共享数据机制。主进程等待来自发送进程和监控进程的通知,收到通知后,进行共享数据检查,最后依据共享进程的值运行不同的分支程序。发送进程和监控进程在运行过程中,根据运行的状态对共享数据进行赋值,并在适当的时候通知主进程。共享数据包括报文发送状态与报文发送完成状态。报文发送状态用于表示报文发送过程中的状态,分为:0:表示测试未启动,3:出现初次异常;4:异常复现。报文发送完成状态表示报文是否发送完全,分为:0:初始状态;1:错误报文发送完全;2:测试报文全部发送完全。
本发明提供的基于参数的航电接口数据通信协议模糊测试方法包括主进程、发送进程和监控进程;其中,如图1所示,主进程包括以下步骤:
步骤一、接收用户的输入要求,判断用户对被分析协议的元素构成结构树是否有特殊要求;若没有特殊要求,进入步骤二,若有特殊要求,进入步骤三;(即用户是否对结构树有自定义要求,若有自定义要求,进入步骤三,若没有自定义要求,进入步骤二;)
步骤二、调用协议报文对应的默认结构树,进入步骤四;
步骤三、按照协议报文的结构定义文件(schema格式文件)及用户定义生成新的结构树,并调用新生成的结构树,进入步骤四;
步骤四、调用协议参数变异算法,给待使用结构树中的参数赋值,形成赋值参数列表;
步骤五、对报文发送状态参数和报文发送完成状态参数分别初始化为0;
步骤六、根据报文发送状态参数和报文发送完成状态参数择一进行以下操作:
a)如果报文发送状态和报文发送完成状态分别为初始化状态,则按照赋值参数列表,为报文参数赋值,构建初始报文发送序列,报文发送状态=0;
b)如果报文发送状态为3,报文发送完成状态为0,则结束运行中的发送进程和心跳监控进程,按照(监控进程第6步)存储的出错时间范围内的已发送测试序列,构建出错报文发送序列;
c)如果报文发送状态为4,或者报文发送状态和报文发送完成状态分别为3和1,则结束原有发送进程和心跳监控进程,按照赋值参数列表中未使用的参数项,重新为报文参数赋值,构建遗留报文发送序列,报文发送状态=0;
d)如果报文发送完成状态为2,则表明测试完成,终止发送进程和监控进程,测试结果向用户反馈,进入步骤一;
步骤七、启动发送进程和监控进程;
步骤八、等待来自发送进程和监控进程的通知参数;
步骤九、如果接收到通知参数,则进入步骤六,如果没有,进入步骤八。
如图2所示,发送进程包括以下步骤:
1)本地计时,按照主进程中形成的发送报文序列,发送报文并存储报文;
2)判断报文序列中的报文是否全部发送,如果没有发送完,则进入步骤1),如果是测试报文发送完,进入步骤3),如果是错误确认报文发送完成,则进入步骤4);
3)报文发送完成状态参数赋值为2,进入步骤5);
4)报文发送完成状态参数赋值为1,进入步骤5);
5)向主进程发送通知参数,通知主进程,结束流程。
如图3所示,监控进程包括以下步骤:
第1步、发送主进程构建的发送报文序列中的心跳消息报文;
第2步、对心跳消息的计数及计时进行监控;
第3步、判断是否出现异常,如果出现异常则进入第4步,如果没有异常则进入第1步;
第4步、报文发送状态检测参数,如果状态为0,则进入第5步,如果状态参数为3,则进入第7步;
第5步、报文发送状态参数赋值为3,进入第6步;
第6步、按照用户定义的时间范围,存储该时间范围内已发送的测试序列。
进入第9步;
第7步、报文发送状态参数赋值为4,进入第8步;
第8步、进行故障加强记录,进入第9步;
第9步、向主进程发送通知参数,通知主进程,结束流程。
本发明方法中的主进程能够通过算法调用接口,调用指定的变异算法,对协议报文中的参数进行变异,然后按照AIDCP协议的定义构造发送序列,实现对带有不同参数的协议报文的测试。整个测试过程中,覆盖变异算法对AIDCP协议报文的结构树中各个参数的不同的赋值,实现对该协议的健壮性测试。
Claims (1)
1.一种基于参数的航电接口数据通信协议模糊测试方法,其特征在于,包括主进程、发送进程和监控进程;
主进程包括以下步骤:
步骤一、接收用户的输入要求,判断用户对协议的元素构成结构树是否有特殊要求;若没有特殊要求,进入步骤二,若有特殊要求,进入步骤三;
步骤二、调用协议报文对应的默认结构树,进入步骤四;
步骤三、按照协议报文的结构定义文件及用户定义生成新的结构树,并调用新生成的结构树,进入步骤四;
步骤四、调用协议参数变异算法,给待使用结构树中的参数赋值,形成赋值参数列表;
步骤五、将报文发送状态参数和报文发送完成状态参数分别初始化为0;
步骤六、根据报文发送状态参数和报文发送完成状态参数择一进行以下操作:
a)如果报文发送状态和报文发送完成状态分别为初始化状态,则按照赋值参数列表,为报文参数赋值,构建初始报文发送序列,报文发送状态=0;
b)如果报文发送状态为3,报文发送完成状态为0,则结束发送进程和监控进程,按照监控进程已发送的测试序列,构建出错报文发送序列;
c)如果报文发送状态为4,或报文发送状态、报文发送完成状态分别为3和1,则结束发送进程和监控进程,按照赋值参数列表中未使用的参数项,重新为报文参数赋值,构建遗留报文发送序列,报文发送状态=0;
d)如果报文发送完成状态为2,则表明测试完成,终止发送进程和监控进程,向用户反馈测试结果,返回步骤一;
报文发送状态用于表示报文发送过程中的状态,0表示测试未启动,3表示出现初次异常,4表示异常复现;报文发送完成状态表示报文是否发送完全,0表示初始状态,1表示错误报文发送完全,2表示测试报文全部发送完全;
步骤七、启动发送进程和监控进程;
步骤八、等待来自发送进程和监控进程的通知参数;
步骤九、如果接收到通知参数,则返回步骤六,如果没有,返回步骤八;
发送进程包括以下步骤:
1)本地计时,按照主进程步骤六中形成的发送报文序列,发送报文并存储报文;
2)判断报文序列中的报文是否全部发送,若没有全部发送,则返回步骤1),若是测试报文全部发送完成,则进入步骤3),若是错误确认报文发送完成,则进入步骤4);
3)报文发送完成状态参数赋值为2,进入步骤5);
4)报文发送完成状态参数赋值为1,进入步骤5);
5)向主进程发送通知参数,通知主进程,结束流程;
监控进程包括以下步骤:
第1步、发送主进程构建的发送报文序列中的心跳消息报文;
第2步、对心跳消息的计数及计时进行监控;
第3步、判断是否出现异常,若出现异常则进入第4步,若没有异常,则返回第1步;
第4步、报文发送状态检测参数,如果状态为0,则进入第5步,如果状态参数为3,则进入第7步;
第5步、报文发送状态参数赋值为3,进入第6步;
第6步、按照用户定义的时间范围,存储该时间范围内已发送的测试序列,进入第9步;
第7步、报文发送状态参数赋值为4,进入第8步;
第8步、进行故障加强记录,进入第9步;
第9步、向主进程发送通知参数,通知主进程,结束流程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911189710.2A CN111162959B (zh) | 2019-11-28 | 2019-11-28 | 一种基于参数的航电接口数据通信协议模糊测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911189710.2A CN111162959B (zh) | 2019-11-28 | 2019-11-28 | 一种基于参数的航电接口数据通信协议模糊测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111162959A CN111162959A (zh) | 2020-05-15 |
CN111162959B true CN111162959B (zh) | 2021-07-06 |
Family
ID=70556110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911189710.2A Active CN111162959B (zh) | 2019-11-28 | 2019-11-28 | 一种基于参数的航电接口数据通信协议模糊测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111162959B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113364740A (zh) * | 2021-05-13 | 2021-09-07 | 中国航空工业集团公司西安航空计算技术研究所 | 一种民用飞机机载信息系统网络安保测试系统及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105844398A (zh) * | 2016-03-22 | 2016-08-10 | 武汉大学 | 一种基于plm数据库面向dpipp产品族的挖掘算法 |
CN106533955A (zh) * | 2016-10-26 | 2017-03-22 | 中国科学院信息工程研究所 | 一种基于网络报文的序列号识别方法 |
CN109040081A (zh) * | 2018-08-10 | 2018-12-18 | 哈尔滨工业大学(威海) | 一种基于bwt的协议字段逆向分析系统及方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8286133B2 (en) * | 2007-12-19 | 2012-10-09 | Microsoft Corporation | Fuzzing encoded data |
CN101388807B (zh) * | 2008-05-22 | 2011-03-30 | 清华大学 | 基于报文变异的协议鲁棒性测试生成方法 |
CN103279055A (zh) * | 2013-04-08 | 2013-09-04 | 北京航空航天大学 | 一种连接Arinc708板卡与FPGA开发板的转接板设计方案 |
CN103973511A (zh) * | 2014-04-28 | 2014-08-06 | 南京邮电大学 | 一种基于消息组合变异的服务脆弱性测试方法 |
US10164848B1 (en) * | 2014-06-09 | 2018-12-25 | Amazon Technologies, Inc. | Web service fuzzy tester |
CN105022864B (zh) * | 2015-06-30 | 2018-03-09 | 北京轩宇信息技术有限公司 | 一种基于扩展依赖矩阵的系统测试点选取方法 |
CN107045474B (zh) * | 2016-02-05 | 2020-12-04 | 阿里巴巴集团控股有限公司 | 一种Fuzz测试中的程序流跟踪方法及装置 |
CN110018377A (zh) * | 2019-05-09 | 2019-07-16 | 中国航空工业集团公司西安航空计算技术研究所 | 一种arinc664p7终端设备的故障检测分析系统 |
-
2019
- 2019-11-28 CN CN201911189710.2A patent/CN111162959B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105844398A (zh) * | 2016-03-22 | 2016-08-10 | 武汉大学 | 一种基于plm数据库面向dpipp产品族的挖掘算法 |
CN106533955A (zh) * | 2016-10-26 | 2017-03-22 | 中国科学院信息工程研究所 | 一种基于网络报文的序列号识别方法 |
CN109040081A (zh) * | 2018-08-10 | 2018-12-18 | 哈尔滨工业大学(威海) | 一种基于bwt的协议字段逆向分析系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111162959A (zh) | 2020-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10523540B2 (en) | Display method of exchanging messages among users in a group | |
US10003525B2 (en) | Methods and apparatus to provide redundancy in a process control system | |
CN103414916B (zh) | 一种故障诊断系统及方法 | |
EP3926891A1 (en) | Intelligent network operation platform for network fault mitigation | |
Ramesh et al. | The Smart Network Management Automation Algorithm for Administration of Reliable 5G Communication Networks | |
JP5514040B2 (ja) | 運用管理システム、運用管理方法及び運用管理装置 | |
CN109660405B (zh) | 呼叫中心的容灾方法、装置、设备及存储介质 | |
US11063855B2 (en) | Monitoring of the data transmission in a client/server-based device access system | |
WO2023125590A1 (zh) | 远程诊断方法及装置、电子设备和存储介质 | |
US10126736B2 (en) | Industrial process historian time synchronization of source based timestamp event data | |
WO2023125591A1 (zh) | 远程诊断方法及装置、系统、电子设备和存储介质 | |
CN114296405A (zh) | 使用容器编排系统和操作技术设备实现无服务器功能 | |
CN111162959B (zh) | 一种基于参数的航电接口数据通信协议模糊测试方法 | |
CN115794313A (zh) | 一种虚拟机调试方法、系统、电子设备及存储介质 | |
CN109274533B (zh) | 一种基于规则引擎的Web服务故障的定位装置和方法 | |
CN108628670B (zh) | 退出node应用的方法和系统 | |
US7254627B2 (en) | Method, service agent and network management system for operating a telecommunications network | |
CN114443343A (zh) | 一种服务接口反馈异常信息方法、装置、设备、存储介质 | |
CN114172821A (zh) | 服务状态的同步方法、装置及服务器 | |
US20170149643A1 (en) | Network stabilizing tool | |
GB2602855A (en) | Time consistency synchronization method for distributed simulation | |
WO2017197829A1 (zh) | 测试信息管理方法、装置、测试用例执行系统及设备 | |
CN114513502B (zh) | 文件处理方法、装置、电子设备及存储介质 | |
CN108920164A (zh) | 云计算系统中主机的管理方法和装置 | |
KR100415719B1 (ko) | Tmn 에이전트 또는 snmp 에이전트 겸용 교환기간인터페이스 장치 및 그 방법 |
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 |