SmartApplication测试指导
用SmartBits的SmartApplication软件测试路由器性能是遵循了两个RFC的定义。该RFC定义的一组测试,用来衡量网络设备的性能。
RFC-1242,“Benchmarking terminology of network interconnecting devices”网络互连设备的定标术语
RFC-2544,“Benchmarking methodology interconnecting devices” 网络互连设备的定标方法
RFC-1242概述了网络交换机和路由器的四个测试
Throughput 吞吐量
Latency 延迟
Frame Loss Rate 帧丢失率
Back-to-Back 背靠背
一、 术语定义
1、 Back-to-Back
定义:
of network
对于一个介质来说,从空闲状态开始,短时间内固定长度的帧出现,帧和帧之间的间隔是最小合法间隔
讨论:
网络上越来越多的设备能产生爆发的back-to-back帧。使用像NFS协议的远程磁盘服务器,远程磁盘备份系统比如rdump和远程磁带访问系统,一个请求会使得一批64k大小的数据返回。通过MTU比较小的网络如以太网时,就会有大量的分片传输,由于只有所有分片都收到后才会重组,如果中间设备的失误导致一个片段丢失,发送方就要多次试图发送大数据块,无穷循环。
随着互联网规模扩大,现在的路由器传输能力也很快,路由更新会产生大量的帧。路由信息帧的丢失会产生错误的不可达指示。该参数的测试目的在于测定设备的数据缓冲能力。
测量单位:
一批流量的帧个数
2、Frame Loss Rate丢包率
定义:
在稳定状态(持续的)负载下,网络设备能够转发的帧中,由于资源缺乏而导致丢失的帧的百分比。
讨论:
该测试用于报告在过载情况下网络设备的性能。能够体现网络设备处于非正常的网络环境如广播风暴时性能如何。
测量单位:
丢失包与输入包之比。以输入负载-丢失帧的图表来表示
3、Latency 延迟
定义:
对存储转发设备:
输入帧的最后一个比特进输入端口的时间与输出帧的第一个比特出现在输出端口的时间间隔。
对位转发设备
输入帧的第一个比特尾部到达输入端口的时间与输出帧的第一个比特头部出现在输出端口的时间间隔。
讨论:
延迟的可变性是个难题。有些协议是依赖时间的(比如LAT、IPX)。未来的应用很可
能对时间敏感。设备延迟的增加会降低网络直径。延迟的测量中最好不计数据速度的影响。测试时对不同大小的帧进行测试但不改变测试环境。
理想情况下,所有设备的测量从帧的同步比特后的第一个真正的比特开始,理论上厂家能设计一个正常情况下可以当做存储转发设备的设备,比如桥,在一个帧全部收到以前就开始转发该帧。这样的设备称直接转发设备。一个假定就是设备在接收输入帧时,不知何故使得传送的帧无效了,帧本身或者在传送过程中因为某种原因出错了。例如,坏的校验。这种情况下,设备仍旧是存储转发设备,延迟还是从输入最后一个比特开始,输出第一个比特结束,甚至为负值。主要内容就是将被测设备看做一个整体,而不考虑内部结构。
4、Throughput 吞吐率
定义:
设备在不丢一个帧时能支持的最大速率。
讨论:
吞吐率特征是市场上被证实有用的一个值。由于数据流中丢失任意一个帧,也会在等待上层协议超时过程中产生重大延迟。知道设备能支持的最大速率是有用的。测试分不同帧长度。同时支持路由和桥接数据的设备测试要分开。如果接收帧中有校验,必须进行完整的校验。
测量单位:
N输入帧/秒
输入比特/秒
二、 吞吐率测试方法
吞吐率测试设备在不出错前提下转发帧的最大速率。如有一个帧丢失,测试在一个更低的吞吐率重新开始。
吞吐率测试按照RFC1242的定义和RFC2544的方法进行。按RFC1242,吞吐率是“不丢一个帧时设备的最大传输速率”,按RFC2544,测量吞吐率是“按一定速率向DUT发送一定数量的帧,然后计算被DUT传出去的帧”。SmartApplication测试吞吐率时,发送一些带特定源和目的MAC地址的帧用于测试,这些帧从SmartBits一个特定的端口发出,从另一个端口接收。
建立测试是间隙是由初始速率决定的。如果初始速率为100%,初始发送的帧的间隙是安网络拓补和SmartCard的传送速率决定的最小合法长度。发送的帧个数是由测试时间决定的。只有发送口产生的帧才是有效的,交换机发出的帧不算。Keep-alive和路由更新帧不计入接收帧。
如果初始速率为100%,在帧长度给出时,第一次测试时帧的速率是按网络拓补和SmartCard的传送速率决定的最小合法长度。如果SmartBits发送口发出的帧都被接收端口收到的话,测试不再进行,最大值就是吞吐率。
如果第一次测试失败(即使只丢失一个帧),第二次发送在第一次的速率基础上降低20%,第三次及以后的测试按二分插值搜索,即是上一次失败速率和成功速率的中间值。测试一直进行,除非帧丢失率已经低于或等于测试的分辨率。
测试结果自动记录在文件中,显示端口对之间的最大速率和总的速率,对特定帧长度达到理想值的百分比也记录下来。
测试次数由用户决定,取平均值。
三、 延迟测试方法
SmartApplicatoin延迟测试按RFC1242定义进行
SmartApplicatoin怎样计算延迟
发送SmartCard按用户定义的帧长度,以用户设定的吞吐率对DUT发送一批帧。在这批数据流的中间插入了一个标记,标记帧被完全发送出去的时刻称发送时间片,接收SmartCard认出标记帧的时刻为接收时间片。
接收时刻-发送时刻=延迟
cut through(位传输)延迟计算
对于cut through设备,SmartApps按FIFO(先进先出)的原则计算,即它计算帧的第一个比特到达DUT输入端口的时间(发送时间)和同一个帧第一个比特离开输出端口的时间(接收时间)的差值。
Store and Forward设备延迟计算
对于Store and Forward设备,SmartApps按LIFO(后进先出)的原则计算,即它
计算帧的最后一个比特到达DUT输入端口的时间(发送时间)和同一个帧第一个比特离开输出端口(接收时间)的差值。
注意:
1) 建议在运行延迟测试之前先进行吞吐率测试,以得到最合适的DUT的吞吐率。然后将吞吐量测试中得的吞吐率作为延迟测试的最大速率。采用一个已证实是合适的速率,标记帧就不会由于速率和性能因素而导致丢失。
2) SmartApplications一般会同时给出store and forward设备和bit-forward设备两个结果,不考虑DUT是谁。看结果时,选择合适你的设备类型的一个。
四、 丢包率测试方法
该测试用于测量DUT应该转发但被丢失的帧的百分比。
丢包率测试满足RFC1242的定义和RFC2544描述的方法。在RFC1242中,丢包率是“在稳定负载下帧被网络设备转发,但由于资源缺乏而导致丢失的帧的百分比”,对于以太网口测试帧从64到1518变化,对于token ring口可达8188。
按RFC2544,测量丢包率是“以一定速率向DUT发送一批帧,然后计算被DUT传送的帧。”
只有发送口产生的帧才是有效的,交换机发出的帧不算。Keep-alive和路由更新帧不计入接收帧。
丢包率的测试几乎和吞吐量测试一样。首先报文以最大可能的速率按用户设定的时间发送出一批,然后在接收端口看看收到多少,就得出丢掉了多少报文,丢失率就可以计算出来。
注意:对ATM和以太网或者ATM和帧中继的多对一/一对多的测试情况:如果DUT将多个数据流复用到一个虚电路,SmartApps计算收到的报文是按照虚电路算(而不是数据流)
测试次数由用户决定,取平均值。
五、 Back-to-Back测试方法
Back-to-Back测试被测设备的缓冲能力。
Back-to-Back测试满足RFC1242的定义和RFC2544描述的方法。在RFC1242中,“对于一个介质来说,从空闲状态开始,短时间内固定长度的帧出现,帧和帧之间的间隔是最小合法间隔(最大速率)。”以太网口测试帧长度从64到1518之间变化,token ring到8188。
按RFC2544,测试Back-to-Back帧的方法是“以最小帧间隔向DUT发送一批帧,然后计算DUT转发出去的数量。” 只有发送口产生的帧才是有效的,交换机发出的帧不算。Keep-alive和路由更新帧不计入接收帧。
Back-to-Back的测试几乎和吞吐量测试一样。首先一批数据按用户定义的时间发送出去,如果接收端口收到所有的包,则测试是成功的并且停止测试。如果丢失一个包,测试
报文数量减半重试,如果这是是成功的,则测试报选择成功值和不成功值的中间值重试。这个过程重复进行直至得到真实的值。
测试次数由用户决定,取平均值。
因篇幅问题不能全部显示,请点此查看更多更全内容