Redirected
edited by
9,843 views
12 votes
12 votes

Suppose you are asked to design a new reliable byte-stream transport protocol like $\text{TCP}.$ This protocol, named $\textsf{myTCP}$, runs over a $100 \mathrm{~Mbps}$ network with Round Trip Time of $150$ milliseconds and the maximum segment lifetime of $2$ minutes.

Which of the following is/are valid lengths of the Sequence Number field in the $\textsf{myTCP}$ header?

  1. $30$ bits
  2. $32$ bits
  3. $34$ bits
  4. $36$ bits
edited by

5 Answers

11 votes
11 votes

Answer: B, C, D

Given bandwidth = $100 \text{ Mbps}$

$1 \text{ second} = 100*10^6 \text{ bits} = 125 * 10^5 \text{ bytes}$

$\text{In 120 seconds} = 15000 * 10^5 \text{ bytes}$  

Lifetime of a segment is $120$ seconds, and in that period $15*10^8 \text{ bytes}$ are generated,

So, $\text{# sequence number bits} \geq \lceil log_2(15*10^8) \rceil = \lceil (30.48) \rceil = 31 \text{ bits}$

3 votes
3 votes

The question asks about a hypothetical protocol called myTCP, which runs over a 100 Mbps network with a round-trip time of 150 milliseconds and a maximum segment lifetime of 2 minutes. You're asked to determine the valid lengths of the sequence number field in the myTCP header, with options being 30, 32, 34, or 36 bits​1​.

The calculation of the sequence number field size is based on the maximum amount of data that can be in flight in the network. Since the maximum segment lifetime is 2 minutes (or 120 seconds), we need to calculate how much data can be sent over the network in this time.

Given the bandwidth of 100 Mbps, 1 second translates to 100*10^6 bits, or 125 * 10^5 bytes. Hence, in 120 seconds, we can send 15000 * 10^5 bytes.

The sequence number field needs to be large enough to assign a unique number to each byte that could be in flight. This means we need a field size that can represent up to 15000 * 10^5 bytes. Taking the base-2 logarithm of this number (to get the number of bits required to represent this many distinct values) and rounding up to the nearest integer (since we can't have a fraction of a bit), we find that we need at least 31 bits.

Therefore, the valid lengths for the sequence number field in the myTCP header are 32 bits, 34 bits, and 36 bits, corresponding to options B, C, and D​

2 votes
2 votes
lets assume sequence bit as s . now , window size is 2^x as with these sequence number we can differentiate every byte . MSL is 120 sec . now the time taken when BW is 100Mbps is 2^x / 100Mbps .

this value must be greater than 120seconds so that if an packet will get dealyed then it will be expired and cant be taken by host . 2^x / ( 100 x 10^6) > 120 . x >30 . Hence answer will be B,C,D .
1 votes
1 votes
Suppose you are asked to design a new reliable byte stream transport protocol like TCP.  

This protocol, named as myTCP, runs over a 100 mbps network with round trip time of  

150 milliseconds and max segment lifetime of 2 minutes.  

Which of following valid length of the sequence number field in the myTCP header?  

(a) 30 bit (b) 34 bit  

(c) 32 bit (d) 36 bit  

Ans. (b, c, d)  

 

Question 4.2.4

@goclasses
Answer:

Related questions