Retransmission, essentially identical with
automatic repeat request (ARQ), is the resending of
packets which have been either damaged or lost. Retransmission is one of the basic mechanisms used by
protocols operating over a
packet switched
In telecommunications, packet switching is a method of grouping Data (computing), data into ''network packet, packets'' that are transmitted over a digital Telecommunications network, network. Packets are made of a header (computing), header and ...
computer network
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 ar ...
to provide reliable communication (such as that provided by a
reliable byte stream, for example
TCP
TCP may refer to:
Science and technology
* Transformer coupled plasma
* Tool Center Point, see Robot end effector
Computing
* Transmission Control Protocol, a fundamental Internet standard
* Telephony control protocol, a Bluetooth communication s ...
).
Such networks are usually "unreliable", meaning they offer no guarantees that they will not delay, damage, or lose
packets, or deliver them out of order. Protocols which provide reliable communication over such networks use a combination of
acknowledgments (i.e. an explicit
receipt
A receipt (also known as a packing list, packing slip, packaging slip, (delivery) docket, shipping list, delivery list, bill of the parcel, manifest, or customer receipt) is a document acknowledging that a person has received money or propert ...
from the destination of the
data
In the pursuit of knowledge, data (; ) is a collection of discrete values that convey information, describing quantity, quality, fact, statistics, other basic units of meaning, or simply sequences of symbols that may be further interpret ...
), retransmission of missing or damaged packets (usually initiated by a
time-out), and
checksums to provide that reliability.
Acknowledgment
There are several forms of
acknowledgement which can be used alone or together in networking protocols:
* Positive Acknowledgement: the receiver explicitly notifies the sender which packets, messages, or segments were received correctly. Positive Acknowledgement therefore also implicitly informs the sender which packets were not received and provides detail on packets which need to be retransmitted.
* Negative Acknowledgment (NACK): the receiver explicitly notifies the sender which packets, messages, or segments were received incorrectly and thus may need to be retransmitted (RFC 4077).
* {{anchor, SACKSelective Acknowledgment (SACK): the receiver explicitly lists which packets, messages, or segments in a stream are acknowledged (either negatively or positively). Positive selective acknowledgment is an option in TCP (RFC 2018) that is useful in
Satellite Internet access
Satellite Internet access is Internet access provided through communication satellites. Modern consumer grade satellite Internet service is typically provided to individual users through geostationary satellites that can offer relatively high d ...
(RFC 2488).
* Cumulative Acknowledgment: the receiver acknowledges that it correctly received a packet, message, or segment in a stream which implicitly informs the sender that the previous packets were received correctly. TCP uses cumulative acknowledgment with its TCP
sliding window
A sliding window protocol is a feature of packet-based data transmission protocols. Sliding window protocols are used where reliable in-order delivery of packets is required, such as in the data link layer ( OSI layer 2) as well as in the Tran ...
.
Retransmission
Retransmission is a very simple concept. Whenever one party sends something to the other party, it retains a copy of the data it sent until the recipient has acknowledged that it received it. In a variety of circumstances the sender
automatically retransmits the data using the retained copy. Reasons for resending include:
* if no such acknowledgment is forthcoming within a reasonable time, the time-out
* the sender discovers, often through some
out of band
Out-of-band activity is activity outside a defined telecommunications frequency band, or, metaphorically, outside of any primary communication channel. Protection from falsing is among its purposes.
Examples General usage
* Out-of-band agreement ...
means, that the transmission was unsuccessful
* if the receiver knows that expected data has not arrived, and so notifies the sender
* if the receiver knows that the data has arrived, but in a damaged condition, and indicates that to the sender
See also
*
Error control
*
Reliable system design
*
Truncated binary exponential backoff
*
TCP congestion avoidance algorithm
*
Development of TCP
*
QSL card
A QSL card is a written confirmation of either a two-way radiocommunication between two amateur radio or citizens band stations; a one-way reception of a signal from an AM radio, FM radio, television or shortwave broadcasting station; or the r ...
Network protocols