# Sliding Window Protocol, waiting Time calculation

With regard to this explanation in finding Round Trip Time I tried attempting the following question

Question

Frames of $1000$ bits are sent over a $10^6$bps duplex link between two hosts. The propagation time is $25$ ms. 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^l$ , 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.)

NB : $I$ is found to be 5 bits from the link mentioned above

My Approach

Propogation TIme (given) = 25ms

Bandwidth (given)= $10^6$ bps

So, to fully utilize the channel, we must send 106 bits into the channel in a second, which will be 1000 frames per second as each frame is 1000 bits

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

Transmission time (for a frame of size 1000 bits) = $\frac{1000}{106} = 1$ ms. So, transmission time for $32$ frames = $32$ ms.

$R_{TT}$ (Round Trip Time ) as calculate in the above link is 25ms. Hence the Waiting time would be $32-25=7ms$

But actual answer is given as $20$ms

What is the correct approach to this question ? please explain in detail how $R_{TT}$ should be calculated

You have not calculated the $R_{TT}$ you just used the Propagation Time that a frame needs to travel one way of the duplex link.
This is how you calculate the $R_{TT}$:
$R_{TT} =$ [Propagation time for frame] + [Transmission time for frame] + [Propagation time for ACK] + [Transmission time for ACK]
Since ACK is piggybacked we assume that its frame size will also be 1000bits, so the $R_{TT}$ is:
$R_{TT} = 25ms + 1ms + 25ms + 1ms = 52ms$
Therefore waiting time is: $52ms - 32ms = 20ms$