en	This is an unpolished draft of the third edition of this e-book. If you find any error or have suggestions to improve the text, please create an issue via https://github.com/CNP3/ebook/issues?milestone=2 or help us by providing pull requests to close the existing issues.

en	The network below uses port forwarding with flat addresses. The network boots and all hosts start one after the other. Explain at each step how the packets are forwarded and how the port forwarding tables of the network nodes are modified. Host `C` sends a packet to host `B`. Some time later, host `A` sends a packet to host `C`. Finally, host `B` sends a packet to host `A`.

en	Same question as above, but the network is modified as shown in the figure below.

en	Routing protocols used in data networks only use positive link weights. What would happen with a distance vector routing protocol in the network below that contains a negative link weight ?

en	When a network specialist designs a network, one of the problems that he needs to solve is to set the metrics the links in his network. In the USA, the Abilene network interconnects most of the research labs and universities. The figure below shows the topology of this network in 2009.

en	The Abilene network

en	In this network, assume that all the link weights are set to 1. What is the paths followed by a packet sent by the router located in `Los Angeles` to reach :

en	the router located in `New York`

en	the router located in `Washington` ?

en	Is it possible to configure the link metrics so that the packets sent by the router located in `Los Angeles` to the routers located in respectively `New York` and `Washington` do not follow the same path ?

en	Is it possible to configure the link weights so that the packets sent by the router located in `Los Angeles` to router located in `New York` follow one path while the packets sent by the router located in `New York` to the router located in `Los Angeles` follow a completely different path ?

en	Assume that the routers located in `Denver` and `Kansas City` need to exchange lots of packets. Can you configure the link metrics such that the link between these two routers does not carry any packet sent by another router in the network ?

en	Consider the network shown in the figure below.

en	Assuming that the network uses source routing, what are the possible paths from `R1` to `R4` ?

en	The network operator uses would like to have the following paths in this network :

en	`R3->R2->R4->R5` and `R1->R2->R5`

en	Is it possible to achieve these paths and if so what are the required forwarding tables ?

en	Same question with virtual circuits.

en	The network operator would like to use the following paths :

en	`R1->R2->R4` and `R3->R2->R5->R4`

en	`R1->R5->R4` and `R3->R2->R4`

en	The network below uses port forwarding tables. It has been running for several hours and all hosts have exchanged packets. What is the content of the port forwarding tables ?

en	At this point, a new link is added between `R1` and `R3`. What happens for the forwarding of packets ?

en	The network below uses port forwarding tables. What happens if host `A` moves by removing its link with `R1` and replacing it with a link with `R3`? How should networks using port forwarding deal with such mobile hosts ?

en	Some hosts need to be multihomed, i.e. attached to two different network nodes as shown in the figure below.

en	Would this network work correctly with port-forwarding tables if :

en	Host `A` uses the same flat address for both links.

en	Host `A` uses a different flat address on each of its links

en	What are the advantages and drawbacks of flat addresses versus hierarchical addresses ?

en	Let us now consider the transient problems that mainly happen when the network topology changes. For this, consider the network topology shown in the figure below and assume that all routers use a distance vector protocol that uses split horizon.

en	If you compute the routing tables of all routers in this network, you would obtain a table such as the table below :

en	Destination

en	Routes on A

en	Routes on B

en	Routes on C

en	Routes on D

en	Routes on E

en	A

en	0

en	1 via A

en	2 via B

en	3 via C

en	4 via D

en	B

en	1 via B

en	2 via C

en	3 via D

en	C

en	1 via C

en	2 via D

en	D

en	3 via B

en	1 via D

en	E

en	4 via B

en	1 via E

en	Distance vector protocols can operate in two different modes : `periodic updates` and `triggered updates`. `Periodic updates` is the default mode for a distance vector protocol. For example, each router could advertise its distance vector every thirty seconds. With the `triggered updates` a router sends its distance vector when its routing table changes (and periodically when there are no changes).

en	Consider a distance vector protocol using split horizon and `periodic updates`. Assume that the link `B-C` fails. `B` and `C` update their local routing table but they will only advertise it at the end of their period. Select one ordering for the `periodic updates` and every time a router sends its distance vector, indicate the vector sent to each neighbor and update the table above. How many periods are required to allow the network to converge to a stable state ?

en	Consider the same distance vector protocol, but now with `triggered updates`. When link `B-C` fails, assume that `B` updates its routing table immediately and sends its distance vector to `A` and `D`. Assume that both `A` and `D` process the received distance vector and that `A` sends its own distance vector, ... Indicate all the distance vectors that are exchanged and update the table above each time a distance vector is sent by a router (and received by other routers) until all routers have learned a new route to each destination. How many distance vector messages must be exchanged until the network converges to a stable state ?

en	Consider again the network shown above. After some time, link state routing converges and all routers compute the same routing tables as above.

en	An important difference between OSPF and RIP is that OSPF routers flood link state packets that allow the other routers to recompute their own routing tables while RIP routers exchange distance vectors. Consider that link `B-C` fails and that router `B` is the first to detect the failure. At this point, `B` cannot reach anymore `C`, `D` and `E`. `C` cannot reach `B` and `A` anymore.

en	Router `B` will flood its updated link state packet through the entire network and all routers will recompute their forwarding table. Upon reception of a link state packet, routers usually first flood the received link-state packet and then recompute their forwarding table. Assume that `B` is the first to recompute its forwarding table, followed by `D`, `A`, `C` and finally `E`.

en	After each update of a forwarding table, verify which pairs of routers are able to exchange packets. Provide your answer using a table similar to the one shown above.