网络设备的测试方法及装置的制作方法

文档序号:7553998阅读:169来源:国知局
专利名称:网络设备的测试方法及装置的制作方法
技术领域
本发明涉及通信技术领域,特别是涉及一种网络设备的测试方法及装置。
背景技术
网络技术迅猛发展,网络产品层出不穷,如何对相关产品和相关网络进行准确测试,一直是网络测试的要点和难点。一旦测试结果不准确的网络产品上线,就可能造成网络闪断、网络瘫痪等重大网络事故,给运营商和网络用户带来数以百万计的经济损失。在现有技术中,对投入运营前的网络产品进行测试,主要是通过对真实网络流量的抓取和回放的方式,来对网络产品进行网络测试和评价。本申请的发明人在长期的研发过程中发现,现有的抓包回放技术,是基于循环发送的方式来实现回放的,仅仅是加快了网络用户的动作,无法正确模拟网络流量的倍增。

发明内容
本发明实施例中提供了一种网络设备的测试方法及装置,能够真实地模拟网络流量的增加。第一方面,本发明实施例提供了一种网络设备的测试方法,包括根据从网络流量中获取的抓包文件获得第一数据包与第二数据包之间的第一发送时隙;根据所述第一发送时隙以及为所述第一数据包所属数据流预设的放大倍数获得第二发送时隙;根据所述第一数据包以及为所述第一数据包所属数据流预设的IP地址池中的N个IP地址构造N个测试数据包,其中,所述N的值与所述放大倍数的值相同;根据所述第二发送时隙向被测设备发送所述N个测试数据包;接收所述被测设备转发的测试数据包;根据接收的测试数据包获得测试结果。在第一方面的第一种可能的实现方式中,所述根据接收的测试数据包获得测试结果包括:根据接收的测试数据包与发送的测试数据包的数量获得所述被测设备的丢包率;或者根据接收的测试数据包使用的所述IP地址池中的IP地址确定测试所述数据流的下一个数据包的放大倍数及使用的IP地址。结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述构造所述N个测试数据包还包括:在所述构造的N个测试数据包的IP头部的标识的高字节位写入所述第一数据包所属数据流的流序号的哈希值,并重新计算所述测试数据包的IP头部的校验和。结合第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述构造所述N个测试数据包还包括:若所述第一数据包的协议类型为多通道协议,则在使用所述N个IP地址替换所述第一数据包的源IP地址的同时同步替换所述第一数据包中有效荷载部分的IP地址,并重新计算所述N个测试数据包的数据部分的校验和。结合第一方面的第一至第三中任一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述第二发送时隙为所述第一发送时隙与所述放大倍数的商。
第二方面,本发明实施例提供了一种网络设备的测试装置,所述装置包括:第一获得模块,用于根据从网络流量中获取的抓包文件获得第一数据包与第二数据包之间的第一发送时隙;第二获得模块,用于根据所述第一发送时隙以及为所述第一数据包所属数据流预设的放大倍数获得第二发送时隙;构造模块,用于根据所述第一数据包以及为所述第一数据包所属数据流预设的IP地址池中的N个IP地址构造N个测试数据包,其中,所述N的值与所述放大倍数的值相同;发送模块,用于根据所述第二发送时隙向被测设备发送所述N个测试数据包;接收模块,用于接收所述被测设备转发的测试数据包;第三获得模块,用于根据接收的测试数据包获得测试结果。在第二方面的第一种可能的实现方式中,所述第三获得模块具体用于根据接收的测试数据包与发送的测试数据包的数量获得所述被测设备的丢包率;或者根据接收的测试数据包使用的所述IP地址池中的IP地址确定测试所述数据流的下一个数据包的放大倍数及使用的IP地址。结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述构造模块还用于在所述构造的N个测试数据包的IP头部的标识的高字节位写入所述第一数据包所属数据流的流序号的哈希值,并重新计算所述测试数据包的IP头部的校验和。结合第二方面的第一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述构造模块还用于在所述第一数据包的协议类型为多通道协议时,在使用所述N个IP地址替换所述第一数据包的源IP地址的同时同步替换所述第一数据包中有效荷载部分的IP地址,并重新计算所述N个测试数据包的数据部分的校验和。结合第二方面的第一至第三中任一种可能的实现方式,在第二方面的第四种可能的实现方式中,所述第二发送时隙为所述第一发送时隙与所述放大倍数的商。本发明实施例根据从网络流量中获取的抓包文件获得第一数据包与第二数据包之间的第一发送时隙;根据第一发送时隙以及为第一数据包所属数据流预设的放大倍数获得第二发送时隙;根据第一数据包以及为第一数据包所属数据流预设的IP地址池中的N个IP地址构造N个测试数据包,其中,N的值与放大倍数的值相同;根据第二发送时隙向被测设备发送N个测试数据包;接收被测设备转发的测试数据包;根据接收的测试数据包获得测试结果。通过这种方式,能够真实的模拟网络流量的增加,从而实现对网络设备进行性能评估。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例提供的网络设备的测试方法的应用场景示意图;图2是本发明实施例提供的网络设备的测试方法的流程图;图3是本发明实施例提供的网络设备的测试方法的另一流程图;图4是本发明实施例提供的网络设备的测试方法的又一流程图5是本发明实施例提供的网络设备的测试方法的又一流程图;图6是本发明实施例提供的网络设备的测试装置的一结构示意图;图7是本发明实施例提供的网络设备的测试装置的又一结构示意图。
具体实施例方式为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。下面结合附图和实施例对本发明进行详细说明。参阅图1,图1是本发明实施例提供的网络设备的测试方法的应用场景示意图。本发明的主要应用场景是用于被测设备13 (包括但不限于交换机、路由器、防火墙等)在抓包流量下的测评,测评内容包括被测设备13在抓包流量下的性能表现、稳定性表现、网络时延、丢包、应用层协议处理能力等。具体地,如图1所示,本发明的测试系统14发送的测试报文经过模拟测试网络11、被测设备13以及模拟测试网络12后返回测试系统14,从而实现对被测设备13的测试评估。其中,模拟测试网络11和模拟测试网络12可以分别模拟网络中的内部网络和外部网络,例如,外部网络12中的主机可以通过被测设备13访问内部网络11。参阅图2,图2是本发明实施例提供的网络设备的测试方法的流程图,包括:步骤SlOl:根据从网络流量中获取的抓包文件获得第一数据包与第二数据包之间的第一发送时隙。抓包就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,使用抓包工具将网络流量中的数据包进行截获等操作即可获得抓包文件。时隙是指任何能够唯一识别和定义的周期性时段,是专用于某一个单个通道的时隙信息的串行自复用的一个部分,是时分复用模式(TDM)中的一个时间片。根据抓包文件可以获得第一数据包和第二数据包之间的第一发送时隙。其中,第一数据包与第二数据包为网络流量中相邻的两个数据包,第一数据包与第二数据包可以属于相同的数据流,也可以属于不同的数据流。步骤S102:根据所述第一发送时隙以及为所述第一数据包所属数据流预设的放大倍数获得第二发送时隙。其中,所述第二发送时隙为所述第一发送时隙与所述放大倍数的商。为了能够模拟真实的网络环境,同一个数据流的数据包构造后续的测试数据包时,是按照相同的数据流预设的放大倍数进行构造的。因此,根据第一发送时隙以及为第一数据包所属数据流预设的放大倍数可以获得第二发送时隙,即第二发送时隙等于第一发送时隙除以第一数据包所属数据流预设的放大倍数。步骤S103:根据所述第一数据包以及为所述第一数据包所属数据流预设的IP地址池中的N个IP地址构造N个测试数据包,其中,所述N的值与所述放大倍数的值相同。利用第一数据包所属数据流预设的IP地址池中的N个IP地址为第一数据包构造N个测试数据包,该N个IP地址可用于构造N个测试数据包的源IP地址,或者构造N个测试数据包的目的IP地址,其中,N的值与第一数据包所属数据流预设的放大倍数的值相同。步骤S104:根据所述第二发送时隙向被测设备发送所述N个测试数据包。按照步骤S102所获得的第二发送时隙向被测设备发送N个测试数据包。需要说明的是,在实际应用中,可以一边构造测试数据包,一边按照第二发送时隙发送构造的测试数据包,也可以将N个测试数据包构造完毕后,再按照第二发送时隙进行发送,在实际应用中可以根据具体的情况确定,在此不作限制。步骤S105:接收所述被测设备转发的测试数据包。被测设备接收到测试数据包后,将接收的测试数据包进行转发,因此测试系统接收被测设备转发的测试数据包,以便于测试系统获得被测设备的测试性能。步骤S106:根据接收的测试数据包获得测试结果。根据接收的测试数据包获得测试结果,例如:被测设备的丢包率、能处理的网络流量,应用层协议处理能力等。本发明实施例根据从网络流量中获取的抓包文件获得第一数据包与第二数据包之间的第一发送时隙;根据第一发送时隙以及为第一数据包所属数据流预设的放大倍数获得第二发送时隙;根据第一数据包以及为第一数据包所属数据流预设的IP地址池中的N个IP地址构造N个测试数据包,其中,N的值与放大倍数的值相同;根据第二发送时隙向被测设备发送N个测试数据包;接收被测设备转发的测试数据包;根据接收的测试数据包获得测试结果。通过这种方式,能够真实的模拟网络流量的增加,从而实现对网络设备进行性能评估。参阅图3至图5,图3至图5是本发明实施例提供的网络设备的测试方法的三个流程图,包括:步骤S201:根据数据流信息的五元组,确定第一数据包所属的数据流。数据流信息的五元组包括:源IP地址、源端口、目的IP地址、目的端口以及传输层协议。根据数据流的五元组信息,即可确定第一数据包所属的数据流,同一个数据流的五元组信息相同。属于同一个数据流的数据包按照同样的放大倍数构造与放大倍数相同数量的测试数据包。步骤S202:根据从网络流量中获取的抓包文件获得第一数据包与第二数据包之间的第一发送时隙。时隙是指任何能够唯一识别和定义的周期性时段,是专用于某一个单个通道的时隙信息的串行自复用的一个部分,是时分复用模式(TDM)中的一个时间片。根据抓包文件可以获得第一数据包和第二数据包之间的第一发送时隙。其中,第一数据包与第二数据包为网络流量中相邻的两个数据包,第一数据包与第二数据包可以属于相同的数据流,也可以属于不同的数据流。步骤S203:根据所述第一发送时隙以及为所述第一数据包所属数据流预设的放大倍数获得第二发送时隙。为了能够模拟真实的网络环境,在为同一个数据流的数据包构造测试数据包时,是按照相同的数据流预设的放大倍数进行构造的。因此,根据第一发送时隙以及为第一数据包所属数据流预设的放大倍数可以获得第二发送时隙,即第二发送时隙等于第一发送时隙除以第一数据包所属数据流预设的放大倍数,即第二发送时隙为所述第一发送时隙与所述放大倍数的商。步骤S204:根据所述第一数据包以及为所述第一数据包所属数据流预设的IP地址池中的N个IP地址构造N个测试数据包,其中,所述N的值与所述放大倍数的值相同。利用第一数据包所属数据流预设的IP地址池中的N个IP地址为第一数据包构造N个测试数据包,该N个IP地址可用于通过分别替换第一数据包中的N个测试数据包的源IP地址的方式来构造测试数据包,也可以用N个IP地址分别替换第一数据包中的目的地址来的方式来构造N个测试数据包,其中,N的值与第一数据包所属数据流预设的放大倍数的值相同。其中,一个IP数据包包括头部和数据部分,如表I所示,IP数据包头部的数据格式可以如表2所示。表IIP数据包的组成表
权利要求
1.一种网络设备的测试方法,其特征在于,包括: 根据从网络流量中获取的抓包文件获得第一数据包与第二数据包之间的第一发送时隙; 根据所述第一发送时隙以及为所述第一数据包所属数据流预设的放大倍数获得第二发送时隙; 根据所述第一数据包以及为所述第一数据包所属数据流预设的IP地址池中的N个IP地址构造N个测试数据包,其中,所述N的值与所述放大倍数的值相同; 根据所述第二发送时隙向被测设备发送所述N个测试数据包; 接收所述被测设备转发的测试数据包; 根据接收的测试数据包获得测试结果。
2.根据权利要求1所述的方法,其特征在于,所述根据接收的测试数据包获得测试结果包括: 根据接收的测试数据包与发送的测试数据包的数量获得所述被测设备的丢包率;或者根据接收的测试数据包使用的所述IP地址池中的IP地址确定测试所述数据流的下一个数据包的放大倍数及使用的IP地址。
3.根据权利要求2所述的方法,其特征在于,所述构造所述N个测试数据包还包括: 在所述构造的N个测试数据包的IP头部的标识的高字节位写入所述第一数据包所属数据流的流序号的哈希值,并重新计算所述测试数据包的IP头部的校验和。
4.根据权利要求2所述的方法,其特征在于,所述构造所述N个测试数据包还包括: 若所述第一数据包的协议类型为多通道协议,则在使用所述N个IP地址替换所述第一数据包的源IP地址的同时同步替换所述第一数据包中有效荷载部分的IP地址,并重新计算所述N个测试数据包的数据部分的校验和。
5.根据权利要求1-4任意一项所述的方法,其特征在于,所述第二发送时隙为所述第一发送时隙与所述放大倍数的商。
6.一种网络设备的测试装置,其特征在于,所述装置包括: 第一获得模块,用于根据从网络流量中获取的抓包文件获得第一数据包与第二数据包之间的第一发送时隙; 第二获得模块,用于根据所述第一发送时隙以及为所述第一数据包所属数据流预设的放大倍数获得第二发送时隙; 构造模块,用于根据所述第一数据包以及为所述第一数据包所属数据流预设的IP地址池中的N个IP地址构造N个测试数据包,其中,所述N的值与所述放大倍数的值相同;发送模块,用于根据所述第二发送时隙向被测设备发送所述N个测试数据包; 接收模块,用于接收所述被测设备转发的测试数据包; 第三获得模块,用于根据接收的测试数据包获得测试结果。
7.根据权利要求6所述的装置,其特征在于,所述第三获得模块具体用于根据接收的测试数据包与发送的测试数据包的数量获得所述被测设备的丢包率;或者根据接收的测试数据包使用的所述IP地址池中的IP地址确定测试所述数据流的下一个数据包的放大倍数及使用的IP地址。
8.根据权利要求7所述的装置,其特征在于,所述构造模块还用于在所述构造的N个测试数据包的IP头部的标识的高字节位写入所述第一数据包所属数据流的流序号的哈希值,并重新计算所述测试数据包的IP头部的校验和。
9.根据权利要求7所述的装置,其特征在于,所述构造模块还用于在所述第一数据包的协议类型为多通道协议时,在使用所述N个IP地址替换所述第一数据包的源IP地址的同时同步替换所述第一数据包中有效荷载部分的IP地址,并重新计算所述N个测试数据包的数据部分的校验和。
10.根据权利要求6-9任意一项所述的装置,其特征在于,所述第二发送时隙为所述第一发送时隙与所述放 大倍数的商。
全文摘要
本发明公开了一种网络设备的测试方法及装置,该方法包括根据从网络流量中获取的抓包文件获得第一数据包与第二数据包之间的第一发送时隙;根据所述第一发送时隙以及为所述第一数据包所属数据流预设的放大倍数获得第二发送时隙;根据所述第一数据包以及为所述第一数据包所属数据流预设的IP地址池中的N个IP地址构造N个测试数据包,其中,所述N的值与所述放大倍数的值相同;根据所述第二发送时隙向被测设备发送所述N个测试数据包;接收所述被测设备转发的测试数据包;根据接收的测试数据包获得测试结果。通过上述方式,本发明能够真实地模拟网络流量的增加。
文档编号H04L12/26GK103209103SQ20131009735
公开日2013年7月17日 申请日期2013年3月25日 优先权日2013年3月25日
发明者王晨, 吴黎明, 邱国平 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1