It is quite amazing to watch people who have just heard of some long-time technical issue assert that they have divined the true answer that has eluded everyone else.
Their solution always seems to be marvelously simple.
They also seem to be attracted to forums that will maximize the audience that can properly evaluate their technical competence-such as the Internet Engineering Task Force (IETF) mailing list. In the Internet arena, a frequent target of these instant experts is IP routing; these people cannot imagine that it can be as hard as the router vendors and routing people at ISPs say it is.
IP routing sounds simple. Each router maintains a list of addresses, known as a routing table. Each address represents a network or an aggregation of networks. Associated with each entry is the address of the next router in the path toward the listed network. Whenever a router receives a packet on an incoming link it compares the destination IP address in the received packet with the entries in the routing table to find the best match. The router then forwards the packet to the next router in the path.
If that’s all that there was to IP routing, then it would be easy. Well it would be conceptually easy; there would still be the question of making this work at the speeds that Internet backbones run and have enough fast memory to store the routing table. But that’s not all that is involved by a long shot.
The content of the routing table changes all the time. Every time there are connectivity changes anywhere in the Internet, it may cause changes in the routing tables in your ISP’s routers. Routers have to continually exchange routing information among themselves to keep the tables up-to-date. The routing tables are also derived from the input routing information, and that can take quite a bit of processing. The hot spots are the size of the table, the amount of information exchange needed to keep it current, and the time needed to process the information.
The tables in the routers in the backbone ISPs have almost 90,000 entries and are growing rapidly (see www. telstra.net/ops/bgptable.html for a real-time snapshot). One way to minimize the rate of growth is to ensure that as many networks as possible can be aggregated under each routing table entry. This requires customers to renumber their networks when they change ISPs so the addresses of their networks can be aggregated with those of the new ISP.
Some of the newly hatched experts in Internet routing claim this renumbering should not be needed because it should be easy to build a big enough, fast enough router to deal with much bigger tables. I assure you, if it were easy, Cisco and Juniper would have a lot more competition.
It’s fun, though somewhat sad, to watch cluelessness in action.
Bradner is a consultant with Harvard University’s University Information Systems. He can be reached at sob@sobco.com.