Knowledge

Stop-and-wait ARQ

Source 📝

22: 92: 126:(ACK) signal. After receiving a valid frame, the receiver sends an ACK. If the ACK does not reach the sender before a certain time, known as the timeout, the sender sends the same frame again. The timeout countdown is reset after each frame transmission. The above behavior is a basic example of Stop-and-Wait. However, real-life implementations vary to address certain issues of design. 145:
that the sender's timeout runs out before the frame reaches the receiver. In this case the sender resends the same packet. Eventually the receiver gets two copies of the same frame, and sends an ACK for each one. The sender, waiting for a single ACK, receives two ACKs, which may cause problems if it
153:
in the header of the frame. This sequence number alternates (from 0 to 1) in subsequent frames. When the receiver sends an ACK, it includes the sequence number of the next packet it expects. This way, the receiver can detect duplicated frames by checking if the frame sequence numbers alternate. If
133:
number to the end of each frame. The receiver uses the redundancy check number to check for possible damage. If the receiver sees that the frame is good, it sends an ACK. If the receiver sees that the frame is damaged, the receiver discards it and does not send an ACK—pretending that the frame was
137:
One problem is when the ACK sent by the receiver is damaged or lost. In this case, the sender doesn't receive the ACK, times out, and sends the frame again. Now the receiver has two copies of the same frame, and doesn't know if the second one is a duplicate frame or the next frame of the sequence
161:
can be zero). The throughput on the channel is a fraction of what it could be. To solve this problem, one can send more than one packet at a time with a larger sequence number and use one ACK for a set. This is what is done in
154:
two subsequent frames have the same sequence number, they are duplicates, and the second frame is discarded. Similarly, if two subsequent ACKs reference the same sequence number, they are acknowledging the same frame.
110:
to send information between two connected devices. It ensures that information is not lost due to dropped packets and that packets are received in the correct order. It is the simplest
157:
Stop-and-wait ARQ is inefficient compared to other ARQs, because the time between packets, if the ACK and the data are received successfully, is twice the transit time (assuming the
122:
with transmit and receive window sizes equal to one in both cases. After sending each frame, the sender doesn't send any further frames until it receives an
51: 230: 210: 73: 44: 123: 189: 225: 115: 34: 179: 111: 103: 38: 30: 119: 55: 142: 167: 8: 107: 206: 130: 86:
Basic automatic repeat-request (ARQ) data transmission and error detection protocol
184: 158: 95:
A diagram of the Stop-and-Wait ARQ protocol and its operation in various cases.
219: 163: 149:
To avoid these problems, the most common solution is to define a 1 bit
91: 146:
assumes that the second ACK is for the next frame in the sequence.
141:
Another problem is when the transmission medium has such a long
114:(ARQ) mechanism. A stop-and-wait ARQ sender sends one 217: 43:but its sources remain unclear because it lacks 118:at a time; it is a special case of the general 74:Learn how and when to remove this message 90: 218: 134:completely lost, not merely damaged. 15: 13: 14: 242: 129:Typically the transmitter adds a 20: 231:Error detection and correction 190:Error detection and correction 1: 195: 7: 173: 10: 247: 138:carrying identical DATA. 180:Alternating bit protocol 112:automatic repeat-request 104:alternating bit protocol 29:This article includes a 120:sliding window protocol 58:more precise citations. 201:Tanenbaum, Andrew S., 102:, also referred to as 96: 94: 226:Logical link control 168:Selective Repeat ARQ 108:telecommunications 97: 31:list of references 203:Computer Networks 106:, is a method in 100:Stop-and-wait ARQ 84: 83: 76: 238: 131:redundancy check 79: 72: 68: 65: 59: 54:this article by 45:inline citations 24: 23: 16: 246: 245: 241: 240: 239: 237: 236: 235: 216: 215: 198: 185:Data link layer 176: 159:turnaround time 151:sequence number 124:acknowledgement 87: 80: 69: 63: 60: 49: 35:related reading 25: 21: 12: 11: 5: 244: 234: 233: 228: 214: 213: 197: 194: 193: 192: 187: 182: 175: 172: 85: 82: 81: 39:external links 28: 26: 19: 9: 6: 4: 3: 2: 243: 232: 229: 227: 224: 223: 221: 212: 211:0-13-066102-3 208: 204: 200: 199: 191: 188: 186: 183: 181: 178: 177: 171: 169: 165: 164:Go-Back-N ARQ 160: 155: 152: 147: 144: 139: 135: 132: 127: 125: 121: 117: 113: 109: 105: 101: 93: 89: 78: 75: 67: 57: 53: 47: 46: 40: 36: 32: 27: 18: 17: 202: 156: 150: 148: 140: 136: 128: 99: 98: 88: 70: 61: 50:Please help 42: 56:introducing 220:Categories 205:, 4th ed. 196:References 64:July 2022 174:See also 166:and the 143:latency 52:improve 209:  116:frame 37:, or 207:ISBN 222:: 170:. 41:, 33:, 77:) 71:( 66:) 62:( 48:.

Index

list of references
related reading
external links
inline citations
improve
introducing
Learn how and when to remove this message

alternating bit protocol
telecommunications
automatic repeat-request
frame
sliding window protocol
acknowledgement
redundancy check
latency
turnaround time
Go-Back-N ARQ
Selective Repeat ARQ
Alternating bit protocol
Data link layer
Error detection and correction
ISBN
0-13-066102-3
Categories
Logical link control
Error detection and correction

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.