The Network Diagnostic Tool (NDT) client/server program consists of several components. It also relies on 2 external system libraries and the Web100 Kernel Instrumentation Kit (KIS). This document describes the steps you need to take to install and use this tool. 1. Download and install the Web100 Kernel patch file from http://www.web100.org. There are specific kernel patches for each web100 supported Linux kernel. At this time (3/14/03) we recommend the alpha2.1pre2 release for the Linux 2.4.19 kernel. Follow the Web100 installation instructions to build and install this new kernel. 2. Download and install the Web100 Userland library file from http://www.web100.org. At this time (3/14/03) we recommend the alpha1.2pre2 release. Follow the Web100 instructions to build and install this library. 3. Add "/usr/local/lib" to the /etc/ld.so.conf file and rebuild the dynamic linker run-time bindings. This NDT tool uses the Web100 userland library installed in the previous step. The default installation puts this library in the /usr/local/lib directory. You must make this location known to the dynamic linker. The following commands will perform this function # echo /usr/local/lib >> /etc/ld.so.conf #/sbin/ldconfig An alternate solution is to create/modify the users LD_LIBRARY_PATH environment variable to include the /usr/local/lib directory 4. Obtain and install the libpcap.so libraries. The NDT server program performs packet level timings to determine what the path's bottleneck link is. This function uses the packet capture facilities found in the libpcap library. These library routines may be obtained from the http://www.tcpdump.org/ web site or .rpm files may be downloaded from your favorite Linux mirror site. 5. Unpack the NDT tarball (web100-tools.tar.gz or web100-tools.tar). This will create the web100-tools directory and all the NDT files listed in the FILES file. You may use the prebuilt programs or re-compile them if you prefer. If you intend to compile the Java applet, you will need to download and install the Java Software Development kit from Sun Microsystems. At the current time (9/16/03) we recommend using javac version 1.2.2 or 1.3.1_09. a. Edit the "tcpbw100.html" file to: i. Specify the location of your NDT server (default is ANL) ii. Specify the type of Internet connection (default is 100 Mbps) iii. Find the PARAM NAME="H" VALUE="anl.gov" line and change the "anl.gov" string to be your administrators email domain iv. Find the PARAM NAME="U" VALUE="carlson" line and change the "carlson" string to be your administrators email userid v. Find the PARAM NAME="subject" VALUE=" line and change the value string to the text you want to appear on the email subject line. vi. Find the href=mailto:carlson@anl.gov line and change the carlson@anl.gov string to be your administrators email address 6. Edit the "start.ndt" script and change the base directory line to reflect where you have placed the NDT programs. This start script provides an easy way to bring the NDT server processes on-line. To manually start the necessary server processes, follow steps 7 & 8. An alternative is to skip to step 9, and use the "start.ndt" script to automate the startup process. 7. Optional: start the fakewww program to handle incoming test requests. This utility is provided to allow you to run a server without the need for a full blown web server. By default this fakewww program listens for incoming connections on port 7123. A command line option may be used to change the port number. The fakewww utility does not need root authority if the port number is greater than 1023. You may also use a full function web server and skip this step. 8. Start the web100 server program. This program uses the libpcap library to perform packet level connection statistics. This requires that the web100srv program run as root. (Note: this is a change from NDT versions released before 3/14/03.) The web100srv program has several options, run "web100srv -h" for a complete list. Also note: that this process uses port 3001, 3002, and 3003 to communicate with the Java applet on the client's desktop. You may need to configure your local network infrastructure to allow traffic on these 3 ports. 9. You can run the "start.ndt" script to get everything going, or you can start the fakewww and web100srv processes manually (steps 7 & 8). If you manually start these proceses, be advised that they may write messages to the console. You can redirect this output to a file or /dev/null as shown in the "start.ndt" script. Note: by default the log file is written back to this base directory and the web100_variables file is read from this directory. Both of these parameters can be overwritten The NDT is now setup and ready to operate. To test, point your web browser to your server and press the 'start' button when the applet finishes loading. Questions and comments should be directed to Rich Carlson (ANL) at . You may also join the NDT discussion list by sending a "subscribe NDT" email to .