Question

Let the size of congestion window of a TCP connection be 32 KB when a timeout occurs. The round trip time of the connection is 100 msec and the maximum segment size used is 2 KB. The time taken (in msec) by the TCP connection to get back to 32 KB congestion window is _________.

Official answer and solution
Accepted answers
1100 to 1300
From
Official GATE 2014 answer key

Solution

Follow the TCP Tahoe/Reno congestion control cycle from timeout through slow start up to ssthresh, followed by linear congestion avoidance to 32 KB.

Given parameters:

  • Congestion window when timeout occurs: cwnd=32 KB=16 MSS\text{cwnd} = 32\text{ KB} = 16\text{ MSS} (since MSS=2 KB\text{MSS} = 2\text{ KB}).
  • RTT = 100 msec100\text{ msec}.

Upon timeout:

  1. ssthresh=cwnd2=32 KB2=16 KB=8 MSS\text{ssthresh} = \frac{\text{cwnd}}{2} = \frac{32\text{ KB}}{2} = 16\text{ KB} = 8\text{ MSS}.
  2. cwnd\text{cwnd} is reset to 1 MSS=2 KB1\text{ MSS} = 2\text{ KB}.

Phase 1: Slow Start (exponential growth, doubling cwnd every RTT):

  • Start (t=0t = 0): cwnd=1 MSS=2 KB\text{cwnd} = 1\text{ MSS} = 2\text{ KB}.
  • After 1 RTT (t=100 mst = 100\text{ ms}): cwnd=2 MSS=4 KB\text{cwnd} = 2\text{ MSS} = 4\text{ KB}.
  • After 2 RTT (t=200 mst = 200\text{ ms}): cwnd=4 MSS=8 KB\text{cwnd} = 4\text{ MSS} = 8\text{ KB}.
  • After 3 RTT (t=300 mst = 300\text{ ms}): cwnd=8 MSS=16 KB=ssthresh\text{cwnd} = 8\text{ MSS} = 16\text{ KB} = \text{ssthresh}.
    Slow start ends at 3 RTTs.

Phase 2: Congestion Avoidance (linear growth, increasing by 1 MSS = 2 KB per RTT):

  • After 4 RTT (t=400 mst = 400\text{ ms}): cwnd=9 MSS=18 KB\text{cwnd} = 9\text{ MSS} = 18\text{ KB}.
  • After 5 RTT (t=500 mst = 500\text{ ms}): cwnd=10 MSS=20 KB\text{cwnd} = 10\text{ MSS} = 20\text{ KB}.
  • After 6 RTT (t=600 mst = 600\text{ ms}): cwnd=11 MSS=22 KB\text{cwnd} = 11\text{ MSS} = 22\text{ KB}.
  • After 7 RTT (t=700 mst = 700\text{ ms}): cwnd=12 MSS=24 KB\text{cwnd} = 12\text{ MSS} = 24\text{ KB}.
  • After 8 RTT (t=800 mst = 800\text{ ms}): cwnd=13 MSS=26 KB\text{cwnd} = 13\text{ MSS} = 26\text{ KB}.
  • After 9 RTT (t=900 mst = 900\text{ ms}): cwnd=14 MSS=28 KB\text{cwnd} = 14\text{ MSS} = 28\text{ KB}.
  • After 10 RTT (t=1000 mst = 1000\text{ ms}): cwnd=15 MSS=30 KB\text{cwnd} = 15\text{ MSS} = 30\text{ KB}.
  • After 11 RTT (t=1100 mst = 1100\text{ ms}): cwnd=16 MSS=32 KB\text{cwnd} = 16\text{ MSS} = 32\text{ KB}.

Total elapsed time = 11×100 msec=1100 msec11 \times 100\text{ msec} = 1100\text{ msec}.

Final answer

1100

Common trap

Continuing exponential doubling past ssthresh (16 KB), rather than switching to linear additive increase.

The answer is the one in the official GATE answer key. The solution is this site's own explanation.

Source

Paper
GATE 2014 Computer Science and Information Technology (CS) Session 1
Question
37 of 65, printed as CS Q.27
Section
Computer Science and Information Technology

Report an error in this question

GATE questions are the work of the organising institutes. This site is independent and is not affiliated with them.