Dark Mode

20,748 views

34 votes

Suppose that the stop-and-wait protocol is used on a link with a bit rate of $64$ $\text{kilobits}$ per second and $20$ $\text{milliseconds}$ propagation delay. Assume that the transmission time for the acknowledgment and the processing time at nodes are negligible. Then the minimum frame size in bytes to achieve a link utilization of at least $50$ $\text{%}$ is_________________.

2

64 votes

Best answer

Link Utilization $=\dfrac{\text{Amount of data sent}}{\text{Max. amount of data that could be sent}}$

Let $x$ be the frame size in bits.

In stop-and-wait protocol, once a frame is sent, next frame won't be sent until ACK is received.

Time for this,

RTT $=\text{Propagation delay for frame + Transmission time for frame}$

$\qquad\text{+ Propagation delay for ACK + Transmission time for ACK}$

$= 20\ \text{ms} +\dfrac{ x }{64\ \text{ms}}+20\ \text{ms} + 0$ (as given in question)

$=\left(40 +\dfrac{x}{64}\right)\ \text{ms}$.

Amount of data sent during RTT $= x$

Max. amount of data that could be sent $ = \left(40 +\dfrac{x}{64}\right)\times 64=2560+x\ \text{bits}$.

So, link utilization,$0.5 = \dfrac{x}{(2560 + x)}$

$x= 2560\ \text{bits} = 320\ \text{bytes}$.

**Alternative Approach ,**

Link utilization or efficiency of stop and wait protocol is ,

efficiency $=\dfrac{T_x}{(T_x + 2T_p)}=\dfrac{1}{\left(1+2\left(\dfrac{T_p}{T_x}\right)\right)}=\dfrac{1}{(1 +2a)},$

where , Transmission time $=T_x=\dfrac{\text{packet size}}{\text{bandwidth}}=\dfrac{L}{B}$

Propagation time$=T_p=\dfrac{\text{distance}}{\text{speed}}=\dfrac{d}{v},$ and

$a=\dfrac{\text{Propagation time}}{\text{Transmission time}}=\dfrac{T_p}{T_x},$

Now for $50\%$ efficiency ,

efficiency $=\dfrac{1}{(1+2a)}$

$50\%=\dfrac{1}{(1+2a)}$

$\dfrac{1}{2}=\dfrac{1}{(1 +2a)}$

$2=(1+2a)$

$2-1=2a$

$1=2\left(\dfrac{T_p}{T_x}\right)$

$T_x =2\times T_p$

$\dfrac{L}{B}=2\times 20\ \text{ms}$

$L=2\times 20\ \text{ms} \times B=2\times 20\times 10^{-3}\times 64\text{ k bits}$

$ =2\times 20\times 10^{-3}\times 64\times 10^3\ \text{bits}$

$L=40\times 64\ \text{bits} = 40\times \dfrac{64}{8}\ \text{bytes} = 40\times 8\ \text{bytes} = 320\text{ bytes (answer)}$

@JAINchiNMay Don’t think answer debate option was there during GATE 2015. May be this question was a motivation for adding that :)

1

3 votes

let x be Bandwidth delay product = $2*T_{propagation}*BW$

$\Rightarrow$ Bandwidth delay product = $2*20*10^{-3}*64*10^{3}$ = $2560 bits$

Now,Let y be the length of packet.

$\frac{y}{x} >= \frac{1}{2}$

$\Rightarrow$ $y >= \frac{2560}{8*2}$Bytes

Therefore length of packet should be atleast $160 bytes$.

**We end up with a wrong answer if include Transmission delay in RTT! But Forouzan has not included Transmission delay in his examples. Moreover if you don't include Transmission delay in RTT you will come up with 16 as an answer for the question in the following link which is wrong. (Same year question). This is ambiguity. **

edited
Aug 30, 2018
by meghna

@ Aghori as per your given definition and the way @reena_kandari has derived LU=1/(1+2a), we can say that it is link efficiency too. As both giving same result. Than how are they different? plz clear

@reena_kandari so for this question, if we follow Arjun Sir approach than correct ans is 320 B since Tt for sending frame isn't negligible and we have to include this in RTT? please correct me.

0

2 votes

on evaluation above we get

tf +2tp = 2tf

tf = 2tp , and we know that tf = length / bandwidth,

length/bandwidth = 2tp

length = 2tp * Bandwidth

length = 2 * 20 ms * 64kilobits persec

length = 2560 bits

length = 2560/8 = 320 bytes.