Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Cisco Press CCNA ICND 2004 - Cisco Press.pdf
Скачиваний:
120
Добавлен:
24.05.2014
Размер:
13.19 Mб
Скачать

Distance Vector Concepts 153

Router B believes some subnets are nearer than others, based on the metric. The show ip route EXEC command shows connected routes as metric 0, as shown in Table 5-3, because there is no router between Router B and those subnets. Router B uses a metric of 1 for routes directly connected to Router A for two reasons. First, Router A advertises those two routes (162.11.5.0 and 162.11.9.0) with metric 1, so Router B believes those metrics. (Router A, before advertising those two routes, adds 1 to the metric value of its own routes to those subnets.) Conceptually, one router (Router A) separates Router B from those subnets. Because RIP’s metric is hop count, a metric of 1 implies that only one router separates Router B from the subnets in question. Similarly, Router B’s metric for subnet 162.11.10.0 is 2, because the routing update from Router A advertises the router with a metric of 2. Conceptually, Router B believes that two routers separate it from 162.11.10.0.

The origin of the term distance vector becomes more apparent with this example. The route to 162.11.10.0 that Router B adds to its routing table refers to Router A as the next router because Router B learns the route from Router A. Router B knows nothing about the network topology on the “other side” of Router A. So Router B has a vector (send packets to Router A) and a distance (2) for the route to subnet 10, but no other details! Router B does not know any specific information about Router C.

The next core concept of distance vector routing protocols relates to when to doubt the validity of routing information. Each router sends periodic routing updates. A routing update timer, which is equal on all routers, determines how often the updates are sent. The absence of routing updates for a preset number of routing timer intervals results in the removal of the routes previously learned from the router that has become silent.

You have read about the basic, core concepts for distance vector protocols. The next section provides a deeper look at issues when redundancy exists in the network.

Distance Vector Loop-Avoidance Features

Routing protocols carry out their most important functions when redundancy exists in the network. Most importantly, routing protocols ensure that the currently-best routes are in the routing tables by reacting to network topology changes. Routing protocols also prevent loops.

Distance vector protocols need several mechanisms to prevent loops. Table 5-4 summarizes these issues and lists the solutions, which are explained in the upcoming text.

154 Chapter 5: RIP, IGRP, and Static Route Concepts and Configuration

Table 5-4 Issues Related to Distance Vector Routing Protocols in Networks with Multiple Paths

Issue

Solution

 

 

Multiple routes to the same

Implementation options involve either using the first route

subnet have equal metrics

learned or putting multiple routes to the same subnet in the

 

routing table.

 

 

Routing loops occur due to

Split horizon—The routing protocol advertises routes out an

updates passing each other

interface only if they were not learned from updates entering

over a single link

that interface.

 

Split horizon with poison reverse—The routing protocol uses

 

split-horizon rules unless a route fails. In that case, the route is

 

advertised out all interfaces, including the interface in which

 

the route was learned, but with an infinite-distance metric.

 

 

Routing loops occur because

Route poisoning—When a route to a subnet fails, the subnet is

routing information loops

advertised with an infinite-distance metric. This term

through alternative paths

specifically applies to routes that are advertised when the

 

route is valid. Poison reverse refers to routes that normally are

 

not advertised because of split horizon but that are advertised

 

with an infinite metric when the route fails.

 

 

Counting to infinity

Hold-down timer—After finding out that a route to a subnet

 

has failed, a router waits a certain period of time before

 

believing any other routing information about that subnet.

 

Triggered updates—When a route fails, an update is sent

 

immediately rather than waiting on the update timer to expire.

 

Used in conjunction with route poisoning, this ensures that all

 

routers know of failed routes before any hold-down timers

 

can expire.

 

 

Route Poisoning

Routing loops can occur with distance vector routing protocols when one router advertises that a route is changing from being valid to being invalid. For instance, something as simple as a serial link’s going down might cause many routes to become invalid, potentially causing routing loops.

One feature that distance vector protocols use to reduce the chance of loops is called route poisoning. Route poisoning begins when a router notices that a connected route is no longer valid. For instance, a router notices that a serial link has failed, changing the link’s status from “up and up” to something else, like “down and down.” Instead of not advertising that failed route anymore, the routing protocol that uses route poisoning still advertises the route, but with a very large metric—so large that other routers consider the metric infinite and the route invalid. Figure 5-4 shows how route poisoning works with RIP when subnet 162.11.7.0 fails.

Distance Vector Concepts 155

Figure 5-4 Route Poisoning for Subnet 162.11.7.0

 

 

A

 

 

 

162.11.7.0

2

 

162.11.7.0

16

1

 

 

 

2

 

 

 

 

 

 

 

S1

162.11.6.0

 

 

 

C

 

 

S1

B

 

 

 

 

 

 

 

 

162.11.7.0

16

 

 

162.11.10.0

162.11.7.0

2

 

Figure 5-4 shows Router B using route poisoning, but it also provides a good backdrop for the potential problem. Router B’s Ethernet fails, so Router B advertises the route with metric 16. With RIP, metric 16 is considered an infinite metric—a metric for which the route should be considered invalid. But imagine that Router C sends its next RIP update (Step 1) to Router A just before receiving the poisoned route (Step 2). If Router B did not use route poisoning, Router A would believe that the route to subnet 162.11.7.0, through Router C, is valid. By advertising the infinite metric route to both Routers A and C, Router B ensures that they do not believe any routes that were based on the idea that Router B could indeed reach subnet 162.11.7.0. As a result, Routers A and C remove their routes to 162.11.7.0.

Split Horizon

Route poisoning does not solve all problems. Even in the simple network shown in Figure 5-3, loops can still occur without another distance vector routing protocol feature called split horizon. To appreciate split horizon, first consider what happens without it (see Figure 5-5).

Figure 5-5 Example of the Problem Solved by Split Horizon

 

162.11.6.2

 

 

162.11.6.1

 

 

 

S1

162.11.6.0

 

S1

 

Router C

 

 

 

 

Router B

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

162.11.7.0

16

 

162.11.10.0

162.11.7.0

2

1

162.11.7.0

 

 

 

 

 

 

 

 

 

 

 

 

 

156 Chapter 5: RIP, IGRP, and Static Route Concepts and Configuration

If the RIP updates sent by Routers B and C happen at about the same instant in time, without split horizon, the problem shown in Figure 5-5 can occur. How often do routers send updates to each other at about the same instant? Well, statistically, more often than you might think. The problem occurs the first time Router B advertises an infinite-distance (metric) route to 162.11.7.0, right after the subnet fails. If Router C sends its next update at about the same time, Router C will not yet have heard that the route to subnet 162.11.7.0 has failed. So Router C advertises a metric 2 route to subnet 162.11.7.0, across the serial link to Router B.

After the updates shown in Figure 5-5 are received, Router C has learned that the route has an infinite metric, at the same time that Router B has learned that Router C has a good route (metric 2) to the same subnet. Tables 5-5 and 5-6 show the resulting routing table entries, with a reference to the metric values.

Table 5-5 Router B Routing Table After Subnet 162.11.7.0 Fails and an Update from Router C Is Received

 

Outgoing

 

 

 

Group

Interface

Next-Hop Router

Metric

Comments

 

 

 

 

 

162.11.6.0

S1

0

 

 

 

 

 

 

162.11.7.0

S1

162.11.6.2

2

The old route failed,

 

 

 

 

but this one is heard

 

 

 

 

from Router C.

 

 

 

 

 

162.11.10.0

S1

162.11.6.2

1

 

 

 

 

 

 

Table 5-6 Router C Routing Table After Subnet 162.11.7.0 Fails and an Update from Router B Is Received

 

Outgoing

 

 

 

Group

Interface

Next-Hop Router

Metric

Comments

 

 

 

 

 

162.11.6.0

S1

0

 

 

 

 

 

 

162.11.7.0

S1

16

The old route was

 

 

 

 

metric 1 through

 

 

 

 

Router B. Now Router

 

 

 

 

B claims that the metric

 

 

 

 

is infinite, so the route

 

 

 

 

must have failed.

 

 

 

 

 

162.11.10.0

E0

1

 

 

 

 

 

 

NOTE In this chapter, the value 16 represents an infinite metric. RIP uses 16 to represent infinite. IGRP uses a delay value of more than 4 billion to imply an infinite-distance route.