A routing system is much more complex than routing protocols within it ======================================================================= A network routing system such as Internet routing typically is a distributed system consisting of not only routing protocols but also network configurations that enable desired operations of routing protocols. Furthermore, a network routing system may consist of multiple routing protocols in order to take advantage of salient properties of different protocols. This can lead to a routing system whose behavior is much more complicated than each individual routing protocol involved. We illustrate this point with the following two examples: * Routing protocols deployed in the Internet do not have persistent forwarding loops. But the Internet routing systems can. Suppose a stub network owns address block 18.1.0.0/16, but uses only a few subnets (e.g., 18.1.1.0/24 and 18.1.2.0/24 only). Therefore, the routers in the stub network have route only to the subnets. However, the provider of the stub network has a static route for traffic to 18.1.0.0/16 to the stub network, and the stub network has a default route to the provider. This will lead to a persist forwarding loop for any traffic to address range from 18.1.3.0 to 18.1.255.255. * BGP or IGP does not experience loss of connectivity when an additional link becomes available. Yet, it is possible to lose connectivity in the Internet when adding a link or a link recovers from failure. Suppose a destination with two providers 1 and 2. The link to provider 1 is recovered from a failure. Provider 1 has three routers that are fully meshed with iBGP; Router 3 is connected to destination directly and Router 2 is connected to provider 2 directly. In this case, Router 1 may loss the connectivity to the destination when the link is recovered. This is because Router 3 announces the new route to Router 1 and Router 2 and Router 2 withdraws its old route from Router 1. However, Router 1 can get the withdrawal earlier than the announcement, thereby leading to temporary loss of connectivity to the destination. These specific examples illustrate lessons learned from the current routing systems, that is, how a routing system can behave differently than the protocols involved. In designing future routing systems, we should not only evaluate individual routing protocol but also the routing system as a whole.