89 views
Consider a error free satellite channel of 84 Kbps used to send 256 byte data frames in one direction, with very short acknowledgments coming back the other way, propagation time is 150 msec, what is the minium window size to that the channel is fully utilized ________.

what will be the correct answer for above question
| 89 views
0
I will round up if I encounter this question. Unless I find something claiming otherwise in the next 15 days :)
0
Okay... :)
0

In the interest of utilizing the link fully, you've already transmitted 13.43 frames. i.e. you're in the process of sending the 14th frame.

but packets are discrete. So it really doesn't make sense to say "in process".

Also, even if we decided to send $14$ packets, will the last packet even reach to the destination?  The line is physically incapable of handling more than $13.3$ packets, so the last packet will be dropped anyway. Also networks is rather practical subject, so more than $100%$ efficiency is impossible.

Hence, it makes sense to floor it rather than ceiling it?

if you've come across ceiling, will it be possible for you point to the literature where they've preferred ceil in this situation?

+1

A failure to find good, quotable literature is why there was a healthy discussion above without a concrete solution..

Here's my understanding of "fully utilizing". Let me know what you think.

Sender sends a packet. Takes time $T_t$. Now, you keep transmitting until you hear back from the receiver, i.e. an ACK. Depending on the organization, this takes various amounts of time - in this example, say it is $2T_p$. Now, based on the data in this question - you have sent 13 whole packets - no doubt. You are in the process of transmitting the 14th packet - i.e. the 14th $T_t$, which is when the sender receives the first ACK.

Now, what will decide the optimal window size ?

1. Sender senses the ACK, terminates the transmission abruptly. Window size is 13.
2. Sender senses the ACK, finishes the current transmission. Window size is 14.
3. Sender is preemptively able to calculate all this beforehand, and sets window size at 13.

Out of all these, I just felt the 2nd one is more practical, and doable.

Here is an old answer posted by Arjun on GO - https://gateoverflow.in/19905/window-size-in-sliding-window-protocol. Similar example which resulted in fractional frame sizes and was rounded up.

For maximum utilization the sender must send frames until ACK comes back. i.e., the frames must be sent until RTT.

Now, sender must send frames until $590ms$. Time to send 1 frame = 40 ms. So, no. of frames required $=\left \lceil \frac{590}{40} \right \rceil = 15$. So, window size must be >= 15 frames.

If you find something otherwise, please share. This has been a thorn in the side for too long !

0

Now, sender must send frames until 590ms590ms. Time to send 1 frame = 40 ms. So, no. of frames required =⌈59040⌉=15=⌈59040⌉=15. So, window size must be >= 15 frames.

@shashin But why window size must be >= 15? Should'nt it be <=15