1) Consider a connection with a transmission rate of 16 Mbps where the distance between the sender
and the receiver is 5000 km. Assume that the delay for the connection is dominated by the
propagation delay and the speed of propagation is 2×10
5 km/s. We will transfer a very large file
over this connection. Each segment has a maximum size of 1000 Bytes including a 40 Bytes
header and ACK segments have negligible size. Assume no segments experience errors or losses, and that the processing time at the receiver is negligible. a) What is the minimum window size in segments that should be used for this connection so that
the throughput for this file transfer is maximized?
b) If we will use the FTP protocol for this file transfer, can we achieve the maximum possible
throughput? Justify your answer. 2) Consider the above connection where the file to be transferred contains 12,000 Bytes. Assume that
the communication between the sender and receiver is full duplex, i.e., sender can send data
segments while receiving an ACK segment. We use the Selective Repeat protocol for the file
transfer with a window size of N = 10 segments. The initial sequence number is 1. Assume that the
first transmissions of the ACK segments with acknowledgment numbers 3 and 8 are errored, whereas all other data and ACK segments are received correctly. The timeout for each data
segment is set to 60 msec starting from the end of the transmission of the segment. How much
time is required to complete the transfer of the whole file and receive the final ACK at the sender?
3) Calculate the transfer time for the file transfer in 2) when Go-Back-N protocol is used with a
window size of N = 10 segments. Each window of the sender has a timeout of 60 msec starting
from the time when the window is set by the sender. 4) Four TCP connections are sharing a link with capacity of 110 Mbps. Assume that the bandwidth
bottleneck for all four connections is this shared link. The roundtrip times for the connections are
10 ms, 10 ms, 20 ms and 40 ms, respectively. Calculate the maximum throughputs achieved by
each connection. 5) Suppose that a file transfer requires delivery of 9 segments each with size 1250 Bytes over a TCP
connection with a round-trip delay of 5 msec and transmission rate of 10 Mbps. The retransmission
timeout for the TCP connection is set to 15 msec. Assume that the receive window is 10,000 Bytes
during the entire file transfer. The fourth data segment transmitted is lost in its first transmission
and no other data or ACK segments are lost or errored during the file transfer. We assume that out- of-order segments are buffered at the receiver. Further assume that the slow start threshold
(ssthresh) at the beginning of the TCP connection is 10 segments. How long does it take after the
TCP connection is established until the final ACK is received?
6) At time t, a TCP connection has CongWin=4000 Bytes, ssthresh=7000, nextSequenceNumber=500
and there are no unacknowledged segments. The sender sends three more segments between t and s
(s > t), each containing 1000 Bytes. TCP sender receives three ACK segments between t and s with
acknowledgement numbers 1500, 2500, and 2500. Assume that the maximum segment size (MSS)
for the TCP connection is 1000 Bytes. a) What are the sequence numbers of the three segments transmitted by the sender?
b) Assume that the last ACK segment contains a Receive Window of 8,000 Bytes. How many
more bytes is the TCP sender allowed to send at time s?
c) Answer the question in b) if the last ACK segment contains a Receive Window of 4,000 Bytes.
7) Assume that a modification is made in the TCP header such that the Receive Window field is
extended to 3 Bytes. Consider a TCP connection with a transmission rate of 10 Gbps and roundtrip delay of 20 ms. What is the maximum possible limit for the sender’s utilization for this
connection assuming that TCP window scaling factor is not used?
8) Assume that there is a TCP connection between two processes, one running at Host A and the
other at Host B in order to transfer a very large file from Host A to Host B. The slowest link in the
network along this connection has a transmission rate of 100 Mbps. The application running at
Host A can write data to its TCP send buffer at a rate of 70 Mbps, whereas the application running
at Host B can read data from its TCP receive buffer at a rate of 60 Mbps. a) What is the average rate of data transfer from the application at Host A to the application at
Host B? Justify your answer. b) Which of the TCP flow control and congestion control algorithms limits the data transfer rate
in your answer above? How does this algorithm limit the transfer rate?
c) Now assume that the slowest link along this connection has a transmission rate of 50 Mbps. Which of the TCP flow control and congestion control algorithms now limits the data transfer
rate? How does this algorithm limit the transfer rate?
9) Assume that a TCP connection is experiencing timeouts as the only loss event when the window
size is W = 2
, for some n. Similar to the derivation that we made in class, find an expression for
the average throughput as a function of MSS, RTT and L. Assume that W >> 1. 10) Suppose that a TCP connection currently has the values of EstimatedRTT = 32 ms and DevRTT =
4 ms. The next segment transmitted over the TCP connection experiences a timeout and the
acknowledgment for that segment arrives 40 ms after the retransmission. The SampleRTT for the
segment transmitted next over the TCP connection is measured as 16 ms. Calculate the last value
of the Timeout obtained for this TCP connection.