CN104468279A - 一种路由协议交互的测试方法和测试工具 - Google Patents

一种路由协议交互的测试方法和测试工具 Download PDF

Info

Publication number
CN104468279A
CN104468279A CN201410801912.9A CN201410801912A CN104468279A CN 104468279 A CN104468279 A CN 104468279A CN 201410801912 A CN201410801912 A CN 201410801912A CN 104468279 A CN104468279 A CN 104468279A
Authority
CN
China
Prior art keywords
message
network interface
interface card
ospf
testing tool
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
CN201410801912.9A
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.)
Shanghai Feixun Data Communication Technology Co Ltd
Original Assignee
Shanghai Feixun Data Communication Technology Co Ltd
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 Shanghai Feixun Data Communication Technology Co Ltd filed Critical Shanghai Feixun Data Communication Technology Co Ltd
Priority to CN201410801912.9A priority Critical patent/CN104468279A/zh
Publication of CN104468279A publication Critical patent/CN104468279A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)

Abstract

本发明涉及一种路由协议交互的测试方法及测试工具,通过运行在电脑中的测试工具调用WinPcap组件,来驱动该电脑中的一个指定网卡收发OSPF报文,并通过监听收发的OSPF报文,来对与该电脑对接的被测设备基于OSPF协议进行交互的情况进行测试。本发明能够自动测试不同厂家的路由器或者三层交换机上运行的OSPF协议,无需搭建测试环境,使用简单且成本低廉。

Description

一种路由协议交互的测试方法和测试工具
技术领域
本发明涉及网络通讯协议的测试领域,特别涉及一种路由协议交互的测试方法和测试工具。
背景技术
使用自动化脚本来测试路由器或者三层交换机上的OSPF(Open Shortest Path First开放式最短路径优先)路由协议时,需要遵循RFC(Request For Comments,请求评议)对协议功能进行详细的验证。而不同厂商的设备提供的命令行风格不一致,即使实现相同的OSPF功能,也需要不同的配置。
在Testcenter,Smartbit等测试仪上有集成OSPF协议测试的功能,能够用来构造各类型OSPF报文,进行大流量OSPF发包测试或OSPF报文容错性测试。但是,具备OSPF协议测试的测试仪一般价格较高,并且其端口资源有限,增加端口会使相应的成本大幅提升。
发明内容
本发明的目的在于提供一种路由协议交互的测试方法和测试工具,通过调用WinPcap组件,驱动电脑的网卡进行OSPF报文收发包操作,对该被测设备(例如是路由器或三层交换机)基于OSPF协议进行交互的功能进行测试,无需搭建测试环境,使用简单且成本低廉。
为了达到上述目的,本发明的一个技术方案是提供一种路由协议交互的测试方法,通过运行在电脑中的测试工具调用WinPcap组件,来驱动该电脑中的一个指定网卡收发OSPF报文,并通过监听收发的OSPF报文,来对与该电脑对接的被测设备基于OSPF协议进行交互的情况进行测试。
优选地,所述测试工具调用WinPcap组件的pcap_findalldevs_ex()  函数接口,来获取所述电脑的网卡列表;该测试工具从获得的网卡列表中选取一个网卡作为指定网卡。
优选地,所述测试工具通过调用WinPcap组件的pcap_open()接口来打开指定网卡,并通过调用WinPcap组件的pcap_loop()接口来循环监听指定网卡收发的OSPF报文。
优选地,所述测试工具通过调用WinPcap组件的pcap_compile()接口来编译过滤器,并通过调用WinPcap组件的pcap_setfilter()接口来设置使用的过滤器,从而对指定网卡收发的OSPF报文进行过滤。
优选地,所述测试工具通过配置的发包参数来构造指定类型的OSPF报文,并通过调用WinPcap组件的发包接口,发送该指定类型的OSPF报文;
所述指定类型的OSPF报文,是报文参数被正确配置的OSPF报文,或者是报文参数被错误配置以验证容错性的OSPF报文。
优选地,所述测试工具对发送的报文数是否达到设定数值进行判断:若发送的报文数达到设定数值时,则关闭该指定网卡,不再发送OSPF报文;
若发送的报文数没有达到设定数值时,则继续发送OSPF报文,并在等待设置的发包间隔时间之后,重新执行判断的操作,来确定是否需要发送下一个OSPF报文。
优选地,所述测试工具对于处在打开状态的指定网卡,通过调用WinPcap组件的pcap_freealldevs()接口来关闭该指定网卡,停止对该指定网卡的监听。
本发明的另一个技术方案是提供一种路由协议交互的测试工具,其中包含:
调用模块,通过调用WinPcap组件的接口来驱动一个指定网卡执行相应的操作;其中,所述WinPcap组件的接口,至少包含:驱动指定网卡向被测设备发送OSPF报文的发包接口,和驱动指定网卡从被测设备接收OSPF报文的抓包接口;
监听模块,对所述指定网卡收发的OSPF报文进行监听;
过滤器,对所述指定网卡收发的OSPF报文进行过滤;
交互界面,用来获取配置参数、测试操作指令,以及显示该测试工具与被测设备之间报文交互情况的日志记录。
优选地,所述测试工具运行在与被测设备对接的电脑中,所述电脑中运行有windows平台;所述指定网卡是该电脑的一个网卡。
优选地,所述测试工具获得的配置参数,来构造向被测设备发送的指定类型的OSPF报文;所述指定类型的OSPF报文,是报文参数被正确配置的OSPF报文,或者是报文参数被错误配置以验证容错性的OSPF报文。
与现有技术相比,本发明所述路由协议交互的测试方法和测试工具,其优点在于:
本发明通过开发测试工具,来模拟运行OSPF协议的路由器,模拟真实测试场景。使用C++语言开发的相关软件等,打包后可批量复制,并能够直接运行在任意的windows电脑上,不需要搭建测试环境,使用简单;不用依赖于Testcenter,Smartbit等现有测试仪器,本发明的测试成本明显降低。
本发明可以界面化配置发包参数,根据配置的参数构造OSPF报文,并从运行电脑的网卡中选择一个指定网卡来发送构造的OSPF报文,易用性强。可以通过构造不同类型的OSPF报文,例如设置错误的报文参数来测试OSPF协议的容错性。本发明还可以循环监听选定的发包网卡,过滤该网卡上收发的OSPF报文,并通过日志显示其与被测设备之间的报文交互过程。
附图说明
图1是本发明所述路由协议交互的测试方法的流程示意图;
图2是本发明所述测试方法中监听报文操作的流程示意图;
图3是本发明所述测试方法中发送报文操作的流程示意图;
图4是本发明所述测试方法中停止监听的流程示意图。
具体实施方式
本发明中通过调用WinPcap组件,驱动电脑的网卡进行OSPF报文收发包操作来模拟一个运行OSPF协议的路由器,进行与被测设备之间协议交互的操作,对该被测设备(例如是路由器或三层交换机)基于OSPF协议进行交互的功能进行测试。所述的WinPcap是windows平台下的一个公共网络访问系统,以C/C++语言编写,用于网络封包抓取。
为此,本发明提供一种测试工具,其中设置有相关的模块,能够指定一个网卡作为发包网卡,调用WinPcap组件的接口以驱动该指定网卡收发报文,并对其持续监听,过滤该指定网卡上收发的OSPF报文,等等。
所述测试工具还设置有交互界面,用来获取测试所需的配置参数(包括但不限于发包参数,其被用来构造向被测设备发送的指定类型的OSPF报文,例如是参数错误配置或参数正确配置的报文),用来获取测试所需的各项操作的指令(包括但不限于用来执行构造报文、发送报文、选择指定网卡、打开或关闭网卡、开始或停止监听等操作的相关指令),以及显示与被测设备之间报文交互过程的日志记录,等等。
将本发明所述的测试工具运行在与被测设备对接的电脑中,该电脑无需搭建特殊的测试环境,使用任意一种能够运行windows的普通电脑即可。所述测试工具所涉及的软件、配置文件等被打包后,可批量复制,在任意一台上述的普通电脑上打开就可以直接使用,大大降低了测试成本。
如图1所示,本发明所述路由协议交互的测试方法中,包含以下的实施步骤:
A1、将运行本发明所述测试工具的电脑,与运行OSPF协议的被测设备对接;打开测试工具,设置OSPF Head参数。
A2、获取本机网卡列表,设置发包网卡;
对于例如是点击“获取网卡列表”按钮的操作,所述测试工具调用WinPcap组件的pcap_findalldevs_ex()    函数接口来获取运行该测试工具的电脑的网卡列表;
从获取的网卡列表中指定一个网卡作为发包网卡,调用WinPcap组件的接口打开该指定网卡。
A3、调用WinPcap组件的抓包接口,循环监听指定网卡收发的OSPF报文。
A4、设置发包参数,构造指定类型的OSPF报文;调用WinPcap组件的发包接口,发送该指定类型的OSPF报文。
此处,所述指定类型的OSPF报文可以是一种报文参数被正确配置的OSPF报文;也可以是通过设置错误的报文参数来构造的一种错误的OSPF报文,用以验证被测设备OSPF协议的容错性。
A5、查看指定网卡的收发包日志;测试工具可以通过查看日志栏记录,来了解网卡收发OSPF报文的状态。
如图2所示,在上述步骤A3中,对于例如是点击“开始监听OSPF报文”按钮的操作,所述测试工具进一步执行以下的步骤:
B1、建立循环监听进程;
B2、调用WinPcap组件的pcap_open()接口来打开指定网卡;
B3、对于是否成功打开指定网卡进行判断:若没有成功打开,则发出报错的提示信息;若成功打开指定网卡,则继续执行B4;
B4、调用WinPcap组件的pcap_compile()接口来编译过滤器,用来过滤收发的OSPF报文;
B5、调用WinPcap组件的pcap_setfilter()接口来设置抓包时使用的过滤器;
B6、调用WinPcap组件的pcap_loop()接口循环抓取指定网卡的OSPF报文。
如图3所示,在上述步骤A4中,对于例如是点击“发送”按钮的操作,所述测试工具进一步执行发送报文的以下步骤:
C1、选择要发送的OSPF报文类型;
C2、设置报文参数;
C3、构造指定类型的OSPF报文;
C4、调用WinPcap组件的pcap_open()接口来打开指定网卡;
C5、对于是否成功打开指定网卡进行判断:若没有成功打开,则发出报错的提示信息;若成功打开指定网卡,则继续执行C6;
C6、对发送的报文数是否达到设定数值进行判断:若已经达到设定数值,则关闭该指定网卡,不发送报文;
若没有达到设定数值时,则继续发送上述指定类型OSPF报文;并在等待设置的发包间隔时间之后,重新执行C6的操作,来确定是需要关闭网卡还是需要发送下一个报文。
如图4所示,对于例如是点击“停止监听”按钮的操作,所述测试工具进一步执行停止监听网卡的以下步骤:
D1、检测指定网卡是否开启:
D2、若指定网卡没有开启,则发送网卡未开启的提示信息,告知不需要关闭网卡;
D3、若指定网卡是开启的,则调用WinPcap组件的pcap_freealldevs()接口来关闭该网卡,停止对该网卡的监听。
综上所述,本发明提供的路由协议交互的测试方法和测试工具,通过运行在普通电脑上的测试工具模拟一个运行OSPF协议的路由器,用来与被测设备进行协议交互,由于OSPF协议都基本遵循RFC标准来实现,所以实现基本一致,能够自动测试不同厂家的路由器或者三层交换机上运行的OSPF协议,无需搭建测试环境,使用简单且成本低廉。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。

Claims (10)

1.一种路由协议交互的测试方法,其特征在于:
通过运行在电脑中的测试工具调用WinPcap组件,来驱动该电脑中的一个指定网卡收发OSPF报文,并通过监听收发的OSPF报文,来对与该电脑对接的被测设备基于OSPF协议进行交互的情况进行测试。
2.如权利要求1所述路由协议交互的测试方法,其特征在于,
所述测试工具调用WinPcap组件的pcap_findalldevs_ex() 函数接口,来获取所述电脑的网卡列表;该测试工具从获得的网卡列表中选取一个网卡作为指定网卡。
3.如权利要求1所述路由协议交互的测试方法,其特征在于,
所述测试工具通过调用WinPcap组件的pcap_open()接口来打开指定网卡,并通过调用WinPcap组件的pcap_loop()接口来循环监听指定网卡收发的OSPF报文。
4.如权利要求1或3所述路由协议交互的测试方法,其特征在于,
所述测试工具通过调用WinPcap组件的pcap_compile()接口来编译过滤器,并通过调用WinPcap组件的pcap_setfilter()接口来设置使用的过滤器,从而对指定网卡收发的OSPF报文进行过滤。
5.如权利要求1所述路由协议交互的测试方法,其特征在于,
所述测试工具通过配置的发包参数来构造指定类型的OSPF报文,并通过调用WinPcap组件的发包接口,发送该指定类型的OSPF报文;
所述指定类型的OSPF报文,是报文参数被正确配置的OSPF报文,或者是报文参数被错误配置以验证容错性的OSPF报文。
6.如权利要求1或5所述路由协议交互的测试方法,其特征在于,
所述测试工具对发送的报文数是否达到设定数值进行判断:若发送的报文数达到设定数值时,则关闭该指定网卡,不再发送OSPF报文;
若发送的报文数没有达到设定数值时,则继续发送OSPF报文,并在等待设置的发包间隔时间之后,重新执行判断的操作,来确定是否需要发送下一个OSPF报文。
7.如权利要求1所述路由协议交互的测试方法,其特征在于,
所述测试工具对于处在打开状态的指定网卡,通过调用WinPcap组件的pcap_freealldevs()接口来关闭该指定网卡,停止对该指定网卡的监听。
8.一种路由协议交互的测试工具,其特征在于,包含:
调用模块,通过调用WinPcap组件的接口来驱动一个指定网卡执行相应的操作;其中,所述WinPcap组件的接口,至少包含:驱动指定网卡向被测设备发送OSPF报文的发包接口,和驱动指定网卡从被测设备接收OSPF报文的抓包接口;
监听模块,对所述指定网卡收发的OSPF报文进行监听;
过滤器,对所述指定网卡收发的OSPF报文进行过滤;
交互界面,用来获取配置参数、测试操作指令,以及显示该测试工具与被测设备之间报文交互情况的日志记录。
9.如权利要求8所述路由协议交互的测试工具,其特征在于,
所述测试工具运行在与被测设备对接的电脑中,所述电脑中运行有windows平台;所述指定网卡是该电脑的一个网卡。
10.如权利要求8所述路由协议交互的测试工具,其特征在于,
所述测试工具获得的配置参数,来构造向被测设备发送的指定类型的OSPF报文;所述指定类型的OSPF报文,是报文参数被正确配置的OSPF报文,或者是报文参数被错误配置以验证容错性的OSPF报文。
CN201410801912.9A 2014-12-22 2014-12-22 一种路由协议交互的测试方法和测试工具 Pending CN104468279A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410801912.9A CN104468279A (zh) 2014-12-22 2014-12-22 一种路由协议交互的测试方法和测试工具

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410801912.9A CN104468279A (zh) 2014-12-22 2014-12-22 一种路由协议交互的测试方法和测试工具

Publications (1)

Publication Number Publication Date
CN104468279A true CN104468279A (zh) 2015-03-25

Family

ID=52913686

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410801912.9A Pending CN104468279A (zh) 2014-12-22 2014-12-22 一种路由协议交互的测试方法和测试工具

Country Status (1)

Country Link
CN (1) CN104468279A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105007199A (zh) * 2015-07-30 2015-10-28 上海斐讯数据通信技术有限公司 一种igmp路由器模拟设备及模拟方法
CN107453959A (zh) * 2017-09-22 2017-12-08 郑州云海信息技术有限公司 一种网卡的管理方法及其装置
CN110351156A (zh) * 2018-04-03 2019-10-18 大唐移动通信设备有限公司 一种测试方法和装置
CN110708216A (zh) * 2019-10-12 2020-01-17 深圳市吉祥腾达科技有限公司 一种交换机lldp协议测试方法及测试系统
CN113162816A (zh) * 2020-12-29 2021-07-23 深圳市吉祥腾达科技有限公司 一种交换机OSPFv3协议测试方法及测试系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101815014A (zh) * 2010-02-09 2010-08-25 上海百络信息技术有限公司 基于连接的实时网络数据捕获方法
US20110194425A1 (en) * 2010-02-09 2011-08-11 Juniper Networks, Inc. Remote network device component testing
CN102420713A (zh) * 2010-09-28 2012-04-18 大唐移动通信设备有限公司 一种测试数据包封装方法及设备
CN103281335A (zh) * 2013-06-18 2013-09-04 东华大学 一种基于WinPcap的嵌入式网络协议栈开发方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101815014A (zh) * 2010-02-09 2010-08-25 上海百络信息技术有限公司 基于连接的实时网络数据捕获方法
US20110194425A1 (en) * 2010-02-09 2011-08-11 Juniper Networks, Inc. Remote network device component testing
CN102420713A (zh) * 2010-09-28 2012-04-18 大唐移动通信设备有限公司 一种测试数据包封装方法及设备
CN103281335A (zh) * 2013-06-18 2013-09-04 东华大学 一种基于WinPcap的嵌入式网络协议栈开发方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
殷肖川等著: "《网络编程与开发技术(第2版)》", 31 August 2009, 西安交通大学出版社 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105007199A (zh) * 2015-07-30 2015-10-28 上海斐讯数据通信技术有限公司 一种igmp路由器模拟设备及模拟方法
CN107453959A (zh) * 2017-09-22 2017-12-08 郑州云海信息技术有限公司 一种网卡的管理方法及其装置
CN107453959B (zh) * 2017-09-22 2021-04-30 郑州云海信息技术有限公司 一种网卡的管理方法及其装置
CN110351156A (zh) * 2018-04-03 2019-10-18 大唐移动通信设备有限公司 一种测试方法和装置
CN110708216A (zh) * 2019-10-12 2020-01-17 深圳市吉祥腾达科技有限公司 一种交换机lldp协议测试方法及测试系统
CN113162816A (zh) * 2020-12-29 2021-07-23 深圳市吉祥腾达科技有限公司 一种交换机OSPFv3协议测试方法及测试系统

Similar Documents

Publication Publication Date Title
CN103812726B (zh) 一种数据通信设备的自动化测试方法及装置
CN113064780B (zh) 一种基于路由器产品的自动化测试系统及方法
CN104468279A (zh) 一种路由协议交互的测试方法和测试工具
CN101478449B (zh) 一种协议自动测试方法及其系统
CN106330593B (zh) 协议检测方法及装置
CN102023922B (zh) 汽车电子诊断软件的测试系统及方法
CN111190812A (zh) 基于嵌入式设备的自动化测试框架
CN103138988B (zh) 网络故障的定位处理方法及装置
CN103686813B (zh) 无线ap信道自动切换稳定性测试装置与方法
TW201248395A (en) Power supply test system and method
CN102591780B (zh) 一种设备驱动软件测试方法和测试系统
CN112737886B (zh) 一种工装测试方法、系统、电子设备和存储介质
CN101873236B (zh) 一种报文的测试方法及系统
CN109510742A (zh) 一种服务器网卡远程测试方法、装置、终端及存储介质
CN113067738A (zh) 一种网络拓扑可视化功能设备兼容性测试方法及系统
CN110708715B (zh) 一种5g基站业务故障查找方法及装置
CN110493812A (zh) 配网测试的处理方法、装置、系统、处理器及主控设备
CN206523872U (zh) 一种usb设备测试系统
CN109522171A (zh) 一种故障诊断方法及系统
CN103761185A (zh) 一种自动化测试系统及方法
CN113495545A (zh) 使用在环硬件测试车辆设备控制器的系统和方法
CN106445810B (zh) 一种交互式软件与设备兼容性的测试方法及系统
CN109471763B (zh) 抓取NVME硬盘trace的方法、装置、设备及系统
WO2015172488A1 (zh) 无线通信设备上网故障检测方法、装置及其无线通信设备
CN104581808B (zh) 测试移动网络性能的方法、装置及移动终端

Legal Events

Date Code Title Description
C06 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: 20150325