测量点对点链路性能的准确策略?


12

我需要提供一种精确的方法来演示平面层2 1Gb点对点以太网电路上的线路性能,相距约100英里,看似经过了远处的许多跳。

业务需求将需要以至少8ms的延迟精度演示性能。链路将承载语音和数据流量,因此服务SLA应保证1000Mb带宽。

在满足这些要求的情况下,已知的精确的性能测量方法有哪些?
我知道有许多可用的度量标准,它们可能构成一种测试策略,但是在Google中搜集了大量信息后,它可能会变得势不可挡,而且我不清楚是否应使用iPerth之类的软件,这种情况的基准是什么?


这个问题还不清楚。“通过这种类型的连接测量性能”是什么意思?如您所提到的,您可以测量许多性能指标……(例如,网络延迟,抖动,带宽,误码率)。您需要阐明哪些指标可以与要求您衡量绩效的人员进行测试。
Mike Pennington

1
我认为这是一个有效的问题。并不是好像有1000种方法可以确定链接是否按预期运行。设置了一些指标,这些指标将为您提供链接的运行状况。
bigmstone 2013年

迈克-我认为这很清楚,尽管我要接受已达成共识的指标。我想就他们成功采用了哪些策略并且已经掌握了一些有用信息的经验提供一些答案,谢谢大家。如果您想提出更简洁的建议,是否愿意编辑?
MattE

@MattEarp,我是说您是在问一个我们无法回答的问题(衡量性能的最准确方法)...在我的职业生涯中进行了重要的网络测试,除非您有足够的知识,否则我们还不足以提供真正的帮助说...“此电路将承载金融交易流量。我如何测试非丢包率性能并以1ms的准确度测量延迟”,然后我们需要做一些工作。根据原始请求者的需求和电路SLA参数,我们可以帮助建立测试策略...但是现在没有足够的信息。请定义用例,指标和准确性要求
Mike Pennington

@MikePennington-在编辑问题时,我了解了需要根据最小延迟测量的内容,希望您可以更好地回答。
MattE

Answers:


8

如果您要测试1xGE无掉线率并在8ms内测量电路延迟,我将使用nuttcp测试带宽,并使用iperf2 / mtr测试延迟。

我会做以下...

  1. 如果可能的话,找到两台Linux台式机(笔记本电脑有时是可以接受的,但是您可能会遇到1GE速度的芯片组或总线性能问题)。如果您不想在这些机器上永久安装Linux,则可以启动到Performance Sonar工具包CD
  2. 选择测试的数据包大小。由于您需要电路上的语音支持,因此应该使用较小的帧(例如128字节以太网帧)测试流。如果运行测试,我将选择128、256、768和1514字节的以太网帧。
  3. 测试背对背连接的Linux PC的nuttcp UDP带宽性能,然后将其中一台PC运出100英里。您要确保可以在各种数据包大小下测量1000 Mbps。在计算预期的吞吐率时,请务必考虑帧间间隔...例如,在无标签的千兆电路上,以128字节的平均以太网帧大小可以预期的最佳吞吐率为864.9 Mbps。
  4. 使用iperf2mtr测试电路延迟...
  5. 选择一个测试窗口。我认为最好连续测试至少一天,如果需要了解运营商网络中潜在的超额订购情况,则最好连续两天到一周。
  6. 将其中一台PC运送到远程站点,该站点已针对链接上所需的IP地址进行了预配置。

杂项思想

其他答案也建议单独使用iperf2。但是,它没有CLI选项可调整UDP数据包大小。它还倾向于在MS Windows下高速显示片状性能。

这份有关测试运营商以太网电路的城域以太网论坛论文将帮助您大致了解测试电路时需要进行的一些权衡。


iperf的实际上已经转移到v3的一个新的网站- code.google.com/p/iperf -还是你intenionally链接到V2一个?
pauska

我已经使用v3进行了测试,但是根据我的经验,v2似乎更稳定
Mike Pennington

发货前先进行背对背测试的绝佳点。
generalnetworkerror 2013年

6

iperf可以做到这一点。只要确保您先背对背测试设备,就可以了解设备的功能。

当然,还有更多专业工具。

这是阅读适当方法的良好RFC:http ://www.ietf.org/rfc/rfc2544.txt


6

如果两端都有PC,则可以从Ixia或其他工具运行xjperfQcheck。根据使用UDP还是TCP以及会话数,您可能会得到不同的结果。

对于超过100英里的距离,您正在以光纤/铜缆的光速查看至少1.6 ms的RTT。因此您的RTT应该非常低,可能只有几毫秒。假设您的RTT为6毫秒。在Windows上使用默认的窗口大小选项,您可能只会获得大约85 Mbps的吞吐量。您需要至少768 KB的窗口大小才能发送大量的流量。

您可以使用吞吐量计算器TCP进行自己的计算。

Ixia有更多高端工具,但它们要花钱,而上述工具却没有。


+1代表xjperf / iperf。在这些情况下非常方便。
pauska,

2

这是一篇文章,解释为什么仅iperf2不能为您解决问题:http ://bradhedlund.com/2008/12/19/how-to-calculate-tcp-throughput-for-long-distance-links/

在阅读该文章之前,我从未真正理解过这个概念。希望能帮助到你。


2

由于您要测量第2层电路,因此我想无耻推销一些我一直在写的免费软件。它仍处于测试阶段,但根​​据问题中的信息完全可以满足您的要求。

与nuttcp,iPerf,jPerf等不同,Etherate直接在专为以太网测试设计的第2层上运行。像其他笔记本电脑一样,每台笔记本电脑都是必需的,而我的Intel i3笔记本电脑可以轻松地最大化演出链接。

由于它处于beta阶段,还没有像MPLS测试那样准备更高级的功能,但是实现了吞吐量,延迟和MTU测试(所有这些都直接在第2层以太网上进行)。

https://github.com/jwbensley/etherate


1

为了获得链接的完整“健康状况”,您需要考虑几个不同的指标。

  • 潜伏
  • 抖动
  • 通量
  • 失利

准确测量这些指标的最佳方法是使用专用于测试的设备。Exfo,JDSU和Fluke是制造此类设备的几家大型公司。

PC可以测试这些指标,但是您必须确保计算机上没有歪斜的数字,并且所使用的应用程序是正确的。

iperf将测量带宽吞吐量,但不会测量其他东西。Ping将测量时间延迟,但不会测量抖动。而且,ICMP回声实际上只能精确到1ms。如果您要获取实际的延迟测量,则需要确定1ms的粒度是否足以满足您/您的应用程序的要求。


1

Iperf和mtr做具体测试。使用fping探针抽烟可以很简单地了解链接性能。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.