This test has six questions. The test runs the entire class period, starting at 4:30 and ending at 6:20. When you finish the test, you may leave.
Always justify answers unless the question explicitly states it’s not necessary. Some questions require reasonable assumptions in order to be answered. In such cases the answer should clearly state the assumptions made. Answers should be no longer than 75 to 100 words.• Forwarding• Routing• Virtual circuits• Longest prefix match• Tunnel
Keeping in mind that giving an example of X is not defining X, briefly (in one or two sentences, 25 to 30 words) define:
• Forwarding:Moving PDUs from a router’s input ports to the output ports under the direction of the forwarding table.• Routing:Determining the best paths between network end-points; may also include determining the forwarding tables based on the paths discovered.• Virtual circuits:PDU flows through a network defined by VC tables at each router.• Longest prefix match:A technique for resolving ambiguity in forwarding-table look-up. When a PDU destination matches more than one forwarding-table entry, the longest prefix match is selected.• Tunnel:Encapsulating one protocol’s PDUs as a payload in another protocol’s PDUs, usually to overcome some localized network deficiency, such as when IPv6 islands must traverse IPv4 oceans.
Address aggregation involves combining forwarding-table entries when 1) the destination subnet addresses in the entries share
Assume the network has gone through initialization, and each router in the network has converged to the network model. The routers adjacent to the cost-adjusted link broadcast updated neighbor-cost information to the network. Each router receives the broadcast and adjusts the network model based on the broadcast information. Each router runs a shortest-path algorithm over the adjusted network model and, if there are path changes, updates the forwarding table to reflect the changes.
Up-to-date routing information is more important to Nd than to Nvc. Every Nd router makes a routing decision on every PDU. Nvc routers only make routing decisions when the virtual circuit is set up. Once PDUs flow through a virtual circuit, routers in Nvc merely rewrite virtual-circuit identifiers and forward PDUs. Assuming the same traffic in each network, Nd makes far more routing decisions than does Nvc and consequently up-to-date routing information is more important in Nd than it is in Nvc.
My colleague’s flooding algorithm has the great virtue of being correct: It floods PDUs and eventually stops the flood. Unfortunately, my colleague’s algorithm has the great deficit of being ridiculously expensive. A good flood algorithm broadcasts each PDU r times per flood, where r is the number of routers in the network. My colleague’s algorithm broadcasts each PDU p times, where p is the total number of interfaces at all routers in the network (p has to be at least twice r (why?) and is most likely much more than r).
Lots of flows can be defined. The IP header source and destination addresses defines a flow of all IP traffic between the two identified hosts. The IP header protocol type refines the flow to a particular protocol’s traffic between the hosts, such as all TCP or UDP traffic. If you want to violate layering (what the heck, why not?) retrieving the port numbers from the payload header, assuming they’re defined, further refines the flow to traffic between processes on each host. Once a flow has been identified, all kinds of service improvements can be created for the flow, almost all of which boil down to either treating flow PDUs better than other PDUs by, for example, moving flow PDUs to the head of any queues, or treating other PDUs worse than flow PDUs by, for example, dropping other PDUs before flow PDUs.