IP Distance Vector Routing Principles
The topics in this chapter deal with the original routing protocols and the principles that underlie the technology. These routing protocols are the basis of many subsequent subjects tested in the BSCI exam.
In this chapter, the concepts of routing with IP and the mechanics of the process are dealt within the context of distance vector routing protocols. The topics will directly reﬂect questions on the BSCI exam. If you do not understand the contents of this chapter, it will be difﬁcult to follow some of the subsequent subjects, making it difﬁcult to pass the exam.
“Do I Know This Already?” Quiz
The purpose of the “Do I Know This Already?” quiz is to help you decide what parts of this chapter to use. If you already intend to read the entire chapter, you do not necessarily need to answer these questions now.
The 18-question quiz, derived from the major sections in “Foundation Topics” portion of the chapter, helps you to determine how to spend your limited study time.
Table 4-1 outlines the major topics discussed in this chapter and the “Do I Know This Already?” quiz questions that correspond to those topics.
Table 4-1 “Do I Know This Already?” Foundation Topics Section-to-Question Mapping
134 Chapter 4: IP Distance Vector Routing Principles
CAUTION The goal of self-assessment is to gauge your mastery of the topics in this chapter. If you do not know the answer to a question or are only partially sure of the answer, you should mark this question wrong for purposes of the self-assessment. Giving yourself credit for an answer you correctly guess skews your self-assessment results and might provide you with a false sense of security.
1. Which of the following techniques are used by a distance vector routing protocol?
a. Count to inﬁnity
b. Poison reverse
c. Split horizon
d. Feasible successor
2. Which algorithm is used by distance vector routing protocols?
b. Bellman Ford
d. Feasible successor
3. Which of the following are distance vector routing protocols?
b. IGRP, OSPF, IS-IS
c. RIPv1, RIPv2, IGRP
d. IS-IS, RIPv2
4. Name the interior routing protocols on a Cisco router that sends a routing update every 30
seconds by default.
c. RIPv1, RIPv2
5. Which of the following are enhancements in the creation of RIP version 2?
a. Using the DUAL algorithm
b. Maintaining a topology map
c. Multicast addressing
d. Sending the mask with the update
6. How often does IGRP send a routing update (by default)?
a. 30 seconds
b. 90 seconds
c. It only sends incremental updates
d. 60 seconds
7. When a distance vector routing protocol process suspects that a route in its routing table is no longer valid, it will set the metric for the suspect route so high that the route is rendered unusable. This high metric is propagated in routing updates and sent out immediately. What is this process called?
a. Count to inﬁnity
b. Triggered updates
c. Split horizon
d. Feasible successor
8. What is the algorithm used by EIGRP?
a. Bellman Ford
d. Administrative distance
9. If there is no path in the routing table, what action will EIGRP take?
a. The process will poll the neighbors.
b. An ICMP redirect is sent to the router.
c. The route is dropped and a poison reverse is sent.
d. The route is given a metric of 255.
10. Which of the following has the best administrative distance?
11. Which of the following criteria would select a route as the preferred path to be added to the routing table when there are multiple IP routing protocols running on the router?
a. The route is the only available path.
b. The route has the one interface conﬁgured for IP.
c. The route has the lowest administrative distance.
d. The route has the lowest metric.
12. Which of the following statements are true about administrative distance?
a. Administrative distance is the mechanism used by the routing process to select a path offered by two or more different routing protocols.
b. Administrative distance is a value given to each IP routing protocol.
c. Administrative distance can be manually conﬁgured.
d. The path that is chosen will be the one offered by the routing protocol with the lowest administrative distance.
13. When either RIPv1 or IGRP receive a ﬂash update, what action do they take regarding the affected route?
a. Place the affected route in holddown
b. Delete the affected route
c. Continue to use the route until they hear that it is unavailable
d. If a feasible successor is available, use it and delete the suspect route
14. In EIGRP, where does the routing process look for a feasible successor?
a. Neighbor table
b. Routing table
c. Link state database
d. Topology table
15. If EIGRP ﬁnds a feasible successor, how long will it take for the network to converge?
a. Within three routing updates
b. Almost instantly
c. After the holddown timer has expired
d. After a routing update conﬁrms the feasible successor is valid
16. Which of the following are examples of interior routing protocols?
17. Which of the following are examples of exterior routing protocols?
18. Autonomous system numbers are provided by which organization?
The answers to the “Do I Know This Already?” quiz are found in Appendix A, “Chapter ‘Do I Know This Already?’ Quizzes and Q&A Sections.” The suggested choices for your next step are as follows:
■ 10 or less overall score —Read the entire chapter. This includes the “Foundation Topics” and “Foundation Summary” sections, and the “Q&A” section at the end of the chapter.
■ 11–15 overall score —Begin with the “Foundation Summary” section and then go to the “Q&A” section at the end of the chapter. If you have trouble with these questions, read the appropriate sections in “Foundation Topics.”
■ 16 or more overall score —If you want more review on these topics, skip to the “Foundation Summary” section and then go to the “Q&A” section. Otherwise, move to the next chapter.
138 Chapter 4: IP Distance Vector Routing Principles
Distance Vector Routing Protocols
IP routing protocols use two main technologies: link-state and distance vector technologies. This chapter deals with distance vector protocols. You will learn about link-state protocols in Chapter 5, “IP Link-State Routing Principles.”
Distance vector protocols are the ﬁrst routing protocols that were designed and include RIPv1 and IGRP. These protocols are classful protocols designed for small networks. As the networks started to expand, enhancements were made to the distance vector protocols, with the creation of RIPv2 and EIGRP. Although these still use the distance vector routing algorithms, they were developed later and are examples of classless routing protocols.
NOTE Although IGRP and EIGRP are deﬁned by Cisco as distance vector routing protocols, they are proprietary protocols and therefore do not conform to all the characteristics of a distance vector protocol. For example, EIGRP is deﬁned by Cisco as an advanced distance vector routing protocol, though it has adopted some of the link-state characteristics instead of the distance vector solution. It is sometimes referred to as a hybrid routing protocol. For the purposes of the exam, both IGRP and EIGRP are distance vector routing protocols.
Operation of Distance Vector Routing Protocols
Distance vector protocols send periodic updates about the networks that the routing process has discovered and entered into its routing table. The update is sent to directly connected neighbors. The destination address of the distance vector periodic update is 255.255.255.255 (the broadcast address), meaning that all systems on the segment hear the update. The update is sent out periodically after a timer has expired. The timer is reset immediately after the router has sent an update. Thus, the routing protocol sends out the entire routing table to its neighbors, sets a clock, and after a predetermined amount of time (30 seconds in the case of RIPv1), sends out the entire
routing table again.
After receiving a neighbor’s routing table, the router updates its own table and sends the modiﬁed table in subsequent updates. Because the router passes on information that it has heard from its neighbors, as opposed to an update propagated from one router to all other routers in the network, distance vector routing protocols are said to be “routing by rumor.”
Distance vector routing protocols are classful routing protocols, meaning that they naturally summarize at the IANA or major network boundary. They do this by following the ﬁrst octet rule.
Distance Vector Routing Protocols 139
The purpose of the distance vector protocol is to provide accurate, loop-free information to the routers. The update includes the entire routing table, excluding those networks that were learned from the interface through which the update is being sent. Thus, if a router knows of networks 1, 2, 3, 4, and 5, and it heard of networks 2 and 3 from an update received through E0, the routing update sent out of E0 would contain information about networks 1, 4, and 5. The rule of not repeating what you have heard back to the source is more than simply reﬁned etiquette. It is the implementation of the split horizon rule. The purpose of this rule is to reduce network overhead and also prevent information from traveling in circles through the network, which can create routing loops.
To prevent routing loops, distance vector routing protocols employ the following techniques, which are described in more depth in the section “RIPv1”:
■ Split horizon
■ Poison reverse
■ Triggered updates
■ Aging of routes from the routing table
Count to inﬁnity is a condition that occurs when a route vanishes from the network. It is found in distance vector routing protocols, although strictly speaking, it is not a technique.
The Distance Vector Routing Metrics
The metric used by distance vector protocols is often stated as being distance measured in the number of hand-off points or hops (routers) encountered on the way to the end device. Cisco deﬁnes IGRP and EIGRP as distance vector routing protocols. This muddies the original deﬁnition, because IGRP and EIGRP, although they are distance vector routing protocols, do not use hop count to determine the metric for a route; instead, they use several variables to compute the best path to a destination network. This is referred to as a composite and complex metric.
In distance vector routing protocols, the path selection is made using the Bellman Ford algorithm based on the metric or value of each available path, that of hop count. RFC 1058 discusses this in depth in reference to RIPv1. EIGRP, however, uses a proprietary algorithm called Diffusing Update Algorithm (DUAL).
NOTE If you are asked a question on distance vector metrics, it might be wise to use the RFC 1058 deﬁnition of hop count because IGRP and EIGRP are proprietary protocols. Cisco also uses the original deﬁnition in its documentation.
140 Chapter 4: IP Distance Vector Routing Principles
RIP Version 1 and RIP Version 2
The next sections brieﬂy describe the distance vector routing protocols RIPv1 and RIPv2.
Routing Information Protocol version 1 (RIPv1) is a simple routing protocol and, as such, works well in small networks that are unlikely to grow or change signiﬁcantly. As a distance vector routing protocol, it sends updates every 30 seconds. These updates comprise the entire routing table.
Because RIPv1 was the ﬁrst distance vector routing protocol and became an open standard, administrators who subsequently wrote a routing protocol were obliged to conform to the existing structure if they wished to deﬁne their routing protocol as a distance vector routing protocol. Therefore, the following characteristics describe not only RIPv1, but in essence, any distance vector routing protocol.
■ Count to infinity —A router (A) hears about networks from its neighbors (B and C) and updates the routing table with the new networks. The routing table is then sent to all neighbors (B and C). However, if a neighbor (B) is sent information about networks for which it was the originating source, confusion can occur, which is referred to as a routing loop. The problem occurs when the path to a network goes down; each router might believe that there is an alternative path through its neighbor.
The ramiﬁcations of this problem are limited because each router increments the hop count before it sends out the update. When the hop count reaches 16, the network is
rejected as unreachable, because the diameter of a RIPv1 network cannot be greater than 15. This is called counting to infinity, where “inﬁnity” equals 16. Although the liability is controlled, it will still slow convergence of the network.
■ Split horizon —This is a mechanism to prevent loops. If split horizon works, the need for “count to inﬁnity” is eliminated. The split horizon rule states that the routing process will not advertise networks out of the interface through which those networks were heard. This prevents information about networks being repeated to the source of those networks.
■ Split horizon with poison reverse —Split horizon on its own might not prevent loops, though it prevents networks being advertised out of the interface from which they were learned. However, poison reverse overrides split horizon when a network is lost. Poison reverse includes all the networks that have been learned from the neighbor, but it sets the metric to inﬁnity (16). By changing the metric value to 16, the networks are reported to be unreachable. The routing process acknowledges the network but denies a valid path. Although this increases network overhead by increasing the update size, split horizon with poison reverse can prevent loops.
RIP Version 1 and RIP Version 2 141
■ Holddown —After deciding that a network in the routing table is no longer valid, the routing process waits for three routing updates (by default) before it believes a routing update with a less-favorable metric. Again, this is to prevent routing loops from generating false information throughout the network.
■ Triggered updates —As soon as a routing process changes a metric for a network in its routing table, it sends an update with the metric set to a value that states it is unusable. In RIP, this value is inﬁnity, that is, 16. Triggered updates inform the other routers immediately. If there is a problem in the network, all the affected routers go into holddown immediately instead of waiting for the periodic timer. This mechanism increases convergence and helps prevent loops.
■ Load balancing —If the routing process sees multiple paths of equal cost to a remote network, it distributes the routed (datagram) trafﬁc evenly among the paths. It will allocate datagrams to the different paths on a round-robin basis. The type of switching that is used—process switching or fast switching—will determine whether the load balancing is done on a roundrobin or session basis. Round-robin load balancing is used when there is process switching in effect.
NOTE Because the metric used is hop count, one path can become saturated. A 56-kbps line and a 100-Mbps Fast Ethernet line might both offer paths of equal hop count; the user trafﬁc would be divided equally between the links, but their bandwidths are disproportionate, allowing the slower link to become overwhelmed.
Cisco has implemented all the preceding options, which are deﬁned in RFC 1058.
RIPv1 is useful in small networks and is distributed with Berkeley Standard Distribution (BSD), which makes it widely available. It might not be suitable for large environments, however, because the protocol was not designed with the expectation of being used in huge organizations. One of the keys to RIP is an understanding that 16 is the magic number.
As the network grows, you will see problems with applications timing out and congestion occurring on the network as the routers fail to adapt quickly to changes. When there has been a change in the network, the time that it takes for every router to register that change is known as the convergence time. The longer the convergence time, the greater the likelihood of problems on the network. Therefore, you need either to contain the growth of the network or to use a routing protocol that scales to a larger size. Open Shortest Path First (OSPF) is a link-state routing protocol that is designed to scale. It has the added advantage of being deﬁned by the Internet Engineering Task
Force (IETF), making it an industry standard in the public domain.
142 Chapter 4: IP Distance Vector Routing Principles
RIPv2 is an enhanced version of RIPv1. The main enhancements are that RIPv2 sends the subnet mask with the updates and that the updates are multicast, using 126.96.36.199. The following list explains in more detail the main characteristics of RIP v2.
■ Using a multicast address saves network resources, because all the nodes in the network can discard the packet at either Layer 2 or 3 instead of taking the packet all the way up to the transport layer, where the port number is rejected. Although this saves system resources, the same amount of bandwidth is consumed on each link that the multicast traverses.
■ Sending the mask in the updates allows the network to support classless interdomain routing (CIDR), summarization for the Internet, and variable-length subnet mask (VLSM) summarization for the autonomous system. Summarization requires manual conﬁguration at either the routing process or the interface.
Figure 4-1 illustrates the conﬁguration for Router A in Example 4-1.
Figure 4-1 RIPv2 Configuration
The following example shows a sample conﬁguration, with the version of RIP deﬁned at the routing process. You can also deﬁne the RIP version at the interface level if greater granularity is needed. The highlighted commands illustrate how RIP is conﬁgured as version 2 and how to manually summarize at the interface level.
Example 4-1 RIPv2 Configuration
IGRP and EIGRP 143
IGRP and EIGRP
The next sections brieﬂy describe the distance vector routing protocols IGRP and EIGRP.
Internet Gateway Routing Protocol (IGRP) is a distance vector routing protocol created by Cisco Systems in the mid-1980s. It is a distance vector routing protocol, but because it is proprietary, it has the advantage of being capable of improving many of the elements seen in RIPv1, including incremental updates, fewer network resources to maintain the routing protocol, a more complex and efﬁcient metric, and no limitation in diameter (total hop count) of the network.
As a proprietary protocol, IGRP can streamline its operation as a routing protocol, as described previously. A standard solution needs to implement all the options because by deﬁnition, it has to be all things to all people. The downside of a Cisco proprietary solution is that it can be implemented only on Cisco routers. However, IGRP is very efﬁcient at sharing its information with other routing protocols using redistribution.
IGRP was designed to overcome the limitations of RIPv1. These enhancements center on the speed of convergence, a sophisticated routing metric, and ensuring that the best path is selected and entered into the routing table. The use of triggered updates in IGRP reduces the network resources that are required, which allows for larger networks and, thus, network growth. The following list summarizes the characteristics of IGRP and demonstrates that despite the fact that it is proprietary, IGRP is nonetheless a distance vector routing protocol:
■ Periodic updates —In the spirit of a distance vector routing protocol, IGRP exchanges updates.IGRP sends updates every 90 seconds (by default), whereas RIP sends updates every 30 seconds. This update is a summary of the routing table and is exchanged only with adjacent routers.
■ Broadcasting updates —Because the updates are sent to adjacent routers on the same segment, it is convenient to send these updates with a broadcast address. This means that all systems running IGRP on that segment will hear the update. Some protocols developed after IGRP, such as RIPv2, use multicast addressing to reduce the network overhead, which allows the network to scale.
■ Full routing table updates —Although IGRP sends triggered updates whenever there is a change in the network, it also sends the full routing table every 90 seconds (by default) to ensure that all the routers have the same information. It is essential that the routers have the same information to avoid routing loops and to send packets via the best path. This allows other organizations or departments to merge or for a company to scale its network.
144 Chapter 4: IP Distance Vector Routing Principles
■ Count to infinity —Like other distance vector routing protocols, IGRP uses the count to inﬁnity to remove bad routes from the routing table. If the hop count to a known route increases, the route is removed from the routing table. The assumption is that another router has poisoned the route.
■ Split horizon —Split horizon should prevent routing loops between adjacent routes. IGRP, like other distance vector routing protocols, believes that information about a route should never be sent back out of an interface through which it was heard. The theory is that if the updates are sent as broadcast, then every router on that segment has already received the information about that route. This not only prevents routing loops, but also reduces the size of the update by preventing redundant information from being included.
■ Triggered updates with route poisoning —Distance vector routing protocols attempt to converge the network as quickly as possible. IGRP sends out an update as soon as a change in the network is noticed. If a route has failed, the hop count for that route is set to unreachable. Route poisoning is used in this way to break larger routing loops.
■ Load balancing on equal paths (up to four paths, by default)—This is a Cisco feature that uses the network to achieve the greatest efﬁciency.
■ Default routes —IGRP uses default routes in a slightly different manner from the traditional distance vector routing protocol. Although IGRP accepts the conﬁguration of a default route, it also ﬂags candidates for a default route. The candidate is identiﬁed as a route on the edge of the network. The candidate with the lowest metric is selected as the default route.
■ Bellman Ford routing algorithm —This algorithm is the core of distance vector routing protocols, and IGRP modiﬁes the algorithm in three important ways:
— It uses a composite metric.
— It is possible to conﬁgure more than one path to a destination. These are equal cost paths by default, but the variance command can be used to load balance across unequal paths.
— The use of a composite metric uses more than one path to a destination, and triggered updates provide greater stability in the event of network change.
IGRP differs from RIPv1 in the following ways:
■ The metric is a composite calculated from bandwidth, delay, loading, reliability, and maximum transmission unit (MTU). In fact, although MTU was originally designed as part of the metric, it is tracked but not used in the calculation. It is possible to conﬁgure the use of all the calculated elements of the metric. If all elements are not conﬁgured, the system will use only bandwidth and delay by default.
■ The hop count is 100, conﬁgurable to 255 (although the hop count is not used as a metric, but to age out datagrams).
■ The update timer is set by default to 90 seconds (three times that of RIPv1).
■ Unequal-cost load balancing occurs on multiple paths.
■ A more efﬁcient packet structure is used.
■ Autonomous systems are used to allow multiple processes within a routing domain, which allows the network to scale.
Enhanced Interior Gateway Routing Protocol (EIGRP) is a proprietary interior gateway protocol that is based on IGRP. EIGRP strives to reduce the need for network resources while decreasing the convergence times.
EIGRP is a proprietary protocol from Cisco and is sometimes referred to as an advanced distance vector protocol, an enhanced distance vector protocol, or a hybrid protocol. The term in current favor is advanced distance vector protocol.
EIGRP diverges from a classic distance vector routing protocol in many ways, solving many limitations in scaling the network. EIGRP has the following characteristics:
■ In a stable network, EIGRP uses few resources; using only hello packets to maintain the routing databases.
■ Changes in the network topology result in propagating only the changes instead of broadcasting the entire routing table every 30 seconds, whatever the status of the network.
■ In EIGRP, the initial update is the complete routing table with subsequent updates carrying only changes when those changes occur. A neighbor table is built from hellos, ensuring that both the neighbor and the link are up and running. If the neighbor table fails to hear a hello in the allotted time, the routing process sends an update to the other neighbors informing them of a change in the network. The neighbor table also keeps track of acknowledgments (ACKs) received for the updates that have been sent. Reliable updates mean EIGRP does not have to retransmit every 30 seconds like RIPv1.
■ Using Diffused Update Algorithm (DUAL), the network converges quickly with a minimum of network trafﬁc.
■ Instead of having to wait for updates, as soon as a route goes down, EIGRP examines the topology table for an alternative route. If an appropriate route is found, it is immediately placed into the routing table. In the event that no alternative path is found in the routing table, the neighbors are polled for alternative routes.