in Computer Networks edited by
18,812 views
47 votes
47 votes

Suppose two hosts use a TCP connection to transfer a large file. Which of the following statements is/are FALSE with respect to the TCP connection?

  1. If the sequence number of a segment is $m,$ then the sequence number of the subsequent segment is always $m+1.$
  2. If the estimated round trip time at any given point of time is $t$ sec, the value of the retransmission timeout is always set to greater than or equal to $t$ sec.
  3. The size of the advertised window never changes during the course of the TCP connection.
  4. The number of unacknowledged bytes at the sender is always less than or equal to the advertised window.
  1. III only
  2. I and III only
  3. I and IV only
  4. II and IV only
in Computer Networks edited by
18.8k views

13 Comments

Tanenbaum Exercise problems.
10
10
can you please provide the pdf of tanenbaum?
2
2
18
18
someone plz, explain the option no 4, i already go through pdf but still i didn't get it.
0
0

Hello hacker

the upper bound for number of UnAck bytes at sender is actually SWS(sender window size) and hope you know SWS must be less than the advertised window.

Useful link : https://web.cs.wpi.edu/~rek/Undergrad_Nets/C02/TCP_SlidingWindows.pdf

11
11
tcp is byte stream protocol.

suppose tcp sequence number 120 and send 20 byte of data then next sequence number will be 120+40=160.
1
1
Thanks BIkram
0
0

“To Accept the Packet at the Server End “

 

  1. The number of unacknowledged bytes at the sender is always less than or equal to the advertised window. 
0
0

 In this question’s option 4 I am bit confused please help me understand. I understand it as follows 

“The number of unacknowledged bytes at the sender is always less than or equal to the advertised window.”

          The number of unacknowledged bytes = sender window size (at that instance)

Is it correct or not ? As other way don't make sense to me.

0
0
edited by

@codeitram 

You can refer to above PDF  posted by @Rupendra Choudhary

Important  points from PDF are -

  1. Sender cannot have number of non acknowledged frames more than sender window size.

e.g. if sender window size is 1000 bytes , it cannot have unacknowledged bytes more than 1000

LastByteWritten – LastByteAcked <=MaxSendBuffer


  1. AdvertisedWindow = MaxRcvBuffer -(LastByteRcvd - LastByteRead)

Advertised Window gives the amount of free space available in the receive buffer

e.g if maximum receiver window size is 1000 bytes and  till 500 are received then 500 bytes are free space hence advertised window is 500.

3.TCP sender must adhere to Advertised Window from the receiver such that

LastByteSent – LastByteAcked <= AdvertisedWindow  (answer to given question)

e.g if free space available is 500 bytes(advertised window), sender cannot have no. of unacknowledged bytes more than free space at that instant and also it is limited by 1000 which is .sender window size (from point 1)

4. if AdvertisedWindow – (LastByteSent– LastByteAcked) >0 then only sender can send more data

e.g.

advertised window(free space) is 500 bytes and unacknowledged data bytes are  300 then 500-300=200 i.e. 200>0 , sender can send more data

else if unacknowledged bytes are 500 and advertised window is also 500 then (500-500)=0….sender application  has to block since receiver do not have free space.

4
4

First of all thank you so much for your response, I appreciate it.

So I asked wether saying sender window size = no of acknowledge bytes at that instance is correct as you explained.

I got this doubt because I thought that sender could have any amount of data to send as it depends on application program, but turns out that amount of data sender could send constrained by window size is referred as “unacknowledged bytes at the sender” and this resolves all the quiries. Thanks again!

0
0
edited by

@codeitram ..Just to be sure for your doubt  …

unacknowledged bytes = sender window size

equal to is not correct here……

it should be <=

reference:

 LFS(sequence number of last frame sent)

LAR(last sequence number for which acknowledgment is received)

 

0
0

For more understanding, here is a link to a short video lecture by IITB professor Mrs Kameswari.

https://www.youtube.com/watch?v=2uMolhFyH9U&list=PL-bZp8Qhr-SZG08n3IeXT8R5hafSg_jIv&index=14.

0
0

9 Answers

35 votes
35 votes
Best answer

Option B

III. False. It is the size of the receiver's buffer that's never changed. RcvWindow is the part of the receiver's buffer that's changing all the time depending on the processing capability at the receiver's side and the network traffic.

http://web.eecs.utk.edu/~qi/teaching/ece453f06/hw/hw7_sol.htm

selected by

4 Comments

@Tendua 

 f) Suppose that the last sample RTT in a TCP connection is equal to 1 second. Then timeout for the connection will necessarily be set to a value >= 1 second. 
FALSE

           Here last sample RTT means ARTT that comes when we guess IRTT and ID intially.

           ARTT = Actual RTT

           IRTT = Intial guess RTT

           NRTT = estimated round trip time 

           Quoted statement is false because timeout for connection is depend on what is estimated                             RTT(NRTT)  not only last sample RTT(ARTT)

           eg for last round RTT comes as 10 so retransmission timeout for next round RTO = 4* D + NRTT

           Here NRTT = alpha(ARTT) + (1-alpha)(IRTT)

           Hence RTO >= NRTT(estimated RTT)

 

If the estimated round trip time at any given point of time is t sec, the value of the retransmission timeout is always set to greater than or equal to t sec.

TRUE

3
3

@GATERush Sir can u please explain this point of link mentioned by you. 

e) Suppose host A sends host B one segment with sequence number 38 and 4 bytes of data. Then in the same segment the acknowledgement number is necessarily 42.
False. The acknowledgement number has nothing to do with the sequence number. The ack. number indicates the next sequence number A is expecting from B.

Is Sequence number for next byte (that is demanded by the receiver as ACK number) is Seq. number sent by the sender + data ? According to link it is not. Please give me idea about relation of all these terms. Thank you !

0
0
Thanks @jatin khachane1

First I also thought b is false but your comment clear my doubt

TOT depends on estimated RTT not on sample RTT
0
0
30 votes
30 votes

This problem is taken from tanenbaum exercise .

I is directly taken , see 2 d) here http://web.eecs.utk.edu/~qi/teaching/ece453f06/hw/hw7_sol.htm

II is also in above link but indirectly , see  2 f) 

III  it is also direct from tanenbaum, see above link 2 b) 

IV Indirectly taken , see question number  2 c) 

4 Comments

Sir I have quoted 2f itself. It says false.
0
0
I have quoted 2f itself. It says false ....
0
0

in that link  they are saying about the estimated RTT and in the question we are asked about the timeout value so the timeout value will be always greater than the RTT  but the estimated RTT need not be greater than any of the initial or new RTT’s.

0
0
13 votes
13 votes
1.False : because in tcp every byte is numbred and header contains the sequence number of 1st byte so sequence number in 2nd packet will be the next sequence number of last bit in 1st packet.

2. true:consider either the basic algorithm or jacobsn algorithm the value of timeout is always set > rtt for next transmission.

3.false: adv value in tcp header is dynamically changed by receiver each time.

4.true: window size at the receiver is always less than or equal to re1ceiver window size and thus the number of unacknowleged bytes can never exceed advertized window at that time.
11 votes
11 votes

Option B.
Reason for I to be wrong: The sequence number of the subsequent segment depends on the number of 8-byte characters in the current segment. Transfer in TCP is byte ordered.

1 comment

Should it not be number of  8 bit(1 byte) characters in current segment. as each byte gets a sequence number .

1
1
Answer:

Related questions