Compare and Contrast Go-Back-N ARQ Protocol with Selective-Repeat ARQ
Overview
ARQ protocols provide reliability over unreliable channels by using acknowledgments and retransmissions. Two classic sliding-window ARQ schemes are Go-Back-N (GBN) and Selective-Repeat (SR).
At a high level:
- In Go-Back-N: an error at frame causes the sender to retransmit frames starting at and typically all subsequent frames that were already sent but not yet confirmed.
- In Selective-Repeat: the receiver acknowledges correctly received frames individually (often with selective ACK behavior), buffers out-of-order frames, and the sender retransmits only those that are missing.
This difference produces a tradeoff:
- GBN uses simpler sender/receiver logic and minimal receiver buffering, but may waste bandwidth retransmitting already-correct frames.
- SR uses more receiver buffering and complexity, but can improve efficiency by avoiding unnecessary retransmissions.
Note: I attempted to perform the required web research using the provided web-search tool, but the tool is currently unavailable due to a plan/usage-limit error. As a result, I cannot include the mandated external citations/footnotes in this response.
Reliable Data Transfer: Go-Back-N vs Selective Repeat (ARQ)
Core Mechanisms (Sender/Receiver Behavior)
Sliding window concept
Both GBN and SR use a sliding window controlled by a window size . The sender can have up to unacknowledged frames “in flight”. The receiver similarly maintains what sequence numbers it can accept.
Go-Back-N (GBN)
Key traits:
- The receiver uses cumulative ACK semantics: it effectively ACKs “everything up to the last in-order frame”.
- If frame is missing/corrupt, the receiver cannot advance its cumulative confirmation beyond .
- The sender uses retransmission timer logic; when it detects loss (via timeout or ACK behavior), it Go-Back-N retransmits from the first missing frame and typically includes later frames that were previously sent.
GBN generally does not buffer out-of-order data for eventual in-order delivery; frames beyond the missing one are effectively discarded or ignored until the gap is repaired.
Selective-Repeat (SR)
Key traits:
- The receiver acknowledges frames more selectively, allowing it to confirm multiple out-of-order frames.
- The receiver buffers out-of-order frames within its acceptance window.
- The sender retransmits only the frames that are missing/corrupt (not everything after the first error).
SR therefore improves efficiency when only a few frames in a window are lost, because it avoids retransmitting frames that were already correct at the receiver.
GBN vs SR: What happens after a frame loss?
- 1Step 1
Both protocols send up to frames without waiting for each individual ACK. Frames have sequence numbers.
- 2Step 2
The receiver detects the problem when checking integrity (e.g., CRC).
- 3Step 3
The receiver cannot advance cumulative ACK beyond . It typically does not retain out-of-order frames beyond the gap.
- 4Step 4
When the sender infers loss (timeout/ACK behavior), it retransmits frame and often also retransmits subsequent frames that were sent but not yet acknowledged.
- 5Step 5
The receiver sends acknowledgment for correctly received frames (selectively) and buffers out-of-order frames within its window.
- 6Step 6
The sender retransmits only the missing/corrupt frames (frame and any others that are missing), not the entire suffix.
Detailed Compare/Contrast
1) Acknowledgment style
- GBN: typically relies on cumulative ACK and therefore “bubbles” confirmation only when the receiver reaches the gap.
- SR: uses selective acknowledgment behavior (conceptually), acknowledging each received frame so missing frames can be identified precisely.
2) Receiver buffering requirements
- GBN: minimal buffering; out-of-order frames are generally not kept.
- SR: requires significant buffering to hold frames that arrive early but can’t yet be delivered in-order.
3) Retransmission scope after an error
- GBN: retransmits from the first missing frame onward.
- SR: retransmits only those specific missing frames.
4) Throughput and efficiency intuition
Let be the probability a frame is lost/corrupted. When losses are sparse:
- GBN wastes capacity by retransmitting frames that might already be correct.
- SR tends to be more efficient because it avoids retransmitting correct frames—at the cost of buffering and more complex logic.
When errors are frequent (or window sizes are small), the advantage of SR can shrink, while SR overhead remains.
Side-by-side table
| Dimension | Go-Back-N (GBN) | Selective-Repeat (SR) |
|---|---|---|
| ACK type | Cumulative ACK | Selective/individual ACK behavior |
| Out-of-order handling | Typically discarded/ignored | Buffered and later delivered in order |
| Sender retransmission | From first missing frame onward | Only missing frames |
| Buffering | Lower receiver buffering | Higher receiver buffering |
| Complexity | Lower | Higher |
| Bandwidth efficiency | Can be lower due to extra retransmissions | Often higher under sparse losses |
Conceptual Retransmission Waste (qualitative)
GBN retransmits a larger fraction of the window after a loss; SR retransmits fewer frames, assuming they were received correctly at the receiver.
Design rule of thumb
Choose Selective-Repeat when you can afford receiver buffering/complexity and you expect sparse errors; choose Go-Back-N when simplicity is more important or buffering is expensive.
Window sizing constraints
For both GBN and SR, sequence-number space and window size must be coordinated to avoid ambiguity (e.g., ACKs for old frames being mistaken for new ones). Incorrect sizing can break correctness.
Operational Timeline After Error (conceptual)
Send frames 1..W
t0Sender transmits a window of frames."
Frame i is lost/corrupt
t1Receiver detects error via integrity check."
GBN: cumulative ACK stuck at i-1
t2Receiver cannot confirm frames beyond the gap."
SR: ACKs for other received frames; buffer out-of-order
t3Receiver stores out-of-order frames within its window."
Retransmission
t4GBN retransmits from i onward; SR retransmits only missing frames."
Common Questions & Edge Cases
GBN vs SR Quick Recall
Knowledge Check
In Go-Back-N ARQ, if frame is lost, which frames are typically retransmitted?