1100ms or 1200ms ?

The Gateway to Computer Science Excellence

First time here? Checkout the FAQ!

x

+35 votes

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 _________.

+88 votes

Best answer

**Answer: **Given that at the time of **Time Out**, Congestion Window Size

is $32KB$ and **RTT** = $100ms$,

When Time Out occurs, for the next round of Slow Start,

Threshold = $\dfrac{\text{size of congestion window}}{2}$ ,

Threshold = $16KB$

Suppose we have a **slow start** $\Rightarrow2KB \mid 4KB \mid 8KB \mid 16KB$

(As the threshold is reached, Additive increase starts)

$\mid 18KB \mid 20KB \mid 22KB \mid 24KB \mid 26KB \mid 28KB \mid 30KB \mid 32KB$

Here | (vertical line) is representing **RTT** so the total number of vertical lines is

$11\times 100ms=1100 msec$ and so this is the answer.

0

Do we always add by MSS in the linear increase phase?

here we have added by 2.

while we have added 1 in:

gateoverflow.in/2156

even though the mss is 2 there also. i didnt understand this thing.

+6

There is a difference in the two...

here MSS size is 2KB i.e. every time 1MSS sent means 2 KB data is sent so either you write in terms of MSS by adding 1 or in terms of data adding 2KB

the question in the link has started with window size (which is 2MSS). The AIMD algorithm is applied when the segment being sent is lost or data size reaches threshold. We generally start from slow start phase i.e.

1st transmission 2MSS

2nd 4MSS

3rd 8MSS

now since it reached threshold

4th 9MSS (as per AIMD increasing by 1)

5th 10MSS (segment lost)

new threshold 10/2 i.e. 5MSS and transmission starts with 2MSS

6th 2MSS

7th 4MSS

8th 5MSS

9th 6MSS

10th 7MSS

here MSS size is 2KB i.e. every time 1MSS sent means 2 KB data is sent so either you write in terms of MSS by adding 1 or in terms of data adding 2KB

the question in the link has started with window size (which is 2MSS). The AIMD algorithm is applied when the segment being sent is lost or data size reaches threshold. We generally start from slow start phase i.e.

1st transmission 2MSS

2nd 4MSS

3rd 8MSS

now since it reached threshold

4th 9MSS (as per AIMD increasing by 1)

5th 10MSS (segment lost)

new threshold 10/2 i.e. 5MSS and transmission starts with 2MSS

6th 2MSS

7th 4MSS

8th 5MSS

9th 6MSS

10th 7MSS

0

we have to increment the window size or maximum segment size?

whats the difference/relation?

sorry, i am still having confusion

whats the difference/relation?

sorry, i am still having confusion

+4

we start the slow start phase with the window size given.....but after the threshold we always increase by 1MSS

0

MSS will be constant through out the data transfer between two hosts, when sender and receiver comes to an agreement of maximum segment size, it will be fixed, in ipv4 536 octets will be by default and in ipv6 1200 octets,

we will be changing the window size accordingly, note that sender and receiver buffers are of constant size,but window sizes will be changing.

we will be changing the window size accordingly, note that sender and receiver buffers are of constant size,but window sizes will be changing.

+5

1 MSS = 2KB

w_{c} = 32 KB = 16 MSS

Th = 8 MSS

Timeout occurs when W_{C} = 16MSS. The time taken **(in msec)** by the TCP connection to get back to 32 KB (OR 16 MSS) congestion window is _________.

16MSS|^{ }1MSS| 2MSS | 4MSS| 8MSS | 9MSS| 10MSS| 11MSS| 12MSS| 13MSS| 14MSS|15MSS| 16 MSS

Therefore, The time taken **(in msec)** by the TCP connection to get back to 32 KB (OR 16 MSS) congestion window is 12 * RTT = 12 * 100 ms = 1200 ms.

Isn't my solution correct? Please guide me if I am wrong.

0

i have a doubt here ... When timeout occur then size of congestion window changes to half of previous congestion window not threshold value changes to half of Congestion window (Threshold is already half of congestion).

Correct me if i m wrong.

Correct me if i m wrong.

0

when timeout occure new threshhold is calculated which is half of present window and Slow start phase is start . so we have given question in which till 32kb data is send and timeout occure.

if it ask Let the size of congestion window of a TCP connection be 32 KB when a Three duplicate Ack are recived.

here we have to used congetion avoidence by doing half of threashhold not Slow start.

0

2KB should be after 1RTT.

then why the ans counted first RTT in between 2KB and 4KB?

shouldnot total RTT be 12?

Without 1RTT how could we get 2KB at first?

then why the ans counted first RTT in between 2KB and 4KB?

shouldnot total RTT be 12?

Without 1RTT how could we get 2KB at first?

+11 votes

After timeout, new threshold = 32KB/2 = 16 KB, which is 8MSS (as size of MSS = 2KB).

So the transfer proceeds as

1 - 1MSS (2KB)

2 - 2MSS (4KB)

3 - 4MSS (8KB)

4 - 8MSS (16KB) <--- threshold

5 - 9MSS (18KB)

6 - 10MSS (20KB)

7 - 11MSS (22KB)

8 - 12MSS (24KB)

9 - 13MSS (26KB)

10 - 14MSS (28KB)

11 - 15MSS (30KB)

12 - 16MSS (32KB)

Hence total time = RTT * 11 = 1200ms

So the transfer proceeds as

1 - 1MSS (2KB)

2 - 2MSS (4KB)

3 - 4MSS (8KB)

4 - 8MSS (16KB) <--- threshold

5 - 9MSS (18KB)

6 - 10MSS (20KB)

7 - 11MSS (22KB)

8 - 12MSS (24KB)

9 - 13MSS (26KB)

10 - 14MSS (28KB)

11 - 15MSS (30KB)

12 - 16MSS (32KB)

Hence total time = RTT * 11 = 1200ms

0

Isnt the condition for slow start **cwnd <= ssthresh **so at t=5 woulsnt the cwnd be 32 KB or 10 MMS. Linear growth will be starting only from t=6 , isnt it??

+2

@ vamsi2376 The Question is "**The time taken (in msec) by the TCP connection to get back to 32 KB congestion window is _________ " **It means after how many RTTs we can transmit with a capacity 32 KB i.e. all RTTs before reaching 32 KB Capacity (excluding the RTT needed to transmit 32 KB) which is 11 RTTs

=> 11* 100=1100 ms.

+8 votes

+1 vote

Congetion Windows size=32KB

Th=32/2=16

MSS=2

2 | x1 | 4 |x2| 8 |x3| 16|x4| 18 |x5| 20 |x6| 22 |x7| 24 |x8| 26 |x9| 28 |x10| 30|x11| 32

Where xi=100ms

So total time =100*xi(11 times)=1100ms

Th=32/2=16

MSS=2

2 | x1 | 4 |x2| 8 |x3| 16|x4| 18 |x5| 20 |x6| 22 |x7| 24 |x8| 26 |x9| 28 |x10| 30|x11| 32

Where xi=100ms

So total time =100*xi(11 times)=1100ms

0 votes

WSsize =32KB

threshhold value = 32/2=16 KB

as MSS = 2KB

START FROM 2 KB

2, 4 , 8, 16(THRESH HOLD VALUE),17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32

NOW CALCULATE RTT BETWEEN ABOVE = 19 + 1= 20

THESE +1 IS BECAUSE GET BACK TO 32 AS MENTION INTO THE QUESTION

threshhold value = 32/2=16 KB

as MSS = 2KB

START FROM 2 KB

2, 4 , 8, 16(THRESH HOLD VALUE),17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32

NOW CALCULATE RTT BETWEEN ABOVE = 19 + 1= 20

THESE +1 IS BECAUSE GET BACK TO 32 AS MENTION INTO THE QUESTION

- All categories
- General Aptitude 1.3k
- Engineering Mathematics 5.2k
- Digital Logic 2k
- Programming & DS 3.7k
- Algorithms 3.2k
- Theory of Computation 4k
- Compiler Design 1.6k
- Databases 3k
- CO & Architecture 2.6k
- Computer Networks 3k
- Non GATE 1k
- Others 1.3k
- Admissions 486
- Exam Queries 435
- Tier 1 Placement Questions 18
- Job Queries 56
- Projects 9

36,157 questions

43,608 answers

123,961 comments

42,860 users