CS 556 Advanced Computer Networks Spring 2011 Solutions to Midterm Test March 10, 2011 YOUR NAME: Abraham MATTA This test is closed books. You are only allowed to have one sheet of notes (8.5 11 ). Please write clearly and neatly, and clearly state any assumptions you make. Make sure you have 6 questions over 6 pages. Answer 5 questions. 1) What does it mean, the semantics of the IP address are overloaded? How does a loc-id split approach, such as LISP, address this overloading of semantics problem? State a fundamental flaw in naming/addressing that LISP has. People mean that to communicate with a process (node), we use the IP address to identify it. But also we use the IP address to route to it in fact, the IP address specifies a particular interface to get to the destination node. So, the IP address is overloaded to mean both identifier (who is the destination node) and location (where/how to get to the destination node). Loc-id split approaches use two different name spaces: one for identifiers and another for locators. The node is assigned a unique identifier (name) that is location-independent (EID). The ingress router maps the EID to the IP address of an egress router (RLOC) that has a path to the destination node. A fundamental problem here is the early binding of the EID to the RLOC that represents a pointof-attachment (PoA). If this EID-to-RLOC binding/mapping changes, the update has to propagate over the scope of the whole Internet. Furthermore, in routing to the RLOC, we are still routing to an IP address, i.e. a particular interface to the (egress) border router, which is problematic if the path to that interface fails when there is another operational interface that could be used in other words, we are still not routing to the node itself so we can leverage whatever interface leading to that node. To make a fine point, in Computer Science, we usually structure identifiers (names) to have location information, so we can easily find information about that name. So really, the distinction between id and loc is a false, mostly irrelevant distinction! The fundamental issue here is that we want to address the process (node) we want to communicate with, not a particular interface that leads to it. 1
2) A researcher proposes to solve the Internet s naming and addressing problem using a clean-slate architecture. The architecture is claimed to be recursive and divides the Internet into nested regions. Regions (and ultimately nodes) are assigned unique ids according to such nesting. For example, for a two-level Internet, a region (Autonomous System) is assigned a unique AS-id and a node is assigned a local-id unique within its region. Thus, a node s address is given by AS-id+local-id. Routing is first done based on the destination AS-id, and then routing is done within the destination region using the local-id of the destination node. (a) Discuss how addressing nodes this way may or may not deal with the semantics overloading of addresses? Does this proposed approach have any fundamental flaw in naming/addressing? This proposal attempts to address the destination node itself, rather than a particular interface leading to that node like in traditional IP addressing. So, to reach a multi-homed node (which could be an AS, or host within an AS), routing can take whatever path (interface) leading to that node. That s an improvement! A fundamental flaw here is that an end-host can only be in one AS, i.e. not multihomed to more than one AS. In other words, at the global (higher) level, the node address should not have any local significance such as the local-id. (b) Comment on how effective this proposed architecture is in dealing with multihoming and mobility. This architecture could handle multihomed ASes and multihomed hosts within an AS as it routes on node addresses, rather than interfaces. It can also deal with mobility that is local within the destination AS. However, as noted in (a), because the node address contains local-id, it cannot deal with hosts that are multihomed to different ASes. Also, for mobility across ASes, the node address will change and routing to that new address (location) has to take effect, which requires updating the destination node address at the source. (c) How does this proposed solution compare to a loc / id solution? It has no id with global significance the node id contains local-id so, unlike LISP, multihomed hosts cannot be supported. Also, the node id is early bound to a specific destination AS, which is not the destination node (host) itself. As noted in (b), if the destination AS changes, the destination node address has to be updated at the source. 2
3) We discussed in class the Recursive InterNetwork Architecture (RINA). (a) Briefly describe how RINA s naming and addressing architecture work. RINA s addressing is relative. A node address is treated as name by the lower DIF layer, and as PoA by the higher DIF layer. (b) Briefly describe how the routing process in RINA is envisioned to work to effectively deal with multihoming and mobility. After mapping the application destination name to a node address, the (highest level) DIF layer routes hop-by-hop over a sequence of nodes (IPC processes) to reach the destination node. At each hop, the next-hop node address is treated as name by the underlying (lower level) DIF layer and a PoA is chosen to route the packet to the next-hop. This process is repeated recursively. Thus, the next-hop node address is only late bound to a PoA, which is a node address at the lower DIF layer. Multihoming is inherently supported since routing is done based on node address and it is late bound to a PoA so an operational or better PoA can be chosen. Given that mobility is a dynamic form of multihoming, mobility is also inherently supported in RINA. (c) How will a provider in RINA apply its own policies when selecting routes to destinations? Which routing approach should a provider use: link-state like OSPF, distance-vector like RIP, path-vector like BGP, or something else? Justify your answer. A provider in RINA is a DIF layer. Since a DIF is privately managed, any policy for exchanging routing information and choosing paths can be employed. Given link state is suited for computing QoS paths based on the view of the DIF graph of IPC processes (nodes), a link state approach seems to be a natural choice. 3
4) For the following statements, either circle your choice, or fill in the blanks between parentheses: (a) A Poisson arrival process implies that the inter-arrival times are (EXPONENTIAL) distributed. (b) The effective bandwidth for a source, needed to satisfy some performance requirement, (increases OR decreases) as the traffic burstiness of the source decreases. (c) Internet topologies were generally found to exhibit (larger OR smaller) diameter, (shorter OR longer) average path length, and (smaller OR larger) average clustering coefficient, compared to random topologies. (d) Exponential distributions have (heavy OR light) tails, whereas powerlaw distributions have (heavier OR lighter) tails. (e) A self-similar input process to a network link would require (smaller OR larger) capacity, compared to a Poisson input process, to achieve the same level of delay/loss performance. (f) The confidence intervals for simulation results are computed based on the (student-t OR normal) distribution if the sample size is small, whereas they are based on the (student-t OR normal) distribution if the sample size is large enough. (g) The law of large numbers states that the distribution of sample means approaches a (NORMAL) distribution. (h) In Delta-t, the sender s connection state timer is typically set to (2 MPL OR 3 MPL), where MPL is the Maximum Packet Lifetime. And the receiver s state timer is set to (2 MPL OR 3 MPL). (i) Given the ideal transmission window size is C D, where C is the bottleneck capacity and D is the round-trip propagation delay, the buffer size should be set to (C D) to make the AIMD operation of TCP efficient (i.e., 100% link utilization). (j) Soft-state signaling protocols are found to be (more OR less) consistent, and (more OR less) robust, compared to hard-state protocols. (k) Given exponentially distributed residence times in wireless areas, the remaining residence time after some elapsed time since entering the wireless area follows (EXPONENTIAL) distribution. 4
5) Assume we modify the TCP AIMD algorithm and instead use AIAD, i.e. Additive Increase Additive Decrease. So, when no congestion is observed, a source increases its window size by 1 packet every round-trip time (RTT). Whenever congestion is observed, a source decreases its window size by 1. Given two AIAD sources sharing the same bottleneck and experiencing the same RTT, do they converge to a fair and efficient rate allocation? Support your answer graphically by showing the trajectories of the two windows assuming a synchronized model where the windows are adapted at the same time instants. In general, two AIAD sources won t converge to a fair allocation. The exception is when they both start with equal initial window size. 5
6) Consider a FCFS queue of maximum size K packets to which packets arrive according to a Poisson process of rate λ. A packet is served for an exponentially distributed time with average 1/µ. (a) Draw the steady-state transition diagram of the corresponding Markov chain, and solve for the steady-state probability of being in the different states. λ λ λ 0 1 2 K!!! Denote by!! the steady-state probability of being in state!. Equating the flow in with flow out at each state, we get:!! =!! the sum of these probabilities equals 1, we have:!!!. And given!! =!!!!!!!!!,! =!!. (b) Write down expressions for the throughput and average packet delay. Throughput =!(1!! ). Average delay =!! (! + 1)!! (c) How large does K have to be so that the probability of buffer overflow does not exceed X? Solve for!!!. 6