Configuring IGRP
Although a few more
configuration options are available to IGRP than to RIP, the basic configuration is every bit as simple: The
router command is used to establish the routing process, and the networkcommand is used to specify each network on which IGRP is to run. As with RIP, only major
network numbers can be specified because IGRP is also a classful protocol.
The commands
neighbor, for sending unicast updates, and passive-interface, for preventing updates from being broadcast on selected subnets, were introduced in Chapter 5, "Routing Information Protocol (RIP)."
They can be used with IGRP just as with RIP.
Offset-list was also introduced in Chapter 5. When used with IGRP, the offset variable is delay instead of hops.
A significant difference from RIP is that each IGRP has a process ID, which allows multiple
processes to be run on the same router.
Case Study: A Basic IGRP Configuration
Only two steps are
necessary to configure IGRP:
Enable IGRP with the command
router igrp
process-id. Specify each major network on which to run IGRP with the network command.
The process ID is carried in the 16-bit autonomous system field of the update packet. The selection of a process ID is arbitrary—any number between 1 and 65,535 (0 is not allowed) can be used, as long as it is used consistently on all routers that must share information via that particular IGRP process. Figure 6.11 shows a simple internetwork; the configurations for the three routers are as
follows:
McCloy(config)#router igrp 10 McCloy(config-router)#network 192.168.1.0 McCloy(config-router)#network 192.168.2.0
Acheson(config)#router igrp 10 Acheson(config-router)#network 192.168.2.0 Acheson(config-router)#network 172.16.0.0
Kennan(config)#router igrp 10 Kennan(config-router)#network 172.16.0.0 Kennan(config-router)#network 10.0.0.0
IGRP will perform subnet hiding, or summarization, at network boundaries. In the case of Figure 6.11, all three
routers are network boundary routers.
Case Study: Unequal-Cost Load Balancing
Given up to six parallel routes
of equal cost, IGRP will do equal-cost load balancing under the same fast/process switching constraints as RIP. Unlike RIP, IGRP can also perform unequal-cost load balancing. An additional serial link has been added between Acheson and Kennan in Figure 6.12, with a configured bandwidth of 256K. The goal is to have Acheson perform unequal-cost load balancing across these two links–spreading the traffic load inversely proportional to the metrics of the link.
Examining the route from Acheson's S0 interface to network 10.0.0.0, the minimum bandwidth is 1544K (assuming Kennan's Ethernet interface is using the default 10000K bandwidth). Referring to Table 6.1, DLYIGRP(sum) for the serial interface and the Ethernet interface is 2000 + 100 = 2100. BWIGRP(min) is 107/1544 = 6476, so the composite metric of the route is 6476 + 2100 = 8576.
The minimum bandwidth on the route via Acheson's S1 to 10.0.0.0 is 256K; DLYIGRP(sum) is the same as on the
first route. Therefore, the composite metric for this route
is 107/256 + 2100 = 41162. Without further configuration, IGRP will simply select the path with the lowest metric cost. Figure 6.13 shows that Acheson is using only the path with a metric of 8576.
The
variance command is used to determine which routes are feasible for unequal-cost load sharing. Variance defines a multiplier by which a metric may differ, or vary, from the metric of the lowest-cost route. Any route whose metric exceeds the metric of the lowest-cost route, multiplied by the variance, will not be considered a feasible route.
The default variance is one, meaning that the metrics of multiple routes must be equal in order to load balance. Variance must be specified in whole numbers.
The metric of Acheson's route through S1 is 41162/8576 = 4.8 times larger than the metric of the S0 route. So to conduct unequal-cost load balancing over Acheson, the variance at
Acheson should be five. The IGRP configuration is:
router igrp 10 network 172.16.0.0 network 192.168.2.0 variance 5
After specifying a variance of five
at Acheson, its routing table will include the second, higher cost route (Figure 6.14). The following three conditions must be met for a route to be included in unequal-cost load sharing:
The maximum-paths limit must not be exceeded as a result of adding the route to a load-sharing "group."
The next-hop router must be metrically closer to the destination. That is, its metric for the route must be smaller than the local router's metric. A next-hop router, being closer to the destination, is often referred to as the downstream router. The metric of the lowest-cost route, when multiplied by the variance, must be greater than the metric of the route to be added.
The rules concerning per destination versus per packet load sharing, discussed in Chapter 3, "Static Routing,"
apply here as well. Load sharing is per destination if the packet is fast switched and per packet if process switching is used. Figure 6.15 shows a debug output resulting from 20 ping packets being sent through Acheson; fast switching has been turned off with
no ip route-cache, and the router is performing unequal-cost, per packet load balancing. For every five packets sent over the 1544K link (to next hop 172.16.1.2), one packet is sent over the 256K link (to next hop 172.16.2.2). This corresponds to the approximately five-to-one variance of the metrics of these two paths.
If variance is set at one, IGRP enters only the lowest-cost route to a destination into the routing table. In some situations, however—for example, to decrease reconvergence time or aid in troubleshooting—all feasible routes should be entered into
the table, even though no load balancing should occur. All packets should use the lowest-cost route and switch to the next-best path only if the primary fails. There is an implicit default command (that is, it exists, but is not observed in the configuration file) of
traffic-share balanced. To configure the router to only use the minimum-cost path even when multiple paths are shown in the routing table, change this default to
traffic-share min. If there are multiple minimum-cost paths and traffic-share min is
configured, IGRP will perform equal-cost load balancing.
Case Study: Setting Maximum Paths
The maximum number of routes over
which IGRP can load balance is set with the maximum-paths
paths command. Paths may be any number from one to six in IOS 11.0 and
later and any number from one to four in earlier versions. The default for all versions is four.
Figure 6.16 shows three parallel paths of varying costs from McCloy to network 172.18.0.0. The network administrator wants to load balance over a maximum of only two of these routes while ensuring that if either of these paths should fail, the third route will replace it.
The metrics from McCloy are:
Via S0: 9765 + (2000 + 100) = 11865 Via S1: 19531 + (2000 + 100) = 21631 Via S2: 78125 + (2000 + 100) = 80225
The metric of the S2 route is 6.76 times as large as the lowest-cost metric, so the variance is seven. McCloy's IGRP
configuration is
router igrp 10 variance 7 network 172.20.0.0 network 192.168.1.0 network 192.168.2.0 maximum-paths 2
The variance command ensures that any of the three routes to 172.18.0.0 is feasible; the
maximum-pathscommand limits the load-sharing group to only the two best routes. The results of this configuration can be seen in Figure 6.17. The first routing table shows that McCloy was load balancing over the two links with the lowest of the three metrics, S0 and S1. After a failure of the S1 link, the second routing table shows that the router is now load balancing over the S0 and S2 links. In each instance, the router
will load balance inversely proportional to the metrics of the two paths.
Case Study: Multiple IGRP Processes
Two new routers, Lovett and Harriman, have
been added to the internetwork (Figure 6.18). A decision has been made to create two IGRP autonomous system "domains" in the internetwork with no communications between the two. Figure 6.19
shows the two autonomous systems and the related links for each.
The configurations for Bohlen, Lovett, McCloy, and Kennan are straightforward: Bohlen, Lovett, and McCloy will run IGRP 10, and Kennan will run IGRP 15. At Acheson, the configuration will be:
router igrp 10 network 192.168.2.0 network 192.168.3.0 ! router igrp 15 network 172.16.0.0
Each process will run only on the interfaces of the networks specified. At Harriman, both interfaces belong to
network 10.0.0.0:
router igrp 10 passive-interface TokenRing0 network 10.0.0.0 ! router igrp 15 passive-interface Serial0 network 10.0.0.0
Using the
passive-interface command prevents IGRP updates from being broadcast on data links where they don't
belong.
|