 The author of the ping program, Mike Muuss, states on his website that traceroute was written using kernel ICMP support that he had earlier coded to enable raw ICMP sockets when he first wrote the ping program.Traceroute limitations are well known and should be taken into account when using the tool.For example, traceroute does not discover paths at the router level, but at the interface level.