吞吐量

上一篇 / 下一篇  2008-12-20 20:13:11 / 个人分类:性能测试

网络中的数据是由一个个数据包组成,防火墙对每个数据包的处理要耗费资源。吞吐量是指在没有帧丢失的情况下,设备能够接受的最大速率。其测试方法是:在测试中以一定速率发送一定数量的帧,并计算待测设备传输的帧,如果发送的帧与接收的帧数量相等,那么就将发送速率提高并重新测试;如果接收帧少于发送帧则降低发送速率重新测试,直至得出最终结果。吞吐量测试结果以比特/秒或字节/秒表示。
    吞吐量和报文转发率是关系防火墙应用的主要指标,一般采用FDT(Full Duplex Throughput)来衡量,指64字节数据包的全双工吞吐量,该指标既包括吞吐量指标也涵盖了报文转发率指标。
    随着Internet的日益普及,内部网用户访问Internet的需求在不断增加,一些企业也需要对外提供诸如WWW页面浏览、FTP文件传输、DNS域名解析等服务,这些因素会导致网络流量的急剧增加,而防火墙作为内外网之间的唯一数据通道,如果吞吐量太小,就会成为网络瓶颈,给整个网络的传输效率带来负面影响。因此,考察防火墙的吞吐能力有助于我们更好的评价其性能表现。这也是测量防火墙性能的重要指标。
    吞吐量的大小主要由防火墙内网卡,及程序算法的效率决定,尤其是程序算法,会使防火墙系统进行大量运算,通信量大打折扣。因此,大多数防火墙虽号称100M防火墙,由于其算法依靠软件实现,通信量远远没有达到100M,实际只有10M-20M。纯硬件防火墙,由于采用硬件进行运算,因此吞吐量可以达到线性90-95M,是真正的100M防火墙。
    对于中小型企业来讲,选择吞吐量为百兆级的防火墙即可满足需要,而对于电信、金融、保险等大公司大企业部门就需要采用吞吐量千兆级的防火墙产品。

吞吐量测试

这类的测试可以解决下列的问题:

测试端对端广域网/局域网的吞吐量

测试跨越WAN连接的 IP性能,并用于对照服务等级协议(SLA),将目前使用的WAN链路的能力和承诺的信息速率(CIR)进行比较

在安装 VPN时进行基准测试和拥塞测试

测试网络设备的模式、帧大小或网络速率的对应关系,用于对调制解调器、FRADS、集线器、交换机或路由器等设备的优化与设置的评估

吞吐量的测试需要由被测试链路的双端进行端对端的测试,对于企业的网管和维护工程师来说在进行端对端的测试中是不需要了解或测试物理网络的,由于 IP是承载应用业务的网络互联平台,这样的端对端链路测试中的物理网络可以是无线网络、路由环境、透明网络甚至是非对称的网络(如 xDSL和Cable Modem)。

最简单(也是最常用和有效)的吞吐量测试方法就是将测试接入点选在链路两端的以太网网络上的测试方法,如图1。测试时在发送端在指定发送速度,在接收器上计算收到的帧的速度。吞吐量是接收器收到的好帧数量/时间,测试通过改变帧长度,重复以上测试得到不同速率下的测试结果。(注:可以反复进行测试,来确定在不同的传输速度时的吞吐量)

有一点需要强调的是,在维护一个运行中的网络时,吞吐量测试是必须在线进行的,即不能中断现有的网络业务和网络连接,测试过程中有其它的网络流量存在。这种情况下的测试结果对于评估现有业务上的网络能力,计划增加网络站点和扩充网络应用的评估是非常有意义的。

测试方法:端对端测试有很多的测试手段和方法,主要分起来有两类:一类是基于PC软件的测试,另一类是使用专门的测试仪器进行的测试手段。通常对于流量比较大的(如:大于30Mbps以上)测试主要是使用测试仪器进行的,这是因为测试仪器不象基于PC的测试软件那样要受到操作系统、网卡、设备驱动和配置等诸多方面的影响,测试仪能提供稳定、独立和可重复性的测试结果。

应用案例1:对企业网络的吞吐量测试,图2。

在这个测试应用中,A、B、C、D分别是可以选择进行测试的接入点,它们与集线器上接入的测试仪可以组成不同的链路,通过对这些链路的吞吐量测试可以相应的网络瓶颈和发现性能问题的网段。

 

图2. 网络吞吐量的测试接入点

测试结果的显示

1、部分显示了测试的设置参数:上下行测试速率、测试时间、帧长度、测试模式。这些参数是参数者预定测试的内容,在测试进行之前测试者可以根据需要调节和设定测试参数。

2、这部分以上、下行的方式分别显示了实际的传输速率、成功传输的百分百以及测试中丢失帧的数量,这是测试仪根据①的设置进行测试的结果。

3、显示的是测试链路的参数:本地以及远端IP地址、路由器

4、路由器hops数

5、显示当前以太网接入的工作模式

应用案例2:测试xDSL链路吞吐量,图4。

图4. xDSL链路的测试接入点

我们对xDSL测试的应用中有这样的测试需求,一测定xDSL在特定链路上的最大传输速率;二测定某个特定速率下的最大传输距离。

针对需求一的测试要求,就需要有一个能自动递增并进行判定的测试功能,即在测试前设定测试上、下行各自的起始速率和测试最高的速率、然后定义一个自动递增的步长,开始测试后当被测试速率下的有效传输率超过95%时就继续进行更高速率的测试,直至有效传输速率低于95%为止,就可以测定该链路有效的最大传输速率。

上述对于xDSL的测试方法国外曾经有人用其对不同品牌的ADSL modem 进行过测评,方法简便实用,测评的结果很直观。

网络加压测试

这类的测试可以用于解决下列的问题:

在一个网段上施加预定大小的网络流量用于测试该网段的出错情况,或激活潜在的错误

通过生成和发送坏帧测试网络错误的发现、统计和报告功能

验证网络设备(如:路由器/交换机等设备)上的 RMON和SNMP探针的端口统计信息

在局域网上模拟额外用户和应用

单向的快速 Ping沿着可疑的链路进行联通性的测试,识别链路瓶颈

单机测试网络的双向吞吐能力

测试广域网链路的对称吞吐量

测试方法:在对网络的加压测试中可以使用基于MAC或IP的方式进行,对于基于MAC方式的测试是对以太网网段进行的数据发送,而基于 IP包的加压测试则是对指定的IP地址进行的流量发送测试它可以跨越路由器对远端的站点进行测试。

在发送的数据选择时可以选定超长/短帧进行发送,这类的以太网错误帧是不能跨越路由器的(也可能不会跨越交换机),它的使用多是用来测定在物理网络上发生帧错误时的网络管理系统、告警系统的反映,以及统计信息的准确程度。

另一个非常有效的加压测试就是快速 IP Ping的测试,通常使用的 ICMP Ping命令是需要在发送ICMP请求后等待回应的测试方法,这种方法只能验证网络的连通性,但不能验证在大流量下的网络响应情况。尽管 Ping是所有网络测试手段中使用频度最高的方法,但由于它几乎不能对网络产生流量上的压力,所以通常不能用于对网络的加压反映测试上。快速 IP Ping就是将这个遗憾弥补的有效方法,测试仪器在发送下一个 ICMP请求前并不等待当前请求的回应,而是根据测试者的设置以一个恒定的流量向被测试目标发送 ICMP请求。(这种方法听起来很象是黑客攻击?实际上我们用这个方法多次测试了被加压的站点的反映能力,所以建议测试者在使用这项测试时要谨慎!)

测试案例3:单向就可以完成的加压测试,图5。

 图5看到这个测试是一个可调谐的持续性测试

显示了测试当前的速率,注意这个速率是×2的

发送出来的加压流量给网络造成的利用率的变化情况

在当前的发送中能收到的 Ping的响应数

从案例中可以清楚地看到,对于每个帧为512字节并以10帧/秒的速率发送的压力来说,换算的网络流量是41.6Kbps×2。此时的网络利用率是78帧/秒,Ping响应达到了10Ping/s,也就是测试没有出现数据包的丢失。

此时我们可以调节每秒种发送的帧数或发送帧的长度来测试Ping响应的情况。这种单向的快速 IP Ping测试为测试者带来了极大的能力。虽然是单端使用测试仪的工作方式,但 ICMP的数据包是双向的数据流,这种测试方式可以方便地测试出在被测试链路中的路由器间采取加密/解密通信时对网络流量性能的影响。也可以用来测试链路对数据包长度的敏感度,从而为调节网络的设置提供有力的证明。

我们上述关于网络吞吐量测试的方法是网络维护中使用最频繁的方法之一,安恒网络测试中心的工程师在实际的工作中通过合理有效的使用这些方法,发现并排除了很多的故障(尤其是与性能相关的网络故障)。在进行流量测试中还有很多其它有效和优秀的方法,比如使用协议分析仪进行数据流量再现等,在今后我们将逐渐整理出来介绍给大家。


TAG: 性能测试

 

评分:0

我来说两句

日历

« 2024-04-14  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 10651
  • 日志数: 19
  • 建立时间: 2008-12-20
  • 更新时间: 2009-01-29

RSS订阅

Open Toolbar