2.8k views
Consider a network connecting two systems located $8000$ $\text{Km}$ apart. The bandwidth of the network is $500 \times 10^6$ $\text{bits}$ per second. The propagation speed of the media is $4 \times 10^6$ $\text{meters}$ per second. It needs to design a Go-Back-$N$ sliding window protocol for this network. The average packet size is $10^7$ $\text{bits}$. The network is to be used to its full capacity. Assume that processing delays at nodes are negligible. Then, the minimum size in bits of the sequence number field has to be ______.
edited | 2.8k views

In order to achieve full utilization, sender has to keep on sending frames till
the acknowledgement arrives for the first frame.

Time taken for acknowledgement to arrive is $2$ times propagation delay $+$ transmission time for a frame.

One way propagation time $=\dfrac{8000\times 10^3}{(4\times 10^6)}= 2\text{ secs}$

Time taken to transmit one frame $=\dfrac{10^7}{(500\times 10^6)}=0.02\text{ secs}$

So, RTT $=2\times 2 = 4$

No of frames that can be transmitted in $4$ secs $=\dfrac{4}{0.02}=200$

Hence, minimum number of bits required for sequence numbers till $200$ is $8$ (as $2^8 = 256$ )

edited
+26
I think it should be seq no for 201 packets not just 200

as 200 packets in RTT plus 1st packet too

although answer will be same 8 bits

but might be useful in some boundary cases of some other ques on the same concept
+47
Actually u are partially correct.

Ws = (Tt + 2Tp) = 201 packets

Wr = 1 (GBN)

No. of seq. nos. req = Ws + Wr = 201 + 1 = 202.

Obv. the answer will still be the same = 8 bits.

Isn't the minimum sequence number $\geq$ SWS+RWS.
So we are getting $201$ for the sender window and since we are using $\text{GBN}$
we should add $1$ as the RWS.

So total sequence number $\geq 201+1 =202.$

Answer will still remain 8 though

edited
0

can you help me in calculation part?  here how the sender window size is 201?

0
correct

to know  the minimum size in bits of the sequence number field when the The network is to be used to its full capacity we need to send until RTT time.

propagation speed is given by which we can find propagation time ...
to travel 4x10^6 meters its take 1 second
so for 8x10^6 meters it will take 2 second which is our propagation time

now our RTT will be  2*PT=2*2=4 second

now we can find that in 4 second how much data we can transfer using Bandwidth.
in 1 second we transferring 500x10^6 bits
so in 4 second  we will transfer 500x10^6 bits*4=200x10^7 bits
now we can find the total no packets to be transfer (window size) =200x10^7 bits/10^7=200 packets
to represent 200 we need 8 bits which is our answer

+2
We have to consider Ws as number of packets send in $T_{t}+2T_{p}$ time and not $2T_{p}$ alone.(as given network is used to full capacity)

ie, in 2*2+0.02 =4.02s --> 4.02*500*$10^{7}$= 201 x $10^{7}$ bits

Number of packets =$\frac{201 * 10^{7}bits }{10^{7}bits (length of packet)}$=201

Total sequence numbers required=Ws(201)+Wr(1)= 202

Number of bits for sequence number =8
Can we not use the formula for Utilization here it is fully utilized so 1=N/1+2a that way N=201 no of bits required in go back n for window size is 2^k-1=201..k-8 bits
0
we can use..as N = SEQUENCE NO
+1
even my doubt also same ..why can't we use full utilization formula at that case no.of available sequence numbers is 202.

if this is wrong what is the difference between full utilization of network and full capacity ?

+1 vote
Given $T_{processing}=0,Transmission_{ack}=0$

My total RTT here is $T_{data}+T_{prop}+T_{prop}=T_t+2*T_p$

My useful time will only be $N*T_{data}$ where $T_{data}$ will be transmission time for one frame.

so my efficiency

$\frac{N*T_{data}}{RTT}=\frac{T_{data}*N}{T_{data}+2*T_{prop}}=\frac{N}{1+2*\frac{T_p}{T_t}}=\frac{N}{1+2a}$

so, my efficiency would be 100% only if I send 1+2a packets into network in RTT time.

This 1+2a comes to be 201.

Now, this is the sender's window size. Receiver window size would be 1. So, the total you would need 202 distinct sequence numbers for frames and this requires $\lceil log_2202 \rceil = 8$ bits
0
how it is 8
0

In order to achieve full utilization, sender has to keep on sending frames till the acknowledgement arrives for the first frame.

Time taken for acknowledgement to arrive is 2 times propagation delay.

(we can ignore transmission delay at receiver as it is negligible)

One way propagation time = 8000x10^3 / (4x10^6)

= 2 secs

Time taken to transmit one frame = 10^7/(500x10^6)

=0.02 secs

No of frames that can be transmitted in 4 secs  = 4/0.02

=200

Hence minimum number of bits required for sequence numbers till 200 is 8 (as 2^8 = 256)

+3
So, total number of frames that can be sent = 200 + 1 =201.