HW 4
HW 4
HW 4
Homework 4
Assigned: Nov 9, 2011
Due: Nov 17, 2011 1:30 PM in class
Lead TAs:
Charles Guo <rang@andrew.cmu.edu>
Athula Balachandran <abalacha@cs.cmu.edu>
1 Congestion Window
1. Consider the following plot of TCP window size as a function of time:
45
40
35
Congestion Window Size
30
(segments)
25
20
15
10
0
0 5 10 15 20 25 30
Transmission Round
[Sec 6.3-6.4] Assuming TCP Reno is the protocol experiencing the behavior shown above, answer the
following questions.
1
(a) Identify the intervals of time when TCP slow start is operating.
(b) Identify the intervals of time when TCP congestion avoidance is operating (AIMD).
(c) After the 16th transmission round, is segment loss detected by a triple duplicate ACK or by a
timeout?
(d) What is the initial value of ssthreshold at the first transmission round?
(h) Assuming a packet loss is detected after the 26th round by the receipt of a triple duplicate ACK,
what will be the values of the congesion-window size and of ssthreshold?
Page 2
2 TCP Congestion Control
2. [Sec 6.3.2] The Transmission Control Protocol uses a method called congestion control to regulate the
traffic entering the network. The behavior of TCP congestion control can be represented as a graph
in which the x-axis indicates the time, and the y-axis indicates congestion window size. Please use the
graph shown below to the answer the following questions. Note that the graph does not explicitly show
timeouts, but you should be able to figure out when timeouts happened based on the events shown.
(a) Slow Start: Give two reasons why slow start is used, and explain why it does a better job than
congestion avoidance for that function.
(b) Slow Start: Identify the intervals of time when TCP slow start is operating. For each interval,
identify which of the above reasons apply and do not apply and explain why.
Page 3
(c) Congestion Avoidance: Identify the intervals of time when TCP congestion avoidance is operat-
ing. Why should congestion avoidance be used instead of slow start during these intervals? Please
clearly identify one specific reason.
(d) Fast Retransmission: Identify the intervals of time when TCP fast retransmission is used. Please
explain what fast retransmission does and how it is triggered.
(e) Fast Recovery: Identify the intervals of time when TCP fast recovery is operating. What does
fast recovery do and explain why is it beneficial.
(f) Lack of fast recovery: Identify the interval(s) of time when fast recovery could have happened,
but did not. Identify one specific example of a circumstance that may prevent fast recovery from
happening.
Page 4
3 CDN
3. [Sec. 9.4.3] Answer the following questions regarding content distribution networks.
(a) When browsing web sites that use the Akamai CDN, most users at CMU notice greatly improved
performance. But a friend of yours who’s a visiting student from the west coast campus reports
that these same web sites appear SLOWER to them than many other web sites! What’s likely
happening?
(b) A popular Web site’s server cluster is in San Jose, California. Assuming you have the DNS responses
cached already, what’s the shortest time possible for you (in CMU) to display the front page of the
website? Its HTML code is very simple:
<html>
<h1>Hello!</h1>
<img src="cuteKitten.jpg"/>
<img src="lonewolf.png"/>
</html>
• The processing power of both my computer and the San Jose server is infinite
• Your browser is able to display the front page once all data is recieved (thus, dont have to wait
for connection to close)
Page 5
Token Rate Bucket Size
1 10
2 4
4 1
Page 6