Wireshark中的Jitter计算

4
我有一个关于Wireshark中Jitter计算方法的问题。
Wireshark根据RFC3550(RTP)计算抖动:
如果Si是数据包i的RTP时间戳,而Ri是数据包i的到达时间(以RTP时间戳单位计),则对于两个数据包i和j,可以将D表示为
D(i,j) = (Rj - Ri) - (Sj - Si) = (Rj - Sj) - (Ri - Si)
应连续计算源SSRC_n接收每个数据包i时的到达间隔抖动,使用该公式计算该数据包与前一个数据包i-1之间的差异D,按到达顺序(不一定按顺序)(而不是按序列),根据以下公式计算:
J(i) = J(i-1) + (|D(i-1,i)| - J(i-1))/16
现在,在考虑到到达间隔抖动的绝对值时,我的疑问是为什么要考虑绝对值,因为抖动也可能为负数,我认为如果我们也考虑负抖动,我们将得到比我们目前所取的值更准确的值。
此外,当我们使用上述方法绘制抖动分布图时,它不会围绕零居中,因为我们已经使所有值都为正值,这个图看起来不太真实。
能否有人澄清我的问题?
1个回答

0

维基百科有一个很好的抖动定义

抖动是指假定周期信号的真实周期性偏差...

抖动值为零意味着信号与预期值没有变化。随着变化的增加(数据包被聚集和分散),抖动的幅度也会增加。

聚集和分散实际上是同一效应;在一个地方聚集会导致在另一个地方分散,因此这种“聚集和分散”没有方向,只有大小。

希望这可以帮助您 - 这是我能想到的最好的解释。


我同意这个观点,但我认为它并没有解决我的问题,即为什么在抖动可能为负数的情况下要取绝对值。 - NitinG
因为抖动会平均为零。 - rupello
但这样做就无法显示真正的抖动,因为在使用绝对值后就不会再出现负抖动,我们也无法得到精确的抖动值,而只能得到每个数据包瞬时抖动值的累积值。 - NitinG
因为RTP是用于“实时”传输的,即包提前到达的概念意味着它将包含尚未生成的数据。因此,负抖动不适用于这种情况。一个数据包要么准时,要么晚了,不能早到。但是,由于流中的延迟,与其他数据包的交付相关,一个数据包可能会比预期提前到达。 - alpartis

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接