Description
Problem 1
Suppose that instead of a multiplicative decrease, TCP decreased the window size by a constant amount.
Would the resulting AIAD algorithm converge to an equal share algorithm? Justify your answer using a
graphical diagram similar to Slide 100 of the lecture.
Write your solution to Problem 1 in this box
Problem 2
TCP is a very symmetric protocol, but the client/server model is not. Consider an asymmetric TCP-like
protocol in which only the server side is assigned a port number visible to the application layers. Client-side
sockets would simply be abstractions that can be connected to server ports. Can you propose header data
and connection semantics to support this. What will you use to replace the client port number?
Write your solution to Problem 2 in this box
Page 2 of 6
Problem 3
On the TCP throughput, in the period of time from when the connections rate varies from W/(2 RTT) to
W/RTT, only one packet is lost (at the very end of the period).
(a) Show that the loss rate (fraction of packets lost) is equal to L=lossrate= 1/(3/8W2 + 3/4W)
(b) Use the result above to show that if a connection has loss rate L, then its average rate is approximately
given by ‘ 1.22 × MSS/(RT T ×
√
L)
Write your solution to Problem 3 in this box
Page 3 of 6
Problem 4
You are designing a reliable, sliding window, byte-stream protocol similar to TCP. It will be used for
communication with a geosynchronous satellite network, for which the bandwidth is 1 Gbps and the RTT is
300 ms. Assume the maximum segment lifetime is 30 seconds.
(a) How many bits wide should you make the ReceiveWindow and SequenceNum fields? (ReceiveWindow is
also called “Advertised Window” in some other textbooks.)
(b) If ReceiveWindow is 16 bits, what upper bound would that impose on the effective bandwidth?
Write your solution to Problem 4 in this box
Page 4 of 6
Problem 5
Consider the evolution of a TCP connection with the following characteristics. Assume that all the following
algorithms are implemented in TCP congestion control: slow start, congestions avoidance, fast retransmit
and fast recovery, and retransmission upon timeout. If ssthresh equals to cwnd, use the slow start algorithm
in your calculation.
• The TCP receiver acknowledges every segment, and the sender always has data segments available for
transmission.
• The network latency in sending a segment (header and payload) from the sender to the receiver is
30ms and the network latency in sending an acknowledgment (header only) from the receiver to the
sender is 20ms. Ignore packet-processing delays at the sender and the receiver.
• Initially ssthresh at the sender is set to 5. Assume cwnd and ssthresh are measured in segments, and
the transmission time for each segment is negligible.
• Retransmission timeout (RTO) is initially set to 500ms at the sender and is unchanged during the
connection lifetime. The RTT is 100ms for all transmissions.
• The connection starts to transmit data at time t = 0, and the initial sequence number starts from 1.
TCP segment with sequence number 6 is lost once (i.e., it sees segment loss during its first transmission).
No other segments are lost during transmissions.
What are the values for cwnd and ssthreshold when the sender receives the TCP ACK with number 15?
Show your intermediate steps or your diagram in your solution.
Problem 5 continued on next page. . . Page 5 of 6
Write your solution to Problem 5 in this box
Page 6 of 6