Important features
1. EIGRP uses Bandwidth, MTU, Reliability, Delay, and Load for computing routing metrics.
2. EIGRP, by default, uses bandwidth and delay as metrics for taking routing decisions.
3. EIGRP uses auto summarization of routes at major network boundaries
4. EIGRP uses multicasts to send queries to neighbor routers.
5. EIGRP, and OSPF use Autonomous System (AS) numbers. An EIGRP AS is a complex network that has diverse bandwidth and delay characteristics.
6. EIGRP uses multicasts to send queries to neighbor routers. EIGRP Hello packets are multicast to 224.0.0.10.
7. EIGRP has certain features that belong to link-state algorithms (like OSPF) than distance-vector algorithms. Ex: EIGRP sends a partial routing table update, which includes just routes that have been changed, not the full routing table like distance-vector algorithms.
8. The feasible successor route will become the primary route when its advertised distance is higher than the feasible distance of the successor route. The feasible successor is kept in the topology table as a backup route and can be used in the event that the successor route goes down.
9. "Support VLSM, route summarization, and routing update authentication".
10. EIGRP uses a distributed algorithm called DUAL when a route fails and has no feasible successor to discover a replacement for a failed route. When a new route is found, DUAL adds it to the routing table.
11. When both EIGRP and OSPF are configured, EIGRP route takes precedence over OSPF because EIGRP has an administrative distance of 90, whereas OSPF has an administrative distance of 110. Therefore, the route discovered by EIGRP is entered into the routing table.
12. Unlike RIP and IGRP, EIGRP updates are not periodic. EIGRP updates are sent only when there is a topological change in the network.
13. In EIGRP, the router doing the summarization will build a route to null0 for the summarized address. This ensures that the packets that are not destined for any network are routed to null and thus dropped.
14. EIGRP provides the option of disabling route summarization. The command no auto-summary can be used for this purpose. This option is not available in RIP and IGRP.
15. You can summarize routes in EIGRP at any arbitrary bit boundary
EIGRP uses the following components as metrics:
1. Delay: This is affected by the band width and queuing delay.Calculated by adding up the delay along the path to the next router.
2. Reliability: This is a measurement of reliability of a network link. It is assigned by the administrator or can be calculated by using protocol statistics.This is representative of how many errors are occurring on the interface. The best reliability value is 255. A value of 128 represents only 50% reliability.
3. Load: Load is based on many things, CPU usage, packets processed per sec.Load metric also has a range from 1 to 255. If a serial link is being operated at 50% capacity, the load value is 255X0.5 or 12.5. Lower load value is better.
4. MTU(Maximum Transmission Unit): This is the maximum message length that is acceptable to all links on the path. The larger MTU means faster transmission of packets. Ethernet and serial interface has a default MTU of 1500. Larger MTU size means that the link is more efficient.
5. Bandwidth: This represents the maximum throughput of a link.The bandwidth is specified in Kbps. Larger the bandwidth, better the link.
The following are main features of route summarization in EIGRP:
1. By default, EIGRP summarizes routes at the major network boundaries (classful boundaries).
2. To enable summarization at any level other than major network boundary, you need to disable auto summarization using the command: "No auto-summary"
3. The following command enables summarization at an arbitrary network boundary: "Ip summary-address <as-number> <address-mask>"
4. Note that you need to specify the IP address and routing mask of the summary route. No need to specify the metrics.
The following protocols support automatic route summarization at major network boundaries.
1. RIPv1
2. RIPv2
3. IGRP/EIGRP
Note that OSPF does not support auto-summarization of routes.
Eigrp configuration commands :
Giving the following command starts EIGRP routing process:
Router(config)#router eigrp <Autonomous System Number>
The Autonomous System Number should be same the on all routers.
Typical show ip eigrp topology output is given below:
R1#show ip eigrp topology
IP-EIGRP Topology Table for process 77 Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - Reply status P 192.168.10.0 255.255.255.0, 1 successors, FD is 0 via 172.24.1.2 (46277376/46251776), Serial0
To turn off automatic summarization, use the command,
router(config-router)#no auto-summary
Please note that EIGRP automatically summarizes routes at classful boundary (i.e. the network boundary), unless otherwise specified.
DUAL (Diffusing Update Algorithm) used by EIGRP tracks all the routes advertised by neighbors and selects routes based on feasible successors. It inserts lowest cost paths into the routing table (these routes are known as primary routes or successor routes).
Please note that EIGRP does not summarize received routes. That is, if a network was not summarized at the major network boundary (this may happen, if you use "no auto-summary" command), then all the subnet routes will be carried into the routing tables of subsequent routers in the rest of the world
The correct command to disable auto-summary in EIGRP environment is :no auto-summary
The above command will turn off route summarization in EIGRP network.
Following are possible solutions for preventing routing loops.
1. Split Horizon - Based on the principle that it is not useful to send the information about a route back in the direction from which the information originally came.
2. Poison Reverse - A router that discovers an inaccessible route sets a table entry in a consistent state (infinite metric) while the network converges.
3. Hold-down Timers - Holddown timers prevent regular update messages from reinstating a route that has gone bad. Here, if a route fails, the router waits a certain amount of time before accepting any other routing information about that route.
4. Triggered Updates - Normally, new routing tables are sent to neighboring routers at regular intervals (IP RIP every 30 sec / and IPX RIP every 60 sec). A triggered update is an update sent immediately in response to some change in the routing table. Triggered updates along with Hold-down timers can be used effectively to counter routing loops.
EIGRP show commands :
show ip eigrp topology : To display entries in the Enhanced Interior Gateway Routing Protocol (EIGRP) topology table, use the show ip eigrp topology command in EXEC mode.
The following is sample output of the "show ip eigrp topology" command
show ip eigrp neighbours: To display the neighbors discovered by Enhanced Interior Gateway Routing Protocol (EIGRP), use the "show ip eigrp neighbors" command in EXEC mode. It shows when neighbors become active and inactive. The neighbor parameters displayed include Address, Interface, Holdtime, Uptime, Q, Seq Num, SRTT, and RTO.
The following is sample output of the "show ip eigrp neighbors" command
The fields in the neighbor table are as under:
Show ip eigrp interface: Use the "show ip eigrp interfaces" command to determine on which interfaces EIGRP is active, and to find out information about EIGRP relating to those interfaces. The details shown include interfaces on which EIGRP is configured, number of directly connected EIGRP neighbors on each interface, Mean SRTT, etc.
The following is sample output of the "show ip eigrp interfaces" command
The significant field are described below
show ip eigrp traffic: This command can be used to learn the number of EIGRP packets sent and received.
The following is sample output of the "show ip eigrp traffic" command
The significant fields in the above display are described as below
Neighbor table: The neighbor relationships are tracked in this table which are the basis for EIGRP routing and convergence activity. The address and the interface of a neighbor is discovered and recorded in a new entry of the neighbor table, whenever a new neighbor is discovered. These tables are used for reliable and sequenced delivery of packets.
Topology table: Routers use topology table which route traffic in a network. All routing tables inside the autonomous system are available in this table, where the router is positioned. Each router uses routing protocol and maintains a topology table for each configured network protocol. The routes leading to a destination are found in the topology table.
Route Table: The routes of particular destinations are stored in the routing tables. The information contains the network topology that is immediately around it. The primary goal of routing protocols and routes is the construction of routing tables. Network id, cost of the packet path and next hop are the details are available in the routing table.
The EIGRP neighbor table includes the following key elements:
1.Neighbor Address: IP address of neighbor router interfaces
2.H (Handle): Here you will find the order when the neighbor adjacency was established. Your first neighbor will have a value of 0, the second neighbor a value of 1 and so on.
3.Hold Uptime (sec): This is the holddown timer per EIGRP neighbor. Once this timer expires we will drop the neighbor adjacency. The default holddown timer is 15 seconds. On older IOS versions only a hello packet would reset the holddown timer but on newer IOS versions any EIGRP packet after the first hello will reset the holddown timer.
4.SRTT (Smooth round-trip time): The number of milliseconds it takes to send an EIGRP packet to your neighbor and receive an acknowledgment packet back.
5.RTO (Retransmission timeout): The amount of time in milliseconds that EIGRP will wait before retransmitting a packet from the retransmission queue to this neighbor.
6.Q Cnt (Q count): The number of EIGRP packets (Update, Query or Reply) in the queue that are awaiting transmission. Ideally you want this number to be 0 otherwise it might be an indication of congestion on the network.
7.Seq Num (Sequence number): This will show you the sequence number of the last update,query or reply packet that you received from your EIGRP neighbor.
Neighbor table: The neighbor table stores information about neighboring EIGRP routers:
Topology table: Topology Table: Confusingly named, this table does not store an overview of the complete network topology; rather, it effectively contains only the aggregation of the routing tables gathered from all directly connected neighbors. This table contains a list of destination networks in the EIGRP-routed network together with their respective metrics. Also for every destination, a successor and a feasible successor are identified and stored in the table if they exist. Every destination in the topology table can be marked either as "Passive", which is the state when the routing has stabilized and the router knows the route to the destination, or "Active" when the topology has changed and the router is in the process of (actively) updating its route to that destination.
Routing table: Stores the actual routes to all destinations; the routing table is populated from the topology table with every destination network that has its successor and optionally feasible successor identified (if unequal-cost load-balancing is enabled using the variance command). The successors and feasible successors serve as the next hop routers for these destinations.
Successor: A successor for a particular destination is a next hop router that satisfies these two conditions: The successor route provides the least distance to that destination, and guaranteed not to be a part of some routing loop The successor route is installed in the Routing table.
Feasible successor: The feasible successor effectively provides a backup route in the case that existing successors die. Also, when performing unequal-cost load-balancing (balancing the network traffic in inverse proportion to the cost of the routes), the feasible successors are used as next hops in the routing table for the load-balanced destination.
By default, the total count of successors and feasible successors for a destination stored in the routing table is limited to four. This limit can be changed in the range from 1 to 6. In more recent versions of Cisco IOS (e.g. 12.4), this range is between 1 and 16
EIGRP will use six different packet types when communicating with its neighboring EIGRP routers
Hello Packets - EIGRP sends Hello packets once it has been enabled on a router for a particular network. These messages are used to identify neighbors and once identified, serve or function as a keepalive mechanism between neighbors. EIGRP Hello packets are sent to the link local Multicast group address 224.0.0.10. Hello packets sent by EIGRP do not require an Acknowledgment to be sent confirming that they were received. Because they require no explicit acknowledgment, Hello packets are classified as unreliable EIGRP packets. EIGRP Hello packets have an OPCode of 5.
Acknowledgement Packets - An EIGRP Acknowledgment (ACK) packet is simply an EIGRP Hello packet that contains no data. Acknowledgement packets are used by EIGRP to confirm reliable delivery of EIGRP packets. ACKs are always sent to a Unicast address, which is the source address of the sender of the reliable packet, and not to the EIGRP Multicast group address. In addition, Acknowledgement packets will always contain a non-zero acknowledgment number. The ACK uses the same OPCode as the Hello Packet because it is essentially just a Hello that contains no information. The OPCode is 5.
Update Packets - EIGRP Update packets are used to convey reachability of destinations. Update packets contain EIGRP routing updates. When a new neighbor is discovered, Update packets are sent via Unicast to the neighbor which can build up its EIGRP Topology Table. It is important to know that Update packets are always transmitted reliably and always require explicit acknowledgement. Update packets are assigned an OPCode of 1.
Query Packets - EIGRP Query packets are Multicast and are used to reliably request routing information. EIGRP Query packets are sent to neighbors when a route is not available and the router needs to ask about the status of the route for fast convergence. If the router that sends out a Query does not receive a response from any of its neighbors, it resends the Query as a Unicast packet to the non-responsive neighbor(s). If no response is received in 16 attempts, the EIGRP neighbor relationship is reset. EIGRP Query packets are assigned an OPCode of
Reply Packets - EIGRP Reply packets are sent in response to Query packets. The Reply packets are used to reliably respond to a Query packet. Reply packets are Unicast to the originator of the Query. The EIGRP Reply packets are assigned an OPCode of 4.
Request Packets - Request packets are used to get specific information from one or more neighbors and are used in route server applications. These packet types can be sent either via Multicast or Unicast, but are always transmitted unreliably.