| CS653: Advanced Computer Networks | |
| Fall 2009 |
Homework #1: Networking Review 1. Packet-switching versus circuit-siwtching. Suppose users share a 155 Mbps link. Suppose that this line is being shared by two populations of users. The first are watching high resolution videos that each require 6Mbps at a constant bit rate. The second population of users are intermittent users. When each user has data to send, it wants to send data at 20Mbps. Each of these users only wants to send data 10% of the time, and all users are mutually independent.
2. Error control and TCP. (2a) Consider the simple stop and wait protocol (rdt 3.0) in note set #1.Suppose the path connecting the sender and receiver is a 100Mbps connection, with an end-end propagation delay of 50 ms. A data packet is 1512 bytes long. Given the simple stop and wait protocol, what is the throughput (in terms of bits/sec) delivered from sender to receiver? (2b) We've seen that TCP overcomes the low throughput of a stop-and-wait protocol by allowing a window of W packets to be sent and waiting for acknowledgements.Recall that if all of those W packets are successfully acknowledged, TCP will increase the window size to W+1.Recall also that we characterized TCP as "probing" for available network bandwidth, increasing its window size until loss occurs and then cutting the window size in half (in the case of TCP Reno). So let us consider an idealized TCP protocol in which the window size starts at W/2. In this idealized model, the TCP sender sends out W/2 packets and has them all acknowledged 1 round trip time (RTT) later, and increases the window size to W/2+1. These packets are then acknowledged 1 RTT later and the window size is again incremented. Suppose the amount of available bandwidth is such that when the window size reaches W, exactly one packet is lost out of this W, and the TCP sender then resets the window size to W/2, and this process repeats. This gives rise to the behavior shown below: Given the basic behavior described above, show that the fraction of packets lost in this scenario is p = 1/ ( (3/8)W**2 + (3/4)W).Given this result and assuming that W is large enough so that W**2 >> W, show that the throughput of the TCP connection is 1.22/(RTT * sqrt(p)). Last, suppose that the TCP protocol is run over a channel with capacity C. Assume that, as soon as the TCP sender sends at a rate W/RTT that exceeds C, a loss occurs and the sender is notified one RTT later. What is the maximum, minimum, and average window sizes for the TCP sender? What is p, the packet loss probability. Give your results in terms of C. 3.Traceroute. Perform a Traceroute (see pages 40 and 41 in K&R) between source and destination on the same continent at three different hours of the day.
4. Distance Vector Algorithm. (see section 4.5 in K&R). Consider the network below.
5.Q.2931, RSVP, SIP. Read the specification of SIP (Session Initiation Protocol) RFC 3261). (BE CAREFUL! It's a long document; you can skim or ignore many parts. But read carefully enough so that you have an idea how SIP works. If you are interested in a tutorial overview of SIP, you can try the SIP webpage). Answer the following questions.
6. Hard state. Given our discussions in class, we would probably classify TCP as a hard state protocol, since it has explicit setup and teardown. What are the mechanisms that TCP uses that allows it to recover when there is a failure "on the other side" of the connection? To answer this question, you will need to use sources outside of our class reading (e.g., Steven's TCP IP Illustrated V1.) |
||