业务需求将需要以至少8ms的延迟精度演示性能。该链路将承载语音和数据流量,因此服务SLA应保证1000Mb带宽。
在满足这些要求的情况下,已知的用于衡量性能的准确方法是什么?
我知道许多指标可能会形成测试策略的可用工具,但是Google搜集了大量的信息可能会让人不知所措,而且我不清楚是否应使用iPerth之类的软件,这种情况的基准是什么?
#1 楼
如果您要测试1xGE无掉落率并在8ms内测量电路延迟,我将使用nuttcp测试带宽,并使用iperf2 / mtr测试延迟。我将执行以下操作... <如果可能的话,找到两台Linux台式机(笔记本电脑有时是可以接受的,但是您可能会遇到1GE速度的芯片组或总线性能问题)。如果您不想在这些机器上永久安装Linux,则可以启动Performance Sonar工具包CD。
为测试选择数据包大小。由于您需要电路上的语音支持,因此应该使用较小的帧(例如128字节以太网帧)测试流。如果我正在运行测试,则将选择128、256、768和1514字节的以太网帧。
在将其中一台PC运回100英里之前,测试背对背连接的Linux PC的nuttcp UDP带宽性能。您要确保可以在各种数据包大小下测量1000 Mbps。计算预期的吞吐率时,请务必考虑帧间间隔...例如,在未标记的千兆电路上,以128字节的平均以太网帧大小可以预期的最佳吞吐率为864.9 Mbps。
使用iperf2或mtr测试电路延迟...
选择一个测试窗口。我认为最好连续测试至少一天的电路。如果需要了解运营商网络中潜在的超额订购情况,则最好连续两天到一周。
将其中一台PC运送到远程站点,已针对链接上需要的IP地址进行了预配置。
其他想法
其他答案建议单独使用iperf2;但是,它没有CLI选项可调整UDP数据包大小。它还倾向于在MS Windows下高速显示片状性能。
此有关测试载波以太网电路的城域以太网论坛论文将帮助您大致了解测试电路时需要进行的一些权衡取舍。 />
评论
iperf实际上已经在一个新网站-code.google.com/p/iperf上转移到了v3,还是您有意链接到v2?
–pauska
13年5月29日在23:08
我已经使用v3进行了测试,但是根据我的经验,v2似乎更稳定
–迈克·彭宁顿
13年5月29日在23:30
发货前先进行背对背测试的出色点。
–generalnetworkerror
2013年6月4日4:38在
#2 楼
iperf可以做到这一点。只需确保先对设备进行背对背测试,就可以了解设备的功能。当然,还有更多专业工具。
这是一个很好的RFC阅读正确的方法:http://www.ietf.org/rfc/rfc2544.txt
#3 楼
如果两端都有PC,则可以从Ixia或其他工具运行xjperf,Qcheck。根据使用的是UDP还是TCP以及会话数,您可能会得到不同的结果。对于100英里以上的距离,您正在以光纤中的光速查看最小RTT为1.6 ms /铜。因此您的RTT应该非常低,也许只有几毫秒。假设您的RTT为6毫秒。在Windows上使用默认的窗口大小选项,您可能只会获得约85 Mbps的吞吐量。您需要至少768 KB的窗口大小才能发送大量的流量。
您可以使用吞吐量计算器TCP进行自己的计算。
Ixia拥有更多功能高端工具,但它们要花钱,而上述工具却没有。
评论
+1代表xjperf / iperf。在这些情况下非常方便。
–pauska
13年5月29日在23:06
#4 楼
这是一篇文章,解释为什么仅iperf2不能为您解决问题:http://bradhedlund.com/2008/12/19/how-to-calculate-tcp-throughput-for-long-distance-links/在阅读那篇文章之前,我从未真正理解过这个概念。希望对您有所帮助。
#5 楼
由于您要测量第2层电路,因此我想无耻推销一些我一直在写的免费软件。它仍然处于测试阶段,但根据问题信息完全可以满足您的要求。与nuttcp,iPerf,jPerf等人不同,Etherate直接在专为以太网测试设计的第2层上运行。像其他笔记本电脑一样,每台笔记本电脑都是必需的,而我的Intel i3笔记本电脑可以轻松地最大化演出链接。
由于处于beta阶段,尚未提供更高级的功能,例如MPLS测试,但实现了吞吐量,延迟和MTU测试(全部直接在第2层以太网上)。
https://github.com/jwbensley/etherate
#6 楼
为了获得链接的完整“健康状况”,您需要考虑几个不同的指标。延迟
抖动
吞吐量
损耗
准确测量这些指标的最佳方法是使用专用于测试的设备。 Exfo,JDSU和Fluke是几家制造此类设备的大型公司。
一台PC可以测试这些指标,但是您必须确保计算机上没有歪斜的数字,并且您正在使用的应用程序是准确的。
iperf可以衡量带宽吞吐量,但不会衡量其他事情。 Ping将测量时间延迟,但不会测量抖动。而且,ICMP回声实际上仅精确到1ms。如果您想获得实际的延迟测量值,则需要确定1ms的粒度是否足以满足您/您的应用程序的需求。
评论
这个问题还不清楚。 “通过这种类型的连接测量性能”是什么意思?正如您提到的,您可以测量许多性能指标(例如,网络延迟,抖动,带宽,误码率)。您需要澄清哪些指标可以与要求您衡量绩效的人员进行测试。我认为这是一个有效的问题。并不是好像有1000种方法可以确定链接是否按预期运行。有一些设置的指标,这些指标可以使您保持链接的健康状态。
迈克-我认为这很清楚,尽管我要接受已达成共识的指标。我想就他们成功采用了哪些策略并且已经掌握了一些有用信息的经验提供一些答案,谢谢大家。如果您想提出更简洁的建议,是否乐意进行编辑?
@MattEarp,我是说您是在问一个我们无法回答的问题(最准确的衡量效果的方法)...在我的职业生涯中进行了重要的网络测试,除非您有能力,否则我们对帮助您的了解并不多说...“该电路将承载金融交易流量。我如何测试非丢包率性能并以1ms的精度测量等待时间”,那么我们就有很多工作要做。根据原始请求者的需求和电路SLA参数,我们可以帮助建立测试策略...但是现在没有足够的信息。请定义用例,指标和准确性要求
@MikePennington-在编辑问题时,我了解了需要根据最小延迟测量的内容,希望您可以更好地回答。