Routing Protocol Basics

All dynamic routing protocols are built around an algorithm. Generally, an algorithm is a step-by-step procedure for solving a problem. A routing algorithm must, at a minimum, specify the following:

• A procedure for passing reachability information about networks to other routers.

• A procedure for receiving reachability information from other routers

• A procedure for determining optimal routes based on the reachability information it has and for recording this information in a route table

• A procedure for reacting to, compensating for, and advertising topology changes in an internetwork

A few issues common to any routing protocol are path determination, metrics, convergence, and load balancing.

Path Determination

All networks within an internetwork must be connected to a router, and wherever a router has an interface on a network that interface must have an address on the network. This address is the originating point for reachability information.

Figure 4.1 shows a simple three-router internetwork. Router A knows about networks,, and because it has interfaces on those networks with corresponding addresses and appropriate address masks. Likewise, router B knows about,,, and; router C knows about,, and Each interface implements the data link and physical protocols of the network to which it is attached, so the router also knows the state of the network (up or down).

Figure 4.1. Each router knows about its directly connected networks from its assigned addresses and masks.

At first glance, the information-sharing procedure seems simple. Look at router A:

1. Router A examines its IP addresses and associated masks and deduces that it is attached to networks,, and

2. Router A enters these networks into its route table, along with some sort of flag indicating that the networks are directly connected.

3. Router A places the information into a packet: "My directly connected networks are,, and"

4. Router A transmits copies of these route information packets, or routing updates, to routers B and

5. Routers B and C, having performed the same steps, have sent updates with their directly connected networks to A. Router A enters the received information into its route table, along with the source address of the router that sent the update packet. Router A now knows about all the networks, and it knows the addresses of the routers to which they are attached.

This procedure does seem quite simple. So why are routing protocols so much more complicated than this? Look again at Figure 4.1.

• What should router A do with the updates from B and C after it has recorded the information in the route table? Should it, for instance, pass B's routing information packet to C and pass C's packet to B?

• If router A does not forward the updates, information sharing may not be complete. For instance, if the link between B and C does not exist, those two routers would not know about each other's networks. Router A must forward the update information, but this step opens a whole new set of problems.

• If router A hears about network from both router B and router C, which router should be used to reach that network? Are they both valid? Which one is the best path?

• What mechanism will be used to ensure that all routers receive all routing information while preventing update packets from circulating endlessly through the internetwork?

• The routers share certain directly connected networks (,, and Should the routers still advertise these networks?

These questions are almost as simplistic as the preceding preliminary explanation of routing protocols, but they should give you a feel for some of the issues that contribute to the complexity of the protocols. Each routing protocol addresses these questions one way or another, as will become clear in following sections and chapters.

Figure 4.1. Each router knows about its directly connected networks from its assigned addresses and masks.

192 166.71/24

0 0

Post a comment