edited by
29,915 views
87 votes
87 votes

Frames of $1000\text{ bits}$ are sent over a $10^6$ bps duplex link between two hosts. The propagation time is $25ms$. Frames are to be transmitted into this link to maximally pack them in transit (within the link).

Let $I$ be the minimum number of bits $(I)$ that will be required to represent the sequence numbers distinctly assuming that no time gap needs to be given between transmission of two frames.

Suppose that the sliding window protocol is used with the sender window size of $2^{I}$, where $I$ is the numbers of bits as mentioned earlier and acknowledgements are always piggy backed. After sending $2^I$ frames, what is the minimum time the sender will have to wait before starting transmission of the next frame? (Identify the closest choice ignoring the frame processing time)

  1. $16ms$
  2. $18ms$
  3. $20ms$
  4. $22ms$
edited by

7 Answers

Best answer
122 votes
122 votes

Bandwidth won't be halved in full duplex. http://superuser.com/questions/335979/does-1-gbit-s-port-in-full-duplex-mean-1-gbit-s-send-and-1-gbit-s-receive

Propagation time is given as $25$ ms.
Bandwidth $= 10^6$ bps.
So, to fully utilize the channel, we must send $10^6$ bits into the channel in a second, which will be $1000$ frames per second as each frame is $1000$ bits. Now, since the propagation time is $25$ ms, to fully pack the link we need to send at least $1000 \times 25  \times 10^{-3}= 25$ frames. So, we need $⌈\log_2  25⌉ = 5$ bits.

$I = 5$, so $2^I = 32$ frames are sent.

Now, we need to get RTT (which is the time between which a frame is sent and its ACK is received), to determine the waiting time.
Transmission time (for a frame of size $1000$ bits) $= 1000/10^6 = 1$ ms.
So, transmission time for $32$ frames $= 32$ ms.
RTT $=$ Propagation time for frame $+$ Transmission time for frame $+$ Propagation time for ACK $+$ Transmission time for ACK

$ = 25$ ms $+ 1$ ms $+ 25$ ms $+ 1$ ms (ACK is piggy backed and assuming frame size for piggy backing is also $1000$ bits)
$= 52$ ms
So, waiting time $= 52 - 32 = 20$ ms. (For the $32$ ms, the sender was transmitting and not waiting)
Correct Answer: $C$

edited by
18 votes
18 votes

Given, propagation time =25 ms.

Time required to transmit 1 frame = 1000 bits (frame size)/ 106 bps(bandwidth) = 1 ms

To fully utilize the channel, we need to transmit frames for propagation time(25 ms), 25 frames.

therefore, minimum no. of bits required for numbering 25 frames is = log 2(25) = 5 bits.

We need to calculate minimum waiting time after sending 2 frames (32 frames) to initiate transmission of next frame, for that we need to understand for what time sender is in busy mode and for what time sender is in waiting mode.

Sender is in busy mode during transmission of all the 32 frames, that means, for 32 ms.

after transmission sender is in waiting mode which is

= ( time required to get the ack for 1st frame ) - ( time for which sender is busy)

= (1+25+1+25) - (32) = 20 ms.

1+25+1+25 = transmission time for 1st frame + propagation time for frame + transmission time for ack as it is piggy backed + propagation time for ack

 
14 votes
14 votes

This might help.

3 votes
3 votes
Size of sliding window = 2^5 = 32
Transmission time for a frame = 1ms
Total time taken for 32 frames = 32ms
The sender cannot receive acknoledgement before round trip time which is 50ms
After sending 32 frames, the minimum time the sender will have to wait before starting transmission of the next frame = 50 – 32 = 18
1------------25------32(last frame)----------50(first ack receive) so waiting time is (50-32) = 18ms(using pipelining)
Please any one correct me if I am wrong..
edited by
Answer:

Related questions