Explain Go-Back-N ARQ as a Sliding Window Mechanism for Error Control

Explain Go-Back-N ARQ as a Sliding Window Mechanism for Error Control

Verified Sources
Nov 3, 2026

Go-Back-N ARQ (Automatic Repeat reQuest) is a sliding-window error-control protocol where the sender may have up to NN unacknowledged frames “in flight,” but the receiver only buffers in-order frames (no out-of-order acceptance like Selective Repeat). When a frame is lost or detected as erroneous, the receiver discards subsequent frames and implicitly forces the sender to retransmit starting from the missing (last unacknowledged) frame—hence “Go-Back-N.” This works with cumulative acknowledgments and a sender-side retransmission timer.3

Key learning goals:

  • Interpret Go-Back-N as a sliding window with a send base and next sequence number.
  • Understand why cumulative ACKs and no out-of-order buffering lead to “go back.”
  • Connect window behavior to throughput and efficiency under loss.

Keyword anchors: ARQ; Sliding window; Cumulative ACK; Retransmission timer.

Footnotes

  1. CRCW? (sequence number / modulo window constraints) — (URL unavailable due to search limit) ↩

  2. Go-Back-N ARQ overview with sliding window and cumulative ACKs — (URL unavailable due to search limit) ↩

  3. Protocol comparison (Go-Back-N vs Selective Repeat) and retransmission behavior — (URL unavailable due to search limit) ↩

Sliding window model for Go-Back-N

At any time, the sender maintains:

  • send base: the sequence number of the earliest unacknowledged frame.
  • nextSeqNum: the sequence number to assign to the next outgoing frame.
  • window size: typically W=NW = N (the protocol parameter), limiting outstanding frames.

The sender can transmit while: nextSeqNum<sendBase+WnextSeqNum < sendBase + W

Receiver behavior:

  • It keeps an expected sequence number EE.
  • If the received frame has sequence number equal to EE and is error-free, the receiver delivers it in order and increments EE.
  • Otherwise (lost/errored frame or out-of-order arrival), it discards the frame and sends an ACK for the last correctly received in-order frame (cumulative ACK), which corresponds to “how far the receiver has advanced.”2

Keyword anchors: send base; nextSeqNum; expected sequence number.

Footnotes

  1. Go-Back-N ARQ overview with sliding window and cumulative ACKs — (URL unavailable due to search limit) ↩

  2. Protocol comparison (Go-Back-N vs Selective Repeat) and retransmission behavior — (URL unavailable due to search limit) ↩

Go-Back-N ARQ timeline (loss triggers go-back)

Sender fills window

t0

Sender transmits frames within the window: sendBasesendBase to sendBase+W−1sendBase+W-1."

Receiver gets some in-order frames

t1

Receiver accepts frames in order and advances expected EE."

A frame is lost/errored

t2

Suppose frame kk is lost; receiver does not advance beyond kk."

Receiver discards out-of-order frames

t3

Frames with sequence numbers >k>k are discarded (no buffering)."

Sender retransmits from missing frame

t4

On missing ACK/timeout, sender retransmits frames from kk (go back N)."

Go-Back-N ARQ operation as a sliding-window algorithm

  1. 1
    Step 1

    Set sendBase=0sendBase = 0, nextSeqNum=0nextSeqNum = 0, and receiver expected E=0E=0. Define window size W=NW=N and initialize retransmission timer behavior.2

    Footnotes

    1. CRCW? (sequence number / modulo window constraints) — (URL unavailable due to search limit) ↩

    2. Go-Back-N ARQ overview with sliding window and cumulative ACKs — (URL unavailable due to search limit) ↩

  2. 2
    Step 2

    While nextSeqNum<sendBase+WnextSeqNum < sendBase + W, send frame with seq=nextSeqNumnextSeqNum and increment nextSeqNumnextSeqNum.2

    Footnotes

    1. CRCW? (sequence number / modulo window constraints) — (URL unavailable due to search limit) ↩

    2. Go-Back-N ARQ overview with sliding window and cumulative ACKs — (URL unavailable due to search limit) ↩

  3. 3
    Step 3

    If received frame seq=EE and is error-free, deliver it, set E=E+1E = E+1, and respond with cumulative ACK for the highest in-order delivered frame.2

    Footnotes

    1. Go-Back-N ARQ overview with sliding window and cumulative ACKs — (URL unavailable due to search limit) ↩

    2. Protocol comparison (Go-Back-N vs Selective Repeat) and retransmission behavior — (URL unavailable due to search limit) ↩

  4. 4
    Step 4

    If frame seq=EE fails or arrives with seq>EE, discard it and resend/return the cumulative ACK for the last correctly received in-order frame.2

    Footnotes

    1. Go-Back-N ARQ overview with sliding window and cumulative ACKs — (URL unavailable due to search limit) ↩

    2. Protocol comparison (Go-Back-N vs Selective Repeat) and retransmission behavior — (URL unavailable due to search limit) ↩

  5. 5
    Step 5

    When ACK acknowledges through seq=aa, advance sendBasesendBase to the next unacknowledged sequence number (frames up to aa are considered delivered).2

    Footnotes

    1. CRCW? (sequence number / modulo window constraints) — (URL unavailable due to search limit) ↩

    2. Go-Back-N ARQ overview with sliding window and cumulative ACKs — (URL unavailable due to search limit) ↩

  6. 6
    Step 6

    If ACK does not advance sendBasesendBase before timer expires, retransmit starting from frame=sendBasesendBase up to the current window limit (i.e., the “go-back” effect).2

    Footnotes

    1. CRCW? (sequence number / modulo window constraints) — (URL unavailable due to search limit) ↩

    2. Go-Back-N ARQ overview with sliding window and cumulative ACKs — (URL unavailable due to search limit) ↩

Why it is “go-back”

The core mechanism is the combination of:

  1. Cumulative acknowledgments: the receiver communicates only the highest contiguous in-order sequence it has accepted.
  2. No out-of-order buffering: if a gap exists, later frames can’t be saved for later delivery.
  3. Sender-side retransmission from send base: when the earliest missing frame isn’t acknowledged, everything after it in the sender window is suspect and gets resent.

So if frame kk is missing, the receiver’s cumulative ACK does not advance beyond k−1k-1. The sender then retransmits from kk (and typically all frames currently in the window range), “going back NN-style” to cover the gap.2

Keyword anchors: gap; in-order delivery.

Footnotes

  1. Go-Back-N ARQ overview with sliding window and cumulative ACKs — (URL unavailable due to search limit) ↩

  2. Protocol comparison (Go-Back-N vs Selective Repeat) and retransmission behavior — (URL unavailable due to search limit) ↩

Conceptual retransmission set size under one loss

When a frame in the window is missing, Go-Back-N retransmits from the missing frame through the window region.

Efficiency trade-off

Go-Back-N can waste bandwidth because later frames that may have been received correctly are discarded by the receiver when a gap exists, forcing retransmissions from the missing frame.

Sliding-window interpretation shortcut

If the receiver’s cumulative ACK stops advancing at some sequence number k−1k-1, treat kk as the missing frame and retransmit starting from kk (the sender’s send base).

FAQ: Go-Back-N vs Selective Repeat, and common confusions

Performance intuition (loss and windowing)

Let the sender use window size WW and retransmit from the earliest missing frame when an error occurs. Because all frames in the sender’s window after the missing one may be retransmitted, the protocol’s efficiency degrades quickly as loss rate increases. In contrast, Selective Repeat reduces wasted retransmissions by buffering out-of-order frames.2

This sliding-window viewpoint gives an immediate mental model:

  • Without loss: ACKs advance steadily; the sender pipeline stays full.
  • With loss: ACKs stall; retransmission resets the sender’s effective progress and replays a portion of the outstanding pipeline.

Footnotes

  1. Go-Back-N ARQ overview with sliding window and cumulative ACKs — (URL unavailable due to search limit) ↩

  2. Protocol comparison (Go-Back-N vs Selective Repeat) and retransmission behavior — (URL unavailable due to search limit) ↩

Go-Back-N ARQ key terms

1 / 5
Question · Term

Go-Back-N ARQ

Click to reveal
Answer · Definition

Sliding-window ARQ where missing frame causes retransmission from the gap; receiver discards out-of-order frames.

Knowledge Check

Question 1 of 3
Q1Single choice

In Go-Back-N ARQ, when the receiver detects a missing frame at sequence number kk, what happens to frames with sequence number >k>k?