Routing Protocol (EIGRP) is a Cisco-proprietary routing protocol based on IGRP. EIGRP Advantages Unlike IGRP, which is a classful routing protocol, EIGRP is classless. EIGRP boasts faster convergence times, improved scalability, and superior handling of routing loops. EIGRP can replace Novell RIP and AppleTalk Routing Table Maintenance Protocol (RTMP), serving both IPX and AppleTalk networks with powerful efficiency. EIGRP: Hybrid? EIGRP is an advanced distance-vector routing protocol that relies on features commonly associated with link-state protocols. OSPF's best traits, such as partial updates and neighbor discovery, are similarly put to use by EIGRP. OSPF requires mastery of a complex terminology and command set. However EIGRP's advanced features can be easily implemented and maintained. EIGRP vs IGRP Cisco released EIGRP in 1994 as a scalable, improved version of its proprietary distance-vector routing protocol, IGRP. IGRP and EIGRP are compatible, although EIGRP offers multiprotocol support and IGRP does not. EIGRP uses a metric that is 32 bits long, and IGRP uses a 24-bit metric. By multiplying or dividing by 256, EIGRP can easily exchange information with IGRP. EIGRP also imposes a maximum hop limit of 224, slightly less than IGRP's generous 255. Redistribution is automatic between IGRP and EIGRP as long as both processes use the same autonomous system (AS) number. EIGRP Fundamentals EIGRP routers converge quickly because they rely on a state-of-the-art routing algorithm called the Diffusing Update Algorithm (DUAL) EIGRP makes efficient use of bandwidth by sending partial, bounded updates and its minimal consumption of bandwidth when the network is stable. EIGRP offers full support for classless IP by exchanging subnet masks in routing updates. EIGRP supports IP, IPX, and AppleTalk through protocol- dependent modules (PDMs). PDMs protect EIGRP from painstaking revision. Evolution of a routed protocol, such as IP, may require a new protocol module, but not necessarily a reworking of EIGRP itself. EIGRP support for IPX Time-driven protocols, IPX RIP and SAP, generate updates every 60 seconds by default. These updates can crowd low-speed WAN links, especially in large internetworks. An EIGRP router will receive routing and service updates and then update other routers only when changes in the SAP or routing tables occur. Routing updates occur as they would in any EIGRP network - using partial updates, thus conserving bandwidth on the low-speed WAN links. EIGRP Terminology Neighbor table - Each EIGRP router maintains a neighbor table listing adjacent routers, comparable to the OSPF adjacency database. Topology table - Every EIGRP router maintains a topology table for each configured network protocol showing all learned routes to a destination. Routing table - EIGRP chooses the best routes to a destination from the topology table and places these routes in the routing table. Successor - A successor is a route selected as the primary route to use to reach a destination. Multiple successors for a destination can be retained in the routing table. Feasible successor - A feasible successor is a backup route. Multiple feasible successors for a destination can be retained in the topology table. Neighbor Discovery and Recovery EIGRP routers actively establish relationships with their neighbors, much the same way that OSPF routers do. EIGRP routers establish adjacencies with neighbor routers by using small hello packets. An EIGRP router assumes that, as long as it is receiving hello packets from known neighbors, those neighbors (and their routes) remain viable. By forming adjacencies, EIGRP routers dynamically learn of new routes that join their network, identify routers that become either unreachable or inoperable as well as rediscover routers that had previously been unreachable Reliable Transport Protocol EIGRP is protocol-independent (i.e., it does not rely on TCP/IP to exchange routing information the way that RIP, IGRP, and OSPF do). To stay independent of IP, EIGRP uses its own proprietary transport-layer protocol to guarantee delivery of routing information: RTP. EIGRP can call on RTP to provide reliable or unreliable service as the situation warrants. DUAL Finite State Machine The centerpiece of EIGRP is the Diffusing Update Algorithm finite-state machine, EIGRP's route-calculation engine. An FSM is an abstract machine that defines a set of possible states something can go through, what events cause those states, and what events result from those states. Designers use FSMs to describe how a device, computer program, or routing algorithm will react to a set of input events. The DUAL FSM contains all the logic used to calculate and compare routes in an EIGRP network. DUAL tracks all the routes advertised by neighbors and uses the composite metric of each route to compare them. DUAL also guarantees that each path is loop-free. Lowest-cost paths are then inserted by the DUAL protocol into the routing table. EIGRP Packet Types The five EIGRP packet types are: Hello – used to discover, verify, and rediscover neighbor routers. EIGRP routers send hellos at a fixed but configurable interval, called the hello interval. The default hello interval depends on the bandwidth of the interface, 60 seconds for 1.54 mbps or less and 5 seconds for more than 1.54 mbps. Hellos are sent multicast to IP address 224.0.0.10. Acknowledgment – sent as unicast to indicate receipt of any EIGRP packet during a "reliable" exchange. Update - used when a router discovers a new neighbor or when a router discovers a topology change. Sent unicast and reliably. Query - can be multicast or unicast, used when routers need specific information from one or all neighbors. Sent reliably. Reply - used to respond to a query. Always sent as a unicast. EIGRP Neighbor Tables DUAL selects alternate routes based on the tables kept by EIGRP, and routers use the tables to track all the routing information in an AS, not just the "best" routes. The most important table in EIGRP is the neighbor table and relationships tracked in the neighbor table are the basis for all the EIGRP routing update and convergence activity. The neighbor table contains information about adjacent neighboring EIGRP routers. A neighbor table is used to support reliable, sequenced delivery of packets. An EIGRP router can maintain multiple neighbor tables, one for each PDM running (e.g., IP, IPX, and AppleTalk) routed protocols. EIGRP Routing Table The routing table contains the routes installed by DUAL as the best loop-free paths to a given destination EIGRP will maintain up to four routes per destination. These routes can be of equal or unequal cost. EIGRP routers maintain a separate routing table for each routed protocol. EIGRP Topology Table EIGRP uses its topology table to store all the information it needs to calculate a set of distances and vectors to all reachable destinations. EIGRP maintains a separate topology table for each routed protocol. The topology table is made up of all the EIGRP routing tables in the autonomous system. EIGRP sorts the topology table so that the successor routes are at the top, followed by feasible successors. At the bottom, EIGRP lists routes that DUAL believes to be loops in the topology table. Entries in the topology table can be in one of two states: active or passive. A passive route is one that is stable and available for use. An active route is a route in the process of being recomputed by DUAL. Configuring EIGRP To enable EIGRP and define the autonomous system: router(config)# router eigrp autonomous-system-number Indicate which networks are part of the EIGRP autonomous system on the local router. router(config-router)# network network-number When using serial links, it is important to use the bandwidth on the interface to change the bandwidth used for calculating routing metrics. If you do not change the bandwidth for these interfaces EIGRP assumes the default bandwidth on the link instead of the true bandwidth. router(config-if)# bandwidth kilobits Configuring EIGRP Cisco also recommends that you add the following command to all of your EIGRP configurations: router(config-if)# eigrp log-neighbor-changes This command enables the logging of neighbor adjacency changes to monitor the stability of the routing system and to help detect problems.
EIGRP automatically summarizes routes. In most cases,
auto summarization is a good thing; it keeps routing tables as compact as possible. To turn off auto-summarization, use the following command: router(config-router)#no auto-summary