由于IETF没有对特定设备性能测试作专门规定,一般来说只能按照RFC2544(BenchmarkingMethodologyforNetworkInterconnectDevices)作测试。以太网交换机测试标准则参照RFC2889(BenchmarkingMethodologyforLANSwitchingDevices)。但是由于网络互联设备除了通用性能测试以外通常还有一些特定的性能指标。例如路由器区别于一般简单的网络互连设备,在性能测试时还应该加上路由器特有的性能测试。例如路有表容量、路由协议收敛时间等指标。
网络互联设备例如路由器性能测试应当包括下列指标:
- 吞吐量(Throughput):测试路由器包转发的能力。通常指路由器在不丢包条件下每秒转发包的极限。一般可以采用二分发查找该极限点。
- 时延(Latency):测试路由器在吞吐量范围内从收到包到转发出该包的时间间隔。时延测试应当重复20次然后去其平均值。
- 丢包率(Packetlossrate):测试路由器在不同负荷下丢弃包占收到包的比例。不同负荷通常指从吞吐量测试到线速(线路上传输包的最高速率),步长一般使用线速的10%。
- 背靠背帧数(Back-to-backframe):测试路由器在接收到以最小包间隔传输时不丢包条件下所能处理的最大包数。该测试实际考验路由器缓存能力。如果路由器具备线速能力(吞吐量=接口媒体线速),则该测试没有意义。
- 系统恢复时间(Systemrecovery):测试路由器在过载后恢复正常工作的时间。测试方法可以采用向路由器端口发送吞吐量110%和线速间的较小值持续60秒后将速率下降到50%的时刻到最后一个丢包的时间间隔。如果路由器具备线速能力,则该测试没有意义。
- 系统复位(Reset):测试路由器从软件复位或关电重启到正常工作的时间间隔。正常工作指能以吞吐量转发数据。
在测试上述RFC2544中规定的指标时应当考虑下列因素:
- 帧格式:建议按照RFC2544所规定的帧格式测试。
- 帧长:从最小帧长到MTU顺序递增。例如在以太网上采用64,128,256,512,1024,1280,1518字节。
- 认证接收帧:排除收到的非测试帧。例如控制帧,路由更新等帧。
- 广播帧:验证广播帧对路由器性能的影响。上述测试后在测试帧中夹杂1%广播帧再测试。
- 管理帧:验证管理帧对路由器性能的影响。上述测试后在测试帧中夹杂每秒一个管理帧再测试。
- 路由更新:路由更新即下一跳端口改变对性能的影响。
- 过滤器:在设置过滤器条件下对路由器性能的影响。建议设置25个过滤条件测试。
- 协议地址:测试路由器收到随机处于256个网络中的地址时对性能的影响。
- 双向流量:测试路由器端口双向收发数据对性能的影响。
- 多端口测试:考虑流量全连接分布(fullmesh)或非全连接分布(halfmesh)对性能的影响。
- 多协议测试:考虑路由器同时处理多种协议对性能的影响。
- 混合包长:除测试所建议的递增包长外,检查混合包长对路由器性能的影响。RFC2544除要求包含所有测试包长外没有对混合包长中各包场所占比例作规定。笔者建议按照实际网络中各包长的分布测试。例如在没有特殊应用要求时以太网接口上可采用60字节包50%,128字节包10%,256字节包15,512字节包10%,1500字节包15%。
除上述RFC2544建议的测试项外还建议测试如下内容:
- 路由震荡:路由震荡对路由器转发能力的影响。路由震荡程度即每秒更新路由的数量可以依据网络条件而定。路由更新协议可采用BGP。
- 路由表容量:测试路由表大小。骨干网路由器通常运行BGP,路由表包含全球路由。一般来说要求超过10万条路由。建议通过采用BGP输入导出路由计数来测试。
- 时钟同步:在包含相应端口例如POS口的路由器上测试内钟精度以及同步能力。
- 协议收敛时间:测试路由变化通知到全网所用时间。该指标虽然与路由器单机性能有关,但是一般只能在网络上测试,而且会因配置改变而变化。可以在网络配置完成后通过检查该指标来衡量全网性能。
测试时间应当根据具体项目以及测试目标而定。一般认为测试时间应当介于60秒到300秒之间。
由于上述性能测试项应当各种条件下分别测试,内容非常繁多。一般可以根据用户要求以及测试目标作设定选择。
IP网络设备性能测试一般可采用远端测试法。
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/