一种对通讯设备进行吞吐量测试的方法及交换机的制作方法

文档序号:7555320阅读:272来源:国知局
专利名称:一种对通讯设备进行吞吐量测试的方法及交换机的制作方法
技术领域
本发明涉及计算机网络通讯领域,尤其涉及一种对通讯设备进行吞吐量测试的方法及交换机。
背景技术
吞吐量是交换机性能测试中的一个比较重要的性能指标。所谓吞吐量(Throughput)是指被测设备(Device Under Test, DUT)在不丢包的情况下,所能转发的最大数据流量。通常使用每秒钟通过的最大的数据包数或者字节数来衡量(MB/s)。被测设备的吞吐量反映被测试设备所能够处理(不丢失数据包)的最大的数据流量。交换机吞吐量的测试要求,在RFC2544和RFC2889中已有详细说明。以往对数据通讯设备吞吐量性能的测试,都是借助于一些专业的设备进行的,而这些设备往往价格昂贵,测试成本高。

发明内容
本发明要解决的技术问题是提出一种对DUT设备进行吞吐量测试的方法及交换机,该方法使得不需要专业测试设备的情况下,基于广泛应用的交换机作为工具对待测设备进行吞吐量性能测试,节约了测试成本。一种对通讯设备进行吞吐量测试的方法,利用交换机作为测试工具对被测设备进行吞吐量测试,该方法包括如下步骤:配置交换机上用于测试被测设备吞吐量的出/入端口,并与被测设备的出/入端口连接;
`
构造两种预定格式的数据报文,并发送所述数据报文到预先配置的环回(loopback)端 P ;在所述环回端口所述数据报文流量经环回复制达到线速,生成数据流;交换机将所述数据流从预先配置的出端口进行线速转发,并记录出端口转发数据包的总个数;交换机从预先配置的与所述出端口对应的入端口接收被测设备发送的数据流,并记录入端口接收到数据包的总个数;根据所述出端口转发数据包的总个数与对应的入端口接收到的数据包总个数的差值,确定被测设备的吞吐量;其中,所述两种预定格式的数据报文携带有源MAC地址和目的MAC地址二元组信息,第一种数据报文中的源MAC地址和第二种数据报文中的目的MAC地址相同,所述第一种数据报文中的目的MAC地址和所述第二种数据报文中的源MAC地址相同。进一步地,所述预定格式的数据报文携带有VLAN信息及VLAN标识信息,所述VLAN标识信息与预先配置的用于测试被测设备吞吐量的出端口对应绑定,当从出端口线速转发携带有VLAN信息及VLAN标识信息的数据报文时,在VLAN内进行广播,从所述VLAN标识信息对应的出端口转发数据报文。进一步地,,通过改变所述出端口的状态能够控制交换机转发数据流的时间:当所述出端口处于转发状态时,交换机对数据流进行转发;当所述出端口处于阻塞状态时,交换机禁止数据流转发。进一步地,于,所述方法通过预先配置的访问控制列表过滤入端口接收DUT设备发送的数据流的方式统计所述入端口接收到的数据包的总个数。进一步地,,所述交换机包括光纤交换机。相应地,本发明还公开一种对通讯设备进行吞吐量测试的交换机,所述交换机包括,设置模块,用于设置交换机的各端口属性、访问控制列表属性及各端口的VLAN属性;构造模块,用于构造两种预定格式的数据报文并发送所述数据报文到预先配置的环回(loopback)端口 ;数据流生成模块,用于接收构造模块发送的两种数据报文,在所述环回端口所述数据报文流量经环回复制达到线速,生成数据流;转发模块,用于交换机将所述数据流从预先配置的出端口进行线速转发,并记录出端口转发数据包的总个数;

接收模块,用于从预先配置的与所述出端口对应的入端口接收被测设备发送的数据流,并记录入端口接收到数据包的总个数;记录模块,用于记录出端口转发数据包的总个数及对应入端口接收到数据包的总个数;计算模块,用于计算所述出端口转发数据包的总个数与对应的入端口接收到的数据包总个数的差值,其中,所述两种预定格式的数据报文携带有源MAC地址和目的MAC地址二元组信息,第一种数据报文中的源MAC地址和第二种数据报文中的目的MAC地址相同,所述第一种数据报文中的目的MAC地址和所述第二种数据报文中的源MAC地址相同;根据所述差值能够确定被测设备的吞吐量。进一步地,所述预定格式的数据报文携带有VLAN信息及VLAN标识信息,所述VLAN标识信息与预先配置的用于测试被测设备吞吐量的出端口对应绑定,当从出端口线速转发携带有VLAN信息及VLAN标识信息的数据报文时,在VLAN内进行广播,从所述VLAN标识信息对应的出端口转发数据报文。进一步地,通过改变所述出端口的状态能够控制交换机转发数据流的时间:当所述出端口处于转发状态时,交换机对数据流进行转发;当所述出端口处于阻塞状态时,交换机禁止数据流转发。进一步地,所述记录模块通过预先配置的访问控制列表过滤入端口接收DUT设备发送的数据流的方式统计所述入端口接收到的数据包的总个数。进一步地,所述交换机包括光纤交换机。本发明的技术方案在交换机的出端口上进行速率控制,能满足不同端口速率的吞吐量测试,同时能够实现在速率和端口类型(光口 /电口)方面扩展和延伸。该方法实现较为简单,不需要专业的测试设备,在一定程度上节约了测试资源和测试成本。


图1为本发明交换机与通讯设备的连接示意图;图2为本发明提供的利用交换机对通讯设备进行吞吐量测试的原理图;图3为本发明提供的利用交换机对通讯设备进行吞吐量测试的方法流程图。图4为本发明对通讯设备进行吞吐量测试的交换机的结构框图。
具体实施例方式为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以详细说明。本发明利用交换机端口的loopback功能,对报文的格式和速率进行控制,以满足通讯设备throughput测试的要求。所述方法适用于广域网交换机和局域网交换机。交换机传输信号的类型可以为电交换机,也可以为光交换机。所述交换机包括以太网交换机。下面以带有万兆口的千兆以太网交换机为例子对本方案进行详细说明。图1为本发明交换机与通讯设备的连接示意图。如图1所示,测试设备是一台普通的以太网交换机,通过所述以太网交换机完成对通讯设备throughput性能测试。通讯设备是需要测试吞吐量性能的被测设备。预先配置以太网交换机用于测试被测设备吞吐量的出/入端口,以太网交换机和被测设备直接连接,即可测试被测设备的throughput。其中,所述以太网交换机的端口 portl-port3相当于专业测试设备的测试端口,端口 pl_p3为被测设备的端口。图中箭头方向表示数据报文转发方向,箭头粗细不同用于表示测试流量的不同。图2为本发明提供的利用交换机对通讯设备进行吞吐量测试的原理图,介绍了吞吐量测试工具实现原理,主要说明报文的转发控制方法。图3为本发明提供的利用交换机对通讯设备进行吞吐量测试的方法流程图,包含了从初始化tool设备,到报文转发,到统计测试结果一个完整的throughput测试过程。结合图2和图3对具体流程进行说明。具体流程包括:步骤301:配置交换机上用于测试被测设备吞吐量的出/入端口,并与被测设备的出/入端口连接;步骤302:构造两种预定格式的数据报文并发送所述数据报文到预先配置的环回(loopback)端 P。所述两种预定格式的数据报文携带有源MAC地址和目的MAC地址二元组信息,第一种数据报文中的源MAC地址和第二种数据报文中的目的MAC地址相同,所述第一种数据报文中的目的MAC地址和所述第二种数据报文中的源MAC地址相同。吞吐量测试要求对被测设备端口达到满负载,即收发流量同时进行。在进行被测设备吞吐量测试之前,对以太网交换机进行初始化配置(包括万兆口 loopback配置、vlan划分、block千兆端口等);调用交换机的内部发包函数,在交换机内部构造所需的数据报文Packet A,发送所述 数据报文Packet A到交换机预先设置为loopback 口的万兆口 Py为了实现数据报文全双工传输,所述所需的数据报文是一对预定格式的数据报文。通过对发往万兆口的报文Packet A的MAC地址进行控制得到预定格式的数据保温对。本实施例中构造两种预定格式的数据报文向万兆口发送,两种报文的SRC-MAC和DST-MAC 二元组信息,一种数据报文中的源MAC地址和另一种数据报文中的目的MAC地址相同,所述一种数据报文中的目的MAC地址和所述另一种数据报文中的源MAC地址相同,这样使得当该数据报文流量按照图2的中的步骤step 1-4从PI端口转入DUT后,会从p2端口转出,同时,从p2端口转入的报文会从Pl端口转出。对发往万兆口的报文Packet A的MAC地址进行控制,还能避免测试流量在DUT设备上广播,便于后续对测试结果的统计。步骤303:在所述环回端口所述数据报文流量经环回复制达到线速,生成数据流。交换机上开启loopback功能的端口,称为环回端口( loopback端口)。对交换机进行配置,利用交换机端口的loopback功能,能够使发往loopback端口(开启了 loopback功能的端口)的报文,不断地环回复制,最终在该端口达到线速。当数据流从千兆口(如图2中的portl)转出的时候,由于受到千兆端口速率(1000Mbps)的限制,最多只能转出千兆流量(1000Mbps)。所以,当从P万端口转向P千端口的流量速率不小于1000Mbps时,从以太网交换机的千兆口 P千转出的流量速率为1000Mbps,在速率上满足了对DUT交换机千兆口吞吐量测试的要求。
·
一个万兆口的速率是10000Mbps,一个千兆口的速率是1000Mbps。理论上,一个万兆口环回达到线速后,能往10个千兆口转发报文,使得这10个千兆口的转发速率达到1000Mbps。线速转发最基本且最重要的功能是数据包转发。在同样端口速率下转发小包是对路由器包转发能力最大的考验。这里需要说明的是,本实施例只是以千兆口吞吐量测试为例进行说明,所以转发端口的速率设置为1000Mbps,以满足吞吐量测试的要求。因此,所述转发端口的速率根据吞吐量测试的要求进行设定,例如100Mbps。步骤304:交换机将所述数据流从预先配置的出端口进行线速转发,并记录出端口转发数据包的总个数。本实施例中,当数据流从千兆口 Pt转出的时候,由于受到千兆口端口速率(1000Mbps)的限制,只能转出千兆流量(lOOOmbps,即千兆端口线速V)。这样,从以太网交换机千兆口转出的流量,在速率上满足了对DUT设备千兆口 throughput测试的要求。其中,所述预定格式的数据报文携带有VLAN信息及VLAN标识信息,所述VLAN标识信息与预先配置的用于测试被测设备吞吐量的出端口对应绑定。通过划分VLAN和添加VLAN标识信息的方式对流量进行区分控制。其中,所述具体的VLAN标识信息用于标识已划分的VLAN。所述VLAN标识信息与预先配置的用于测试被测设备吞吐量的出端口对应绑定。当给发往万兆口发送数据报文时,给所述数据报文打上不同的VLAN标识信息,根据带有不同VLAN标识信息的数据报文流量,将从对应该VLAN标识信息的千兆端口上线速转发,从而实现对流量的区分控制。假如发往万兆口的数据报文流量所带VLAN标识信息值为1,该流量在万兆口环回达到线速VI。当万兆口往千兆口转发该流量时,在VLANl内广播,假如VLAN标识信息值为I时,与其绑定的出端口为portl,因此,根据VLAN标识信息值得到只有端口 portl属于VLAN1,则该流量从portl转出。同理,带VLAN标识信息值为2的流量只能从port2转出,这样就实现了对流量的区分控制,使得报文的转发路径可控。数据流从以太网交换机出端口往外转出的时候,通过统计该出端口转出报文的数量,得到转出的报文总数NI。步骤305:交换机从预先配置的与所述出端口对应的入端口接收被测设备发送的数据流,并记录入端口接收到数据包的总个数。吞吐量测试流量时,数据流经过被测设备后,需要转入以太网交换机,进行收包统计,本实施例中,通过以太网交换机上与出端口对应的入端口统计从DUT设备接收到的报文数量,得到转入报文总数N2。步骤306:根据所述出端口转发数据包的总个数与对应的入端口接收到的数据包总个数的差值,确定被测设备的吞吐量。Throughput测试中,发包总数为NI,收包总数为N2,NI与N2的差值即为丢包数,在不丢包的情况下,发送数据包总数最大时为DUT设备的最大吞吐量。此外,在转发数据报文的过程中,通过VLAN划分和VLAN标识信息的使用对流量进行区分控制的同时,通过对端口状态进行设置(block/forward),能够准确控制数据报文的收发时间。例如当需要以太网交换机往外转发throughput测试流量的时候,对应的端口设置为forward,需要停止转发流量的时候,对应端口状态设置为block。为了避免交换机上转入报 文与转出报文间的相互干扰,可通过预先配置的访问控制列表(ACL)过滤入端口接收DUT设备发送的数据流的方式统计所述入端口接收到的数据包的总个数,以减少干扰对统计结果产生的影响。本发明技术方案用带有万兆口的千兆以太网交换机作为测试工具,在以太网交换机上,让流量(报文)在万兆口 loopback,达到线速后往千兆口转发,报文从以太网交换机千兆口转出,达到千兆线速,满足千兆口的吞吐量(throughput)测试要求,对DUT设备千兆端口的吞吐量进行测试。该方法适用范围较广。图4为本发明对通讯设备进行吞吐量测试的交换机的结构框图。交换机传输信号的类型可以为电交换机,也可以为光交换机。所述交换机包括以太网交换机。如图4所示,所述交换机包括,设置模块401,用于设置交换机的各端口属性、访问控制列表属性及各端口的VLAN属性;构造模块402,用于构造两种预定格式的数据报文并发送所述数据报文到预先配置的环回(loopback)端口 ;数据流生成模块403,用于接收构造模块发送的两种数据报文,在所述环回端口所述数据报文流量经环回复制达到线速,生成数据流;转发模块404,用于交换机将所述数据流从预先配置的出端口进行线速转发,并记录出端口转发数据包的总个数;接收模块405,用于从预先配置的与所述出端口对应的入端口接收DUT设备发送的数据流,并记录入端口接收到数据包的总个数;记录模块406,用于记录出端口转发数据包的总个数及对应入端口接收到数据包的总个数;计算模块407,用于计算所述出端口转发数据包的总个数与对应的入端口接收到的数据包总个数的差值,其中,所述两种预定格式的数据报文携带有源MAC地址和目的MAC地址二元组信息,第一种数据报文中的源MAC地址和第二种数据报文中的目的MAC地址相同,所述第一种数据报文中的目的MAC地址和所述第二种数据报文中的源MAC地址相同;根据所述差值能够确定DUT设备的吞吐量。其中,所述预定格式的数据报文携带有VLAN信息及VLAN标识信息,所述VLAN标识信息与预先配置的用于测试被测设备吞吐量的出端口对应绑定,当从出端口线速转发携带有VLAN信息及VLAN标识信息的数据报文时,在VLAN内进行广播,从所述VLAN标识信息对应的出端口转发数据报文。所述装置还可以通过改变所述出端口的状态控制交换机转发数据流的时间:当所述出端口处于转发状态(forward)时,交换机对数据流进行转发;当所述出端口处于转发状态(block)时,交换机禁止数据流转发。所述记录模块通过预先配置的访问控制列表(ACL)过滤入端口接收DUT设备发送的数据流的方式统计所述入端口接收到的数据包的总个数。具体的所述预定格式的数据报文由交换机内部的发包函数构造完成。上述功能模块的具体工作过程可参考图3部分的详细描述。本发明的技术方案采用现有的交换机作为测试工具即可完成通讯设备吞吐量测试,通过对以太网交换机端口限速、数据报文格式设置等操作来满足不同端口速率的吞吐量测试,而且可实现在速率和端口类型(光口 /电口)方面扩展和延伸,该方法实现较为简单,不需要专业的测试设备,在一定程度上节约了测试资源和测试成本。

上述仅为本发明的较佳实施例及所运用技术原理,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围内。
权利要求
1.一种对通讯设备进行吞吐量测试的方法,其特征在于,利用交换机作为测试工具对被测设备进行吞吐量测试,该方法包括如下步骤: 配置交换机上用于测试被测设备吞吐量的出/入端口,并与被测设备的出/入端口连接; 构造两种预定格式的数据报文,并发送所述数据报文到预先配置的环回(loopback)端Π ; 在所述环回端口所述数据报文流量经环回复制达到线速,生成数据流; 交换机将所述数据流从预先配置的出端口进行线速转发,并记录出端口转发数据包的总个数; 交换机从预先配置的与所述出端口对应的入端口接收被测设备发送的数据流,并记录入端口接收到数据包的总个数; 根据所述出端口转发数据包的总个数与对应的入端口接收到的数据包总个数的差值,确定被测设备的吞吐量; 其中,所述两种预定格式的数据报文携带有源MAC地址和目的MAC地址二元组信息,第一种数据报文中的源MAC地址和第二种数据报文中的目的MAC地址相同,所述第一种数据报文中的目的MAC地址和所述第二种数据报文中的源MAC地址相同。
2.根据权利要求1所述的对通讯设备进行吞吐量测试的方法,其特征在于,所述预定格式的数据报文携带有VLAN信息 及VLAN标识信息,所述VLAN标识信息与预先配置的用于测试被测设备吞吐量的出端口对应绑定,当从出端口线速转发携带有VLAN信息及VLAN标识信息的数据报文时,在VLAN内进行广播,从所述VLAN标识信息对应的出端口转发数据报文。
3.根据权利要求1所述的对DUT设备进行吞吐量测试的方法,其特征在于,通过改变所述出端口的状态能够控制交换机转发数据流的时间:当所述出端口处于转发状态时,交换机对数据流进行转发;当所述出端口处于阻塞状态时,交换机禁止数据流转发。
4.根据权利要求1所述的对通讯设备进行吞吐量测试的方法,其特征在于,所述方法通过预先配置的访问控制列表过滤入端口接收DUT设备发送的数据流的方式统计所述入端口接收到的数据包的总个数。
5.根据权利要求1所述的对通讯设备进行吞吐量测试的方法,其特征在于,所述交换机包括光纤交换机。
6.一种对通讯设备进行吞吐量测试的交换机,其特征在于,所述交换机包括, 设置模块,用于设置交换机的各端口属性、访问控制列表属性及各端口的VLAN属性;构造模块,用于构造两种预定格式的数据报文并发送所述数据报文到预先配置的环回(loopback)端 P ; 数据流生成模块,用于接收构造模块发送的两种数据报文,在所述环回端口所述数据报文流量经环回复制达到线速,生成数据流; 转发模块,用于交换机将所述数据流从预先配置的出端口进行线速转发,并记录出端口转发数据包的总个数; 接收模块,用于从预先配置的与所述出端口对应的入端口接收被测设备发送的数据流,并记录入端口接收到数据包的总个数;记录模块,用于记录出端口转发数据包的总个数及对应入端口接收到数据包的总个数; 计算模块,用于计算所述出端口转发数据包的总个数与对应的入端口接收到的数据包总个数的差值, 其中,所述两种预定格式的数据报文携带有源MAC地址和目的MAC地址二元组信息,第一种数据报文中的源MAC地址和第二种数据报文中的目的MAC地址相同,所述第一种数据报文中的目的MAC地址和所述第二种数据报文中的源MAC地址相同; 根据所述差值能够确定被测设备的吞吐量。
7.根据权利要求6所述的对通讯设备进行吞吐量测试的交换机,其特征在于,所述预定格式的数据报文携带有VLAN信息及VLAN标识信息,所述VLAN标识信息与预先配置的用于测试被测设备吞吐量的出端口对应绑定,当从出端口线速转发携带有VLAN信息及VLAN标识信息的数据报文时,在VLAN内进行广播,从所述VLAN标识信息对应的出端口转发数据报文。
8.根据权利要求6所述的对通讯设备进行吞吐量测试的交换机,其特征在于,通过改变所述出端口的状态能够控制交换机转发数据流的时间:当所述出端口处于转发状态时,交换机对数据流进行转发;当所述出端口处于阻塞状态时,交换机禁止数据流转发。
9.根据权利要求6所述的对通讯设备进行吞吐量测试的交换机,其特征在于,所述记录模块通过预先配置的访问控制列表过滤入端口接收DUT设备发送的数据流的方式统计所述入端口接收到的数据包的总个数。
10.根据权利要求6所述的对通讯设备进行吞吐量测试的交换机,其特征在于,所述交换机包括光纤交换机。`
全文摘要
本发明公开一种对通讯设备进行吞吐量测试的方法及交换机,配置交换机上用于测试通讯设备吞吐量的出/入端口,并与通讯设备的出/入端口连接,在交换机内部构造两种预定格式的数据报文;在预先配置的环回端口报文流量经环回复制达到线速,生成数据流;从预先配置的出端口线速转发数据流到通讯设备并统计发包个数,同时从交换机上与所述出端口对应的入端口接收通讯设备发送的数据包并统计收包个数,根据交换机端口收发包个数的差值对通讯设备的吞吐量进行测试。该方法实现简单,通过在交换机出端口上进行速率控制,能满足不同端口速率的吞吐量测试,还可实现在速率和端口类型方面扩展和延伸,在一定程度上节约了测试资源和测试成本。
文档编号H04L12/931GK103236956SQ20131013634
公开日2013年8月7日 申请日期2013年4月18日 优先权日2013年4月18日
发明者张研, 赵会娟, 彭如强 申请人:神州数码网络(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1