• Aucun résultat trouvé

Configuring Loop Avoidance

Dans le document IP NETWORKS CISCOQoS (Page 79-82)

The second portion of the process,loop avoidance, is handled by IGRP by employing several basic rules and a series of timers that are designed to prevent routers from inadvertently advertising routes that create loops, and to prevent routers from accepting a new less favorable route while the network is recon-verging.

The first rule,split horizon, is very simple: Do not send route information back through the interface from which it was learned.The philosophy behind the rule is very simple as well: “Why do I need to tell you what you just told me?”

Since distance-vector protocols select the direction from which they learned of a route as its vector, advertising that route back in that same direction could produce a routing loop. If there is a failure downstream (downstream implies

“between you and the destination”) and a router violates the split horizon rule by advertising the route back to the router from which it learned the route, downstream routers that have learned of the failure will believe that the violating router is now the vector for the failed route.This is because distance-vector pro-tocols only advertise their distance to a location and not the vector.

www.syngress.com

Let’s look at an example of a network that is not using split horizon.We can see in Figure 2.4 that network 172.16.1.0 has failed. Router D informs Routers B and C of this failure. It is now Router B’s responsibility to inform Router A of the failure. However, before Router B’s update period expires (every 90 seconds), it receives an update from Router A advertising a route to 172.16.0.0 with a metric of 8777. Router B would originally have ignored this update because the metric advertised by A is higher than the route that Router B was using.

However, since the original route failed Router B now believes that there is a legitimate path to 172.16.1.0 through Router A! When Router B’s update period finally arrives, it informs Routers C and D of this new route, and now they believe that 172.16.1.0 is accessible through Router B.When Router A receives an update from Router B, it simply increases the metric for the route, and vice versa. Router A never learns of the failure.

In Figure 2.5, we can see what happens when traffic destined for 172.16.1.0 enters the network at Router C. According to Router C, 172.16.1.0 is available through Router B. Router B believes that 172.16.1.0 is available through Router A. Router A believes it is available through Router B.The loop is formed.

This situation can be resolved through a system oftriggered updates, route poi-soning, and hold-down timers.The process again starts with a failure at 172.16.1.0.

Instead of waiting for its update period to expire to inform its neighbors of the failure, Router D broadcasts a triggered update, thereby poisoning the route by Figure 2.4 A Network Failure without Split Horizon

172.16.4.0

setting the metric to infinity. Routers B and C receive this update, broadcast a triggered update to their neighbors in all directions (including back to Router D), and mark the route as possibly down (traffic is still forwarded).They also start a hold-down timer. During the hold-down period, any updates coming from a different direction that contain a higher metric than the original route are ignored. If an update received has a lower metric than the original, the route is marked accessible and the hold-down timer is disabled. After the hold-down period expires, the router will accept routing information from any source with any metric.The hold-down timer is by default three times the update period plus 10 seconds, and is used to allow enough time for word of the failure to reach all routers in the network.

One final timer should be mentioned.When a route is placed in the routing table, a flush timer is set.The flush timer is seven times the update period and is reset each time the router receives an update containing the route. In previous the example, if a new route is never learned, the route will be removed from the routing table after the flush timer expires.The flush timer is also used to learn of a failed neighbor.When a neighbor fails, no triggered update is sent. If the flush timer expires for a route (or routes), the downstream neighbor from which the route(s) was learned is considered dead, and triggered updates are broadcast poi-soning the route(s).The problem here is that it could take 630 seconds to learn of a failed neighbor and to start the reconvergence process!

EIGRP handles this neighbor loss in a much more efficient manner. As stated previously, EIGRP does not implement an update period for broadcasting routing information. Small hello packets are exchanged to ensure that a neighbor is alive, and once route information is exchanged between routers, it is considered valid

www.syngress.com

Figure 2.5A Routing Loop

172.16.4.0

until informed otherwise by a triggered update. In most cases, on interfaces above T1 speeds, hellos are exchanged every 5 seconds. If a hello is not received within three times the hello period, a neighbor is declared dead and the topology table is parsed for an alternate route.This means that a failed neighbor can be discovered in 15 seconds as opposed to the 630 seconds that can expire in IGRP networks!

This, of course, is a very simplistic view of EIGRP. If the link between C and D did fail, Router C would not have an alternate route to Router D, and a pro-cess of Query and Reply to find a new route would begin.The reason Router C does not have an alternative route is because the only other possible way to reach Router D is through Router B. If Router C received an update from Router B advertising the route to Router D, the metric would be so much higher than its own directly connected route that the advertisement would be ignored.The basic behavior of EIGRP is that if an alternate route with a higher metric than the route in use to a destination is advertised ,it will not be used as an alternative because the advertising router is farther from the destination. If a router is farther from a destination, the route that it is advertising could potentially pass back through the closer router, thereby forming a loop.

If this rule is employed throughout the network as a path to a destination is established, the potential of a loop forming is greatly reduced.This is still routing by rumor, because each router is taking on faith that the downstream routers have made the correct choice.When this policy is combined with split horizon, the chances are good that they have.

Defining the Four Basic

Dans le document IP NETWORKS CISCOQoS (Page 79-82)