Section 5.4: Balanced Hybrid Routing Protocol and EIGRP
Cisco supports two distance vector IP routing protocols, namely RIP and IGRP; two link-state IP routing protocols, namely OSPF and Intermediate System-to-Intermediate System (IS-IS); and a single balanced hybrid IP routing protocol, namely Enhance IGRP (EIGRP).
EIGRP is called a balanced hybrid protocol because it has some features that act like distance vector protocols and some features that act like link-state protocols. EIGRP uses neighbor discover and exchange full routing information. Like OSPF, EIGRP sends and receives hello packets to ensure that the neighbor is still available but uses a different Hello packet than OSPF. When link status changes or new subnets are discovered, reliable routing updates are sent, but only with the new information.
EIGRP uses a formula based on bandwidth and delay to calculate the metric associated with a route. It uses the same formula used by IGRP, but the number is multiplied by 256 to accommodate calculations when very high bandwidth values are used.
5.4.1: EIGRP Loop Avoidance
EIGRP avoids loops by keeping some basic topological information but not full information. When a router learns multiple routes to the same subnet, it puts the best route in the routing table, following the same rules about adding multiple equal-metric routes as IGRP. In EIGRP, the best route, i.e., the route with the lowest metric is called the successor. EIGRP also runs an algorithm to identify which backup routes could be used in case of a route failure, without causing a loop. These routes are called feasible successors.
Should the best route (successor) fail and there are no feasible successors for that route, EIGRP uses a distributed algorithm called Diffusing Update Algorithm (DUAL). DUAL sends queries looking for a loop-free route to the subnet in question. When the new route is found, DUAL adds it to the routing table.
Table 5.1: EIGRP, IGRP and OSPF Compared
Feature | EIGRP | IGRP | OSPF |
---|---|---|---|
Discovers neighbors before exchanging routing table | |||
Builds topology table | |||
Quick convergence | |||
Metrics based on bandwidth and delay by default | |||
Exchanges full routing information | |||
Requires distance vector loop-avoidance features | |||
Public standard |