网络地址转换新建连接数测试方法、系统及装置转让专利

申请号 : CN201010556060.3

文献号 : CN102006201B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 包静

申请人 : 北京星网锐捷网络技术有限公司

摘要 :

本发明公开了一种网络地址转换新建连接数测试方法、系统及装置,该方法包括:根据第一测试仪以设定的发送速率向被测设备发送设定发送数量的数据包时,第二测试仪从被测设备接收到的NAT后的数据包接收数量的大小,判断被测设备是否能够完全对接收到的数据包进行网络地址转换;根据判断结果调整发送速率,直至确定出第一测试仪发送数据包的速率下限和速率上限;根据确定出的速率上限和速率下限对发送速率进行收敛调整,直至确定出使发送数量和接收数量相等的临界发送速率,得到被测设备NAT新建连接数。通过测试设备网络地址转换的能力来确定被测设备的新建连接数,实现简单、方便,成本投入低,具有较强的通用性和普遍适用性。

权利要求 :

1.一种网络地址转换新建连接数测试方法,其特征在于,包括:

A、控制第一测试仪以设定的发送速率向被测设备发送设定发送数量的数据包,获取第二测试仪从被测设备接收到的网络地址转换后的数据包接收数量;根据所述接收数量和发送数量的大小,判断被测设备是否能够完全对接收到的数据包进行网络地址转换;

B、根据判断结果调整发送速率并返回执行步骤A,直至确定出第一测试仪发送数据包的速率下限和速率上限;其中,所述速率下限为使被测设备能够完全对接收到的数据包进行网络地址转换的发送速率,速率上限为使被测设备不能完全对接收到的数据包进行网络地址转换的发送速率;

C、根据确定出的速率上限和速率下限对发送速率进行收敛调整,直至确定出使所述发送数量和接收数量相等的临界发送速率,确定所述临界发送速率的值为被测设备的网络地址转换NAT新建连接数。

2.如权利要求1所述的方法,其特征在于,所述步骤A中比较确定出所述接收数量不小于发送数量时,确认被测设备能够完全对接收到的数据包进行网络地址转换,否则,确认被测设备不能完全对接收到的数据包进行网络地址转换;

所述步骤B具体包括:

B1、当判断出被测设备能够完全对接收到的数据包进行网络地址转换时,增大所述发送速率并重复执行步骤A,直至所述被测设备不能完全对接收到的数据包进行网络地址转换为止;否则,减小所述发送速率并重复执行步骤A,直至所述被测设备能够完全对接收到的数据包进行网络地址转换为止;

B2、确定第一测试仪所使用的发送速率中使被测设备能够完全对接收到的数据包进行网络地址转换的一个发送速率作为所述速率下限以及确定第一测试仪所使用的发送速率中使被测设备不能完全对接收到的数据包进行网络地址转换的一个发送速率作为速率上限。

3.如权利要求2所述的方法,其特征在于,所述步骤B1中增大所述发送速率时按照设定的增大规则增大所述发送速率,具体包括:根据预设的增大规则,将选定的发送速率增加至上一次选定的发送速率的设定倍数。

4.如权利要求2所述的方法,其特征在于,所述步骤B1中减小所述发送速率时按照设定的减小规则减小所述发送速率,减小后的发送速率满足下列公式:其中,Vi为第一测试仪减小前的选定的发送速率;

Yi为发送速率Vi对应的第二测试仪的接收数量;

Y0为第一测试仪的发送数量;

Vj为第一测试仪减小后的发送速率。

5.如权利要求2所述的方法,其特征在于,所述步骤B2具体包括:

确定第一测试仪所使用的设定的发送速率中使被测设备能够完全对接收到的数据包进行网络地址转换的发送速率中最大的一个作为所述速率下限;

确定第一测试仪所使用的设定的发送速率中使被测设备不能完全对接收到的数据包进行网络地址转换的发送速率中最小的一个作为速率上限。

6.如权利要求1-5任一所述的方法,其特征在于,所述根据确定出的速率上限和速率下限对发送速率进行收敛调整,直至确定出使所述发送数量和接收数量相等的临界发送速率,具体包括:C1、根据确定出的速率上限和速率下限,确定的收敛调整后的发送速率满足下列迭代公式: 或其中,Vx为速率下限,Vs为速率上限,Ys为速率上限Vs对应的第二测试仪的接收数量,Y0为第一测试仪的发送数量,V′j为收敛调整后的发送速率;

C2、比较第一测试仪采用收敛调整后的发送速率发送设定发送数量的数据 包时,第二测试仪接收到的数据包的接收数量与所述发送数量的大小;

C3、若根据比较结果确定所述被测设备不能完全对接收到的数据包进行网络地址转换时,以收敛调整后的发送速率作为速率上限,返回执行步骤C1;若根据比较结果确定所述被测设备能够完全对接收到的数据包进行网络地址转换时,执行步骤C4;

C4、判断收敛调整后的发送速率与所述速率上限的差值是否大于设定的阈值,若是,以收敛调整后的发送速率作为速率下限,返回执行步骤C1;若否,确定收敛调整后的发送速率为所述临界发送速率。

7.如权利要求6所述的方法,其特征在于,所述获取第二测试仪从被测设备接收到的网络地址转换后的数据包接收数量,具体包括:根据第二测试仪接收到的数据包的源地址,获取包含被测设备进行网络地址转换后的源地址的数据包数量。

8.一种网络地址转换新建连接数测试装置,其特征在于,包括:

测试控制模块,用于控制第一测试仪以设定的发送速率向被测设备发送设定发送数量的数据包,获取第二测试仪从被测设备接收到的网络地址转换NAT后的数据包接收数量;

比较判断模块,用于根据所述测试控制模块获取的接收数量和所述发送数量的大小,判断被测设备是否能够完全对接收到的数据包进行网络地址转换;

调整确定模块,用于根据判断结果调整发送速率并通知所述测试控制模块重新执行控制第一测试仪发送数据包的步骤,直至确定出第一测试仪发送数据包的速率下限和速率上限;其中,所述速率下限为使被测设备能够完全对接收到的数据包进行网络地址转换的发送速率,速率上限为使被测设备不能完全对接收到的数据包进行网络地址转换的发送速率;

收敛调整模块,用于根据所述调整确定模块确定出的速率上限和速率下限对发送速率进行收敛调整,直至确定出使所述发送数量和接收数量相等的临界发送速率,确定所述临界发送速率的值为被测设备的NAT新建连接数。

9.如权利要求8所述的装置,其特征在于,所述比较判断模块,具体用于比较确定出所述接收数量不小于发送数量时,确认被测设备能够完全对接收到的数据包进行网络地址转换,否则,确认被测设备不能完全对接收到的数据包进行网络地址转换;

所述调整确定模块,具体包括:

调整单元,用于当所述比较判断模块判断出被测设备能够完全对接收到的数据包进行网络地址转换时,增大所述发送速率并通知所述测试控制模块重新执行控制第一测试仪发送数据包的步骤,直至所述被测设备不能完全对接收到的数据包进行网络地址转换为止;

否则,减小所述发送速率并通知所述测试控制模块重新执行控制第一测试仪发送数据包的步骤,直至所述被测设备能够完全对接收到的数据包进行网络地址转换为止;

确定单元,确定第一测试仪所使用的发送速率中使被测设备能够完全对接收到的数据包进行网络地址转换的一个发送速率作为所述速率下限以及确定第一测试仪所使用的发送速率中使被测设备不能完全对接收到的数据包进行网络地址转换的一个发送速率作为速率上限。

10.如权利要求8或9所述的装置,其特征在于,所述收敛调整模块,具体包括:迭代计算单元,用于根据所述调整确定模块确定出的速率上限和速率下限,确定的收敛调整后的发送速率满足下列迭代公式: 或 其中,Vx为速率下限,Vs为速率上限,Ys为速率上限Vs对应的第二测试仪的接收数量,Y0为第一测试仪的发送数量,V′j为收敛调整后的发送速率;

比较单元,用于比较第一测试仪采用收敛调整后的发送速率发送设定发送数量的数据包时,第二测试仪接收到的数据包的接收数量与所述发送数量的大小; 执行单元,用于若根据所述比较单元的比较结果确定所述被测设备不能完全对接收到的数据包进行网络地址转换时,以收敛调整后的发送速率作为速率上限,通知迭代计算单元执行确定收敛调整后的发送速率的步骤;若根据比较结果确定所述被测设备能够完全对接收到的数据包进行网络地址转换时,判断收敛调整后的发送速率与所述速率上限的差值是否大于设定的阈值,若是,以收敛调整后的发送速率作为速率下限,通知迭代计算单元执行确定收敛调整后的发送速率的步骤;若否,确定收敛调整后的发送速率为所述临界发送速率,确定所述临界发送速率的值为被测设备的NAT新建连接数。

11.一种网络地址转换新建连接数测试系统,其特征在于,包括:第一测试仪、被测设备、第二测试仪和如权利要求8-10任一所述的网络地址转换新建连接数测试装置;

所述第一测试仪用于在所述网络地址转换新建连接数测试装置的控制下以设定的发送速率向所述被测设备发送设定发送数量的数据包;

所述被测设备用于对接收到的数据包进行网络地址转换后发送给所述第二测试仪;

所述第二测试仪用于接收所述被测设备发送的数据包。

说明书 :

网络地址转换新建连接数测试方法、系统及装置

技术领域

[0001] 本发明涉及网络技术领域,尤指一种网络地址转换新建连接数测试方法、系统及装置。

背景技术

[0002] 网络地址转换(NAT,Network Address Translation)是一种将内部私有网络IP地址翻译成合法网络IP地址的技术。其中,上述合法的IP地址是指由网络信息中心(Network Information Center,NIC)或网络服务提供商(Internet Service Provider,ISP)分配的地址,是全球统一的可寻址的地址。通过具有NAT功能的设备(比如:路由器等)自动修改报文头部的源IP地址和目的IP地址,将私有地址转换成合法的IP地址,使得一个局域网只需使用少量的合法IP地址(甚至是1个IP地址)即可实现局域网内所有计算机使用内部分配的私有地址与外部互联网进行通信。
[0003] NAT的使用不仅完美地解决了lP地址不足的问题,还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。因此被广泛应用于各种类型互联网接入过程中。 [0004] NAT设备在单位时间内(例如每秒内)能够新建立的NAT会话数,也称NAT新建连接数,是NAT设备的一项重要性能指标,一般NAT新建连接数越大说明其性能越好,单位时间内能完成的完整的数据交换过程越多。
[0005] 目前常见的测试路由设备每秒钟可建立的新建连接数的方式一般是采用打流测试的方式,例如使用思博伦通信公司的Smart Bits 600B的Websuite2.6测试套件或IXIA公司的IxLoad测试套件。
[0006] 这两个测试套件是针对TCP/IP的四至七层的应用进行性能验证的高端的 专用测试设备,通过模拟真实的网络环境实现对设备的新建连接数测试,操作复杂,且通常需要为使用这两种高端套件支付昂贵的费用,成本投入大,由于其测试原理复杂,不具有普遍适用性。

发明内容

[0007] 本发明实施例提供一种网络地址转换新建连接数测试方法、系统及装置,用以解决现有技术中采用高端专用测试设备测试进行网络地址转换新建连接数测试时存在的操作复杂、成本投入高而不具有普遍适用性的问题。
[0008] 一种网络地址转换新建连接数测试方法,包括:
[0009] A、控制第一测试仪以设定的发送速率向被测设备发送设定发送数量的数据包,获取第二测试仪从被测设备接收到的网络地址转换NAT后的数据包接收数量;根据所述接收数量和发送数量的大小,判断被测设备是否能够完全对接收到的数据包进行网络地址转换;
[0010] B、根据判断结果调整发送速率并返回执行步骤A,直至确定出第一测试仪发送数据包的速率下限和速率上限;其中,所述速率下限为使被测设备能够完全对接收到的数据包进行网络地址转换的发送速率,速率下限为使被测设备不能完全对接收到的数据包进行网络地址转换的发送速率;
[0011] C、根据确定出的速率上限和速率下限对发送速率进行收敛调整,直至确定出使所述发送数量和接收数量相等的临界发送速率,确定所述临界发送速率的值为被测设备单位时间内的NAT新建连接数。
[0012] 一种网络地址转换新建连接数测试装置,包括:
[0013] 测试控制模块,用于控制第一测试仪以设定的发送速率向被测设备发送设定发送数量的数据包,获取第二测试仪从被测设备接收到的网络地址转换NAT后的数据包接收数量;
[0014] 比较判断模块,用于根据所述测试控制模块获取的接收数量和所述发送数量的大小,判断被测设备是否能够完全对接收到的数据包进行网络地址转换; [0015] 调整确定模块,用于根据判断结果调整发送速率并通知所述测试控制模块重新执行控制第一测试仪发送数据包的步骤,直至确定出第一测试仪发送数据包的速率下限和速率上限;其中,所述速率下限为使被测设备能够完全对接收到的数据包进行网络地址转换的发送速率,速率下限为使被测设备不能完全对接收到的数据包进行网络地址转换的发送速率;
[0016] 收敛调整模块,用于根据所述调整确定模块确定出的速率上限和速率下限对发送速率进行收敛调整,直至确定出使所述发送数量和接收数量相等的临界发送速率,确定所述临界发送速率的值为被测设备单位时间内的NAT新建连接数。
[0017] 一种网络地址转换新建连接数测试系统,包括:第一测试仪、被测设备、第二测试仪和上述的网络地址转换新建连接数测试装置;
[0018] 所述第一测试仪用于在所述网络地址转换新建连接数测试装置的控制下以设定的发送速率向所述被测设备发送设定发送数量的数据包;
[0019] 所述被测设备用于对接收到的数据包进行网络地址转换后发送给所述第二测试仪;
[0020] 所述第二测试仪用于接收所述测试设备发送的数据包。
[0021] 本发明有益效果如下:
[0022] 本发明实施例提供的网络地址转换新建连接数测试方法、系统及装置,第一测试仪根据选定的发送速率发送数据包,判断被测设备是否能够完全对接收到的数据包进行网络地址转换NAT,根据判断结果调整发送速率,直至确定出使被测设备能够完全对接收到的数据包进行网络地址转换的发送速率作为速率上限和一个速率下限,然后根据确定出的速率上限和速率下限对发送速率进行收敛调整,直至确定出使所述发送数量和接收数量相等的临界发送速率,确定所述临界发送速率的值为被测设备的NAT新建连接书。该方法通过测试被测设备单位时间能够进行网络地址转换的数据包的数量,来确定被测设备的新建连接数,因此仅通过两个普通的低端测试仪即可以完成对被测设备的NAT 新建连接数的测试,实现简单、方便,成本投入低,具有较强的通用性和普遍适用性;且通过收敛调整的方式确定被测设备单位时间内能够对数据包进行网络地址转换的数量,从而能够确定被测设备的新建连接数的数量,测试结果准确度高、能够精确的反映被测设备的处理能力。 附图说明
[0023] 图1为本发明实施例中网络地址转换新建连接数测试系统的结构示意图; [0024] 图2为本发明实施例一中网络地址转换新建连接数测试方法的流程图; [0025] 图3为本发明实施例二中网络地址转换新建连接数测试方法的流程图; [0026] 图4为本发明实施例中网络地址转换新建连接数测试装置的结构示意图。 具体实施方式
[0027] 本发明实施例提供的网络地址转换新建连接数测试方法,通过两个普通的低端测试仪即可以实现简单、方便的实现对网络地址转换设备新建连接数的测试。实现该方法的系统结构如图1所示,包括:测试仪1、测试仪2和被测设备,即一个网络地址转换设备。该系统还包括一个网络地址转换新建连接数测试装置,在下面的描述中简称测试装置,该装置可设置在测试仪1中,可设置在被测设备中,也可以独立设置为一个单独的设备。 [0028] 其中,第一测试仪用于在测试装置的控制下以设定的发送速率向被测设备发送设定发送数量的数据包;被测设备用于对接收到的数据包进行网络地址转换后发送给所述第二测试仪;第二测试仪用于接收测试设备发送的数据包。
[0029] 实施例一:
[0030] 本发明实施例一提供的网络地址转换新建连接数测试方法,通过图1所示的系统实现网络地址转换新建连接数测试,其流程如图2所示,执行步骤如下: [0031] 步骤S11:控制第一测试仪以设定的发送速率向被测设备发送设定发送数量的数据包。
[0032] 例如图1中的测试仪1作为第一测试仪发送数据包给被测设备。 [0033] 步骤S12:获取第二测试仪从被测设备接收到的网络地址转换后的数据包接收数量。
[0034] 例如图1中的测试仪2作为第二测试仪接收被测设备进行网络地址转换后的数据包。被测设备会将第一测试仪发送的数据包的源地址转换为自身的发送端口的地址,因此第二测试仪可以统计源地址为被测设备发送端口地址的数据包,来确定接收到的被测设备进行网络地址转换后的数据包。
[0035] 也就是说根据第二测试仪接收到的数据包的源地址,获取包含被测设备进行网络地址转换后的源地址的数据包数量。
[0036] 步骤S13:根据获取的第二测试仪的接收数量和第一测试仪的发送数量的大小,判断被测设备是否能够完全对接收到的数据包进行网络地址转换。
[0037] 比较确定出所述接收数量不小于发送数量时,确认被测设备能够完全对接收到的数据包进行网络地址转换,否则,确认被测设备不能完全对接收到的数据包进行网络地址转换。
[0038] 步骤S14:根据判断结果调整发送速率并返回执行步骤S11,直至确定出用于收敛调整的第一测试仪发送数据包的速率下限和速率上限。
[0039] 其中,速率下限为使被测设备能够完全对接收到的数据包进行网络地址转换的发送速率,速率上限为使被测设备不能完全对接收到的数据包进行网络地址转换的发送速率。
[0040] 上述根据判断结果调整发送速率,直至确定出第一测试仪发送数据包的速率下限和速率上限。具体包括:
[0041] 当根据获取的第二测试仪的接收数量和第一测试仪的发送数量的大小,判断出被测设备能够完全对接收到的数据包进行网络地址转换时,增大第一测试仪的发送速率并重复执行步骤S11-步骤S13,直至被测设备不能完全对接收到的数据包进行网络地址转换为止。
[0042] 优选的,增大第一测试仪的发送速率时按照设定的增大规则增大发送速 率,具体可以根据预设的增大规则,将选定的发送速率增加至上一次选定的发送速率的设定倍数。 [0043] 当根据获取的第二测试仪的接收数量和第一测试仪的发送数量的大小,判断被测设备不能完全对接收到的数据包进行网络地址转换时,减小第一测试仪的发送速率并重复执行步骤S11-步骤S13,直至被测设备能够完全对接收到的数据包进行网络地址转换为止。
[0044] 优选的,减小第一测试仪的发送速率时按照设定的减小规则减小所述发送速率,减小后的发送速率满足下列公式:
[0045]
[0046] 其中,Vi为第一测试仪速率减小前的选定的发送速率;
[0047] Yi为发送速率Vi对应的第二测试仪的接收数量;
[0048] Y0为第一测试仪的发送数量。
[0049] 当然,也可以按照其他的规则减小,目的就是减小发送速率至一个被测设备能够完全进行网络地址转换的状态。
[0050] 然后,根据上述过程中第一测试仪使用各个设定的发送速率时,被测设备是否完全对接收到的数据包进行网络地址转换了,来确定第一测试仪所使用的发送速率中使被测设备能够完全对接收到的数据包进行网络地址转换的一个发送速率作为速率下限以及确定第一测试仪所使用的发送速率中使被测设备不能完全对接收到的数据包进行网络地址转换的一个发送速率作为速率上限。
[0051] 优选的,确定第一测试仪所使用的设定的发送速率中使被测设备能够完全对接收到的数据包进行网络地址转换的发送速率中最大的一个作为速率下限;确定第一测试仪所使用的设定的发送速率中使被测设备不能完全对接收到的数据包进行网络地址转换的发送速率中最小的一个作为速率上限。
[0052] 步骤S15:根据确定出的速率上限和速率下限对发送速率进行收敛调整,直至确定出使第一测试仪的发送数量和第二测试仪的接收数量相等的临界发 送速率。具体包括:
[0053] 步骤C1、根据确定出的速率上限和速率下限,确定的收敛调整后的发送速率满足下列迭代公式: 或
[0054] 其中,Vx为速率下限;
[0055] Vs为速率上限;
[0056] Ys为速率上限Vs对应的第二测试仪的接收数量;
[0057] Y0为第一测试仪的发送数量。
[0058] 步骤C2、比较第一测试仪采用收敛调整后的发送速率发送设定发送数量的数据包时,第二测试仪接收到的数据包的接收数量与所述发送数量的大小。
[0059] 步骤C3、若根据比较结果确定被测设备不能完全对接收到的数据包进行网络地址转换时,以收敛调整后的发送速率作为速率上限,返回执行步骤C1;若根据比较结果确定被测设备能够完全对接收到的数据包进行网络地址转换时,执行步骤C4、 [0060] 步骤C4、判断收敛调整后的发送速率与速率上限的差值是否大于设定的阈值;当收敛调整后的发送速率与速率上限的差值大于设定的阈值时,以收敛调整后的发送速率作为速率下限,返回执行步骤C1;当收敛调整后的发送速率与速率上限的差值不大于设定的阈值时,确定收敛调整后的发送速率为临界发送速率。
[0061] 步骤S16:确定上述临界发送速率的值为被测设备的NAT新建连接数。 [0062] 确定出临界发送速率后,即确定出了被测设备单位时间内能够完成网络地址转换的数据包数量,从而也就确定出了被测设备单位时间内能够建立的NAT会话的数量,即NAT新建连接数。
[0063] 实施例二:
[0064] 本发明实施例二提供的网络地址转换新建连接数测试方法,通过一个具体实例说明网络地址转换新建连接数测试的具体流程,如图3所示,执行步骤如 下: [0065] 步骤S21:控制第一测试仪按照选定的发送速率向被测设备发送设定的发送数量的数据包。
[0066] 例如:如图1所示的系统中,测试仪上可以是PC收发包软件或者低端测试仪。其中,测试仪1作为第一测试仪发送数据包给被测设备,测试仪1的数据流出口地址为
10.1.1.2。
[0067] 测试仪1以发送50000个/秒的初始发送速率,发送100000个数据包给被测设备。数据包的大小可以更改和设置,例如设置为512字节。常用的报文大小有64、128、256、512、
1024、1280和1518字节,一般可以选用用户数据报协议(User Datagram Protocol,UDP)数据包。
[0068] 步骤S22:被测设备对接收到的数据包进行网络地址转换后发送给第二测试仪。 [0069] 沿用上边的例子,图1中被测设备接收测试仪1发送的数据包的接收端口(Gi2/2/0端口)的地址为10.1.1.1,向测试仪2发送数据包的发送端口(Gi2/2/1端口)的地址为20.1.1.1。图1中的测试仪2作为第二测试仪。
[0070] 被测设备将从该地址10.1.1.1接收到的数据包进行网络地址转换,无论发送数据包的源地址是哪个地址,都将数据包的源地址转换为20.1.1.1。被测设备从发送端口(Gi2/2/1端口)向测试仪2发送网络地址转换后的数据包,因此,发送的数据包的源地址均为20.1.1.1。
[0071] 步骤S23:获取第二测试仪接收到的数据包的数量,确定出被测设备正确进行网络地址转换的数据包的接收数量。
[0072] 沿用上边的例子,测试仪2接收端口的地址为20.1.1.2,统计测试仪2接收到的数据包数量时,可以根据源地址统计,即统计源地址为20.1.1.1的数据包数量。一般而言,只要测试仪2接收到了数据包就说明被测设备已经成功完成了网络地址转换,本次NAT转换的UDP连接已成功建立。因此测试仪2是否能够完全接收到测试仪1发送的数据包,则能够表明被测设备是否能够在单 位时间内转换测试仪1的发送速率对应的数量的数据包的网络地址,从而可以确定被测设备的新建连接数。
[0073] 步骤S24:比较第二测试仪的接收数量是否小于第一测试仪的发送数量。 [0074] 若接收数量小于发送数量,执行步骤S28,否则执行步骤S25。 [0075] 沿用上边的例子,当测试仪2接收到测试仪1发送的全部100000个数据包时,说明被测设备能够完全对测试仪1以50000个/秒发送的数据包进行网络地址转换,则执行步骤S25。当测试仪2没有完全接收到测试仪1发送的全部100000个数据包时,例如接收到了60000个,说明被测设备不能够完全对测试仪1以50000个/秒发送的数据包进行网络地址转换,则执行步骤S28。
[0076] 步骤S25:采用设定的增大规则增大第一测试仪的发送速率。
[0077] 沿用上边的例子,按照设定的增大规则,将测试仪1的发送速率翻倍,增加为100000个/秒。
[0078] 步骤S26:控制第一测试仪按照增大后的发送速率向被测设备发送设定的发送数量的数据包。
[0079] 沿用上边的例子,测试仪1以100000个/秒的速度向被测设备发送100000个数据包。
[0080] 步骤S27:比较第二测试仪接收到的数据包的接收数量是否小于第一测试仪的发送数量,若是,执行步骤S31;否则返回继续执行步骤S25。
[0081] 沿用上边的例子,若测试仪2接收到的数据包数量小于100000个则执行步骤S31;否则执行步骤S25继续增大发送速率,直至出现一个测试仪2不能够完全接收到测试仪1发送的100000个数据包的发送速率时,执行步骤S31。
[0082] 例如:测试仪1以100000个/秒发送速率发送数据包时,测试仪2接收到的数据包数量为80000个,则执行步骤S31。
[0083] 步骤S28:采用设定的减小规则减小第一测试仪的发送速率。
[0084] 沿用上边的例子,按照设定的减小规则,将测试仪1的发送速率减小。例如:按照上述公式 计算的到减小后的发送速率为:
[0085]
[0086] 步骤S29:控制第一测试仪按照减小后的发送速率向被测设备发送设定的发送数量的数据包。
[0087] 沿用上边的例子,测试仪1以30000个/秒的速度向被测设备发送100000个数据包。
[0088] 步骤S30:比较第二测试仪接收到的数据包的接收数量是否小于第一测试仪的发送数量,若是,返回继续执行步骤S28;否则执行步骤S31。
[0089] 沿用上边的例子,测试仪2接收到的数据包数量为100000个,则执行步骤S31,若小于100000个则执行步骤S28继续减小发送速率,直至出现一个测试仪2能够完全接收到测试仪1发送的100000个数据包的发送速率之后,在执行步骤S31。
[0090] 例如:测试仪1以30000个/秒发送速率发送数据包时,测试仪2接收到的数据包数量为100000个,则执行步骤S31。
[0091] 步骤S31:确定出用于收敛调整的速率下限和速率上限。
[0092] 根据上述的调整过程,则可以确定出一个被测设备能够完全对第一测试仪发送的数据包全部进行网络地址转换的发送速率,作为收敛调整的速率下限;以及确定出一个被测设备不能完全对第一测试仪发送的数据包全部进行网络地址转换的发送速率,作为收敛调整的速率上限。
[0093] 沿用上边的例子,针对使用初始发送速率发送数据包,在步骤S24时判断出被测设备能够完全进行网络地址转换的情况,根据后续执行的步骤S25-步骤S27,假设只执行了一次步骤S25的速率增大调整,在步骤S27时接收到的数据包数量就是80000个,小于100000个了,可以确定出用于收敛调整的速率上限为100000个/秒,速率下限为50000个/秒。
[0094] 沿用上边的例子,针对使用初始发送速率发送数据包,在步骤S24时判断出被测设备不能够完全进行网络地址转换的情况,根据后续执行的步骤S28-步骤S30,假设只执行了一次步骤S28的速率减小调整,在步骤S30时接收到 的数据包数量就是100000个了,可以确定出用于收敛调整的速率上限为50000个/秒,速率下限为30000个/秒。 [0095] 步骤S32:根据确定出的速率上限和速率下限对发送速率进行收敛调整。 [0096] 可以采用上述步骤S15中的两个公式进行收敛调整,此处以采用公式 为例进行说明。
[0097] 沿用上边的例子,以上述确定出的收敛调整的速率上限为100000个/秒,速率下限为50000个/秒为例说明收敛调整的过程。
[0098] 将速率上限100000个/秒和速率下限50000个/秒代入公式中,得到收敛调整后的速率为
[0099] 步骤S33:比较第一测试仪采用收敛调整后的发送速率发送设定发送数量的数据包时,第二测试仪接收到的数据包的接收数量是否小于第二测试仪的发送数量。 [0100] 若第二测试仪的接收数量小于第一测试仪的发送数量,即被测设备不能完全对接收到的数据包进行网络地址转换,执行步骤S34;否则,执行步骤S35。 [0101] 沿用上边的例子,测试仪1以收敛调整后的90000个/秒的发送速率向被测设备发送数据包,假设测试仪2接收到的数据包数量为90000个,没有完全接收到了测试仪1发送的全部数据包,则执行步骤S34;假设测试仪2接收到的数据包数量为100000个,完全接收到了测试仪1发送的全部数据包,则执行步骤S35。
[0102] 步骤S34:以收敛调整后的发送速率作为速率上限,执行步骤S32继续进行收敛调整。
[0103] 沿用上边的例子,如果测试仪1收敛调整后的发送速率90000个/秒发送数据包时,测试仪2接收到的数据包的数量为90000个,则以发送速率90000个/秒作为速率上限,继续进行收敛调整。且在步骤S32进行调整时,公式中的第二测试仪的接收数量Ys需要更新为发送速率上限90000个/秒所对应的接收 数量90000个,此时,计算得到的调整后的发送速率为:
[0104]
[0105] 然后在后续的步骤S33中再继续比较第一测试仪以该发送速率86000个/秒发送100000个数据包时,第二测试仪是否完全接收到的第一测试仪发送的数据包。 [0106] 步骤S35:收敛调整后的发送速率与速率上限的差值是否大于设定的阈值。 [0107] 若是,执行步骤S36继续进行收敛调整;否则,执行步骤S37。 [0108] 沿用上边的例子,如果测试仪1收敛调整后的发送速率90000个/秒发送数据包时,测试仪2接收到的数据包的数量为100000个,则比较该收敛调整后的速率90000个/秒与速率上限的100000个/秒的差值是否大于设定的阈值。如果是,继续进行收敛调整,否则认为找到了临界发送速率。
[0109] 其中,阈值最小设置为1,也可以根据测试精度的需要设置,设置的阈值越小测试精度越高。
[0110] 步骤S36:以收敛调整后的发送速率作为速率下限,执行步骤S32继续进行收敛调整。
[0111] 沿用上边的例子,假设收敛调整后的速率90000个/秒与速率上限的100000个/秒的差值大于设定的阈值,则以发送速率90000个/秒作为速率下限,继续进行收敛调整。 [0112] 步骤S37:确定收敛调整后的发送速率为临界发送速率,以及确定上述临界发送速率的值为被测设备的NAT新建连接数。
[0113] 确定出临界发送速率后,即确定了被测设备单位时间内能够完成网络地址转换的数据包数量,该被测设备单位时间内能够完成网络地址转换的数据包数量级体现了被测设备单位时间内能够新建立的NAT会话的数量,即被测设备的NAT新建连接数。 [0114] 沿用上边的例子,以发送速率90000个/秒作为速率下限,发送速率100000个/秒作为速率上限,在步骤S32进行调整时,计算得到的调整后的发送速率 为: [0115]
[0116] 假设测试仪1以该收敛调整后的发送速率98000个/秒发送数据包时,测试仪2能够完全接收到发送的100000个数据包,且该发送速率98000个/秒与速率上限的差值小于设定的阈值,则确定临界发送速率为98000个/秒。从而进一步确定被测设备单位时间内能够完成网络地址转换的数据包数量98000个,因此被测设备的新建连接数为98000。 [0117] 根据本发明实施例提供的网络地址转换新建连接数测试方法,可以构建一个网络地址转换新建连接数测试装置,该装置可以设置为一个单独的设备,也可以设置在测试仪中或者被测试设备中,来实现对第一测试仪的发送速率的控制和调整。该装置如图4所示,包括:测试控制模块10、比较判断模块20、调整确定模块30和收敛调整模块40。 [0118] 测试控制模块10,用于控制第一测试仪以设定的发送速率向被测设备发送设定发送数量的数据包,获取第二测试仪从被测设备接收到的网络地址转换后的数据包接收数量。
[0119] 比较判断模块20,用于根据测试控制模块10获取的第二测试仪的接收数量和第一测试仪的发送数量的大小,判断被测设备是否能够完全对接收到的数据包进行网络地址转换。
[0120] 比较判断模块20,具体用于比较确定出所述接收数量不小于发送数量时,确认被测设备能够完全对接收到的数据包进行网络地址转换,否则,确认被测设备不能完全对接收到的数据包进行网络地址转换。
[0121] 调整确定模块30,用于根据比较判断模块20的判断结果调整发送速率并通知测试控制模块10重新执行控制第一测试仪发送数据包的步骤,直至确定出第一测试仪发送数据包的速率下限和速率上限;其中,速率下限为使被测设备能够完全对接收到的数据包进行网络地址转换的发送速率,速率上限为使被测设备不能完全对接收到的数据包进行网络地址转换的发送速率。
[0122] 优选的,上述调整确定模块30,具体包括:调整单元301和确定单元302。 [0123] 调整单元301,用于当根据比较判断模块20判断出被测设备能够完全对接收到的数据包进行网络地址转换时,增大第一测试仪的发送速率并通知测试控制模块10重新执行控制第一测试仪发送数据包的步骤,直至被测设备不能完全对接收到的数据包进行网络地址转换为止;否则,减小第一测试仪的发送速率并通知测试控制模块10重新执行控制第一测试仪发送数据包的步骤,直至被测设备能够完全对接收到的数据包进行网络地址转换为止。
[0124] 确定单元302,确定第一测试仪所使用的发送速率中使被测设备能够完全对接收到的数据包进行网络地址转换的一个发送速率作为速率下限以及确定第一测试仪所使用的发送速率中使被测设备不能完全对接收到的数据包进行网络地址转换的一个发送速率作为速率上限。
[0125] 收敛调整模块40,用于根据调整确定模块30确定出的速率上限和速率下限对发送速率进行收敛调整,直至确定出使第一测试仪的发送数量和第二测试仪的接收数量相等的临界发送速率,确定该临界发送速率的值为被测设备的NAT新建连接数。 [0126] 优选的,上述收敛调整模块40,具体包括:迭代计算单元401、比较单元402和执行单元403。
[0127] 迭代计算单元401,用于根据调整确定模块40确定出的速率上限和速率下限,确定的收敛调整后的发送速率满足下列迭代公式: 或其中,Vx为速率下限,Vs为速率上限,Ys为速率上限Vs对应的第二测试
仪的接收数量,Y0为第一测试仪的发送数量。
[0128] 比较单元402,用于比较第一测试仪采用收敛调整后的发送速率发送设定发送数量的数据包时,第二测试仪接收到的数据包的接收数量与所述发送数量的大小。 [0129] 执行单元403,用于若根据比较单元402的比较结果确定被测设备不能完 全对接收到的数据包进行网络地址转换时,以收敛调整后的发送速率作为速率上限,通知迭代计算单元401执行确定收敛调整后的发送速率的步骤;若根据比较结果确定被测设备能够完全对接收到的数据包进行网络地址转换时,判断且收敛调整后的发送速率与速率上限的差值是否大于设定的阈值,若是,以收敛调整后的发送速率作为速率下限,通知迭代计算单元401执行确定收敛调整后的发送速率的步骤;若否,确定收敛调整后的发送速率为临界发送速率,确定该临界发送速率的值为被测设备的NAT新建连接数。
[0130] 本发明实施例提供的网络地址转换新建连接数测试方法,通过测试被测设备单位时间内能够进行网络地址转换的数据包的数量,实现网络地址转换设备单位时间内的新建连接数的测试,因此,仅通过两个普通的测试仪或普通的电脑发包软件发送数据包,并调整发送数据包的速率来完成对被测设备网络地址转换能力测试,从而确定出被测试的网络地址转换设备的NAT新建连接数。该方法实现简单、方便,无需投入较大成本来购买高端测试仪,成本投入低,具有较强的通用性和普遍适用性;且通过收敛调整的方式确定被测设备单位时间内能够对数据包进行网络地址转换的数量,通过少量的几次计算即可快速的确定出临界发送速率,即为可网络地址转换的数据包数量,从而确定出被测设备的NAT新建连接数,速度快、效率高、测试结果准确度高、能够精确的反映被测设备的处理能力。 [0131] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。