Description

5/5 - (2 votes)

 

Problem 1

 

 

 

Figure 1: TCP congestion control.

 

Assume that a TCP connection has been running between hosts A and B for sometime, so that the number of RTTs shown in the above graph are with respect to the time when you started observing the the cwnd value of this connection. Hosts A and B use TCP Reno (with Fast Retransmit and Fast Recovery).

 

  1. On the graph above, identify the time periods when TCP slow start is operating.

 

  1. On the graph above, identify the time periods when TCP congestion avoidance is operating (AIMD).

 

  1. For each loss event, specify whether it was detected by a triple duplicate ACK or by a timeout

 

  1. For each loss event, indicate the value of the slow start threshold (ssthresh)

 

Write your answer here

 

 

 

 

 

 

Problem 2

 

Assume that host A sets up a TCP connection with host B to send data. Assume that A’s ssthresh value is 64 KB and TCP segment size is 3 KB.

 

  1. How many bytes have been transmitted after 3 RTTs assuming no losses? Show your work.

 

  1. Now, suppose that after the third RTT, a loss occurs which results in the TCP sender’s retransmission timer to expire. What actions will TCP congestion control take in this case?

 

  1. Assuming no further packet loss occurs from then on, how many RTTs does it take to transmit an additional 22 KB of data?

 

Write your answer here

 

 

 

 

 

 

 

 

 

Problem 3

 

True or False? Brie y explain your answer in a single sentence.

 

  1. Host A is sending Host B a large le over a TCP connection. Assume Host B has no data to send Host A. Host B will not send acknowledgments to Host A because Host B cannot piggyback the acknowledgments on data.

 

  1. The size of the TCP rwnd never changes throughout the duration of the connection.

 

  1. Suppose Host A is sending Host B a large le over a TCP connection. The number of unacknowledged bytes that A sends cannot exceed the size of the receive bu er.

 

  1. Suppose Host A is sending a large le to Host B over a TCP connection. If the sequence number for a segment of this connection is m, then the sequence number for the subsequent segment will necessarily be m + 1.

 

  1. The TCP segment has a eld in its header for rwnd.

 

  1. Suppose that the last SampleRTT in a TCP connection is equal to 1 sec. The current value of TimeoutInterval for the connection will necessarily be 1 sec.

 

  1. Suppose Host A sends one segment with sequence number 38 and 4 bytes of data over a TCP connection to Host B. In this same segment the acknowledgment number is necessarily 42.

 

Write your answer here

 

 

 

 

 

 

 

 

 

 

 

Problem 4

 

As we have discussed in the class, a timer is a useful component in various protocol designs: because a communicating end cannot see what is going on either inside the network or at the other end, when needed it sets up an “alarm”, and takes some action when the alarm goes o .

 

  1. Does HTTP use any timers? If so, please brie y describe how each is used. If not, please explain why it does not need one.

 

  1. Does DNS use any timers? If so, please brie y describe how each is used. If not, please explain why it does not need one.

 

  1. Does TCP use any timer? If so, please brie y describe how each is used. If not, please explain why it does not need one.

 

  1. Does UDP use any timer? If so, please brie y describe how each is used. If not, please explain why it does not need one.

 

Write your answer here

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Page 4 of 4