||Producer Consumer View
Thread Monitor View
Traceroute program lets us to see
the route of IP datagram which follows from one Internet host
to other. The first implementation of Traceroute
belongs to Van Jacobson. He wrote it from a suggestion by
Steve Deering. Some details about traceroute and other network
tools are on the site of
Berkley's Network Research Group staff that Van Jackobson worked for.
Other version of traceroute MTR
was implemented by Matt Kimball. MTR combines the functionality
of the traceroute and ping programs in a single
network diagnostic tool and contains also the
Of course, all these tools were implemented for Unix and are easy
accessible for getting sources and instalation. About Microsoft case of
Traceroute Applications see, for example, on the site
Microsoft Internet Control Message Protocol.
There are many traceroute services on the Internet that lets us
to trace datagramm passing through the Web from different places.
See, for example,
Index of Traceroute Web Servers ,
Traceroute Gateway ,
Multiple Traceroute ,
Geektools Traceroute or
If you select table output be patient.
output page will be prepared in 10-15 sec.
also select flush stream mode to get results
fly. The default maximal hops
value is equal to 30.
Maybe you need to touch it ...At last,
Route to you sends pings to your host,
hopefully it's not unreachable.
The idea of Traceroute is to use
TTL field (time-to-live) in the IP header. See
Tracing the Path of a TCP/IP Packet about ICMP protocol and TTL field.
Each router that gets the datagram decrements TTL by one,
so the TTL becomes a hop counter. Some descriptions about
traceroute algorithm may be found on the site
How traceroute works.
sends by default 3 probe datagrams and this Tracerote
Servlet save this tradition. If one of the probe datagrams
gets lost it will be marked by asterisk * in the output result.
It's very hard to find the site so that it will take you more 20 hops
to get there. The maximal value for TTL field is 255. The default maximal hop
value in the Traceroute Servlet is taken 30 as in the
most traceroute services. You can find one ancient example of
38 (!) hops.
There are some buggy routers that forwards the datagram packet with
a zero TTL. It sometimes leads to Routing Loop. The
Traceroute Servlet will stop the tracing process if the current IP address
is repeating 3 times.
This servlet uses
JNI (Java Native Interface) because the communication engine is written by C. The further
information about JNI see on the
site or in the
Essential JNI book
by Rob Gordon. Some others Traceroute tools using Java may be
found on the Traceroute Animation and
My special acknowledgments to
and Sergey Nikhinson
and supporting to implement this servlet and others of
the site Imagined Cities.