本技术涉及一种路由协议交互的测试方法及测试工具,通过运行在电脑中的测试工具调用WinPcap组件,来驱动该电脑中的一个指定网卡收发OSPF报文,并通过监听收发的OSPF报文,来对与该电脑对接的被测设备基于OSPF协议进行交互的情况进行测试。本技术能够自动测试不同厂家的路由器或者三层交换机上运行的OSPF协议,无需搭建测试环境,使用简单且成本低廉。
权利要求书
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报文。
说明书
一种路由协议交互的测试方法和测试工具
技术领域
本技术涉及网络通讯协议的测试领域,特别涉及一种路由协议交互的测试方法和测试工具。
背景技术
使用自动化脚本来测试路由器或者三层交换机上的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报文进行过滤。