Last updated

In general terms, throughput is the rate of production or the rate at which something is processed.


When used in the context of communication networks, such as Ethernet or packet radio, throughput or network throughput is the rate of successful message delivery over a communication channel. The data these messages belong to may be delivered over a physical or logical link, or it can pass through a certain network node. Throughput is usually measured in bits per second (bit/s or bps), and sometimes in data packets per second (p/s or pps) or data packets per time slot.

The system throughput or aggregate throughput is the sum of the data rates that are delivered to all terminals in a network. [1] Throughput is essentially synonymous to digital bandwidth consumption; it can be analyzed mathematically by applying the queueing theory, where the load in packets per time unit is denoted as the arrival rate (λ), and the throughput, where the drop in packets per time unit, is denoted as the departure rate (μ).

The throughput of a communication system may be affected by various factors, including the limitations of underlying analog physical medium, available processing power of the system components, and end-user behavior. When various protocol overheads are taken into account, useful rate of the transferred data can be significantly lower than the maximum achievable throughput; the useful part is usually referred to as goodput.

Maximum throughput

Users of telecommunications devices, systems designers, and researchers into communication theory are often interested in knowing the expected performance of a system. From a user perspective, this is often phrased as either "which device will get my data there most effectively for my needs?", or "which device will deliver the most data per unit cost?". Systems designers are often interested in selecting the most effective architecture or design constraints for a system, which drive its final performance. In most cases, the benchmark of what a system is capable of, or its "maximum performance" is what the user or designer is interested in. When examining throughput, the term maximum throughput is frequently used where end-user maximum throughput tests are discussed in detail.

Maximum throughput is essentially synonymous to digital bandwidth capacity.

Four different values have meaning in the context of "maximum throughput", used in comparing the 'upper limit' conceptual performance of multiple systems. They are 'maximum theoretical throughput', 'maximum achievable throughput', and 'peak measured throughput' and 'maximum sustained throughput'. These represent different quantities and care must be taken that the same definitions are used when comparing different 'maximum throughput' values. Comparing throughput values is also dependent on each bit carrying the same amount of information. Data compression can significantly skew throughput calculations, including generating values greater than 100%. If the communication is mediated by several links in series with different bit rates, the maximum throughput of the overall link is lower than or equal to the lowest bit rate. The lowest value link in the series is referred to as the bottleneck.

Maximum theoretical throughput

This number is closely related to the channel capacity of the system, [2] and is the maximum possible quantity of data that can be transmitted under ideal circumstances. In some cases this number is reported as equal to the channel capacity, though this can be deceptive, as only non-packetized systems (asynchronous) technologies can achieve this without data compression. Maximum theoretical throughput is more accurately reported to take into account format and specification overhead with best case assumptions. This number, like the closely related term 'maximum achievable throughput' below, is primarily used as a rough calculated value, such as for determining bounds on possible performance early in a system design phase

Asymptotic throughput

The asymptotic throughput (less formal asymptotic bandwidth) for a packet-mode communication network is the value of the maximum throughput function, when the incoming network load approaches infinity, either due to a message size as it approaches infinity, [3] or the number of data sources is very large. As other bit rates and data bandwidths, the asymptotic throughput is measured in bits per second (bit/s), very seldom bytes per second (B/s), where 1 B/s is 8 bit/s. Decimal prefixes are used, meaning that 1 Mbit/s is 1000000 bit/s.

Asymptotic throughput is usually estimated by sending or simulating a very large message (sequence of data packets) through the network, using a greedy source and no flow control mechanism (i.e. UDP rather than TCP), and measuring the network path throughput in the destination node. Traffic load between other sources may reduce this maximum network path throughput. Alternatively, a large number of sources and sinks may be modeled, with or without flow control, and the aggregate maximum network throughput measured (the sum of traffic reaching its destinations). In a network simulation model with infinite packet queues, the asymptotic throughput occurs when the latency (the packet queuing time) goes to infinity, while if the packet queues are limited, or the network is a multi-drop network with many sources, and collisions may occur, the packet-dropping rate approaches 100%.

A well known application of asymptotic throughput is in modeling point-to-point communication where (following Hockney) message latency T(N) is modeled as a function of message length N as T(N) = (M + N)/A where A is the asymptotic bandwidth and M is the half-peak length. [4]

As well as its use in general network modeling, asymptotic throughput is used in modeling performance on massively parallel computer systems, where system operation is highly dependent on communication overhead, as well as processor performance. [5] In these applications, asymptotic throughput is used in Xu and Hwang model (more general than Hockney's approach) which includes the number of processors, so that both the latency and the asymptotic throughput are functions of the number of processors. [6]

Peak measured throughput

The above values are theoretical or calculated. Peak measured throughput is throughput measured by a real, implemented system, or a simulated system. The value is the throughput measured over a short period of time; mathematically, this is the limit taken with respect to throughput as time approaches zero. This term is synonymous with instantaneous throughput. This number is useful for systems that rely on burst data transmission; however, for systems with a high duty cycle this is less likely to be a useful measure of system performance.

Maximum sustained throughput

This value is the throughput averaged or integrated over a long time (sometimes considered infinity). For high duty cycle networks this is likely to be the most accurate indicator of system performance. The maximum throughput is defined as the asymptotic throughput when the load (the amount of incoming data) is very large. In packet switched systems where the load and the throughput always are equal (where packet loss does not occur), the maximum throughput may be defined as the minimum load in bit/s that causes the delivery time (the latency) to become unstable and increase towards infinity. This value can also be used deceptively in relation to peak measured throughput to conceal packet shaping.

Channel utilization and efficiency

Throughput is sometimes normalized and measured in percentage, but normalization may cause confusion regarding what the percentage is related to. Channel utilization, channel efficiency and packet drop rate in percentage are less ambiguous terms.

The channel efficiency, also known as bandwidth utilization efficiency, is the percentage of the net bit rate (in bit/s) of a digital communication channel that goes to the actually achieved throughput. For example, if the throughput is 70 Mbit/s in a 100 Mbit/s Ethernet connection, the channel efficiency is 70%. In this example, effective 70 Mbit of data are transmitted every second.

Channel utilization is instead a term related to the use of the channel disregarding the throughput. It counts not only with the data bits but also with the overhead that makes use of the channel. The transmission overhead consists of preamble sequences, frame headers and acknowledge packets. The definitions assume a noiseless channel. Otherwise, the throughput would not be only associated to the nature (efficiency) of the protocol but also to retransmissions resultant from quality of the channel. In a simplistic approach, channel efficiency can be equal to channel utilization assuming that acknowledge packets are zero-length and that the communications provider will not see any bandwidth relative to retransmissions or headers. Therefore, certain texts mark a difference between channel utilization and protocol efficiency.

In a point-to-point or point-to-multipoint communication link, where only one terminal is transmitting, the maximum throughput is often equivalent to or very near the physical data rate (the channel capacity), since the channel utilization can be almost 100% in such a network, except for a small inter-frame gap.

For example, the maximum frame size in Ethernet is 1526 bytes: up to 1500 bytes for the payload, eight bytes for the preamble, 14 bytes for the header, and 4 bytes for the trailer. An additional minimum interframe gap corresponding to 12 bytes is inserted after each frame. This corresponds to a maximum channel utilization of 1526 / (1526 + 12) × 100% = 99.22%, or a maximum channel use of 99.22 Mbit/s inclusive of Ethernet datalink layer protocol overhead in a 100 Mbit/s Ethernet connection. The maximum throughput or channel efficiency is then 1500 / (1526 + 12) = 97.5%, exclusive of the Ethernet protocol overhead.

Factors affecting throughput

The throughput of a communication system will be limited by a huge number of factors. Some of these are described below:

Analog limitations

The maximum achievable throughput (the channel capacity) is affected by the bandwidth in hertz and signal-to-noise ratio of the analog physical medium.

Despite the conceptual simplicity of digital information, all electrical signals traveling over wires are analog. The analog limitations of wires or wireless systems inevitably provide an upper bound on the amount of information that can be sent. The dominant equation here is the Shannon-Hartley theorem, and analog limitations of this type can be understood as factors that affect either the analog bandwidth of a signal or as factors that affect the signal-to-noise ratio. The bandwidth of wired systems can be in fact surprisingly narrow, with the bandwidth of Ethernet wire limited to approximately 1 GHz, and PCB traces limited by a similar amount.

Digital systems refer to the 'knee frequency', [7] the amount of time for the digital voltage to rise from 10% of a nominal digital '0' to a nominal digital '1' or vice versa. The knee frequency is related to the required bandwidth of a channel, and can be related to the 3 db bandwidth of a system by the equation: [8] Where Tr is the 10% to 90% rise time, and K is a constant of proportionality related to the pulse shape, equal to 0.35 for an exponential rise, and 0.338 for a Gaussian rise.

IC hardware considerations

Computational systems have finite processing power, and can drive finite current. Limited current drive capability can limit the effective signal to noise ratio for high capacitance links.

Large data loads that require processing impose data processing requirements on hardware (such as routers). For example, a gateway router supporting a populated class B subnet, handling 10 x 100 Mbit/s Ethernet channels, must examine 16 bits of address to determine the destination port for each packet. This translates into 81913 packets per second (assuming maximum data payload per packet) with a table of 2^16 addresses this requires the router to be able to perform 5.368 billion lookup operations per second. In a worst-case scenario, where the payloads of each Ethernet packet are reduced to 100 bytes, this number of operations per second jumps to 520 billion. This router would require a multi-teraflop processing core to be able to handle such a load.

Multi-user considerations

Ensuring that multiple users can harmoniously share a single communications link requires some kind of equitable sharing of the link. If a bottle neck communication link offering data rate R is shared by "N" active users (with at least one data packet in queue), every user typically achieves a throughput of approximately R/N, if fair queuing best-effort communication is assumed.

Goodput and overhead

The maximum throughput is often an unreliable measurement of perceived bandwidth, for example the file transmission data rate in bits per seconds. As pointed out above, the achieved throughput is often lower than the maximum throughput. Also, the protocol overhead affects the perceived bandwidth. The throughput is not a well-defined metric when it comes to how to deal with protocol overhead. It is typically measured at a reference point below the network layer and above the physical layer. The most simple definition is the number of bits per second that are physically delivered. A typical example where this definition is practiced is an Ethernet network. In this case the maximum throughput is the gross bit rate or raw bit rate.

However, in schemes that include forward error correction codes (channel coding), the redundant error code is normally excluded from the throughput. An example in modem communication, where the throughput typically is measured in the interface between the Point-to-Point Protocol (PPP) and the circuit-switched modem connection. In this case the maximum throughput is often called net bit rate or useful bit rate.

To determine the actual data rate of a network or connection, the "goodput" measurement definition may be used. For example, in file transmission, the "goodput" corresponds to the file size (in bits) divided by the file transmission time. The "goodput" is the amount of useful information that is delivered per second to the application layer protocol. Dropped packets or packet retransmissions, as well as protocol overhead, are excluded. Because of that, the "goodput" is lower than the throughput. Technical factors that affect the difference are presented in the "goodput" article.

Other uses of throughput for data

Integrated circuits

Often, a block in a data flow diagram has a single input and a single output, and operate on discrete packets of information. Examples of such blocks are Fast Fourier Transform modules or binary multipliers. Because the units of throughput are the reciprocal of the unit for propagation delay, which is 'seconds per message' or 'seconds per output', throughput can be used to relate a computational device performing a dedicated function such as an ASIC or embedded processor to a communications channel, simplifying system analysis.

Wireless and cellular networks

In wireless networks or cellular systems, the system spectral efficiency in bit/s/Hz/area unit, bit/s/Hz/site or bit/s/Hz/cell, is the maximum system throughput (aggregate throughput) divided by the analog bandwidth and some measure of the system coverage area.

Over analog channels

Throughput over analog channels is defined entirely by the modulation scheme, the signal to noise ratio, and the available bandwidth. Since throughput is normally defined in terms of quantified digital data, the term 'throughput' is not normally used; the term 'bandwidth' is more often used instead.

See also

Related Research Articles

Asynchronous Transfer Mode Digital telecommunications protocol for voice, video, and data

Asynchronous Transfer Mode (ATM) is a telecommunications standard defined by ANSI and ITU for digital transmission of multiple types of traffic, including telephony (voice), data, and video signals in one network without the use of separate overlay networks. ATM was developed to meet the needs of the Broadband Integrated Services Digital Network, as defined in the late 1980s, and designed to integrate telecommunication networks. It can handle both traditional high-throughput data traffic and real-time, low-latency content such as voice and video. ATM provides functionality that uses features of circuit switching and packet switching networks. It uses asynchronous time-division multiplexing.

Synchronous optical networking

Synchronous optical networking (SONET) and synchronous digital hierarchy (SDH) are standardized protocols that transfer multiple digital bit streams synchronously over optical fiber using lasers or highly coherent light from light-emitting diodes (LEDs). At low transmission rates data can also be transferred via an electrical interface. The method was developed to replace the plesiochronous digital hierarchy (PDH) system for transporting large amounts of telephone calls and data traffic over the same fiber without the problems of synchronization.

In telecommunications and computer networking, a network packet is a formatted unit of data carried by a packet-switched network. A packet consists of control information and user data; the latter is also known as the payload. Control information provides data for delivering the payload. Typically, control information is found in packet headers and trailers.

ALOHAnet, also known as the ALOHA System, or simply ALOHA, was a pioneering computer networking system developed at the University of Hawaii. ALOHAnet became operational in June 1971, providing the first public demonstration of a wireless packet data network. ALOHA originally stood for Additive Links On-line Hawaii Area.

In telecommunications and computing, bit rate is the number of bits that are conveyed or processed per unit of time.

Data Over Cable Service Interface Specification (DOCSIS) is an international telecommunications standard that permits the addition of high-bandwidth data transfer to an existing cable television (CATV) system. It is used by many cable television operators to provide Internet access over their existing hybrid fiber-coaxial (HFC) infrastructure. The version numbers are sometimes prefixed with simply "D" instead of "DOCSIS".

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.

Network performance refers to measures of service quality of a network as seen by the customer.

Spectral efficiency, spectrum efficiency or bandwidth efficiency refers to the information rate that can be transmitted over a given bandwidth in a specific communication system. It is a measure of how efficiently a limited frequency spectrum is utilized by the physical layer protocol, and sometimes by the medium access control.

In computer networking, wire speed or wirespeed refers to the hypothetical peak physical layer net bit rate of a cable combined with a certain digital communication device, interface, or port. For example, the wire speed of Fast Ethernet is 100 Mbit/s also known as the peak bitrate, connection speed, useful bit rate, information rate, or digital bandwidth capacity. The wire speed is the data transfer rate that a telecommunications standard provides at a reference point between the physical layer and the datalink layer.

In a digitally modulated signal or a line code, symbol rate or modulation rate is the number of symbol changes, waveform changes, or signaling events across the transmission medium per unit of time. The symbol rate is measured in baud (Bd), baud rate or symbols per second. In the case of a line code, the symbol rate is the pulse rate in pulses per second. Each symbol can represent or convey one or several bits of data. The symbol rate is related to the gross bit rate expressed in bits per second.

In computer networking, jumbo frames are Ethernet frames with more than 1500 bytes of payload, the limit set by the IEEE 802.3 standard. Commonly, jumbo frames can carry up to 9000 bytes of payload, but smaller and larger variations exist and some care must be taken using the term. Many Gigabit Ethernet switches and Gigabit Ethernet network interface controllers and some Fast Ethernet switches and Fast Ethernet network interface cards can support jumbo frames.

Computer network Network that allows computers to share resources and communicate with each other

A computer network is a set of computers sharing resources located on or provided by network nodes. The computers use common communication protocols over digital interconnections to communicate with each other. These interconnections are made up of telecommunication network technologies, based on physically wired, optical, and wireless radio-frequency methods that may be arranged in a variety of network topologies.

In computer networks, goodput is the application-level throughput of a communication; i.e. the number of useful information bits delivered by the network to a certain destination per unit of time. The amount of data considered excludes protocol overhead bits as well as retransmitted data packets. This is related to the amount of time from the first bit of the first packet sent until the last bit of the last packet is delivered.

In telecommunication networks, the transmission time is the amount of time from the beginning until the end of a message transmission. In the case of a digital message, it is the time from the first bit until the last bit of a message has left the transmitting node. The packet transmission time in seconds can be obtained from the packet size in bit and the bit rate in bit/s as:

High Speed Packet Access Communications protocols

High Speed Packet Access (HSPA) is an amalgamation of two mobile protocols, High Speed Downlink Packet Access (HSDPA) and High Speed Uplink Packet Access (HSUPA), that extends and improves the performance of existing 3G mobile telecommunication networks using the WCDMA protocols. A further improved 3GPP standard, Evolved High Speed Packet Access, was released late in 2008 with subsequent worldwide adoption beginning in 2010. The newer standard allows bit-rates to reach as high as 337 Mbit/s in the downlink and 34 Mbit/s in the uplink. However, these speeds are rarely achieved in practice.

In computer networking, an Ethernet frame is a data link layer protocol data unit and uses the underlying Ethernet physical layer transport mechanisms. In other words, a data unit on an Ethernet link transports an Ethernet frame as its payload.

IEEE 802.11g-2003 or 802.11g is an amendment to the IEEE 802.11 specification that operates in the 2.4 GHz microwave band. The standard has extended throughput to up to 54 Mbit/s using the same 20MHz bandwidth as 802.11b uses to achieve 11 Mbit/s. This specification under the marketing name of Wi-Fi has been implemented all over the world. The 802.11g protocol is now Clause 19 of the published IEEE 802.11-2007 standard, and Clause 19 of the published IEEE 802.11-2012 standard.

In computing, bandwidth is the maximum rate of data transfer across a given path. Bandwidth may be characterized as network bandwidth, data bandwidth, or digital bandwidth.


  1. Guowang Miao, Jens Zander, K-W Sung, and Ben Slimane, Fundamentals of Mobile Data Networks, Cambridge University Press, ISBN   1107143217, 2016.
  2. Blahut, 2004, p.4
  3. Modeling Message Passing Overhead by C.Y Chou et al. in Advances in Grid and Pervasive Computing: First International Conference, GPC 2006 edited by Yeh-Ching Chung and José E. Moreira ISBN   3540338098 pages 299-307
  4. Recent Advances in Parallel Virtual Machine and Message Passing Interface by Jack Dongarra, Emilio Luque and Tomas Margalef 1999 ISBN   3540665498 page 134
  5. M. Resch et al. A comparison of MPI performance on different MPPsin Recent Advances in Parallel Virtual Machine and Message Passing Interface, Lecture Notes in Computer Science, 1997, Volume 1332/1997, 25-32
  6. High-Performance Computing and Networking edited by Angelo Mañas, Bernardo Tafalla and Rou Rey Jay Pallones 1998 ISBN   3540644431 page 935
  7. Johnson, 1993, 2-5
  8. Johnson, 1993, 9
  9. Johnson, 1993, 154
  10. Johnson, 1993, 160-170
  11. Roddy, 2001, 370 - 371

Further reading