More details on Routing



One of the tools a router uses to decide where a packet should go is a configuration table. A configuration table is a collection of information, including:

  • Information on which connections lead to particular groups of addresses
  • Priorities for connections to be used (which can become complex in large networks)
  • Rules for handling both routine and special cases of traffic



A router, then, has two separate but related jobs:

  • The router ensures that information doesn't go where it's not needed. This is crucial for keeping large volumes of data from clogging the connections of other users on the network.

  • The router makes sure (hopefully)that information does make it to the intended destination.



As the number of networks attached to one another grows, the configuration table for handling traffic among them grows, and the processing power of the router is increased. This is where most of the current expense in terms of hardware is, for large routers ( for example )



The Packet Switching Network.

As the number of routers and networks grows, the complexity of the overall network topology increases. For now its important to realize that network routing occurs via packet switching. In this system, the data in a message or file is broken up into packages about 1,500 bytes long. Each of these packages gets a wrapper that includes information on the sender's address, the receiver's address, the package's place in the entire message, and how the receiving computer can be sure that the package arrived intact. To help visualize this, consider the following situation:

The routing array your message must negogiate

Route of first packet

Route of second packer

There are two huge advantages to designing this kind of switched information network:

  • The network can balance the load across various pieces of equipment on a millisecond-by-millisecond basis. This can help optimize packet paths, but by its very nature is also prone to chaos.

  • If there is a problem with one piece of equipment in the network while a message is being transferred, packets can be routed around the problem, ensuring the delivery of the entire message. This means there is large scale built-in redundancy, which is crucial to reliability.



None of this can work well, without a good set of reliable protocols. One of the crucial tasks for any router is knowing when a packet of information stays on its local network. Again this is the primary funciton of the subnet mask. The subnet mask looks like an IP address and usually reads "255.255.255.0." This tells the router that all messages with the sender and receiver having an address sharing the first three groups of numbers are on the same network, and shouldn't be sent out to another network.

In the early days of campus networking (e.g. 1987-1992), when various yahoos were trying to configure their own routes and networks, coding in the wrong sub net mask was a common error. If you misidentify your subnet mask, then your machine doesn't really understand what LAN its really on within the overall campus network and this misidentification lead to total network dysfunctionality.