Retransmission (data networks)
Encyclopedia : R : RE : RET : Retransmission (data networks)
Retransmission refers to one of the basic mechanisms used by protocols operating over a packet switched computer network to provide reliable communication (such as that provided by a reliable byte stream, for example TCP).
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 acknowledgements (i.e. an explicit receipt from the destination of the data), retransmission of missing and/or damaged packets (usually initiated by a time-out), and checksums to provide that reliability.
There are several forms of acknowledgements 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 which may implicitly inform the sender which packets were not received even though they were sent and thus may need to be retransmitted. Positive Acknowledgement with Re-Transmission (PAR), is a method used by TCP [link] to verify receipt of transmitted data. PAR operates by re-transmitting data at an established period of time until the receiving host acknowledges reception of the data.
- Negative Acknowledgement (NACK): the receiver explicitly notifies the sender which packets, messages, or segments were received incorrectly and thus may need to be retransmitted [link].
- Selective Acknowledgement (SACK): the receiver explicitly lists which packets, messages, or segments in a stream are acknowledged (either negatively or positively). Positive selective acknowledgement is an option in TCP [link] that is useful in Satellite Internet access [link].
- Cumulative Acknowledgement: 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 acknowledgement with its TCP sliding window.
- if no such acknowledgement is forthcoming within a reasonable time, the time-out, or
- the sender discovers, often through some out of band means, that the transmission was unsuccessful, or
- if the receiver knows that expected data has not arrived, and so notifies the sender, or
- if the receiver it 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
From Wikipedia, the Free Encyclopedia. Original article here. Support Wikipedia by contributing or donating.
All text is available under the terms of the GNU Free Documentation License See Wikipedia Copyrights for details.
