Skip to Content
[CAIDA - Center for Applied Internet Data Analysis logo]
Center for Applied Internet Data Analysis > tools : taxonomy : perftaxonomy.xml
Performance Tools Taxonomy
co-sponsored by:
Cisco Systems
This page gives more detailed information about specific performance tools.

This listing has not been actively maintained since 2004. These pages are made available for historical purposes.

|   Index    Anonymization    Topology    Workload    Performance    Routing    Multicast    Measurement Infrastructures   |

Subcategory: Application or E-business Performance

AppResponse Xpert

Contact:OPNET (
Overview:AppResponse Xpert uniquely combines end-user experience monitoring and in-depth analysis of the behavior and performance of the underlying network. It leverages the network's central role as a conduit for data and transactions to obtain complete visibility of IT services across the enterprise.
Access:$$$ Contact OPNET at

CompuWare EcoScope

Overview: Measure application performance against response time and traffic requirements. Rates user impact and business transaction response time (using SQL verb signature matching).


Contact:Bjorn Frogner ( )
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.


Sample Reports

Subcategory: Bandwidth / Throughput Measurement


Contact:Author: Pierre Beyssac ( pb @ )
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.

bprobe and cprobe

Contact:Author: Bob Carter ( carter @ )
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.


Contact:Author: Allen B. Downey ( )
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.


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.
  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:Iperf source code


    Contact:Author: Luigi Rizzo ( luigi @ )
    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.


    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 - (No longer available)
    Contact:Author: Kevin Lai (laik @
    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: 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 ; No source code available


    Contact:Author: Constantinos Dovrolis (
    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


    Contact:Author: Constantinos Dovrolis (
    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


    Contact:Bruce A. Mah bmah @
    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


    Contact:Stefan Saroiu (
    Stefan Savage (

    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.

  • 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
  • TReno

    Contact:Matt Mathis (, Jamshid Mahdavi (
    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
    Access:Run from Pittsburgh Supercomputing Center (PSC) server.

    ttcp and nttcp

    URL:ttcp ; nntcp page no longer available
    Contact:ttcp: ( ftp @ ) 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.


    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: Access the repository here:

    Forward Path Probes

    GTrace - Geographical Traceroute

    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.


    Contact:BitWizard B.V.(
    Vendor: Roger Wolff (
    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)

    Nikhef traceroute

    Contact:Author: Eric Wassenaar (
    Overview:Traceroute (Version 991603) is available at '' []
    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.

    PathView Clouod

    Contact:Marketing Director: Leigh Merrigan (LMerrigan @, Apparent Networks
    Overview: "PathView tests and troubleshoots remote networks, including segments that pass through service providers WAN and carrier clouds. Enabled by the PathView microAppliance, it's ideal for MSPs and businesses of all sizes that need a low cost, easy to use tool for managing remote network performance."
    Access:Free trial (, inquire for price quotes.


    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 or Atlantic Coast Soft Shop. Older versions offered as freeware downloadable from


    Contact:traceroute @
    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


    Contact:Author: Bryan Christianson ( bryan @ )
    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.


    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.
      Last Modified: Tue Oct-13-2020 22:21:59 UTC
      Page URL: