This preview shows page 1. Sign up to view the full content.
Unformatted text preview: ) If the CRC is correct, the receiver sends a link-layer ACK to the sender. The
ACK has negligible size and reaches the sender instantaneously.
The sender and receiver are near each other, so you can ignore the propagation delay.
The bit rate is R = 54 Megabits/s, the smallest packet size is 540 bits, and the largest
packet size is 5,400 bits.
What is the maximum processing time Tp that ensures that the protocol will achieve
a throughput of at least 50% of the bit rate of the link in the absence of packet and
ACK losses, for any packet size?
3. Suppose the sender in a reliable transport protocol uses an EWMA ﬁlter to estimate
the smoothed round trip time, srtt, every time it gets an ACK with an RTT sample r.
srtt → α · r +(1 − α)· srtt
We would like every packet in a window to contribute a weight of at least 1% to the
srtt calculation. As the window size increases, should α increase, decrease, or remain
the same, to achieve this goal? (You should be able to answer this question without
writing any equations.)
4. TCP computes an average round-trip time (RTT) for the connection using an EWMA
estimator, as in the previous problem. Suppose that at time 0, the initial estimate,
srtt, is equal to the true value, r0 . Suppose that immediately after this time, the RTT
for the connection increases to a value R and remains at that value for the remainder
of the connection. You may assume that R >> r0 .
Suppose that the TCP retransmission timeout value at step n, RTO(n), is set to β · srtt.
Calculate the number of RTT samples before we can be sure that there will be no
spurious retransmissions. Old TCP implementations used to have β = 2 and α =
1/8. How many samples does this correspond to before spurious retransmissions
are avoided, for this problem? (As explained in Section 20.3, TCP now uses the mean
linear deviation as its RTO formula. Originally, TCP didn’t incorporate the linear
deviation in its RTO formula.)
5. Consider a sliding window protocol between a sender and a receiver. The receiver
should deliver packets reliably and in order to its application.
The sender correctly maintains the following state variables:
unacked pkts – the buffer of unacknowledged packets
first unacked – the lowest unacked sequence number (undeﬁned if all packets
have been acked)
last unacked – the highest unacked sequence number (undeﬁned if all packets
have been acked)
last sent – the highest sequence number sent so far (whether acknowledged or
not) 18 CHAPTER 20. RELIABLE DATA TRANSPORT PROTOCOLS If the receiver gets a packet that is strictly larger than the next one in sequence, it
adds the packet to a buffer if not already present. We want to ensure that the size of
this buffer of packets awaiting delivery never exceeds a value W ≥ 0. Write down the
check(s) that the sender should perform before sending a new packet in terms of the
variables mentioned above that ensure the desired property.
6. Alyssa P. Hacker measures that the network path between two computers has a
round-trip time (RTT) of 100 milliseconds. The queueing delay is negligible. The
speed of the bottleneck link between them is 1 Mbyte/s. Alyssa implements the
reliable sliding window protocol studied in 6.02 and runs it between these two computers. The packet size is ﬁxed at 1000 bytes (you can ignore the size of the acknowledgments). There is no other trafﬁc.
(a) Alyssa sets the window size to 10 packets. What is the resulting maximum
utilization of the bottleneck link? Explain your answer.
(b) Alyssa’s implementation of a sliding window protocol uses an 8-bit ﬁeld for the
sequence number in each packet. Assuming that the RTT remains the same,
what is the smallest value of the bottleneck link bandwidth (in Mbytes/s) that
will cause the protocol to stop working correctly when packet losses occur? Assume that the deﬁnition of a window in her protocol is the difference between
the last transmitted sequence number and the last in-sequence ACK.
(c) Suppose the window size is 10 packets and that the value of the sender’s retransmission timeout is 1 second. A data packet gets lost before it reaches the
receiver. The protocol continues and no other packets or acks are lost. The receiver
wants to deliver data to the application in order.
What is the maximum size, in packets, that the buffer at the receiver can grow
to in the sliding window protocol? Answer this question for the two different
deﬁnitions of a “window” below.
i. When the window is the maximum difference between the last transmitted
packet and the last in-sequence ACK received at the sender:
ii. When the window is the maximum number of unacknowledged packets at
7. In the reliable transport protocols we studied, the receiver sends an acknowledgment
(ACK) saying “I got k” whenever it receives a packet with sequence number k. Ben
Bitdiddle invents a different method using cumulative ACKs: whenever the receiver
gets a packet, whether in order or no...
View Full Document
This document was uploaded on 02/26/2014 for the course CS 6.02 at MIT.
- Fall '13