Get yourself a copy of PingPlotter - older versions are free.
It actually runs a Trace Route (tracert) function whereby it pings the target device with the TTL parameter set to 1. That means it will be responded to by the first device it meets. It then sends a ping with TTL=2 which reaches the second device and so on until it reaches the ultimate target.
You will see a graph of Ping times for each node on the route and they will settle with an average time, however every now and again one may suddenly jump to hundreds of milliseconds whilst everything else is responding normally.
It is quite possible to have the average time for an intermediate node higher than that of a target - it shows that messages going through are given higher priority than responding to the ping command - which is correct.
Have a play with it and you will end up with a better understanding of "ping" and why it is an indicative value and not set in stone.
M H C
taurus excreta cerebrum vincit