Saturday, April 20, 2013

EIGRP data structure


EIGRP data structure
3.1.5

Like OSPF, EIGRP relies on different types of packets to maintain its tables and establish relationships with neighbor routers. This page will describe these packet types.
The following are the five types of EIGRP packets:
  • Hello
  • Acknowledgment
  • Update
  • Query
  • Reply
EIGRP relies on hello packets to discover, verify, and rediscover neighbor routers. Rediscovery occurs if EIGRP routers do not receive hellos from each other for a hold time interval but then re-establish communication.
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. On IP networks, EIGRP routers send hellos to the multicast IP address 224.0.0.10.
EIGRP routers store information about neighbors in the neighbor table. The neighbor table includes the Sequence Number (Seq No) field to record the number of the last received EIGRP packet that each neighbor sent. The neighbor table also includes a Hold Time field which records the time the last packet was received. Packets should be received within the Hold Time interval period to maintain a Passive state. The Passive state is a reachable and operational status.
If EIGRP does not receive a packet from a neighbor within the hold time, EIGRP considers that neighbor down. DUAL then steps in to re-evaluate the routing table. By default, the hold time is three times the hello interval, but an administrator can configure both timers as desired.
OSPF requires neighbor routers to have the same hello and dead intervals to communicate. EIGRP has no such restriction. Neighbor routers learn about each of the other respective timers through the exchange of hello packets. They then use that information to forge a stable relationship regardless of unlike timers.
Hello packets are always sent unreliably. This means that no acknowledgment is transmitted.
EIGRP routers use acknowledgment packets to indicate receipt of any EIGRP packet during a reliable exchange. RTP provides reliable communication between EIGRP hosts. A message that is received must be acknowledged by the recipient to be reliable. Acknowledgment packets, which are hello packets without data, are used for this purpose. Unlike multicast hellos, acknowledgment packets are unicast. Acknowledgments can be attached to other kinds of EIGRP packets, such as reply packets.
Update packets are used when a router discovers a new neighbor. EIGRP routers send unicast update packets to that new neighbor so that it can add to its topology table. More than one update packet may be needed to convey all the topology information to the newly discovered neighbor.
Update packets are also used when a router detects a topology change. In this case, the EIGRP router sends a multicast update packet to all neighbors, which alerts them to the change. All update packets are sent reliably.
An EIGRP router uses query packets whenever it needs specific information from one or all of its neighbors. A reply packet is used to respond to a query.
If an EIGRP router loses its successor and cannot find a feasible successor for a route, DUAL places the route in the Active state. A query is then multicasted to all neighbors in an attempt to locate a successor to the destination network. Neighbors must send replies that either provide information on successors or indicate that no information is available. Queries can be multicast or unicast, while replies are always unicast. Both packet types are sent reliably.
The next page will describe the EIGRP algorithm

EIGRP technologies


EIGRP technologies
3.1.4

This page will discuss some of the new technologies that EIGRP includes. Each new technology represents an improvement in EIGRP operation efficiency, speed of convergence, or functionality relative to IGRP and other routing protocols. These technologies fall into one of the following four categories:
  • Neighbor discovery and recovery
  • Reliable Transport Protocol
  • DUAL finite-state machine algorithm
  • Protocol-dependent modules
Simple distance vector routers do not establish any relationship with their neighbors. RIP and IGRP routers merely broadcast or multicast updates on configured interfaces. In contrast, EIGRP routers actively establish relationships with their neighbors, much the same way that OSPF routers do.
EIGRP routers establish adjacencies as described in Figure . EIGRP routers use small hello packets to accomplish this. Hellos are sent by default every five seconds. An EIGRP router assumes that as long as it receives hello packets from known neighbors, those neighbors and their routes remain viable or passive. The following are possible when EIGRP routers form adjacencies:
  • Dynamically learn of new routes that join the network
  • Identify routers that become either unreachable or inoperable
  • Rediscover routers that had previously been unreachable
Reliable Transport Protocol (RTP) is a transport layer protocol that guarantees ordered delivery of EIGRP packets to all neighbors. On an IP network, hosts use TCP to sequence packets and ensure their timely delivery. However, EIGRP is protocol-independent. This means 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 RTP as its own proprietary transport layer protocol to guarantee delivery of routing information.
EIGRP can call on RTP to provide reliable or unreliable service as the situation warrants. For example, hello packets do not require the overhead of reliable delivery because they are frequent and should be kept small. The reliable delivery of other routing information can actually speed convergence because then EIGRP routers do not wait for a timer to expire before they retransmit.
With RTP, EIGRP can multicast and unicast to different peers simultaneously. This allows for maximum efficiency.
The centerpiece of EIGRP is the DUAL, which is the EIGRP route-calculation engine. The full name of this technology is DUAL finite-state machine (FSM). An FSM is an algorithm machine, not a mechanical device with parts that move. FSMs define a set of possible states that something can go through, the events that cause those states, and the events that 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. Composite metrics of each route are used to compare them.   DUAL also guarantees that each path is loop free. DUAL inserts lowest cost paths into the routing table. These primary routes are known as successor routes. A copy of the successor routes is also placed in the topology table.
EIGRP keeps important route and topology information readily available in a neighbor table and a topology table. These tables supply DUAL with comprehensive route information in case of network disruption. DUAL uses the information in these tables to select alternate routes quickly. If a link goes down, DUAL looks for an alternative route path, or feasible successor, in the topology table.
One of the best features of EIGRP is its modular design. Modular, or layered designs, prove to be the most scalable and adaptable. Support for routed protocols, such as IP, IPX, and AppleTalk, is included in EIGRP through PDMs. In theory, EIGRP can add PDMs to easily adapt to new or revised routed protocols such as IPv6.
Each PDM is responsible for all functions related to its specific routed protocol. The IP-EIGRP module is responsible for the following functions:
  • Send and receive EIGRP packets that bear IP data
  • Notify DUAL of new IP routing information that is received
  • Maintain the results of DUAL routing decisions in the IP routing table
  • Redistribute routing information that was learned by other IP-capable routing protocols
The next page will discuss the EIGRP packet types

EIGRP design features

EIGRP design features
3.1.4

This page will describe some key design features of EIGRP.
EIGRP operates quite differently from IGRP. EIGRP is an advance distance vector routing protocol, but also acts as a link-state protocol in the way that it updates neighbors and maintains routing information. The following are advantages of EIGRP over simple distance vector protocols:
  • Rapid convergence
  • Efficient use of bandwidth
  • Support for VLSM and CIDR.
  • Multiple network layer support
  • Independence from routed protocols.
Independence from routed protocols means that protocol-dependent modules (PDMs) protect EIGRP from lengthy revision. As routed protocols evolve, they may need new protocol modules, but changes to EIGRP will not be necessary.
EIGRP routers converge quickly because they rely on DUAL. DUAL guarantees loop-free operation throughout a route computation which allows all routers involved in a topology change to synchronize at the same time.
EIGRP sends partial, bounded updates and makes efficient use of bandwidth. EIGRP uses minimal bandwidth when the network is stable. EIGRP routers do not send the complete tables, but instead, send partial, incremental updates. This is similar to OSPF operation, except that EIGRP routers send these partial updates only to the routers that need the information, not to all routers in an area. For this reason, they are called bounded updates. Instead of timed routing updates, EIGRP routers use small hello packets to keep in touch with each other. Though exchanged regularly, hello packets do not use up a significant amount of bandwidth.
EIGRP supports IP, IPX, and AppleTalk through PDMs. EIGRP can redistribute IPX-RIP and IPX SAP information to improve overall performance. In effect, EIGRP can take over for these two protocols. EIGRP routers receive routing and service updates, and update other routers only when changes in the SAP or routing tables occur. In EIGRP networks, routing updates occur in partial updates.
EIGRP can also take over for the AppleTalk RTMP. As a distance vector routing protocol, RTMP relies on periodic and complete exchanges of routing information. To reduce overhead, EIGRP uses event-driven updates to redistributes AppleTalk routing information. EIGRP also uses a configurable composite metric to determine the best route to an AppleTalk network. RTMP uses hop count, which can result in suboptimal routing. AppleTalk clients expect RTMP information from local routers, so EIGRP for AppleTalk should be run only on a clientless network, such as a WAN link.
The next page will discuss some EIGRP technologies.