我已经读到,iperf基本上试图尽可能快地向连接发送更多的信息,报告所实现的吞吐量。该工具在确定两台机器之间的链接可以提供的数据量方面特别有用。
是否可以通过发送常规数据来收集相同的结果,就像在不测试数据时一样?
我要做的是:在前台发送数据,在后台收集统计数据(吞吐量和抖动)。
有人能告诉我iperf是如何计算这两个值的吗?
发布于 2012-06-11 08:22:49
是否可以通过发送常规数据来收集相同的结果,就像在不测试数据时一样?
我不这么认为,至少不用iperf。如果您可以使用pcap/ wireshark捕获真实数据,那么您应该能够使用wireshark来确定抖动。
我怀疑iperf使用在RFC 3550中为RTP协议定义的公式计算抖动。您可能需要深入了解源代码才能确定。
If Si is the RTP timestamp from packet i, and Ri is the time of
arrival in RTP timestamp units for packet i, then for two packets
i and j, D may be expressed as
D(i,j) = (Rj - Ri) - (Sj - Si) = (Rj - Sj) - (Ri - Si)
The interarrival jitter SHOULD be calculated continuously as each
data packet i is received from source SSRC_n, using this
difference D for that packet and the previous packet i-1 in order
of arrival (not necessarily in sequence), according to the formula
J(i) = J(i-1) + (|D(i-1,i)| - J(i-1))/16
Whenever a reception report is issued, the current value of J is
sampled.
The jitter calculation MUST conform to the formula specified here
in order to allow profile-independent monitors to make valid
interpretations of reports coming from different implementations.
https://serverfault.com/questions/397543
复制