The answer is (C). Now lets deconstruct this weirdly looking question........................
Firstly, calculating the value of $\beta$ (the maximum possible window size with window scale option) is straightforward
As defined in the TCP header's Options field, the window scale shift count has a maximum limit of 14.
Therefore, the window size can be scaled up by a maximum factor of $2^{14}$.
We know from the TCP header that the maximum unscaled window size is $(2^{16} - 1) = 65535$ bytes.
Through the TCP Window Scale Option, this can be multiplied by a shift count. Since the maximum allowed shift count in the options field is 14, our maximum scaling factor is $2^{14}$.
Therefore, the absolute maximum window size($\beta$) becomes:
$$\text{Max Window} = 65535 \times 2^{14} \text{ bytes}$$
Now, coming to the $\alpha$, it's the value of RTT in milliseconds (rounded off to the nearest integer) after which the TCP window scale option is needed, it simply means that-
"Which Threshold Value ($\alpha$) the RTT should cross, After which we will be scaling up the window to achieve maximum efficiency"
See here we have Bandwidth = $1048560\text{ bps}$.
Before scaling up we need to reach max. window size, which is $(2^{16} - 1)\text{ bytes} = 65535\text{ Bytes}$.
Now, suppose we have this much amount of data inside our window, that we are about to transmitt.
$\therefore$ The $T_d$ (Transmission Time for the whole window)
$(T_d)_w \Rightarrow \frac{8 \times 65535 \text{ bits}}{1048560 \text{ b/s}} \Rightarrow (0.5) \text{ sec.}$
Now, if we are completing our sending process by $0.5\text{s}$ and the $RTT \le 0.5\text{ sec.}$, it means till we send our last packet, we already have received some ack and now the window can slide and we can keep sending data
[so the host is never idle in this case]
But But But - - -
if the [RTT > 0.5s] — here the sender has to wait for some time before receiving all acks -
Suppose, $RTT = 0.8\text{ s}$.
$\therefore$ user is finished sending all packets by $0.5\text{ s}$
but he will receive all acks (pending) by $0.8\text{ s}$.
$\therefore$ He will have to wait for $0.3\text{s}$ without sending any data
This is the idle time we are talking about and to encounter this we actually scale-up and send a larger window.
So if $\alpha$ (the threshold value of this bottleneck RTT) = 0.5 s or 500 ms, this is where we are breakeven and we are not idle.
Now if RTT value goes beyond this $\alpha$
$\Downarrow$
Then after sending the whole window the host will surely become idle
$\Downarrow$
Then we will be needing the TCP window scale option
$\Downarrow$
So that we can enlarge the window inorder to not let the host become idle
$\Downarrow$
This increases efficiency and maximizes our goal
Now, let's relate this to Bandwidth delay product [BDP] = $BW \times RTT$
{This is the max. amount of unacknowledged data that can be put on the link at a time$\longrightarrow$ and still have $100\%$ efficiency. (no idle time)
Now if, $RTT = 0.5\text{s}$
Bandwidth = 1048560 bps.
$BDP = \frac{1048560}{8} \text{ bytes/s} \times 0.5\text{s}$
$= \frac{1048560}{16} = 65535\text{ B}$
This means that if and only if the RTT = 0.5s. Then we can put $65535\text{ B}$ on the link
$\downarrow$
So our window size becomes $65535\text{ B}$ and we get no idle time.
But, if $(RTT > 0.5)$ Then $(BDP > 65535\text{ B})$ Then,
we need a larger window size to reduce idle time
$\downarrow$
This we can achieve only by [scaling up].
so the conclusion here comes out to be:
$RTT > \alpha = 0.5\text{s}$ Then, you need to put more bytes on the link, increase the sender window size in order to compensate for that idle time where you would be waiting for ack.
Please put an upvote if you are satisfied by the answer 😀