Ping and Tracert both use an ICMP Echo packet to test network connectivity.
Tracert uses the Time-To-Live (ttl) parameter of the packet to progressively
map the route an outbound packet takes on it's route to a destination. Each
router system that forwards a packet decrements the ttl before forwarding it.
If the ttl goes to zero, the router should discard the packet and return a "ttl
exceeded" message. The original intent of the ttl parameter is to keep packets
from endlessly circling the net if there is an error in routing.
The default setting of ttl is normally something like 30 (if the destination is
more than 30 hops away, there will probably be a timeout, anyway). Tracert
sets the ttl to 1 then sends the packet. The first router will expire it and
send back an error message. Tracert does this two more times, then repeats the
procedure with the ttl set to 2. This continues until it reaches the
destination or exceeds the max limit (usually 30).
The three times given are for the complete round trip of the packet (not for
the hop to hop time). The reason that they vary so much is due to two major
causes. First, because of the nature of the Interrnet and the bursty nature of
traffic, times will vary. The other major reason is that some routers place
the error message as a very low priority and will handle other traffic first
before getting around to sending back the "expired" message. It is not
uncommon to see 89, 90, 95, 425, 110, 130, ... Or even 100, 120, 90, 85, ...
Other reasons can cause odd timing results, such as asymmetric routing, buggy
code on the routers, and firewall systems. In general, however, times should
grow the farther away the trace gets.
Hope this clears more smoke than it makes.
Smaller Values are better.
0-100ms ......... Very good
100-500ms ..... Normal surfing is possible
500-1000ms ... Not good
ab 1000ms ..... Bad