You can install a dynamically linked or a statically linked version of nettimer. The dynamically linked version saves some disk space and can be installed/uninstalled more easily because it uses RPM, but it only works on Redhat >= 7.0 systems. The statically linked version works on any Linux system with a 2.2.x kernel, but it consumes more disk space, and may not install/uninstall cleanly. The other option is to compile it yourself, but this isn't recommended unless you know what you're doing.
The procedure is to download the required RPM packages and install them. For i386 machines, the required standard packages:
blas-3.0: This library provides the basic linear algebra routines which are necessary for some of nettimer's statistical code.
lapack-3.0: This library provides some matrix manipulation routines which are necessary for some of nettimer's statistical code.
libkl: This library provides statistical and other utility functionality.
libdpcap: This library provides the distributed packet capture functionality that nettimer uses to capture packets at multiple hosts in concert.
nettimer: This package contains the main nettimer application.
libpcap-0.6.2: This library provides the portable packet capture functionality which is necessary for nettimer to do live packet capture and read tcpdump traces. You only need this library if you are compiling nettimer yourself.
tcpdump: This application allows you to take traces which can later be analyzed by nettimer off-line.
dmalloc: This library allows you to debug the memory allocations of nettimer. You only need this package if you want to compile and debug nettimer yourself.
Once you have all the packages, become root and use rpm to install them:
rpm -U *.rpm |
These packages are compiled for Intel 386 architecture machines. You can recompile them for Redhat hosts of other architectures by downloading the appropriate SRPM package and then building the binary package (see the RPM documentation). I have not tested this, so there may be byte-ordering or other bugs.
You may be able to use later versions of these packages without any problems. However, later versions of the libpcap library and tcpdump application that Redhat provides use an incompatible trace file format. If you gather traces using the new format, you cannot use older versions of tcpdump and copies of nettimer that are linked with older versions of libpcap to read those traces.
Installing statically linked is recommended for RedHat 6.x, Debian, SuSE, Slackware, other Linux kernel 2.2.x systems. You must have root access on the machine you are installing on.
To install, get the statically linked binary from the nettimer home page. Un-tar and un-zip. Copy the nettimer binary "nettimer/src/nettimer" wherever you like, and if you want non-root users to be able to use it, make root own it and set the setuid bit:
cp nettimer/src/nettimer /usr/local/sbin chown root /usr/local/sbin/nettimer chmod +s /usr/local/sbin/nettimer |
For installing on non-Linux hosts, you are pretty much on your own. I give some tips in this section, but you have to know what you are doing and there are no guarantees. The general procedure is for each of the packages mentioned above, download the source code, un-tar and un-zip, run configure, compile, and install.
First, you must have installed the external packages (blas, lapack, libpcap) on your system and downloaded the nettimer specific source archives. Once you have the archives, un-tar and un-zip them:
tar -xzvf *.tar.gz |
cd libkl-x1.y1.z1 ./configure make make install cd ../libdpcap-x2.y2.z3 ./configure --with-libkl="../libkl-x1.y1.z1" make make install cd ../nettimer-x.y.z ./configure --with-libkl="../libkl-x1.y1.z1" --with-libdpcap="../libdpcap-x2.y2.z2" make make install |
For Windows NT and 2000, you have to do all of the above and find and fix the code that depends on non-POSIX UNIX-specific functionality.
For everything else, and also for the above systems where porting is too much trouble, you can run nettimer on a Redhat machine and use the results on another machine.