For the remainder of this discussion, I assume use of BSD UNIX's ping, a freely available, full-featured ping available for many UNIX systems. Most PC-based pings do not have the advanced features I describe. As always, read the manual for whatever version you use. What Ping can tell you Ping places a unique sequence number on each packet it transmits, and reports which sequence numbers it receives back. Thus, you can determine if packets have been dropped, duplicated, or reordered.
Ping checksums each packet it exchanges.
You can detect some forms of damaged packets. Ping reports other ICMP messages that might otherwise get buried in the system software. It reports, for example, if a router is declaring the target host unreachable. What Ping can not tell you Some routers may silently discard undeliverable packets. Others may believe a packet has been transmitted successfully when it has not been.