Go-Back-N
Go-Back-N (GBN)
GBN permits the sender to transmit multiple packets without waiting for acknowledgments. The sender's packets are divided into four regions.
Sequence numbers in identify sent, acknowledged packets; identifies sent, unacknowledged packets; identifies packets waiting to be sent; numbers at least are unavailable.
As the protocol runs, its window slides forward through sequence space, so GBN is also called a sliding-window protocol. The receiver's window is one, so it discards all out-of-order packets.
Cumulative Acknowledgments and One Timer
Here means packet and every preceding packet have arrived in order. A later cumulative ACK advances the window even if an earlier ACK was lost. For out-of-order data, the receiver repeats the ACK for the last in-order packet.
The sender stores unacknowledged packets and maintains one timer for the oldest one. On timeout, it retransmits every packet from through and restarts the timer. This notation differs from TCP's ACK number, which identifies the next expected byte.
KNOWLEDGE QUIZ
GBN: recover a missing packet
Unlock the complete interactive lab, deeper explanations, and curated reference answers.
Finite Sequence Space
A -bit field provides sequence numbers. GBN requires ; otherwise, an old retransmission can be confused with new data after wraparound. Real implementations compare circular windows using modular arithmetic; this lesson uses increasing logical packet IDs for readable traces.
KNOWLEDGE QUIZ
Account for GBN retransmissions
GBN N=4 sends 0–3; packet 2 is lost. ACK0/ACK1 arrive, allowing 4/5 to be sent. All other data and ACKs arrive in order. List receiver actions for 3/4/5, sender base/next before timeout, retransmissions, and total transmissions to deliver 0–5.