What does mdev mean in ping(8)?

What does mdev mean in ping(8)?

What does mdev mean in ping output (last row below)?

me@callisto ~ % ping -c 1 example.org   
PING example.org (192.0.43.10) 56(84) bytes of data.
64 bytes from 43-10.any.icann.org (192.0.43.10): icmp_seq=1 ttl=245 time=119 ms

--- example.org ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 119.242/119.242/119.242/0.000 ms

答案1

It's the standard deviation, essentially an average of how far each ping RTT is from the mean RTT. The higher mdev is, the more variable the RTT is (over time).

With a high RTT variability, you will have speed issues with bulk transfers (they will take longer than is strictly speaking necessary, as the variability will eventually cause the sender to wait for ACKs) and you will have middling to poor VoIP quality.

答案2

From the source code [1]:

            tsum += triptime;
            tsum2 += (long long)triptime * (long long)triptime

and,

            tsum /= nreceived + nrepeats;
            tsum2 /= nreceived + nrepeats;
            tmdev = llsqrt(tsum2 - tsum * tsum);

we can conclude that:

mdev = SQRT(SUM(RTT*RTT) / N – (SUM(RTT)/N)^2)

which is another formula for calculating the standard deviation (see [2]). This matches Vatine's answer above.

  1. http://www.skbuff.net/iputils
  2. http://www.brainkart.com/article/Calculation-of-Standard-Deviation_39437/ under Calculation of Standard Deviation for ungrouped data -> Direct Method

答案3

It's the standard deviation - not sure why the label mdev has been used for it.

答案4

mdev is like jitter in telecom terminology, for example in VoIP it doesn't by greater 30 ms between endpoints https://www.ciscopress.com/articles/article.asp?p=357102

相关内容