Routing & EIGRP CCNA 3.0 Enhanced Interior Gateway Routing Protocol (EIGRP) • Really just an enhanced version of IGRP • A Cisco proprietary routing protocol • Called a hybrid protocol, but really just an advanced distance vector protocol. • Fast convergence • Variable length subnet masks • Partial updates - only when the metric for a route changes (bounded updates) • Multiple network layer support - IP, IPX, and AppleTalk • A router running EIGRP stores all its neighbor’s routing tables so that it can quickly adapt or alternate routes. Features of EIGRP Classless Routing Protocol (VLSM, CIDR) Faster convergence times and improved scalability Multiprotocol support: TCP/IP, IPX/SPX, Appletalk – There is no IPX/SPX or Appletalk in CCNA or CCNP Rapid Convergence and Better handling of routing loops – (DUAL) Efficient Use of Bandwidth – Partial, bounded updates: Incremental updates only to the routers that need them. – Minimal bandwidth consumption: Hello packets and by default uses no more that 50% of link’s bandwidth EIGRP packets. PDM (Protocol Dependent Module) – Keeps EIGRP modular – Different PDMs can be added to EIGRP as new routed protocols are enhanced or developed: IPv4, IPv6, IPX, and AppleTalk IGRP & EIGRP They work together and routes are redistributed automatically RTB(config)# router igrp 2446 RTB(config-router)#network 192.168.1.0 RTB(config)#router eigrp 2446 RTB(config-router)# network 10.1.1.0 RTB(config-router)# network 172.16.1.0 IGRP & EIGRP Metric calculation: IGRP/EIGRP metric = [K1 * bandwidth + ((K2 * bandwidth) / (256 * load)) + (K3 * delay)] * [K5/(reliability + K4)] (with the following default constant values): Constant Value K1 1 K2 0 K3 1 K4 0 K5 0 Notes k2 metric effects LOAD k4 and k5 effects RELIABILITY Metric Calculation metric = [K1 * bandwidth + ((K2 * bandwidth) / (256 * load)) + (K3 * delay)] * [K5/(reliability + K4)] When K2, K4 and K5 are 0, these portions of the equation is not factored in to the metric. Thus, with the default constant values, K1=1 and K3=1, the metric equation boils down to this: metric = [(1 * bandwidth) + (1 * delay)] metric = bandwidth + delay Actually: metric = slowest bandwidth + sum of all delays Metric Calculation The metrics used by EIGRP in making routing decisions are (lower the metric the better): bandwidth delay load reliability By default, EIGRP uses only: Bandwidth Delay Analogies: Think of bandwidth as the width of the pipe and delay as the length of the pipe. Bandwidth is a the carrying capacity Delay is the end-to-end travel time. Metric Calculation If these are the default: bandwidth (default) delay (default) When are these used? load reliability Only when configured by the network administrator to do so! Use show interface command to view the metrics used on a specific interface that is routing EIGRP. Metric Calculation – show interfaces Router> show interface s0/0 Serial0/0 is up, line protocol is up Hardware is QUICC Serial Bandwidth Delay Description: Out to VERIO Internet address is 207.21.113.186/30 MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec, rely 255/255, load 246/255 Encapsulation PPP, loopback not set Keepalive set (10 sec) <output omitted> Reliability Load shows reliability as a fraction of 255, shows load as a fraction of 255, for for example (higher is better): example (lower is better): rely 190/255 (or 74% reliability) load 10/255 (or 3% loaded link) rely 234/255 (or 92% reliability) load 40/255 (or 16% loaded link) rely 255/255 (or 100% load 255/255 (or 100% loaded link) reliability) IGRP & EIGRP The routers in the EIGRP network will convert the 24-bit IGRP metric that IGRP uses to its 32-bit metric EIGRP Metric = IGRP Metric x 256 (32 bit vs. 24 bit) EIGRP Terminology Term Neighbor table Definition Lists adjacent routers (like adjacency DB in OSPF Topology table Each router has one for each network protocol routed Routing table Chooses routes from topology table – maintains one for each network protocol Successor Has these for EACH routed protocol Feasible successor Route selected as the primary route to use to reach a destination A backup route to above – multiple feasible successors for a destination can be kept in the topology table Improvements from IGRP 1. Neighbor discovery & recovery – – 2. Use small “hello” packets to estab. adjacencies – sent every 5 seconds Dynamically learn routes that way Reliable Transport Protocol (RTP) – – A transport layer protocol (Layer 4) that guarantees delivery order EIGRP is protocol independent, so has its own guarantee (compare to TCP) Improvements from IGRP Dual finite-state machine 3. – – 4. An algorithm that EIGRP uses to calculate routes Tracks all routes advertised by neighbors and uses a composite metric of each route to compare them Protocol-dependent modules – – Each module is responsible for all functions related to its specific routed protocol In other words, there is an IP PDM, an IPX PDM, an AppleTalk PDM, etc. EIGRP Neighbor Table •This table is the basis for all EIGRP routing updates & convergence •Has IP info about neighbor routers •Smooth Round Trip Timer (SRTT) The average time it takes to send and receive packets from a neighbor. •Queue count The number of packets waiting in queue to be sent. EIGRP Topology Table RouterB#show ip eigrp topology IP-EIGRP Topology Table for process 44 Codes: P - Passive, A - Active, U - Update, Q - Query, R Reply, r - Reply status P 206.202.17.0/24, 1 successors, FD is 2195456 via 206.202.16.1 (2195456/2169856), Ethernet0 P 206.202.18.0/24, 2 successors, FD is 2198016 via 192.168.0.2 (2198016/284160), Serial0 via 206.202.16.1 (2198016/2172416), Ethernet0 Each EIGRP router maintains a topology table for each configured network protocol. This table includes the current routes (successors) and back-up routes (feasible successors). P = Passive (good), A = Active (not ready, DUAL running) EIGRP uses its topology table to store all the information it needs to calculate a set of distances and vectors to all reachable destinations. Info for the destination route: routing protocol, feasible distance of the route, the route cost Terms RD=5 RD=5 10 FD=15 FD=15 10 Coming soon: RD = Reported Distance FD = Feasible Distance 14 15 15 20 FD=20 6 RD=6 Successor – Current Route A successor is a route selected as the primary route to use to reach a destination. Successors are the entries kept in the routing table. Feasible Successor - A backup route These routes are selected at the same time the successors are identified, but they are kept in the topology table. Multiple feasible successors for a destination can be retained in the topology table. Terms RD=5 RD=5 10 FD=15 FD=15 10 14 15 15 20 FD=20 6 RD=6 Feasible distance (FD) is the minimum distance (metric) along a path to a destination network. (“This Router’s Distance”) Reported distance (RD) is the distance (metric) towards a destination as advertised by an upstream neighbor. (“The Neighbor Router’s Distance”) 172.30.1.0/24 RouterX’s FD = 30 to 172.30.1.0/24 (Sent as RD to RouterA) (20) (10) Router H RouterX (10) Router G RouterY’s FD = 21 to 172.30.1.0/24 (Sent as RD to RouterA) (1) Best Route FDDI Ring Router A FD = 31 172.30.1.0 is 31 via RouterY Router B RouterY Router C (10) RouterZ’s FD =220 to 172.30.1.0/24 (Sent as RD to RouterA) Router D RouterZ (100) Router E (100) Router F The Feasible Distance to a network is sent to other routers, as this router’s Reported Distance. Feasible Successor: RD= 30, FC: RD30 < FD31 172.30.1.0/24 (20) (10) Router H RouterX Router G (10) (1) (Current) Successor: RD= 21 FDDI Ring Router A Router B Router C RouterY FD = 31 (10) 172.30.1.0 is 31 NOT a Feasible Successor: RD = 220, FC not met: RD220 > FD31 via RouterY Router D RouterZ (100) Router E (100) Router F A neighbor meets the feasible condition (FC) if the reported distance by the neighbor is smaller than the current feasible distance (FD) of this router. A distance-vector routing protocol not allowing possible paths with loops paths. "If a neighbors metric is less than mine, then I know the neighbor doesn't have a loop going through me." A feasible successor (FS) is a neighbor whose reported distance (RD) is less than the current feasible distance (FD). Feasible successor is one who meets the feasible condition (FC). DUAL – Diffusing Update Algorithm The centerpiece of EIGRP is DUAL fsm (finite state machine), the EIGRP route-calculation engine. DUAL selects alternate routes quickly by using the information in the EIGRP neighbor and topology table. If a link goes down, DUAL looks for a feasible successor in its topology table. Feasible successors provide the next lowest-cost path without introducing routing loops. Selects a best loop-free path to a destination, the next hop being known as the successor. All other routers to the same destination, that also meet the feasible condition, meaning they are also loopfree, become feasible successors, or back-up routes. Router# debug eigrp fsm EIGRP Packet Types Packet Hello – multicast – every 5 seconds Acknowledgement (unicast) Update Definition Discovers, verifies, rediscovers neighbor routers Indicates receipt of an EIGRP during a reliable packet When a router discovers a new neighbor or a topology change Query Needing specific info from a neighbor Reply Response to a query Looking for a New Route RtrD RtrB Queries Replies RtrE RtrA X RtrF RtrC RtrG • If there are no Feasible Successors, the router must ask neighbors for help in hope of finding a new, loop-free path to the destination. • Neighbor routers are compelled to reply to this query. If a neighbor has a route, it will reply with information about the successor(s). If not, the neighbor notifies the sender that it doesn’t have a route to the destination either. This command shows only EIGRP routing table entries EIGRP Routing Table Note that the default administrative distance is 90 with EIGRP internal routes •Contains routes installed by DUAL FSM as the best loop-free paths •Can maintain up to 4 routes per destination •Maintains a separate routing table for each protocol Routing table has the primary route to a destination – this primary route is ALSO in the topology table Basic EIGRP Configuration EIGRP Commands Router(config)# router eigrp AS AS must be the same on all routers. Router(config-router)# network network-number Interface Commands Router(config-if)# bandwidth kilobits Serial links should reflect actual link bandwidth instead of the default of 1544 kbps – or the network may not be able to converge Bandwidth should be set because a less desirable route could be chosen as the best path if the bandwidth setting is higher than the actual bandwidth of the link 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. Configuring EIGRP Summarization EIGRP Commands Router(config-router)# no auto-summary Like RIP and IGRP, EIGRP automatically summarizes as major network boundaries. This command turns off automatic summarization, useful for discontiguous networks (see RIPv2 example). Interface Commands Router(config-if)# ip summary-address eigrp autonomous-system-number ip-address mask [administrative-distance] Summarizes addresses being advertised out of this interface. Administrative distance for EIGRP Summary Routes is 5, but can be modified (optional). Configuring EIGRP Summarization EIGRP Commands Router(config-router)# no auto-summary Like RIP and IGRP, EIGRP automatically summarizes as major network boundaries. This command turns off automatic summarization, useful for discontiguous networks Interface Commands Router(config-if)# ip summary-address eigrp autonomous-system-number ip-address mask [administrative-distance] Summarizes addresses being advertised out of this interface. Administrative distance for EIGRP Summary Routes is 5, but can be modified (optional). Configuring a Default Route Method 1: Quad-Zero Static Route Gateway Router ip route 0.0.0.0 0.0.0.0 serial0 ! router eigrp 100 redistribute static <text omitted> Method 2: ip default-network command Gateway Router router igrp 24 <text omitted> network 207.21.20.0 ip default-network 207.21.20.0 ip route 0.0.0.0 0.0.0.0 207.21.20.1 Troubleshooting IGRP commands when network is unreachable 1. 2. 3. show ip route to see if the network has been installed in the routing table show ip protocols to verify that IGRP is indeed advertising that network. show running-configuration to check the network statements. Troubleshooting Use show commands to monitor normal router behavior Use debug for finding specific problems Routing & EIGRP CCNA 3.0