pipe value in the output of
ping indicates the maximum number of unanswered ICMP echo request packets outstanding in the network at some point during the test. It is not normally reported when this value is one (every request received a response before the next request was sent), which is the case under normal operation.
By default, the
ping command waits a second between sending echo requests, as per the description on its man page under the
The default is to wait for one second between each packet normally, or not to wait in flood mode. Only super-user may set interval to values less 0.2 seconds.
On most networks, the round trip time (RTT) is typically on the order of tens or hundreds of milliseconds, not seconds, so in this default mode, each echo request will normally receive a response before the following request is sent. The maximum number of outstanding packets in the network is no greater than one at any point in the test, so
pipe is equal to 1 and not reported.
Should the response time to a packet rise above this default interval for some reason, causing multiple requests to be outstanding in the network, ping will report a
pipe greater than one. Similarly, you can invoke this response by artificially reducing the interval by passing a smaller value than the RTT for the
-i parameter of
If the network system is local, then either:
- your tests are reducing the interval for issuing pings
- you have enabled flood mode, which does not wait for a response before sending another ping
- responses are taking a while to come back to your test system from the remote host
Whether this is indicative of a larger problem depends on the scenario, the network hardware, the
ping configuration, etc.