Unformatted text preview: t, it sends an ACK saying “I got every packet up
to and including ”, where is the highest, in-order packet received so far.
The deﬁnition of the window is the same as before: a window size of W means that
the maximum number of unacknowledged packets is W . Every time the sender gets
an ACK, it may transmit one or more packets, within the constraint of the window
size. It also implements a timeout mechanism to retransmit packets that it believes
are lost using the algorithm described in these notes. The protocol runs over a besteffort network, but no packet or ACK is duplicated at the network or link layers. 19 SECTION 20.6. SUMMARY The sender sends a stream of new packets according to the sliding window protocol,
and in response gets the following cumulative ACKs from the receiver:
(a) Now, suppose that the sender times out and retransmits the ﬁrst unacknowledged packet. When the receiver gets that retransmitted packet, what can you
say about the ACK, a, that it sends?
v. a = 5.
a ≥ 5.
5 ≤ a ≤ 11.
a = 11.
a ≤ 11. (b) Assuming no ACKs were lost, what is the minimum window size that can produce the sequence of ACKs shown above?
(c) Is it possible for the given sequence of cumulative ACKs to have arrived at the
sender even when no packets were lost en route to the receiver when they were
(d) A little bit into the data transfer, the sender observes the following sequence of
cumulative ACKs sent from the receiver:
21 22 23 25 28
The window size is 8 packets. What packet(s) should the sender transmit upon
receiving each of the above ACKs, if it wants to maximize the number of unacknowledged packets?
On getting ACK # → Send ??
→ On getting ACK # → Send ??
→ 8. Give one example of a situation where the cumulative ACK protocol described in
the previous problem gets higher throughput than the sliding window protocol described in the notes and in lecture.
9. A sender S and receiver R communicate reliably over a series of links using a sliding
window protocol with some window size, W packets. The path between S and R
has one bottleneck link (i.e., one link whose rate bounds the throughput that can be
achieved), whose data rate is C packets/second. When the window size is W , the
queue at the bottleneck link is always full, with Q data packets in it. The round trip
time (RTT) of the connection between S and R during this data transfer with window
size W is T seconds, including the queueing delay. There are no packet or ACK losses
in this case, and there are no other connections sharing this path.
(a) Write an expression for W in terms of the other parameters speciﬁed above. 20 CHAPTER 20. RELIABLE DATA TRANSPORT PROTOCOLS (b) We would like to reduce the window size from W and still achieve high utilization. What is the minimum window size, Wmin , which will achieve 100%
utilization of the bottleneck link? Express your answer as a function of C, T ,
(c) Now suppose the sender starts with a window size set to Wmin . If all these
packets get acknowledged and no packet losses occur in the window, the sender
increases the window size by 1. The sender keeps increasing the window size
in this fashion until it reaches a window size that causes a packet loss to occur.
What is the smallest window size at which the sender observes a packet loss
caused by the bottleneck queue overﬂowing? Assume that no ACKs are lost.
10. Ben Bitdiddle decides to use the sliding window transport protocol described in
these notes on the network shown in Figure 20-8. The receiver sends end-to-end
ACKs to the sender. The switch in the middle simply forwards packets in best-effort
fashion. !"#$"%& 017&34)"565&
L#(>:?&5"#$"%&'(#$<'&5(F"&@&01&;:*G")5& Figure 20-8: Ben’s network. (a) The sender’s window size is 10 packets. At what approximate rate (in packets
per second) will the protocol deliver a multi-gigabyte ﬁle from the sender to the
receiver? Assume that there is no other trafﬁc in the network and packets can
only be lost because the queues overﬂow.
iv. Between 900 and 1000.
Between 450 and 500.
Between 225 and 250.
Depends on the timeout value used. SECTION 20.6. SUMMARY 21 (b) You would like to double the throughput of this sliding window transport protocol running on the network shown on the previous page. To do so, you can
apply one of the following techniques alone:
i. Double the window size.
ii. Halve the propagation time of the links.
iii. Double the speed of the link between the Switch and Receiver.
For each of the following sender window sizes, list which of the above techniques, if any, can approximately double the throughput. If no technique does
the job, say “None”. There might be more than one answer for each window
size, in which case you should list them all. Each technique works in isolation.
1. W = 10:
2. W = 50:
3. W = 30:
11. Eager B. Eaver starts MyFace, a next-generation social networking web site in which
the only pictures allowed are users’ faces. MyFace has a simple request-response
interface. The client sends a request (for a face), the server sends a response (the
face). Both request and response ﬁt in one packet (the faces in the responses are small
pictures!). When the client gets a response, it immediately sends the next request.
The size of the largest packet is S = 1000 bytes.
Eager’s server is in Cambridge. Clients come from all over the world. Eager’s measurements show that one can model the typical client as having a 100 millisecond
round-trip time (RTT) to the server (i.e., the network component of the requestresponse delay, not counting the additional processing time taken by the server, is
If the client does not get a response from the server in a time τ , it resends the request.
It keeps doing that until it gets a response.
(a) Is the protocol described above “at least once”, “at most once”, or “exactly
(b) Eager needs to provision the link bandwidth for MyFace. He anticipates that at
any given time, the largest number of clients making a request is 2000. What
minimum outgoing link bandwidth from MyFace will ensure that the link connecting MyFace to the Internet will not experience congestion?
(c) Suppose the probability of the client receiving a response from the server for
any given request is p. What is the expected time for a client’s request to obtain
a response from the server? Your answer will depend on p, RTT, and τ .
12. Lem E. Tweetit is designing a new protocol for Tweeter, a Twitter rip-off. All tweets
in Tweeter are 1000 bytes in length. Each tweet sent by a client and received by the
Tweeter server is immediately acknowledged by the server; if the client does not
receive an ACK within a timeout, it re-sends the tweets, and repeats this process
until it gets an ACK. 22 CHAPTER 20. RELIABLE DATA TRANSPORT PROTOCOLS Sir Tweetsalot uses a device whose data transmission rate is 100 Kbytes/s, which you
can assume is the bottleneck rate between his client and the server. The round-trip
propagation time between his client and the server is 10 milliseconds. Assume that
there is no queueing on any link between client and server and that the processing
time along the path is 0. You may also assume that the ACKs are very small in size,
so consume neglible bandwidth and transmission time (of course, they still need to
propagate from server to client). Do not ignore the transmission time of a tweet.
(a) What is the smallest value of the timeout, in milliseconds, that will avoid spurious retransmissions?
(b) Suppose that the timeout is set to 90 milliseconds. Unfortunately, the probability
that a given client transmission gets an ACK is only 75%. What is the utilization
of the network?...
View Full Document
This document was uploaded on 02/26/2014 for the course CS 6.02 at MIT.
- Fall '13