Like most students of networking and router operation, I know the personal frustration of trawling the pages of countless text books and link-after-link on the web in search of those rare gems of information that clarify a difficult concept and give rise to one of those Eureka moments. Those gems rarely come in a form longer than a sentence or two, but here is one that did. It made such an impact on my understanding of router operation that I felt I had to share it. In a single paragraph, this author achieves what most authors fail to achieve in an entire book. It is a rare piece of superb technical writing.
This is a test question solution that appears on the web site of Ken Christensen, an Associate Professor in the Department of Computer Science and Engineering at the University of South Florida. I don't know if he penned it or not since I have no affiliation with him or with that University. I was simply lucky enough to have come across the site while searching for some good info.
I would be curious to know if the paragraph below "illuminates" anyone else's "light bulb," as it were. Is anyone else as pissed off as I am with the standard of technical writing in networking books? It galls me to fork out the lion's share of $100 for a book whose text doesn't even appear to have been spell-checked, let alone revised for accuracy and clear, concise expression.
An IP router uses a routing table consisting of net_ids and port numbers to forward IP datagrams, or packets, to the destination net_id through the "best" port. A port is a physical connection to a network (typically, a network is a LAN). The best port is the one that leads to the shortest path. The routing table must contain all the net_ids in the autonomous system. A packet intended for a net_id not in the routing table is sent out on a default gateway (e.g., it sent to the Internet). The routing table is generated via a distributed routing protocol such as RIP or OSPF that constantly computes least-cost paths between networks. A least-cost path can be lowest delay (i.e., adaptive routing) or simply lowest hop count. An incoming packet to a router has its MAC addresses swapped to the destination address of the next router, or the host if routing to a target network. The ARP cache at each port resolves host_id to MAC address for target hosts or resolves net_id for routers proxying for other networks. Thus, routing tables consist only of net_ids and port numbers reducing the overall size (i.e., compared to if the routing tables contained host_id information in addition to net_id information).
John WA, USA