Automatic repeat request

ARQ protocols (English Automatic Repeat reQuest, dt Automatic repeat request) are used in computer networks to ensure reliable data transmission through retransmissions.

By the possibility of error detection, a receiver can determine which occurred transmission errors. Via a feedback channel, this the sender of the message to tell the result of error detection. Usually, this is done by so-called transmission ACK / NAK signals ( or acknowledgment Negative Acknowledgement, ie correct reception confirmed or repeat request). If necessary, a message will be disturbed as long as retransmitted until it reaches the receiver without error.

The following protocols, which differ mainly in the achievable throughput, are considered fundamental:

Stop-and -Wait

Stop - and-Wait (English for holding on and waiting, also referred to as a send - and-wait ) is the simplest method is: After sending a unit of data, the sender must wait for an acknowledgment before sending the next packet can. If it receives no acknowledgment within a certain time frame (timeout), it must send the data unit again.

Example: TFTP, the Trivial File Transfer Protocol.

Go- back- N

Go-Back -N (English for Jump N back ) represents a method that, in contrast to stop-and -wait allows a much greater throughput.

The transmitter can send multiple data units without having to wait for an acknowledgment. Number of these are dependent on the so-called window size. If these n, the sender can still send n- 1 other data units before the confirmation of the first unit by the recipient must be authorized. Also, several data units at a time ( cumulative) response from the recipient, this indicates a receipt for n i, that all units of n to n i received correctly. If, while waiting for the acknowledgments to a timeout, the sender transmits all data units in the new window. So he goes back to the last unacknowledged sequence number N. Since it may be the case that only one data unit is not properly transferred and yet all then sent to be retransmitted, it is at this point wasted transmission capacity.

The number of data units that can be sent without confirmation (ie, the window size ) is determined by a flow control procedures.

For example, TCP, Transmission Control Protocol.

Selective Repeat

(English for Selective Repeat) The other general error handling strategy for ARQ protocols is selective repetition. Here, a bad frame is discarded, but the frames obtained then are stored at the receiver and acknowledged in a buffer. When the time is up at the sender, only the oldest unacknowledged frame is retransmitted. When this frame arrives correctly, the receiver can pass every consecutive frames stored in the buffer to the network layer. Selective repeat is often combined with sending a negative acknowledgment ( NAK Negative Acknowledgement ) by the receiver when it encounters an error, such as a checksum error or a frame out of order. NAKs abut the retransmission before the corresponding timer expires and thus improve the performance. Lost the NAK, the transmitter waits for the timeout for the frame and sends him (and only him ) on its own initiative once again. Selective repeat corresponds to a receive window larger first

If these protocols combined with the methods of channel coding, it is called the hybrid ARQ protocols.

Example: TCP SACK

79134
de