CSC41200: Computer Networks Written Homework 1 Due: Nov 3 Problem 1: Delays (20 points) Host A is connected to host B via a single link of m meters and a link bandwidth of R bps. Suppose the propagation speed on the link is s meters/sec. Host A is to send a packet of L bits to host B. a. Express the propagation delay, dprop, in terms of m and s. b. Express the transmission time of the packet, dtrans, in terms of L and R. c. Ignore processing delay and queuing delay, determine the end-to-end delay between host A and host B. d. Suppose Host A begins to transmit the packet at time t=0. At time t= dtrans, where is the last bit of the packet. e. Suppose dprop is less than ttrans, , where is the first bit of the packet at time t= dtrans. f. Suppose s = 3x108 meters/sec, L = 1000 bits, and R = 56 Kbps, find the distance m so that dprop = ttrans. Problem 2: Internet Routes and Delays (10 points) Perform a traceroute between a machine you have access to and two destinations of your choice, one within the United States and the other in some other continent (the traceroute program is available in most Unix machines; on a Windows machine, use tracert program from the DOS shell). In default mode, traceroute will give you three RTT estimates to each hop. a. b. c. d. Compute the average delay to each hop on each of the paths. Find the number of routers in each path. Try to identify some of the ISPs that were traversed by the traceroute packets. Compare the continental and the intercontinental path. How many routers do they have in common? Can you identify the transcontinental link? Problem 3: HTTP Response Time (10 points) Suppose you use your web browser to retrieve an HTML file that contains references to 4 embedded objects. Assume the HTML file and the objects all reside on the same server. Denote the round trip time between your browser and this server as RTT (measured In seconds). Assume that the transmission time of each object (including the initial HTML file) is T seconds. How much time elapses before the browser can display the entire page (HTML file plus embedded objects) using: a. non-persistent HTTP with no parallel connections b. persistent HTTP without pipelining c. persistent HTTP with pipelining Problem 4: TCP window behavior (20 points) Consider the above plot of TCP window size as a function of time. Assuming TCP Reno is the protocol experiencing the behavior shown above, answer the following questions. In all cases, you should provide a short discussion justifying your answer. a. Identify the intervals of time when TCP slow start is operating. b. Identify the intervals of time when TCP congestion avoidance is operating. c. After the 16th transmission round, is segment loss detected by a triple duplicate ACK, or by a timeout? d. After the 22nd transmission round, is segment loss detected by a triple duplicate ACK, or by a timeout? e. What is the initial value of Threshold at the first transmission round? f. What is the value of Threshold at the 18th transmission round? g. What is the value of Threshold at the 24th transmission round? h. During what transmission round is the 70th segment sent? i. Assuming a packet loss is detected after the 26th round by the receipt of a triple duplicate ACK, what will be the value of the congestion window size, and of Threshold? Problem 5: TCP Demultiplexing (10 points) Suppose client A initiates a Telnet session with server S. At about the same time, client B also initiates a Telnet session with server S. Provide possible source and destination port numbers for: a. b. c. d. e. The segments sent from A to S. The segments sent from B to S. The segments sent from S to A. The segments sent from S to B. If A and B are different hosts, is it possible that the source port number in the segments from A to S is the same as that from B to S? f. How about if they were from the same host? Problem 6: Fast Recall (10 points) Answer each of the following questions. You shouldn't need more that 2-4 sentences to answer each question. a. Is it possible for an application to enjoy reliable data transfer even when the application runs over UDP? If so how? b. What is the difference between Go-Back-N and Selective Repeat? Problem 7: Protocol tracing (10 points) Give a trace of the operation of the Alternating Bit protocol when the first data packet and the first acknowledge packet are garbled (have flipped bits). Your trace should be similar to that in slide 18 of Chapter 3, Part 2, and have the sender on the left and the receiver on the right, with the time axis running down the page. Problem 8: Performance and window size (10 points) Consider a cross-country link that has capacity R bps and propagation delay of p seconds. Assume that packets have a fixed size of L bytes. Give an equation for the link throughput and link utilization, assuming the transport protocol uses a fixed window of W packets (compute the maximum possible achievable throughput/utilization, assuming ACK processing and transmission takes a negligible amount of time). Assume that R = 2.4 Gbps, p = 15ms and L = 1000 bytes. Assuming we use the Alternating Bit protocol, what is the maximum throughput that the protocol can deliver? What is the link utilization? If we used a pipelined protocol, what should the optimal window size be? That is, what is the window size such that the link utilization is just below 100% (but not over 100%)?