Throughput
From Free net encyclopedia
- For the usage of the term in business management, see throughput (business).
In information technology, throughput is the rate at which a computer or network sends or receives data. It therefore is a good measure of the channel capacity of a communications link, and connections to the internet are usually rated in terms of how many bits they pass per second (bit/s).
However it is a very bad measurement of perceived speed, which is mostly based on how quickly it responds to you. Responsiveness has far less to do with throughput than latency. As the classic example goes, a station wagon full of magnetic tape has excellent throughput and horrible latency. It may take a week to deliver data from California to New York, but can carry so much that the throughput is better than broadband. Yet a user who has to wait a week to see a web page will complain that they preferred their much faster dialup connection!
Normally throughput and latency are opposed goals. To improve latency you typically want to increase how much the computer checks to see if you are trying to interact. This checking overhead slows you down. However, there is one very common exception to this rule. Network protocols and programs tend to synchronize both ends regularly. If these synchronizations are slow, then throughput can suffer horribly.
Contents |
The difference between throughput and latency
Latency is measured from the time a request (e.g. a single packet) leaves the client to the time the response (e.g. An Acknowledgment) arrives back at the client from the serving entity. The unit of latency is time. Throughput on the other hand is the amount of data that is transferred over a period of time. For example if over ten seconds twenty packets are transferred then the throughput would be 20/10=2 packets per second. Throughput can have many units (for example: "bits/second," "bytes/second," or "packets/second"), but it is always measured in a volume-per-time ratio.
Digital throughput
Throughput is the amount of data that can be transferred through a digital connection in a given time period (in other words, the connection's bit rate). It is also called channel capacity in telecommunications contexts, and is usually measured in bits or bytes per second.
In the physical world, a digital signal is usually represented in an analog form for actual transmission. This can be a complex process. First the bit pattern must undergo a suitable form of channel coding, appropriate to the expected noise level of the analog channel. Then it must be transformed into an analog waveform using line coding, and modulated onto a carrier signal. The latter two processes depend upon the actual nature of the transmission medium, whether it be electrical, optical or electromagnetic.
Mathematically, the maximum digital throughput for a given analog bandwidth and noise level is determined by the Shannon-Hartley theorem. How closely this is approximated depends to a great extent upon the choice of channel coding, which must introduce just enough redundancy to match the noise level. Too little redundancy, and expensive retransmissions will reduce the useful throughput. Too much, and the error-correction overhead will reduce the throughput left over for the signal. The Shannon-Hartley limit is approached closely by Reed-Solomon codes used on optical media, and even more closely by Turbo codes used in satellite communication.