2. ROUTING PROTOCOL OVERVIEW
A router’s primary function is to move an IP packet from one network to a different network. A
router learns about non-attached networks through configuration of static routes or through
dynamic IP routing protocols.
Dynamic IP routing protocols distribute network topology information between routers and provide
updates without intervention when a topology change in the network occurs.
Design requirements or hardware limitations may restrict IP routing to static routes, which do not
accommodate topology changes very well and can burden network engineers, depending on the size
of the network. With dynamic routing protocols, routers try to select the best loop-free path on
which to forward a packet to its destination IP address.
The common dynamic routing protocols found on most routing platforms today are as follows:
• Routing Information Protocol Version 2 (RIPv2)
• Enhanced Interior Gateway Routing (EIGRP)
• Open Shortest Path First (OSPF)
• Intermediate System-to-Intermediate System (IS-IS)
• Border Gateway Protocol (BGP)
With the exception of BGP, the protocols in this list are designed and optimized for routing within an
autonomous system and are known as Interior Gateway Protocols (IGPs).
Exterior Gateway Protocols (EGPs) route between autonomous systems.
BGP is an EGP protocol but can also be used within an autonomous system. If BGP exchanges routes
within an autonomous system, it is known as an interior BGP (iBGP) session. If it
exchanges routes between different autonomous systems, it is known as an exterior BGP (eBGP)
session.
3. Distance Vector Algorithms
Distance vector routing protocols, such as RIP {Routing Information Protocol}, advertise routes as
vectors, where distance is a metric (or cost) such as hop count, and vector is the next-hop router’s IP
used to reach the destination:
• Distance: The distance is the route metric to reach the network.
• Vector: The vector is the interface or direction to reach the network.
When a router receives routing information from a neighbor, it stores it in a local routing database
as it is received, and the distance vector algorithm (such as the Bellman-Ford and Ford-Fulkerson
4. algorithms) is used to determine which paths are the best loop-free paths to each reachable
destination. When the best paths are determined, they are installed into the routing table and are
advertised to each neighbor router.
Routers running distance vector protocols advertise the routing information to their neighbors from
their own perspective, modified from the original route received.
Therefore, a distance vector protocol does not have a complete map of the whole network; instead,
its database reflects that a neighbor router knows how to reach the destination network and how
far the neighbor router is from the destination network.
The advantage of distance vector protocols is that they require less CPU and memory and can run on
low-end routers.
A distance vector protocol selects paths purely based on distance. It does not account for link speeds
or other factors.
The link between R1 and R7 is a serial link with only 64 Kbps of bandwidth, and all of the other links
are 1 Gbps Ethernet links. RIP does not take this into consideration and forwards traffic across this
link, which will result in packet loss when that link is oversubscribed.
Enhanced Distance Vector Algorithms
The diffusing update algorithm (DUAL) is an enhanced distance vector algorithm that EIGRP uses to
calculate the shortest path to a destination within a network.
EIGRP advertises network information to its neighbors as other distance vector protocols do, but it
has some enhancements, as its name suggests. The following are some of the enhancements
introduced into this algorithm compared to other distance vector algorithms:
• It offers rapid convergence time for changes in the network topology.
• It sends updates only when there is a change in the network. It does not send full routing
table updates in a periodic fashion, as distance vector protocols do.
• It uses hellos and forms neighbor relationships just as link-state protocols do.
• It uses bandwidth, delay, reliability, load, and maximum transmission unit (MTU) size instead
of hop count for path calculations.
• It has the option to load balance traffic across equal- or unequal-cost paths.
5. EIGRP is sometimes referred to as a hybrid routing protocol because it has characteristics of both
distance vector and link-state protocols.
R3 is trying to forward packets to the 192.168.1.0/24 network. If the routing domain used a distance
vector routing protocol, it would take the R3→R1→R7 path, which is only two hops away, rather
than the path R3→R1→R2→R7 path, which is three hops away. But the R3→R1→R7 path cannot
support traffic over 64 kbps. While the R3→R1→R2→R7 path is longer, it provides more bandwidth
and does not have as much delay (because of the serialization process on lower-speed interfaces)
and is the path selected by EIGRP.
Link-State Algorithms
A link-state dynamic IP routing protocol advertises the link state and link metric for each of its
connected links and directly connected routers to every router in the network.
OSPF and IS-IS are two link-state routing protocols commonly used in enterprise and service provider
networks. OSPF advertisements are called link-state advertisements (LSAs), and IS-IS uses link-state
packets (LSPs) for its advertisements.
As a router receives an advertisement from a neighbor, it stores the information in a local database
called the link-state database (LSDB) and advertises the link-state information on to each of its
neighbor routers exactly as it was received. The link-state information is essentially flooded
throughout the network, unchanged, from router to router, just as the originating router advertised
it. This allows all the routers in the network to have a synchronized and identical map of the
network.
Using the complete map of the network, every router in the network then runs the Dijkstra shortest
path first (SPF) algorithm to calculate the best shortest loop-free paths. The link-state algorithm then
populates the routing table with this information.
Due to having the complete map of the network, link-state protocols usually require more CPU and
memory than distance vector protocols, but they are less prone to routing loops and make better
path decisions.
6. Path Vector Algorithm
A path vector protocol such as BGP is similar to a distance vector protocol; the difference is that
instead of looking at the distance to determine the best loop-free path, it looks at various BGP path
attributes.
BGP path attributes include autonomous system path (AS_Path), multi-exit discriminator (MED),
origin, next hop, local preference, atomic aggregate, and aggregator.
A path vector protocol guarantees loop-free paths by keeping a record of each autonomous system
that the routing advertisement traverses.
Any time a router receives an advertisement in which it is already part of the AS_Path, the
advertisement is rejected because accepting the AS_Path would effectively result in a routing loop.
7. 1. R1 (AS 1) advertises the 10.1.1.0/24 network to R2 (AS 2). R1 adds the AS 1 to theAS_Path during the
network advertisement to R2.
2. R2 advertises the 10.1.1.0/24 network to R4 and adds AS 2 to the AS_Path during the network
advertisement to R4.
3. R4 advertises the 10.1.1.0/24 network to R3 and adds AS 4 to the AS_Path during the network
advertisement to R3.
4. R3 advertises the 10.1.1.0/24 network back to R1 and R2 after adding AS 3 to the AS_Path during the
network advertisement.
5. As R1 receives the 10.1.1.0/24 network advertisement from R3, it discards the route advertisement
because R1 detects its AS (AS 1) in the AS_Path “3 4 2 1” and considers the advertisement as a loop.
R2 discards the 10.1.1.0/24 network advertisement from R3 as it detects its AS (AS 2) in the AS_Path
“3 4 2 1” and considers it a loop, too.
8. PATH SELECTION
A router identifies the path a packet should take by evaluating the prefix length that is programmed
in the Forwarding Information Base (FIB).
The FIB is programmed through the routing table, which is also known as the Routing Information
Base (RIB).
The RIB is composed of routes presented from the routing protocol processes. Path selection has
three main components:
1. Longest Match: The prefix length represents the number of leading binary bits in the subnet
mask that are in the on position.
2. Administrative distance: Administrative distance (AD) is a rating of the trustworthiness of a
routing information source. If a router learns about a route to a destination from more than
one routing protocol, and all the routes have the same prefix length, then the AD is
compared.
3. Metrics: A metric is a unit of measure used by a routing protocol in the best-path
calculation. The metrics vary from one routing protocol to another.
9. 1. Longest match
In the figure, a packet is destined for 172.16.0.10. The router has three possible routes that
match this packet: 172.16.0.0/12, 172.16.0.0/18, and 172.16.0.0/26.
Of the three routes, 172.16.0.0/26 has the longest match and is therefore chosen to forward the
packet.
Remember, for any of these routes to be considered a match there must be at least the number
of matching bits indicated by the subnet mask of the route.
2. Administrative distance
Administrative distance is what is used to select the best path when a router has two different paths
to the same destination via two different routing protocols.
Most routing protocols are not compatible with other protocols.
In a network with multiple routing protocols, being able to select the best path between multiple
protocols is critical.
Administrative distance defines the reliability of a routing protocol.
Each routing protocol is prioritized in order of most to least reliable (believable) with the help of an
administrative distance value.
IPv6 uses the same distances as IPv4.
Default Administrative Distances:
10. Routing Protocol Default Administrative Distance
Connected 0
Static 1
EIGRP summary route 5
External BGP (eBGP) 20
EIGRP (internal) 90
OSPF 110
IS-IS 115
RIP 120
EIGRP (external) 170
Internal BGP (iBGP) 200
3. Metric
The metric is a value produced by the routing protocol's algorithm. The metric value determines the
best path to a destination network within a routing protocol.
To determine the metric:
• RIP uses hop count
• EIGRP uses 256*(Bandwidth + Delay) for calculating cost(metric)
• OSPF uses {Reference bandwidth/Interface BW}
Reference BW=100Mbps
Metric is used to compare routes to a destination by the same routing protocol.
Lower values indicate preferred routes.
11. Equal-Cost Multipathing
If a routing protocol identifies multiple paths as a best path and supports multiple path entries, the
router installs the maximum number of paths allowed per destination. This is known as equal-cost
multipathing (ECMP) and provides load sharing across all links. RIP, EIGRP, OSPF, and IS-IS all support
ECMP. ECMP provides a mechanism to increase bandwidth across multiple paths by splitting traffic
equally across the links.
R1# show ip route
! Output omitted for brevity
O 10.3.3.0/24 [110/30] via 10.12.1.2, 00:49:12, GigabitEthernet0/2
[110/30] via 10.14.1.4, 00:49:51, GigabitEthernet0/4
Unequal-Cost Load Balancing
By default, routing protocols install only routes with the lowest path metric. However, EIGRP can be
configured (not enabled by default) to install multiple routes with different path metrics. This allows
for unequal-cost load balancing across multiple paths. Traffic is transmitted out the router’s
interfaces based on that path’s metrics in ratio to other the interface’s metrics.
OSPF
12. R1# show ip route eigrp
! Output omitted for brevity
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 7 subnets, 2 masks
D 10.3.3.0/24 [90/3328] via 10.14.1.4, 00:00:02, GigabitEthernet0/4
[90/5632] via 10.12.1.2, 00:00:02, GigabitEthernet0/2
13. STATIC ROUTING
Static routes provide precise control over routing but may create an administrative burden as the
number of routers and network segments grow.
Using static routing requires zero network bandwidth because implementing manual route entries
does not require communication with other routers.
Unfortunately, because the routers are not communicating, there is no network intelligence. If a link
goes down, other routers will not be aware that the network path is no longer valid. Static routes are
useful when
• Dynamic routing protocols cannot be used on a router because of limited router CPU or
memory
• Routes learned from dynamic routing protocols need to be superseded
Static Route Types
Static routes can be classified as one of the following:
1. Directly attached static routes
2. Recursive static route
3. Fully specified static route
1. Directly Attached Static Routes
Point-to-point interfaces do not have to worry about maintaining an adjacency table and do not use
Address Resolution Protocol (ARP), so static routes can directly reference the outbound interface of
a router.
A static route that uses only the outbound next-hop interface is known as a directly attached static
route, and it requires that the outbound interface be in an up state for the route to be installed into
the RIB.
R1# configure term
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)# ip route 10.22.22.0 255.255.255.0 Serial 1/0
R2# configure term
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)# ip route 10.11.11.0 255.255.255.0 Serial 1/0
R1# show ip route
14. ! Output omitted for brevity
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
C 10.11.11.0/24 is directly connected, GigabitEthernet0/1
C 10.12.2.0/24 is directly connected, Serial1/0
S 10.22.22.0/24 is directly connected, Serial1/0
R2# show ip route
! Output omitted for brevity
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
S 10.11.11.0/24 is directly connected, Serial1/0
C 10.12.2.0/24 is directly connected, Serial1/0
C 10.22.22.0/24 is directly connected, GigabitEthernet0/1
R1 indicates that the 10.22.22.0/24 network is reachable via the S1/0 interface, and R2 indicates that
the 10.11.11.0/24 network is reachable via the S1/0 interface.
2. Recursive Static Routes
The forwarding engine on Cisco devices needs to know which interface an outbound packet should
use.
A recursive static route specifies the IP address of the next-hop address.
The recursive lookup occurs when the router queries the RIB to locate the route toward the next-
hop IP address (connected, static, or dynamic) and then cross-references the adjacency table.
Recursive static routes are configured with the command ip route network subnet-mask next-hop-ip.
Recursive static routes require the route’s next-hop address to exist in the routing table to install the
static route into the RIB.
R1# configure term
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)# ip route 10.22.22.0 255.255.255.0 10.12.1.2
R2# configure term
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)# ip route 10.11.11.0 255.255.255.0 10.12.1.
R1# show ip route
! Output omitted for brevity
15. 10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
C 10.11.11.0/24 is directly connected, GigabitEthernet0/1
C 10.12.1.0/24 is directly connected, GigabitEthernet0/0
S 10.22.22.0/24 [1/0] via 10.12.1.2
Advantage:
Static route recursion can simplify topologies if a link fails because it may allow the static route to
stay installed while it changes to a different outbound interface in the same direction as the
destination.
Disadvantage:
However, problems arise if the recursive lookup resolves to a different interface pointed in the
opposite direction.
3. Fully Specified Static Routes
To correct this issue, the static route configuration should use the outbound interface and the next-
hop IP address. A static route with both an interface and a next-hop IP address is known as a fully
specified static route.
If the interface listed is not in an up state, the router removes the static route from the RIB.
Specifying the next-hop address along with the physical interface removes the recursive lookup and
does not involve the ARP processing problems that occur when using only the outbound interface.
Fully specified static routes are configured with the command ip route network subnet-mask
interface-id next-hop-ip.
R1# configure term
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)# ip route 10.22.22.0 255.255.255.0 GigabitEthernet0/0 10.12.1.2
R2# configure term
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)# ip route 10.11.11.0 255.255.255.0 GigabitEthernet0/0 10.12.1.
R1# show ip route
! Output omitted for brevity
10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
C 10.11.11.0/24 is directly connected, GigabitEthernet0/1
C 10.12.1.0/24 is directly connected, GigabitEthernet0/0
S 10.22.22.0/24 [1/0] via 10.12.1.2, GigabitEthernet0/0
16. Floating Static Routing
The default AD on a static route is 1, but a static route can be configured with an AD value of 1 to
255 for a specific route.
The AD is set on a static route by appending the AD as part of the command structure.
Using a floating static route is a common technique for providing backup connectivity for prefixes
learned via dynamic routing protocols.
A floating static route is configured with an AD higher than that of the primary route. Because the
AD is higher than that of the primary route, it is installed in the RIB only when the primary route is
withdrawn.
R1# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)# ip route 10.22.22.0 255.255.255.0 10.12.1.2 10
R1(config)# ip route 10.22.22.0 255.255.255.0 Serial 1/0 210
R1# show ip route
! Output omitted for brevity
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
C 10.11.11.0/24 is directly connected, GigabitEthernet0/1
C 10.12.1.0/24 is directly connected, GigabitEthernet0/0
C 10.12.2.0/24 is directly connected, Serial1/0
S 10.22.22.0/24 [10/0] via 10.12.1.2
17. Static Null Routes
The null interface is a virtual interface that is always in an up state. Null interfaces do not forward or
receive network traffic and drop all traffic destined toward them without adding overhead to a
router’s CPU.
Configuring a static route to a null interface provides a method of dropping network traffic without
requiring the configuration of an access list.
Creating a static route to the Null0 interface is a common technique to prevent routing loops.
The static route to the Null0 interface uses a summarized network range, and routes that are more
specific point toward the actual destination.
1. For example, a computer on the Internet sends a packet to 172.16.5.5, and the
172.16.5.0/24 network is not allocated on R1 or R2.
2. The ISP sends the packet to R1 because of the 172.16.0.0/20 static route; R1 looks into
the RIB, and the longest match for that prefix is the default route back to the ISP, so R1
sends the packet back to the ISP, creating the routing loop.
3. The service provider places a static route for the 172.16.0.0/20 network to R1’s interface
(192.168.1.1). R1 uses a static default route pointed toward the service provider
(192.168.1.2) and a static route to the 172.16.3.0/24 network via R2 (172.16.1.2).
Because R2 accesses all other networks through R1, a static default route points toward
R1’s interface (172.16.1.1).
R2# trace 172.16.5.5 source GigabitEthernet 0/2
Type escape sequence to abort.
Tracing the route to 172.16.5.5
1 172.16.1.1 0 msec 0 msec 0 msec
2 192.168.1.1 0 msec 0 msec 0 msec
3 192.168.1.2 0 msec 4 msec 0 msec
4 192.168.1.1 0 msec 0 msec 0 msec
5 192.168.1.2 0 msec 0 msec 0 msec
! Output omitted for brevity
To prevent the routing loop, a static route is added for 172.16.0.0/20, pointed to the Null0 interface
on R1.
Any packets matching the 172.16.0.0/20 network range that do not have a longer match in R1’s RIB
are dropped.
18. R1
ip route 0.0.0.0 0.0.0.0 Gi0/0 192.168.1.2
ip route 172.16.3.0 255.255.255.0 Gi0/2 172.16.1.2
ip route 172.16.0.0 255.255.240.0 Null0
R2# trace 172.16.5.5 source GigabitEthernet 0/2
Type escape sequence to abort.
Tracing the route to 172.16.5.5
1 172.16.1.1 * * *
2 172.16.1.1 * * *
! Output omitted for brevity
QUIZ
1. Which of the following routing protocols is classified as an EGP?
1. RIP
2. EIGRP
3. OSPF
4. IS-IS
5. BGP
2. Which of the following routing protocols are classified as IGPs? (Choose all that apply.)
1. RIP
2. EIGRP
3. OSPF
4. IS-IS
5. BGP
3. A path vector routing protocol finds the best loop-free path by using ______.
1. hop count
2. bandwidth
3. delay
4. interface cost
5. path attributes
4. A distance vector routing protocol finds the best loop-free path by using ______.
1. hop count
2. bandwidth
3. delay
4. interface cost
5. path attributes
19. 5. A link-state routing protocol finds the best loop free path by using ______.
1. hop count
2. bandwidth
3. delay
4. interface cost
5. path attributes
6. A router uses _________ as the first criterion for forwarding packets.
1. path metric
2. administrative distance
3. longest match
4. hop count
7. A router uses _________ as the second criterion for forwarding packets.
1. path metric
2. administrative distance
3. longest match
4. hop count
8. The ability to install multiple paths from the same routing protocol with the same path metric into
the RIB is known as ______.
1. per-packet load balancing
2. round-robin load balancing
3. equal-cost multipathing
4. parallel link forwarding
9. Which static route should be used to avoid unintentional forwarding paths with an Ethernet link
failure?
1. A directly attached static route
2. A recursive static route
3. A fully specified static route
4. A static null route
10. Virtual routing and forwarding (VRF) is useful with _____ addresses.
1. MAC
2. IPv4
3. IPv6
4. IPv4 and IPv6
Answers to the “Do I Know This Already?” quiz:
1 E
2 A, B, C, D
3 E
4 A
5 E
6 C
7 B
21. EIGRP (ENHANCED INTERIOR GATEWAY ROUTING
PROTOCOL)
EIGRP Theory of Operation
o EIGRP stands for Enhanced Interior Gateway Routing Protocol.
o EIGRP is a Cisco Proprietary routing protocol however open in 2013.
o It is hybrid routing protocol sometime called Advanced Distance Vector.
o It has characteristics of both distance vector and link state protocols.
o It uses DUAL (Diffusing Update Algorithm) algorithm to select best path.
o EIGRP supports Both Internet Protocol V4 and IPV6 routed protocols.
o EIGRP protocol supports VLSM, CIDR also supports trigger updates.
o It sends partial or full update only when something is change in network.
o The Default Internal Administrative Distance of EIGRP protocol is 90.
o The Default External Administrative Distance of EIGRP protocol is 170.
o The EIGRP default hope count support is 100 but it can be tune to 255.
o EIGRP protocol support Equal cost Load and Unequal Cost load balancing.
o EIGRP take load balancing by default up-to 4 paths can configure up to 32.
o Hello time of EIGRP protocol is 5 seconds and the dead time is 15 seconds.
o EIGRP updates are sent to 224.0.0.10 on Multicast Internet Protocol address.
o EIGRP Support MD5 Authentication & by default, Auto Summarization is enable.
Some of the many advantages of EIGRP are:
• very low usage of network resources during normal operation; only hello packets are
transmitted on a stable network
• when a change occurs, only routing table changes are propagated, not the entire routing
table; this reduces the load the routing protocol itself places on the network
• rapid convergence times for changes in the network topology (in some situations
convergence can be almost instantaneous)
EIGRP is an enhanced distance vector protocol, relying on the Diffused Update Algorithm (DUAL) to
calculate the shortest path to a destination within a network.
Major Revisions of the Protocol
There are two major revisions of EIGRP, versions 0 and 1. Cisco IOS versions earlier than 10.3(11),
11.0(8), and 11.1(3) run the earlier version of EIGRP; some explanations in this paper may not apply
to that earlier version. We highly recommend using the later version of EIGRP, as it includes many
performance and stability enhancements.
22. Basic Theory
R2 → R1 → Network A (better path as per Distance vector) (called successor in EIGRP)
R2 → R3 → R4 → Network A (second best path in EIGRP called as feasible successor)
- Since the path through Router Three is three hops, and the path through Router One is two
hops, Router Two chooses the path through One and discards the information it learned
through Three.
- In case of R1 failure, it will take between 90 and 120 seconds for Router Two to switch the
path from Router One to Router Three.
- EIGRP, instead of counting on full periodic updates to re-converge, builds a topology table
from each of its neighbor's advertisements (rather than discarding the data), and converges
by either looking for a likely loop-free route in the topology table, or, if it knows of no other
route, by querying its neighbors.
- Router Two saves the information it received from both Routers One and Three.
- It chooses the path through One as its best path (the successor) and the path through Three
as a loop-free path (a feasible successor).
- When the path through Router One becomes unavailable, Router Two examines its topology
table and, finding a feasible successor, begins using the path through Three immediately.
EIGRP FACTS:
- The rate at which EIGRP sends hello packets is called the hello interval, and you can adjust it
per interface with the ip hello-interval eigrp command.
- The hold time is the amount of time that a router will consider a neighbor alive without
receiving a hello packet.
- The hold time is typically three times the hello interval, by default, 15 seconds (5-second
hello) and 180 seconds (60-second hello). You can adjust the hold time with the ip hold-time
eigrp command.
- Note that if you change the hello interval, the hold time is not automatically adjusted to
account for this change - you must manually adjust the hold time to reflect the configured
hello interval.
- It is possible for two routers to become EIGRP neighbors even though the hello and hold
timers do not match.
- The hold time is included in the hello packets so each neighbor should stay alive even
though the hello interval and hold timers do not match.
- While there is no direct way of determining what the hello interval is on a router, you can
infer it from the output of the show ip eigrp neighbors command on the neighboring router.
23. router# show ip eigrp neighbors
IP-EIGRP neighbors for process 1
H Address Interface Hold Uptime SRTT RTO Q Seq Type
(sec) (ms) Cnt Num
1 10.1.1.2 Et1 13 12:00:53 12 300 0 620
0 10.1.2.2 S0 174 12:00:56 17 200 0 645
- EIGRP does not build peer relationships over secondary addresses. All EIGRP traffic is
sourced from the primary address of the interface.
There are no limitations on the number of neighbors that EIGRP can support. The actual number of
supported neighbors depends on the capability of the device, such as:
1. memory capacity
2. processing power
3. amount of exchanged information, such as the number of routes sent
4. topology complexity
5. network stability
THREE EIGRP STATES:
Neighbor Discovery:
To distribute routing information throughout a network, EIGRP uses non-periodic incremental
routing updates. That is, EIGRP only sends routing updates about paths that have changed when
those paths change.
24. The basic problem with sending only routing updates is that you may not know when a path through
a neighboring router is no longer available. You can not time out routes, expecting to receive a new
routing table from your neighbors. EIGRP relies on neighbor relationships to reliably propagate
routing table changes throughout the network; two routers become neighbors when they see each
other's hello packets on a common network.
Topology Table:
EIGRP, unlike RIP and IGRP, does not rely on the routing (or forwarding) table in the router to hold
all of the information it needs to operate. Instead, it builds a second table, the topology table, from
which it installs routes in the routing table.
To see the basic format of the topology table on a router running EIGRP, issue the show ip eigrp
topology command. The topology table contains the information needed to build a set of distances
and vectors to each reachable network, including:
• lowest bandwidth on the path to this destination as reported by the upstream neighbor
• total delay
• path reliability
• path loading
• minimum path maximum transmission unit (MTU)
• feasible distance
• reported distance
• route source (external routes are marked)
EIGRP Metrics:
EIGRP uses the minimum bandwidth on the path to a destination network and the total delay to
compute routing metrics.
Although you can configure other metrics, we do not recommend it, as it can cause routing loops in
your network.
The bandwidth and delay metrics are determined from values configured on the interfaces of
routers in the path to the destination network.
25. It starts with the two advertisements for this network: one through Router Four, with a minimum
bandwidth of 56 and a total delay of 2200; and the other through Router Three, with a minimum
bandwidth of 128 and a delay of 1200. Router One chooses the path with the lowest metric.
Let us compute the metrics. EIGRP calculates the total metric by scaling the bandwidth and delay
metrics. EIGRP uses the following formula to scale the bandwidth:
• bandwidth = (10000000/bandwidth(i)) * 256
where bandwidth(i) is the least bandwidth of all outgoing interfaces on the route to the
destination network represented in kilobits.
EIGRP uses the following formula to scale the delay:
• delay = delay(i) * 256
where delay(i) is the sum of the delays configured on the interfaces, on the route to the
destination network, in tens of microseconds. The delay as shown in the show ip eigrp
topology or show interface commands is in microseconds, so you must divide by 10 before
you use it in this formula. Throughout this paper, we use delay as it is configured and shown
on the interface.
EIGRP uses these scaled values to determine the total metric to the network:
• metric = ([K1 * bandwidth + (K2 * bandwidth) / (256 - load) + K3 * delay] * [K5 / (reliability +
K4)]) * 256
Note: These K values should be used after careful planning. Mismatched K values prevent a neighbor
relationship from being built, which can cause your network to fail to converge.
Note: If K5 = 0, the formula reduces to Metric = ([k1 * bandwidth + (k2 * bandwidth)/(256 - load) +
k3 * delay]) * 256.
The default values for K are:
• K1 = 1
• K2 = 0
• K3 = 1
• K4 = 0
• K5 = 0
For default behavior, you can simplify the formula as follows:
metric = bandwidth + delay
In this example, the total cost through Router Four is:
minimum bandwidth = 56k
total delay = 100 + 100 + 2000 = 2200
[(10000000/56) + 2200] x 256 = (178571 + 2200) x 256 = 180771 x 256 = 46277376
26. And the total cost through Router Three is:
minimum bandwidth = 128k
total delay = 100 + 100 + 1000 = 1200
[(10000000/128) + 1200] x 256 = (78125 + 1200) x 256 = 79325 x 256 = 20307200
So, to reach Network A, Router One chooses the route through Router Three.
EIGRP Tables:
EIGRP maintains three tables.
1) Neighbor Table,
2) Topology Table and
3) Routing Table
Neighbor Table:
Neighbor table includes all neighbors that is directly connected to router using EIGRP. In
simple words, next hop router and the interfaces.
Topology Table:
EIGRP uses this table to store all routes, which it learned from neighbors. It contains a list of
all destinations and routes advertised by neighboring routers. The EIGRP Topology table
contains everything that EIGRP has learned.
Routing Table:
EIGRP stores single best (Successor) route for each destination in this table. Router uses this
table to forward the packet. There is a separate routing table for each routed protocol.
27. EIGRP Neighbor Table Explanation:
H (Handle) Lists the neighbors in the order this router was learned
Address The IP address of the neighbors
Interface The interface of the local router on which this Hello packet was received
Hold The amount of time left before neighbor is considered in “down” status
Uptime How long the neighbor has been up
SRTT (Smooth Round Trip Time): The number of milliseconds it takes to send an
EIGRP packet to neighbor and receive an acknowledgment packet back
RTO (Retransmission Timeout): if a multicast has failed, then a unicast is sent to
that particular router, the RTO is the time in milliseconds that the router
waits for an acknowledgement of that unicast.
Q Cnt (Q Count): Shows the number of queued EIGRP packets. It is usually 0
Seq Num The sequence number of the last update EIGRP packet received
EIGRP Topology Table Explanation:
AS Autonomous System number 1
Codes Passive is good and Active is bad
Sia Status (Stuck
in Active)
EIGRP has not received a reply to a query packet from one of the
neighbors within the allowed time about 3 minutes.
1 Successors The best path In this case only one way to get to the destination
FD is 2816 Feasible Distance: Total distance to get to the destination
28. 28416/28160 First, one is Feasible Distance. The second Value is Advertised
Distance
EIGRP Routing Table Explanation:
D Shows this is an EIGRP learnt route
192.168.3.0/24 Destination learn network and 24 is subnet mask.
90 90, is the Administrative Distance of EIGRP.
3072 This is the metric, Total distance to get to the destination
192.168.2.3 The neighbor that advertised the route.
00:49:16 Time since the route was learnt.
GigabitE1/0 The outbound interface going towards the destination.
EIGRP Metric:
EIGRP uses metric to select the best route from all available routes for destination. Metric
has five components.1.Bandwidth, 2.Load, 3.Delay, 4.Reliability and 5.MTU. From these only
bandwidth and delay are by default enabled.
K Value Component Description
K1 Bandwidth Lowest bandwidth of route
K2 Load Worst load on route based on packet rate
K3 Delay Cumulative interface delay of route
K4 Reliability Worst reliability of route based on keep alive
K5 MTU Smallest MTU in path [Not used in route calculation]
29. Path Metric Calculation:
EIGRP Metric = 256*((10^7 / min. BW) + Delay)
=256*((10000000/Minimum BW) + Sum of Interface Delays/10)
Where Bandwidth = 10000000/bandwidth (i), where bandwidth (i) is the least bandwidth of
all outgoing interfaces on the route to the destination network represented in kilobits. Delay
= delay (i) where delay (i) is the sum of the delays configured on the interfaces, on the route
to the destination network, in tens of microseconds.
EIGRP Metric = 256*((10000000/Minimum BW) + Sum of Interface Delays/10)
EIGRP Metric = 256*(10000000/100000) + 100+5000/10)
EIGRP Metric = 256*(100) +5100/10)
EIGRP Metric = 256*(100) +510)
EIGRP Metric = 256*610
EIGRP Metric = 156160
30. Path Selection Optimization:
Change EIGRP metrics by manipulating the bandwidth and/or delay values. Changing the
bandwidth value is not recommended because that value is used for many other reasons
and features in the router. Also, configure the K-Values to influence the EIGRP metric
calculation.
Commands Description
R6#show ip route eigrp
D 7.7.7.7 [90/156160] via 192.168.76.7, F0/1
[90/156160] via 192.168.67.7, F0/0
First verify both routes in routing table
Equal path load balancing
R6(config)#interface FastEthernet 0/0
R6(config-if)# bandwidth 10000
Enter interface mode
Decrease the bandwidth to 10000
R6#show ip route eigrp Verify again only one path now
R6(config)#interface FastEthernet 0/0
R6(config-if)#no bandwidth 10000
Enter interface mode
Make the default bandwidth again
R6#show ip route eigrp Check again both path back
R6(config)#interface FastEthernet 0/0
R6(config-if)#delay 200
Enter interface mode
Increase the delay this time
R6#show ip route eigrp Verify again only one path now
R6(config)#interface FastEthernet 0/0
R6(config-if)#no delay 200
Enter interface mode
Make the default delay again
R6#show ip route eigrp
D 7.7.7.7 [90/156160] via 192.168.76.7, F0/1
[90/156160] via 192.168.67.7, F0/0
First verify both routes in routing table
Equal path load balancing
R6(config)#router eigrp 1
R6(config-router)#metric weights 0 1 1 1 1 1
Enter EIGRP mode
Change k Values
R7(config)#router eigrp 1
R7(config-router)#metric weights 0 1 1 1 1 1
Enter EIGRP mode
Change K values
R6#show ip route eigrp
D 7.7.7.7 [90/610]
Verify the eigrp routes different FD
R6(config)#interface FastEthernet 0/0
R6(config-if)# bandwidth 10000
R6(config-if)#delay 200
Enter interface mode
Decrease the bandwidth to 10000
Increase the delay Change metric
31. EIGRP Packet Types:
EIGRP uses five packet types in communication with its neighbors. The packet types are
below.
Packet Description
Hello Used to identify neighbors. They are sent as periodic multicasts.
Update Used to advertise routes, only sent as multicasts when something is changed.
Ack Acknowledges receipt of an update.
Query Used to find alternate paths when all paths to a destination have failed.
Reply Used to response to query packets about routing information.
Hello:
Hello packets are used for neighbor discovery. As soon as the hello packets send and receive
EIGRP routers will try to form the neighbor adjacency. They are multicast to 224.0.0.10. By
default, EIGRP sends hello packets every 5 seconds.
Update:
Update packets contain routing information for destinations. EIGRP unicasts update packets
to newly discovered neighbors; otherwise, it multicasts update packets to 224.0.0.10 when
a link or metric changes. Update packets are acknowledged to ensure reliable transmission.
Query:
EIGRP sends query packets used to find alternate paths when all paths to a destination have
failed. Query packets are always multicast.
Reply:
EIGRP sends reply packets to respond to query packets. Reply packets provide a feasible
successor to the sender of the query. Reply packets are unicast to the sender of the query
packet.
ACK:
ACK packets are used to acknowledge the receipt of update, query and replay packets. ACK
packets are sent by using unicast.
EIGRP Terminologies:
Advertised Distance (AD)/Reported Distance (RD): The cost from the neighbor to the
destination.
Feasible Distance (FD): The total cost to reach a destination network.
Successor: The primary route used to reach a destination. The successor route is kept in the
routing table. Notice that successor is the best route to that destination.
Feasible Successor: The backup route. To be a feasible successor, the route must have an
AD less than the FD of the current successor route.
32. Feasible Distance, Reported Distance, and Feasible Successor
Feasible distance is the best metric along a path to a destination network, including the metric to the
neighbor advertising that path.
Reported distance is the total metric along a path to a destination network as advertised by an
upstream neighbor.
A feasible successor is a path whose reported distance is less than the feasible distance (current best
path).
Router One sees that it has two routes to Network A: one through Router Three and another
through Router Four.
• The route through Router Four has a cost of 46277376 and a reported distance of 307200.
• The route through Router Three has a cost of 20307200 and a reported distance of 307200.
33. EIGRP Summarization:
Auto-Summarization:
Auto Summarization is a feature, which allows Routing Protocols to summarize its routes to
their classful networks automatically. By default, EIGRP has auto summary feature enabled.
Because of this, routes are summarized to classful address at network boundaries in the
routing updates. The Auto-Summarization can be disabled with a command of no auto-
summary from the router prompt.
Commands Description
R1(config)#router eigrp 1
R1(config-router)#network 0.0.0.0
R1(config-router)#no auto-summary
Enter EIGRP mode
Advertise all networks
Disable auto summary feature
R2(config)#router eigrp 1
R2(config-router)#network 0.0.0.0
R2(config-router)#no auto-summary
Enter EIGRP mode
Advertise all network
Disable auto summary feature
R1#show ip route eigrp View routing table for EIGRP all four
networks of 172 present in table
R2(config)#router eigrp 1
R2(config-router)#auto-summary
Enter EIGRP mode
Enable auto summary feature
R1#show ip route eigrp Again, view routing table for EIGRP
Only summary route 172.16.0.0/16
Manual Summarization:
The manual summarization is a process of creating a summary route that will be used to
represent multiple routes and can be used to reduce the sizes of routing tables in a network.
Manual summarization is configured differently on different protocols.
Advantages of Summarization:
Saves Memory Routing tables will be smaller which reduces memory requirements.
Saves Bandwidth There are less routes to advertise so we save some bandwidth.
Saves CPU Cycles Less packets to process and smaller routing tables to work on.
Stability Prevents routing table instability due to flapping networks.
EIGRP Summarization:
By default, EIGRP has auto summary feature enabled. Because of this, EIGRP automatically
summarizes networks at the classful boundary. One of the advantages of EIGRP over other
routing protocol like, OSPF is that manual summarization can be done on any router within
a network. A single route can be used to represent multiple routes, which reduces the size
of routing tables in a network. Manual summarization is configured on a per-interface basis
34. on EIGRP. The syntax of the command is (config-if) ip summary-address eigrp ASN
SUMMARY_ADDRESS SUBNET_MASK
Commands Description
R1(config)#router eigrp 1
R1(config-router)#network 0.0.0.0
R1(config-router)#no auto-summary
Enter EIGRP mode
Advertise all networks
Disable auto summary feature
R2(config)#router eigrp 1
R2(config-router)#network 1.0.0.0
R2(config-router)#no auto-summary
Enter EIGRP mode
Advertise only 1 network
Disable auto summary feature
R2#show ip route eigrp View routing table for EIGRP all four networks
of 192.168. present
R1(config)#interface f0/0
R1(config-if)#ip summary-address eigrp 1
192.168.0.0 255.255.248.0
Enter interface mode facing R2
Enter summary route to send
R2#show ip route eigrp Check again routing table only summary route
192.168.0.0/21 only
R1#show ip route eigrp Checking summary route in R1
192.168.0.0/21 is a summary, Null0
R1(config)#interface f0/0
R1(config-if)#no ip summary-address eigrp
1 192.168.0.0 255.255.248.0 255
R1(config-if)#ip summary-address eigrp 1
192.168.0.0 255.255.248.0 255
Enter interface mode of R1
Remove the summary route configure before
Set summary route again with AD 255 to
remove Null0 in R1 table
EIGRP Load Balancing:
Load balancing is a router's capability to distribute traffic over all of its network ports that
are the same metric from the destination address. By default, the Cisco IOS balances
between a maximum of four equal-cost paths for IP.
EIGRP Equal Cost:
By default, EIGRP supports equal-cost load balancing over four links. Equal-cost means that
multiple routes must have the same metric to reach a destination, so that router can choose
to load balance across equal cost links. Using maximum-path router configuration
command, to request up to 16 equally good routes to be kept in the routing table. Set
maximum-path to 1 to disable load balancing.
35. Commands Description
(config)#router eigrp 1
(config-router)#no auto-summary
(config-router)#network 0.0.0.0
Apply this on both R6 and R7
Disable auto summary
Enable EIGRP for all networks
R6#show ip route eigrp Check routing table for EIGRP equal 2 paths
R6#show ip eigrp topology Check EIGRP topology table for all paths
R6(config)#router eigrp 1
R6(config‐router)# maximum-paths 1
Enters EIGRP routing mode
To disable equal cost load balancing set 1
R6#show ip route eigrp Check routing table for EIGRP now 1 path
R6(config)#router eigrp 1
R6(config‐router)# maximum-paths 4
Enters EIGRP routing mode
Enable back equal cost load balancing
EIGRP Unequal Cost:
EIGRP can also balance traffic across multiple routes that have different metrics; this is
called Unequal-Cost Load Balancing. The degree to which EIGRP performs load balancing is
controlled by the variance multiplier router configuration command. The multiplier is a
variance value, between 1 and 128, used for load balancing. The default is 1, which means
equal-cost load balancing. The multiplier defines the range of metric values that are
accepted for load balancing.
36. Commands Description
(config)#router eigrp 1
(config-router)#no auto-summary
(config-router)#network 0.0.0.0
Apply this on all R1,R2,R3,R4 & R5
Disable auto summary
Enable EIGRP for all networks
R1#show ip route eigrp Check routing table for EIGRP one path only
R1#show ip eigrp topology Check EIGRP topology table for all paths
412160 / 158720 = 2.6 Need variance 3 to install Ethernet1/0 path
R1(config)#router eigrp 1
R1(config‐router)#variance 3
Enters EIGRP routing mode
Set variance 3 to install other route
R1#show ip route eigrp Check routing table for EIGRP two path now
2300416 /158720 = 14.5 Need variance 15 to install S2/0 path
R1(config)#router eigrp 1
R1(config‐router)#variance 15
Enters EIGRP routing mode
Set variance 15 to install other route
R1#show ip route eigrp Check routing table for EIGRP three path now
R1#show ip route 5.5.5.5 EIGRP is sharing traffic f0/1 240, S2/0 17 and E1/0 92
proportion
R1#traceroute 5.5.5.5 Apply many time to check path changing
EIGRP Basic Configuration:
Let us do basic configuration of EIGRP protocols on cisco routers. Wildcard mask is 32 bits
long. It is inverted subnet masks, with the zero bits indicating that the corresponding bit
position must match the same bit position in the IP address. The one bits indicate that the
corresponding bit position does not have to match the bit position in the IP address.
To form a neighborship, EIGRP has these requirements: 1) Interface’s primary IP addresses
must be on the same subnet.2) Connected interface must not be passive.3) Routers must
use the same AS number.4) Must pass authentication. 5) K-values must match.
Commands Description
R1(config)#router eigrp 1 Enter EIGRP mode
37. R1(config-router)#network 192.168.12.0
R1(config-router)#network 1.1.1.0
Advertise 192.168.12.0 network
Advertise 1.1.1.0 network
R1#show run | sec eigrp
router eigrp 1
network 1.0.0.0
network 192.168.12.0
To verify by running configuration
EIGRP with AS 1
Its convert 1.1.1.0 network class A
R1(config)#router eigrp 1
R1(config-router)#no network 1.1.1.0
R1(config-router)#network 1.1.1.0 0.0.0.255
Enter EIGRP mode
Remove network
Advertise again with wild card
R1#show run | sec eigrp
router eigrp 1
network 1.1.1.0 0.0.0.255
Verify by running configuration
EIGRP with AS 1
This time it’s not converted
R1(config)#router eigrp 1
R1(config-router)#no network 1.1.1.0 0.0.0.255
R1(config-router)#network 1.1.1.0 255.255.255.0
Enter EIGRP mode
Remove network
With subnetmask not with wildcard
R1#show run | sec eigrp
router eigrp 1
network 1.1.1.0 0.0.0.255
Verify by running configuration
EIGRP with AS 1
IOS converted subnetmask to wildcard
R1(config)#router eigrp 1
R1(config-router)#network 0.0.0.0
Enter EIGRP mode with AS 1
Advertise all networks
R2(config)#router eigrp 100
R2(config-router)#network 0.0.0.0
Enter EIGRP mode with AS 100
Advertise all networks, no neighbor
adjacency because of different AS
R1(config)#router eigrp 1
R1(config-router)#network 0.0.0.0
R1(config-router)# metric weights tos 1 1 1 1 1
Enter EIGRP mode with AS 1
Advertise all networks
Changing Metric Weights Again no
neighbor adjacency, K value mismatch
R2(config)#router eigrp 1
R2(config-router)#network 0.0.0.0
Enter EIGRP mode with AS 1
Advertise all networks
EIGRP Commands:
Commands Description
R1(config-router)#auto-summary Enable auto summarization feature
R1(config-router)#no auto-summary Disable auto summarization feature
R1(config-router)# metric weights tos k1
k2 k3 k4 k5
Adjusting the EIGRP Metric Weights
R1(config-router)# metric maximum-hops
<1-255>
Advertise greater than hops
38. R1(config-router)#maximum-paths <1-32> Set the maximum equal paths
R1(config-router)#variance <1-128> Control unequal load balancing
R1(config-if)# ip hello-interval eigrp <asn>
<interval>
Changing EIGRP hello interval
R1(config-if)# ip hold-time eigrp <asn>
<interval>
Changing EIGRP hold time interval
R1#show ip eigrp neighbors Display the neighbor table in brief
R1#show ip eigrp neighbors detail Display the neighbor table in detail. To
verify the neighbor is configured as stub
router
R1#show ip eigrp interfaces Display info about all EIGRP interfaces
R1#show ip eigrp interfaces s0/0 Display info EIGRP interface
R1#show ip eigrp interfaces 20 Display info EIGRP interfaces AS 20
R1#show ip eigrp topology Displays the topology table
R1#show ip eigrp traffic Displays EIGEP different packets
R1#show ip route eigrp Display EIGRP route from routing table
R1#debug eigrp fsm Displays the events related to FSM
R1#debug eigrp packet Displays EIGRP event packets
R1#no debug eigrp fsm Turn off FSM debug
R1#no debug eigrp packet Turn off EIGRP packets debug