Performance Tools Taxonomy

| 
|
This page gives more detailed information about specific performance tools.
| co-sponsored by: |  |
| 
|

|
Subcategory: Application or E-business Performance
| URL: |
http://www.opnet.com/products/itguru/home.html |
| Contact: |
info @ opnet.com |
| Overview: |
Intelligent network management for enterprises. Common uses are network design, capacity planning, technology evaluation, application deployment, and for managing service level agreements.
|
| Access: |
$$$ Contact OPNET Technologies at info@opnet.com or 240-497-3000 |
| URL: |
http://www.compuware.com/products/ecosystems/Ecoscope.htm |
| Contact: |
http://www.compuware.com/contact/ |
| Overview: |
Measure application performance against response time and traffic
requirements. Rates user impact and business transaction response time (using
SQL verb signature matching).
|
| Access: |
$$$ |
| URL: |
http://www.netpredict.com |
| Contact: |
Bjorn Frogner ( bjorn.frogner@netpredict.com ) |
| Overview: |
NetPredict suites contains two tools-- NetPredictor and NetCalibrator,
they work in tandem as one suite.
NetCalibrator captures packets and performs a variety of statistical analysis
such as network latency (RTT), packet interarrival time and packet
loss.
NetPredictor provides high level displays for decision making. It
takes the result from NetCalibrator as input and displays a breakdown
of delays. NetPredictor shows the delays by network node (client,
server, router) and by delay component (packet loss, serialization,
travel time).
The NetPredict suite runs only in Windows and is used for troubleshooting as well as continuous
real-time monitoring of end-to-end applications.
|
| Access: |
$15,000
Documentation
Sample Reports
|
Subcategory: Bandwidth / Throughput Measurement
| URL: |
http://fgouget.free.fr/bing/index-en.shtml |
| Contact: |
Author: Pierre Beyssac ( pb @ fasterix.freenix.fr ) |
| Overview: |
Bing is a point-to-point bandwidth measurement tool (hence the 'b'), based on ping.
Bing determines the real (raw, as opposed to available or average) throughput on a link by measuring ICMP echo requests
roundtrip times for different packet sizes for each end of the link.
|
| Access: |
Original page is no longer maintained. A mirror exists for Bing 1.3.5.
|
| URL: |
http://cs-people.bu.edu/carter/tools/Tools.html |
| Contact: |
Author: Bob Carter ( carter @ cs.bu.edu ) |
| Overview: |
bprobe estimates the maximum possible bandwidth
along a given path. cprobe estimates the
current congestion along a path.
Currently these tools rely on two features of the IRIX operating
system for SGI hardware:
- A high precision
timer which provides finer granularity timing of the probe packets.
Specifically, where the usual timer resolution of a system clock is
tens (or more) milliseconds, these tools are based on an SGI memory-mapped
device having a resolution of 40 nanoseconds.
- The ability to change the priority of the process
to facilitate accurate timing. Basically, the priority of the process
making the measurements is elevated to prevent it from being context-switched
out while measuring.
Both tools use packet-pair comparisons to compute bandwidth and congestion.
|
| Access: |
SGI Irix only. Freely downloadable.
|
| URL: |
http://allendowney.com/research/clink/ |
| Contact: |
Author: Allen B. Downey ( downey@wellesley.edu ) |
| Overview: |
A reimplementation of pathchar. The primary differences are:
- clink uses the even-odd technique described in the
SIGCOMM paper to generate interval estimates for bandwidth.
- when clink encounters a routing instability, it collects data for ALL the paths it encounters, until one of the paths generates
enough data to yield an estimate.
|
| Access: |
Source freely downloadable.
|
| URL: |
http://dast.nlanr.net/Projects/Iperf/ |
| Contact: |
(dast@nlanr.net) |
| Overview: |
Iperf is a tool for measuring maximum bandwidth, reminiscent of ttcp and nettest.
It allows the tuning of various parameters and UDP characteristics.
Iperf reports bandwidth, delay jitter, datagram loss.
The Iperf code is also designed to compile easily on any POSIX compliant platform.
Features:
TCP streams:
Measure bandwidth
Report MSS/MTU size and observed read sizes.
Support for TCP window size via socket buffers.
Multi-threaded if pthreads or Win32 threads are available. Client and server can have multiple simultaneous
connections.
UDP streams:
Client can create UDP streams of specified bandwidth.
Measure packet loss, delay jitter
Multicast capable
Multi-threaded if pthreads are available. Client and server can have multiple simultaneous connections.
(This doesn't work in Windows.)
|
| Access: |
downloadable:
Iperf source code/binaries
|
| URL: |
http://www.iet.unipi.it/~luigi/ip_dummynet/ |
| Contact: |
Author: Luigi Rizzo ( luigi @ iet.unipi.it ) |
| Overview: |
dummynet is a flexible tool originally designed for for testing
networking protocols, and since then (mis)used for bandwidth
management.
It simulates/enforces queue and bandwidth limitations, delays, packet losses, and multipath effects. It also implements a variant
of Weighted Fair Queueing called WF2Q+. It can be used on user's workstations, or on FreeBSD machines acting as routers or
bridges.
|
| Access: |
picoBSD bootable floppy binary is freely downloadable.
|
| URL: |
http://www.netperf.org/netperf/NetperfPage.html |
| Contact: |
Feedback form. Author: Rick Jones |
| Overview: |
Netperf is a benchmark that can be used to measure the performance of
many different types of networking. It provides tests for
both unidirecitonal throughput, and end-to-end latency. The
environments currently measureable by netperf include:
- TCP and UDP via BSD Sockets
- DLPI
- Unix Domain Sockets
- Fore ATM API
- HP HiPPI Link Level Access
|
| Access: |
Freely downloadable.
|
| URL: |
http://gunpowder.Stanford.EDU/~laik/funding/nettimer/index.html |
| Contact: |
Author: Kevin Lai (laik @ cs.stanford.edu) |
| Overview: |
nettimer is useful for measuring end-to-end network performance.
It can simulate or passively collect network traffic,
and can also actively probe the network using a packet-pair 'tailgating'
technique.
There is no requirement for any special information from
the network and no limitation to
a particular transport protocol. Currently implemented metrics include
bottleneck bandwidth and link
bandwidth. Collected data is output using 'ns' database format.
|
| Access: |
Freely downloadable. Runs on GNU/Linux Redhat 6.1 and 6.2. lapack-3.0,
blas-3.0 must be installed. nettimer
RPM package must be installed, or else nettimer must be compiled. There are
several code compilation dependencies: dmalloc 4.1.2,
libpcap 0.4 or later, ns 2.1b6,
Python, the Python gdbm extensions, and bzip2.
|
| URL: |
http://www.caida.org/tools/utilities/others/pathchar |
| Contact: |
pathchar@ee.lbl.gov Author: Van Jacobson |
| Overview: |
Estimates performance characteristics of each node along a path from a source to destination. Leverages the ICMP
protocol's
Time Exceeded response to packets whose TTL has expired. Sending a series of UDP packets of various sizes to each
hop,
pathchar uses knowledge about earlier hops and the round trip time distribution to this hop to assess incremental
bandwidth,
latency, loss, and queue characteristics across this link.
|
| Access: |
Shareware binaries downloadable at
ftp://ftp.ee.lbl.gov/pathchar/ ; No source code available |
| URL: |
http://www.pathrate.org
|
| Contact: |
Author: Constantinos Dovrolis (dovrolis@cis.udel.edu) |
| Overview: |
Pathload estimates a range of available bandwidths for
an end-to-end path from a host (sender) to a host (receiver).
The available bandwidth is the maximum IP-layer
throughput that a flow can get in the path from sender to receiver,
without reducing the rate of the rest of the traffic in the path.
Pathload consists of a process running at sender and a process running at receiver.
Sender sends periodic streams of UDP packets to receiver at a certain rate.
Upon the receipt of a complete fleet, receiver checks if there is an increasing
trend in the relative one-way packet delays in each stream.
Pathload does not determine whether a particular rate is
greater than available bandwidth based on just one stream.
Instead, it sends "a fleet of N streams", so that it has N samples
to decide whether particular rate is greater than available bandwidth, or not.
* The latest version (1.1.0) has been
successfully tested in both low bandwidth paths (dial-up, DSL,
cable modems), and high bandwidth paths (OC-3, OC-12, GigEthernet).
|
| Access: |
Freely downloadable
Tutorial
Paper
|
| URL: |
http://www.pathrate.org |
| Contact: |
Author: Constantinos Dovrolis (dovrolis@cis.udel.edu) |
| Overview: |
pathrate estimates the capacity of Internet paths, even
when those paths are significantly loaded. pathrate is based on
the dispersion of packet pairs and packet trains.
First, many packet pairs of variable size are
sent from the source of the path to the sink in order to derive a set of
local modes. One of these local modes is the capacity of the path.
Then, long packet trains are sent and their total dispersion is
measured. The Asymptotic Dispersion Rate (ADR) is calculated from the
dispersion of these long packet trains. Given that the capacity of the path
is larger than the ADR, any local modes less than the ADR are rejected.
From the modes that remain, the strongest and narrowest local mode is
selected as the capacity estimate.
The latest version (2.3.0) has been tested in Gigabit Ethernet paths.
A "quick termination" mode was added for an estimate after just a few seconds. This us useful for frequent light-weight measurements.
|
| Access: |
Freely downloadable
Tutorial
|
| URL: |
http://www.employees.org/~bmah/Software/pchar/ |
| Contact: |
Bruce A. Mah bmah @ acm.org |
| Overview: |
Similar to pathchar, pchar attempts to characterize the bandwidth, latency, and loss of links along an
end-to-end path through the Internet. pchar works on both IPv4 and IPv6 networks. It has been tested on
various versions of FreeBSD, NetBSD, OpenBSD, Linux, Solaris, OSF/1, and IRIX, with primary development
on FreeBSD and Solaris.
Written in C++, recent additions to pchar include: an SNMP query feature, and better IPv6 detection
at configure-time.
|
| Access: |
Freely downloadable
|
| URL: |
http://sprobe.cs.washington.edu |
| Contact: |
Stefan Saroiu (tzoompy@cs.washington.edu)
Stefan Savage (savage@cs.ucsd.edu) |
| Overview: |
SProbe is a tool for measuring bottleneck bandwidth in an uncooperative
environment, i.e., one in which measurement software is deployed only on
the local measurement host. SProbe uses the packet pair technique and
exploits properties of the TCP protocol in a manner inspired by Savage's
Sting tool. SProbe takes no more than three round-trip times (RTT) to
produce a single estimate.
SProbe can measure bottleneck bandwidths in both directions of a network
path. To measure bottleneck bandwidth to a remote host, using its default
settings, SProbe sends six TCP SYN packets to an inactive port on the
remote host and receives six TCP RST packets. Several heuristic tests
check for abnormal packet arrival times to detect cross traffic -- foreign
traffic that can alter the accuracy of an estimate. For a single
measurement, SProbe generates 3160 bytes and receives 240 bytes.
To measure bandwidth from a remote host, SProbe relies on application
level protocols. Currently, SProbe contains protocol modules for measuring
bottleneck bandwidth from Web servers and Gnutella peers. For Web servers,
SProbe generates an HTTP get request with a large TCP maximum segment size
(MSS). SProbe waits for the Web server to send two large, back-to-back
packets and measures their interarrival times producing a bottleneck
bandwidth estimate.
SProbe is distributed with source code and installation instructions. It
was tested on Linux platforms with kernel versions 2.2.x and higher and
FreeBSD 3.4 and 4.2 platforms. SProbe uses the up-to-date libpcap library
(ver. 0.6.2), included in SProbe's distribution. SProbe also uses a
software firewall, ipfw, supported in typical installations of RedHat 7.x
and FreeBSD 4.2. Finally, SProbe makes use of raw sockets, and therefore
needs to execute under root privileges.
Much of the code SProbe builds on is borrowed from Sting.
|
| Access: |
Download SProbe
Examples
Technical Paper (Postscript)
For more information on Sting, please refer to :
Paper: (PS)
(PDF)
Slides: (PS)
(PDF)
Source release: sting-0.7
|
| URL: |
http://www.psc.edu/networking/treno_info.html |
| Contact: |
Matt Mathis (mathis@psc.edu), Jamshid Mahdavi (mahdavi@psc.edu) |
| Overview: |
TReno is a TCP internet throughput measurement tool based on a user-level implementation of a TCP-li
ke protocol.
This allows it to measure throughput independently of the TCP implemention of end hosts and to serve
as a
useful platform for
prototyping TCP changes. TReno is associated with the IPPM formal metrics effort
(see http://www.psc.edu/~mathis/ippm).
|
| Access: |
Run from Pittsburgh Supercomputing Center (PSC) server, or download
source code and information here.
|
| URL: |
ttcp at
ftp://ftp.arl.mil/pub/ttcp/ ; nntcp page no longer available |
| Contact: |
ttcp: ( ftp @ arl.mil ) nttcp by
Elmer Bartel ( bartel @ Informatik.TU-Muenchen.DE )
|
| Overview: |
Originally written to move files around, but became the classic throughput
benchmark or load generator, with the addition of
support for sourcing to/from /dev/null. Has spawned many variants,
recent ones include support for UDP, data pattern generation,
page alignment, and even alignment offset control.
nttcp allows mcast UDP transfers.
|
| Access: |
ttcp freely downloadable. nttcp page is no longer maintained, but nttcp-1.47.orig.tar.gz is reportedly found in the Debian stable release.
|
| URL: |
http://dast.nlanr.net/Projects/Viznet/
|
| Contact: |
dast@nlanr.net |
| Overview: |
Viznet is a standalone Java application to visualize network bandwidth performance over time. It is currently designed to work with the netlog library, also
available from NLANR. However, adding a module for a different log format would not be difficult; we have contemplated also importing Cisco netflow
data. Viznet can read data in real time from a network connection or post process a log file.
|
| Access: |
freely downloadable:
UNIX (tar/gzip)
PKZip
|
Forward Path Probes
| URL: |
http://www.caida.org/tools/visualization/gtrace/ |
| Contact: |
Author: Ram Periakaruppan |
| Overview: |
Combines traceroute with NetGeo server queries to plot hops at latitude and
longitude on a map. Users can add their own maps as part of or independent of the existing world map hierarchy. Heuristics are used to determine router location. Color on the display distinguishes between authoritative and guessed locations: Green = both endpoints are authoritative. Yellow = one endpoint is authoritative; other is a guess. Blue = both endpoints are guesses. Red = one endpoint is a location that is a country center, state center, or obtained from a whois record.
|
| Access: |
Freely downloadable.
|
| URL: |
http://www.bitwizard.nl/mtr/ |
| Contact: |
BitWizard B.V.(info@bitwizard.nl)
Vendor: Roger Wolff (R.E.Wolff@BitWizard.nl) |
| Overview: |
mtr is a network diagnostic tool which combines Ping and
Traceroute into one program. It investigates the network connection between the host mtr runs on and a user-specified destination host.After it determines the address of each network hop between the machines, it sends a sequence ICMP ECHO requests to each one to determine the quality of the link to each machine. As it does this, it prints running statistics about each machine.
|
| Access: |
download mtr 0.41
examples (screenshot)
|
| URL: |
ftp://ftp.nikhef.nl/pub/network/ |
| Contact: |
Author: Eric Wassenaar (e07@nikhef.nl) |
| Overview: |
Traceroute (Version 991603) is available at 'ftp.nikhef.nl' [192.16.199.1]
This is a new version of 'traceroute', a utility to show the network
route to a certain destination. Some of the new features are:
- Optional ttl reporting.
- Optional use of the loose source routing facility,
to show the route between arbitrary destinations.
- Enhanced portability, to run on a variety of platforms.
- Improved timeout handling during icmp packet catching.
- Option to probe all addresses of multi-homed destinations.
- Option to disable fragmentation and perform MTU discovery.
- Recognize various new ICMP packet types.
- Round-trip time reporting in fractional milliseconds.
- Option to display the Autonomous System number for each hop.
- Option to display the network name for each hop.
- Configurable default options via environment variables.
- Optional setting of initial ttl to skip first hops.
- Optional min/avg/max rtt statistics summary for each hop.
- Include standard deviation in rtt statistics summary.
- Cache nameserver lookups to minimize DNS queries.
This version has been further adapted so that it can run on
platforms which do not support IPPROTO_RAW manipulation, or
on which IP_HDRINCL interferes with IPOPT_LSRR.
It runs at least on the following platforms:
HP/HPUX, SGI/IRIX, IBM/AIX, SUN/SunOS, SUN/Solaris,
DEC/Ultrix, DEC/Alpha, Apollo/DomainOS, NeXT/MACH,
BSDI/4.4BSD, SCO/ODT3, SCO/OS5, Linux
BIND 8.*.*, BIND 4.9.*, BIND 4.8.3, BIND 4.8.2
without any kernel modifications.
|
| Access: |
N/A
|
| URL: |
http://www.pingplotter.com |
| Contact: |
Author: Pete Ness |
| Overview: |
Ping Plotter is a fast, small, and visual Ping/Trace Route
utility that uses multiple threads to trace all hops at once
for SUBSTANTIAL performance improvements over standard trace routes.
Delivers visual graphs of performance to
pinpoint problems and see ranges of responses and trends.
Will trace continuously with any interval and can alert
via e-mail if desired. Can display data over a period of time for trending information.
Support includes on-line FAQ and support forums.
|
| Access: |
Latest version and betas are shareware ($15US) from
http://www.pingplotter.com or Atlantic Coast Soft Shop. Older versions offered as freeware downloadable from
http://www.pingplotter.com.
|
| URL: |
ftp://ftp.ee.lbl.gov/traceroute.tar.gz
|
| Contact: |
traceroute @ ee.lbl.gov |
| Overview: |
Directs a packet to each router along a path without actually knowing the path, by setting the IP TTL field from 1
to n until the ultimate destination is reached. Upon receiving a packet with an expired (0) TTL, the hop
generates an ICMP Time Exceeded response back to the source, thus identifying the hop and its round trip
delay. Each UDP packet is sent to a probably-unused port, so when the destination receives the packet it
responds with ICMP Port Unreachable.
|
| Access: |
Freely downloadable at
ftp://ftp.ee.lbl.gov/ |
| URL: |
http://crash.ihug.co.nz/~bryanc/ |
| Contact: |
Author: Bryan Christianson ( bryan @ whatroute.net ) |
| Overview: |
traceroute variant for the Macintosh. Traces Internet paths, pings remote hosts,
uses either Open Transport or DNS Query to resolve names, can monitor activity on an Ethernet LAN, includes finger and whois clients, and a built-in Telnet server. Can plot routes on a world map.
|
| Access: |
Freely downloadable.
|
| URL: |
http://www.dtek.chalmers.se/~d3august/xt/ |
| Contact: |
Author: Bjorn Augustsson |
| Overview: |
Graphical traceroute that shows a path as a series of lines between 'sites' (shown as small balls of different colors) on a rotating globe.
|
| Access: |
Freely downloadable.
|
|
|