178k views
3 votes
As we have explained in the text, the TCP sliding window, when used without new SACK options, is a combination of the Go-Back-N and the SelectiveRepeat protocols. Explain which aspects of the TCP sliding window are close to the Go-Back-N and which aspects are close to the Selective-Repeat protocol.

User Goro
by
8.5k points

1 Answer

3 votes

TCP sliding window protocol incorporates Go-Back-N aspects in its method of resending packets after a loss and resembles Selective-Repeat by allowing out-of-order packet acknowledgments. However, it doesn't fully function as Selective-Repeat without additional SACK options.

In the TCP sliding window protocol, the aspect that resembles the Go-Back-N protocol is related to error recovery. When a single packet is lost, the receiver cannot acknowledge packets that arrive after the missing packet. Consequently, the sender must go back and retransmit not just the missing packet, but all subsequent packets in the window. This is the Go-Back-N component of TCP's sliding window, where the need to resend a batch of packets aligns with the Go-Back-N logic.

In contrast, the semblance to the Selective-Repeat protocol arises from the receiver's capability to acknowledge individual packets received out of order. It can hold these packets in the buffer and wait for the missing packets to arrive, thereby allowing the sender to selectively repeat transmissions of only the lost or corrupted packets. This process reduces the amount of unnecessary retransmissions compared to pure Go-Back-N strategy, but without new SACK options, the TCP sliding window cannot fully utilize selective acknowledgments to their full extent as true Selective Repeat protocols do.

TCP sliding window incorporates features from both Go-Back-N and Selective Repeat protocols, balancing the robustness of Go-Back-N with some of the efficiency of Selective Repeat.

User Annabel
by
7.5k points