Max ping response time?

I'm wondering what a maximum (practical) ping response time might be. As far as I know, there isn't a max defined anywhere (TTL, but that's hops, not time). As I think about it, I'm not sure I've ever seen a ping response time of more than a second or so. But as far as I know, there is nothing to stop a remote host from waiting (or being really busy) and not sending the response back for a few seconds.

As a simple data point, I just pinged a number of servers around the world and the worst time I could find was 350ms.


Solution 1:

I'm wondering what a maximum (practical) ping response time might be. As far as I know, there isn't a max defined anywhere (TTL, but that's hops, not time).

Theoretically, the time between echo request and reply can be long. From a quick glance at RFC 1122 I don't see any formal constraints here.

Practically though, there's a threshold value after which lack of reply will be treated as no reply at all (timeout). The specific value depends on implementation:

  • In Windows it's 4 seconds.

  • With iputils implementation of ping it seems to be 10 seconds - not sure about it, as it's not stated in the man page, but the code says something like this:

     #define MAXWAIT         10              /* max seconds to wait for response */
    

Ping responses longer than that are equivalent to no responses at all. So, I think it's safe to assume this to be the practical limit.

One thing to note - I'm talking here about ICMP only. If you meant some other "ping" (for example delay between some application-specific request/response), it will probably differ completely.

Solution 2:

It's worth noting that an implementation of RFC1149 achieved this ping time:

64 bytes from 10.0.3.1: icmp_seq=0 ttl=255 time=6165731.1 ms

...which is about 102 minutes. I've yet to see a longer response time.