IGRP
Cisco Systems developed the IGRP to overcome the limitations of RIPv1. IGRP is a distance-vector routing protocol that considers a composite metric which, by default, uses bandwidth and delay as parameters instead of hop count. IGRP is not limited to the 15-hop limit of RIP. IGRP has a maximum hop limit of 100, by default, and can be configured to support a network diameter of 255.
With IGRP, routers usually select paths with a larger minimum-link bandwidth over paths with a smaller hop count. Links do not have a hop count. They are exactly one hop.
IGRP is a classful protocol and cannot implement VLSM or CIDR. IGRP summarizes at network boundaries. As in RIP, IGRP implements split horizon with poison reverse, triggered updates, and holddown timers for stability and loop prevention. Another benefit of IGRP is that it can load-balance over unequal-cost links. As a routing protocol developed by Cisco, IGRP is available only on Cisco routers.
By default, IGRP will load-balance traffic if there are several paths with equal cost to the destination. IGRP will do unequal-cost load balancing if configured with the variance command.
IGRP Timers
IGRP sends its routing table to its neighbors every 90 seconds. IGRP's default update period of 90 seconds is a benefit compared to RIP, which can consume excessive bandwidth when sending updates every 30 seconds. IGRP uses an invalid timer to mark a route as invalid after 270 seconds (three times the update timer). As with RIP, IGRP uses a flush timer to remove a route from the routing table; the default flush timer is set to 630 seconds (seven times the update period and more than 10 minutes).
If a network goes down or the metric for the network increases, the route is placed in holddown. The router accepts no new changes for the route until the holddown timer expires. This setup prevents routing loops in the network. The default holddown timer is 280 seconds (three times the update timer plus 10 seconds). Table 12-2 summarizes the default settings for IGRP timers.
Table 12-2 IGRP Timers
IGRP Timer |
Default Time |
Update |
90 seconds |
Invalid |
270 seconds |
Holddown |
280 seconds |
Flush |
630 seconds |
IGRP Metrics
IGRP uses a composite metric based on bandwidth, delay, load, and reliability. Chapter 11 discussed these metrics. By default, IGRP uses bandwidth and delay to calculate the composite metric, as follows:
IGRPmetric = {k1 x BW + [(k2 x BW)/(256 load)] + k3 x delay} x {k5/(reliability + k4)}
In this formula, BW uses the lowest interface bandwidth in the path, and delay is the sum of all outbound interface delays in the path. The router dynamically measures reliability and load. The values of reliability and load used in the metric computation range from 1 to 255. Cisco IOS routers display a 100 percent reliability as 255/255. They also display load as a fraction of 255. They display an interface with no load as 1/255. By default, k1 and k3 are set to 1, and k2, k4, and k5 are set to 0. With the default values, the metric becomes
IGRPmetric = {1 x BW + [(0 x BW)/(256 load)] + 1 x delay} x {0/(reliability + 0)} IGRPmetric = BW + delay
The BW is 10,000,000 divided by the smallest of all the bandwidths (in kbps) from outgoing interfaces to the destination. To find delay, add all the delays (in microseconds) from the outgoing interfaces to the destination and divide this number by 10. (The delay is in 10s of microseconds.)
Example 12-3 shows the output interfaces of two routers. For a source host to reach network 172.16.2.0, a path takes the serial link and then the Ethernet interface. The bandwidths are 10,000 and 1544; the slowest bandwidth is 1544. The sum of delays is 20000 + 1000 = 21000.
Example 12-3 show interface
RouterA> show interface serial 0 Serial0 is up, line protocol is up Hardware is HD64570 Internet address is 172.16.4.1/24 MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec, reliability 255/255, txload 1/255, rxload 1/255 RouterB> show interface ethernet 0 Ethernet0 is up, line protocol is up Hardware is Lance, address is 0010.7b80.bad5 (bia 0010.7b80.bad5) Internet address is 172.16.2.1/24 MTU 1500 bytes, BW 10000 Kbit, DLY 1000 usec, reliability 255/255, txload 1/255, rxload 1/255
The IGRP metric is calculated as follows:
IGRPmetric = (10,000,000/1544) + (20000 + 1000)/10 IGRPmetric = 6476 + 2100 = 8576
You can change the default metrics using the metric weight tos k1 k2 k3 k4 k5 subcommand under router igrp. Cisco once intended to implement the tos field as a specialized service in IGRP; it was not implemented so the value of tos is always 0. The k arguments are the k values used to build the composite metric. For example, if you want to use all metrics, the command is as follows:
router igrp n metric weight 0 1 1 1 1 1
IGRP Design
Something to remember when designing a network with IGRP is that it does not support VLSMs. The IP addressing scheme with IGRP requires the same subnet mask for the entire IP network, a flat IP network. IGRP does not support CIDR and network summarization within the major network boundary. IGRP is not limited to a maximum of 15 hops as RIP is; therefore, the network diameter can be larger than that of networks using RIP. IGRP also broadcasts its routing table every 90 seconds, which produces less network overhead than RIP. IGRP is limited to Cisco-only networks. EIGRP is recommended over IGRP.
As shown in Figure 12-5, when you use IGRP, all segments must have the same subnet mask.
Figure 12-5 IGRP DesignÅ@
IGRP Summary
The characteristics of IGRP follow:
Distance-vector protocol.
Uses IP protocol 9.
Classful protocol (no support for CIDR).
No support for VLSMs.
Composite metric using bandwidth and delay by default.
You can include load and reliability in the metric.
Route updates sent every 90 seconds.
104 routes per IGRP message.
Hop count limited to 100 by default, configurable to up to 255.
No support for authentication.
Implements split horizon with poison reverse.
Implements triggered updates.
By default, equal-cost load balancing. Unequal-cost load-balancing with the variance command.
Administrative distance is 100.
Previously used in large networks; now replaced by EIGRP.