Stop and Wait ARQ (original) (raw)

Last Updated : 26 Feb, 2026

**Stop-and-Wait ARQ is a reliable data link layer protocol in which the sender transmits one frame at a time and waits for an acknowledgment (ACK) before sending the next frame. If the ACK is not received within a specified timeout period, the same frame is retransmitted to ensure reliability.

Important Terms

Propagation Delay = (Distance between nodes) / (Propagation speed of Signal)

1. Simple Stop and Wait

At Sender

At Receiver

Stop and Wait

Problems Associated with Stop and Wait

**1. Lost Data

If a sender transmits a frame and it gets lost in the network, the receiver does not receive it and therefore does not send an acknowledgment (ACK). However, the sender does **not wait forever. It starts a **timer after transmitting the frame. If the ACK is not received before the timeout expires, the sender retransmits the same frame.

Lost Data**2. Lost Acknowledgement

In this case, the sender sends a data packet which is successfully received by the receiver. The receiver sends an acknowledgment, but the ACK is lost in the network. As the sender does not receive the acknowledgment, it assumes the packet was not received and does not send the next packet, because Stop-and-Wait requires an ACK before proceeding.

Lost Acknoeledgement

**3. Delayed Acknowledgement/Data

Here, the sender sends a data packet and the receiver sends an acknowledgment, but the ACK arrives after the sender’s timeout period. The sender may mistakenly interpret this delayed acknowledgment as the response to a later transmission, causing confusion and possible data duplication. This problem highlights the need for sequence numbers and timeouts in ARQ protocols.

2. Stop and Wait for ARQ (Automatic Repeat Request)

Stop-and-Wait ARQ (Automatic Repeat Request) overcomes the problems of lost data, lost acknowledgments, and delayed frames by using acknowledgments, sequence numbers, and timeouts. It provides both error control through retransmissions and flow control by allowing only one outstanding frame at a time, ensuring reliable data communication.

Stop and Wait ARQ

**1. Time Out

Timeout is the maximum time the sender waits for an acknowledgment (ACK) after sending a data frame. If the ACK is not received within this period, the sender assumes the frame or ACK was lost or corrupted and retransmits the same frame to ensure reliable communication.

Time Out

**2. Sequence Number (Data) -

In Stop-and-Wait ARQ, each data frame is assigned a sequence number by the sender. This helps the receiver uniquely identify each frame, detect duplicate frames, and send the correct acknowledgment. The sender transmits the next frame only after receiving the acknowledgment for the current frame, ensuring reliable data delivery.

Sequence number for data

**3. Sequence Number

In Stop-and-Wait ARQ, acknowledgments (ACKs) also carry sequence numbers. After successfully receiving a data frame, the receiver sends an ACK indicating the sequence number of the next expected frame. The sender uses this information to confirm successful delivery and decide whether it can proceed with the next transmission or needs to retransmit a frame.

Working of Stop and Wait for ARQ

Working Stop and Wait ARQ

**Constraints in Stop and Wait ARQ