ttcp
   HOME

TheInfoList



OR:

The program ttcp (Test TCP) is a utility for
measuring network throughput Throughput of a network can be measured using various tools available on different platforms. This page explains the theory behind what these tools set out to measure and the issues regarding these measurements. Reasons for measuring throughput i ...
, popular on
Unix Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, an ...
systems. It measures the network throughput between two systems using the TCP or optionally UDP protocols. It was written by
Mike Muuss Michael John Muuss (October 16, 1958 – November 20, 2000) was the American author of the freeware network tool ping. Career A graduate of Johns Hopkins University, Muuss was a senior scientist specializing in geometric solid modeling, ray- ...
and Terry Slattery at
BRL The Brazilian real (plural, pl. '; currency symbol, sign: R$; ISO 4217, code: BRL) is the official currency of Brazil. It is subdivided into 100 centavos. The Central Bank of Brazil is the central bank and the issuing authority. The real repl ...
sometime before December 1984, to compare the performance of TCP stacks by the Computer Systems Research Group (CSRG) of the
University of California, Berkeley The University of California, Berkeley (UC Berkeley, Berkeley, Cal, or California) is a public land-grant research university in Berkeley, California. Established in 1868 as the University of California, it is the state's first land-grant u ...
and
Bolt, Beranek and Newman Raytheon BBN (originally Bolt Beranek and Newman Inc.) is an American research and development company, based next to Fresh Pond in Cambridge, Massachusetts, United States. In 1966, the Franklin Institute awarded the firm the Frank P. Brown ...
(BBN) to help
DARPA The Defense Advanced Research Projects Agency (DARPA) is a research and development agency of the United States Department of Defense responsible for the development of emerging technologies for use by the military. Originally known as the Ad ...
decide which version to place in
4.3BSD The History of the Berkeley Software Distribution begins in the 1970s. 1BSD (PDP-11) The earliest distributions of Unix from Bell Labs in the 1970s included the source code to the operating system, allowing researchers at universities to modify an ...
. Many compatible implementations and derivatives exist including the widely used
Iperf Iperf is a tool for network performance measurement and tuning. It is a cross-platform tool that can produce standardized performance measurements for any network. Iperf has client and server functionality, and can create data streams to measure ...
. Testing can be done from any platform to any other platform, for example from a Windows machine to a
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, w ...
machine, as long as they both have a ttcp application installed. For normal use, ttcp is installed on two machines – one will be the sender, the other the receiver. The receiver is started first and waits for a connection. Once the two connect, the sending machine sends data to the receiver and displays the overall throughput of the network they traverse. The amount of data sent and other options are configurable through command line parameters. The statistics output covers TCP/UDP payload only (not protocol overhead) and is generally displayed by default in KiB/s (kibiBytes per second) instead of kb/s (kilobits per second), but it can be configured to be displayed in other ways on some implementations. The reported throughput is more accurately calculated on the receive side than the transmit side, since the transmit operation may complete before all bytes actually have been transmitted.


Implementations and derivatives

Originally designed for Unix systems, ttcp has since been ported to and reimplemented on many other systems such as
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ser ...
.


ttcp

The original Unix implementation developed by
Mike Muuss Michael John Muuss (October 16, 1958 – November 20, 2000) was the American author of the freeware network tool ping. Career A graduate of Johns Hopkins University, Muuss was a senior scientist specializing in geometric solid modeling, ray- ...
and Terry Slattery, version 1.10 dated 1987-09-02. Uses port 2000 by default unless another one is specified with the -p switch.


nttcp

Developed at
Silicon Graphics Silicon Graphics, Inc. (stylized as SiliconGraphics before 1999, later rebranded SGI, historically known as Silicon Graphics Computer Systems or SGCS) was an American high-performance computing manufacturer, producing computer hardware and sof ...
, the nttcp implementation made several changes that remain in future implementations such as by default using port 5001 instead of 2000, reversing the meaning of the -s switch to sink data by default, and adding the -w window size switch


nuttcp

Developed at Laboratory for Computational Physics and Fluid Dynamics at Naval Research Lab (LCP & FD at NRL). Provides additional information related to the data transfer such as user, system, and wall-clock time, transmitter and receiver CPU utilization, and loss percentage (for UDP transfers).


Iperf

Developed by the Distributed Applications Support Team (DAST) at the National Laboratory for Applied Network Research (NLANR). Widely used and ported implementation including additions such as the option for bidirectional traffic.


ntttcp

Developed by Microsoft, used to profile and measure Windows networking performance. NTttcp is one of the primary tools Microsoft engineering teams leverage to validate network function and utility
Browse code samples


ntttcp-for-linux

Developed by Shihua Xiao at Microsoft, used to profile and measure Linux networking performance. Provided multiple threading to exchange data in test, and potentially can interop with Windows version of ntttcp.


PCATTCP

Native Windows version developed by PCAUSA.


Cisco IOS

Cisco IOS The Internetworking Operating System (IOS) is a family of proprietary network operating systems used on several router and network switch models manufactured by Cisco Systems. The system is a package of routing, switching, internetworking, and ...
routers include ttcp as a hidden command that can be set up as either the sender or receiver in version 11.2 or higher and feature sets IP Plus (is- images) or Service Provider (p- images).


EnGenius

Many EnGenius branded wireless access points include an Iperf-based implementation accessible as Speed Test under Diagnostics in the web and command line user interfaces.


See also

*
bwping BWPing is a tool to measure bandwidth and response times between two hosts using Internet Control Message Protocol ( ICMP) echo request/echo reply mechanism. It does not require any special software on the remote host. The only requirement is th ...
: Tool of similar nature using IP's inherent ECHO reply functionality instead of dedicated server-side software. *
Netperf Netperf is a software application that provides network bandwidth testing between two hosts on a network. It supports Unix domain sockets, TCP, SCTP, DLPI and UDP via BSD Sockets. Netperf provides a number of predefined tests e.g. to measure bu ...
: Another bandwidth measurement tool that supports TCP, UDP, DLPI, Unix Domain Sockets and SCTP. *
Iperf Iperf is a tool for network performance measurement and tuning. It is a cross-platform tool that can produce standardized performance measurements for any network. Iperf has client and server functionality, and can create data streams to measure ...
* NetPIPE


References

{{Reflist Unix network-related software Network performance Software using the BSD license