Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Go-Back-N window size

Why in TCP's Go-Back-N Algorithm window size(N) has to be smaller than the sequence number space(S): S>N? I tried figuring it out myself but don't quiet get it

like image 727
Valera Avatar asked Feb 10 '15 23:02

Valera


People also ask

How do you calculate window size in back n?

The size of the sending window determines the sequence number of the outbound frames. If the sequence number of the frames is an n-bit field, then the range of sequence numbers that can be assigned is 0 to 2n−1. Consequently, the size of the sending window is 2n−1.

Why receiver window size is 1 in Go-Back-N?

In Go-Back-N, N determines the sender's window size, and the size of the receiver's window is always 1. It does not consider the corrupted frames and simply discards them. It does not accept the frames which are out of order and discards them.

What is window size in Go-Back-N and Selective Repeat?

Go-Back-N is a data link layer protocol that uses a sliding window method for reliable and sequential delivery of data frames. It is a case of sliding window protocol having to send window size of N and receiving window size of 1.

What is receiver window size in Go-Back-N ARQ?

It is a special case of the general sliding window protocol with the transmit window size of N and receive window size of 1. It can transmit N frames to the peer before requiring an ACK. The receiver process keeps track of the sequence number of the next frame it expects to receive.


1 Answers

Assume that sequence space was four (sequence numbers 0,1,2,3). Lets say window size was also 4. Sender sends 4 packets with sequence numbers (0,1,2,3). Receiver receives all four packets. So it sends 4 acknowledgements(0,1,2,3). Now assume all acknowledgements are lost. Sender will resend all four packets but receiver will assume they're the new ones. To avoid confusions arising from lost acknowledgements, we keep n < s

like image 67
Abhay Aravinda Avatar answered Sep 17 '22 18:09

Abhay Aravinda