Go-Back-N wastes bandwidth by retransmitting packets that arrived correctly. A more efficient approach is needed to only retransmit truly lost packets.
A sliding window protocol where only lost or corrupted packets are retransmitted, while correctly received out-of-order packets are buffered at the receiver.
- Sender maintains a window of unacknowledged packets
- Receiver accepts and buffers out-of-order packets
- Receiver sends individual ACK for each correctly received packet
- If a packet is lost, sender retransmits only that packet (not all subsequent ones)
- Receiver reorders buffered packets once missing packets arrive
- More efficient: only retransmits lost packets
- More complex receiver: must buffer out-of-order packets
- Individual ACKs (not cumulative)
- Higher memory requirement at receiver for buffering
- Built from: Sliding Window Protocol — based on sliding window
- Contrasts with: Go-Back-N ARQ — selective vs full retransmission
- Related: Negative Acknowledgment — NAK used to signal missing packets
- Related: Receiver Buffer — needed for out-of-order packets
- Window size must be ⇐ sequence number space/2 to avoid ambiguity
- More complex state management at receiver
- NAK generation and handling adds complexity