EIGRP Tutorial
In this article we will mention about the EIGRP protocol.
In the past, Enhanced Interior Gateway Routing Protocol (EIGRP) is a Cisco-proprietary routing protocol but from March-2013 Cisco opens up EIGRP as an open standard in order to help companies operate in a multi-vendor environment. EIGRP is a classless routing protocol, meaning that it sends the subnet mask of its interfaces in routing updates, which use a complex metric based on bandwidth and delay.
EIGRP is referred to as a hybrid routing protocol because it has the characteristics of both distance-vector and link-state protocols but now Cisco refers it as an advanced distance vector protocol.
Notice: the term “hybrid” is misleading because EIGRP is not a hybrid between distance vector and link-state routing protocols. It is a distance vector routing protocol with enhanced features.
EIGRP is a powerful routing protocol and it is really standout from its ancestor IGRP. The main features are listed below:
+ Support VLSM and discontiguous networks
+ Use Reliable Transport Protocol (RTP) to delivery and reception of EIGRP packets
+ Use the best path selection Diffusing Update Algorithm (DUAL), guaranteeing loop-free paths and backup paths throughout the routing domain
+ Discover neighboring devices using periodic Hello messages to discover and monitor connection status with its neighbors
+ Exchange the full routing table at startup and send partial* triggered updates thereafter (not full updates like distance-vector protocols) and the triggered updates are only sent to routers that need the information. This behavior is different from the link-state protocol in which an update will be sent to all the link-state routers within that area. For example, EIGRP will send updates when a new link comes up or a link becoming unavailable
+ Supports multiple protocols: EIGRP can exchange routes for IPv4, IPv6, AppleTalk and IPX/SPX networks
+ Load balancing: EIGRP supports unequal metric load balancing, which allows administrators to better distribute traffic flow in their networks.
* Notice: The term “partial” means that the update only includes information about the route changes.
EIGRP use metrics composed of bandwidth, delay, reliability, and load. By default, EIGRP uses only bandwidth and delay.
EIGRP use five types of packets to communicate:
+ 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. In fact, Ack is Hello packet without data. It is always unicast and uses UDP.
+ Query: used to find alternate paths when all paths to a destination have failed
+ Reply: is sent in response to query packets to instruct the originator not to recompute the route because feasible successors exist. Reply packets are always unicast to the originator of the query
EIGRP sends every Query and Reply message using RTP, so every message is acknowledged using an EIGRP ACK message.
EIGRP Route Discovery
Suppose that our network has 2 routers and they are configured to use EIGRP. Let’s see what will happen when they are turned on.
Firstly, the router will try to establish a neighboring relationships by sending “Hello” packets to others running EIGRP. The destination IP address is 224.0.0.10 which is the multicast address of EIGRP. By this way, other routers running EIGRP will receive and proceed these multicast packets. These packets are sent over TCP.
After hearing “Hello” from R1, R2 will respond with another “Hello” packet.
R2 will also send its routing table to R1 by “Update” packets. Remember that R2 will send its complete routing table for the first time.
R1 confirms it has received the Update packet by an “ACK” message.
R1 will also send to R2 all of its routing table for the first time
R2 sends a message saying it has received R1′s routing table.
Now both R1 & R2 learn all the paths of the neighbor and the network is converged. But there are some notices you should know:
+ After the network converged, “Hello” messages will still be sent to indicate that the it is still alive.
+ When something in the network changes, routers will only send partial updates to routers which need that information.
+ Hellos are sent as periodic multicasts and are not acknowledged directly.
+ The first hellos are used to build a list of neighbors; thereafter, hellos indicate that the neighbor is still alive
To become a neighbor, the following conditions must be met:
+ The router must hear a Hello packet from a neighbor.
+ The EIGRP autonomous system must be the same.
+ K-values must be the same.
EIGRP builds and maintains three tables:
+ Neighbor table: lists directly connected routers running EIGRP with which this router has an adjacency
+ Topology table: lists all routes learned from each EIGRP neighbor
+ Routing table: lists all best routes from the EIGRP topology table and other routing processes
Configuring EIGRP
Router(config)#router eigrp 1 |
Syntax: router eigrp <AS number> Turn on the EIGRP process 1 is the Autonomous System (AS) number. It can be from 1 to 65535. All routers in the same network must use the same AS number. |
Router(config-router)#network 192.168.1.0 |
Router will turn on EIGRP 1 process on all the interfaces belonging to 192.168.1.0/24 network. |
In the next part we will learn about the Feasible Distance & Administrative Distance of EIGRP
@Rose: The AD is one hop less than the FD so it has only 1 outgoing interface (Fa0/1 of Router1) and the delay of this interface is 10.
Very amusing and educational. Good job.
Thanks,
Hansen Kannie CCNA, CCDA, CCNP, CCDP, CCIE R&S written.
In Routing table …Is it true, for outbound interface the value would be 50 or the interface name E0 (intead of 50) ?
thank you for the tuto its cool
What a great Summary of EIGRP.
This page should be updated to note that if K5 = 0, the formula reduces to Metric = [k1 * bandwidth + (k2 * bandwidth)/(256 - load) + k3 * delay].
Otherwise, the metric formula solves to zero when K5 is zero.
(CD-ROM) This product is ok. I got a while back for my CCNA with the CCNA kit. It has a dcenet supporting lineup of router and switches. It seriously lacks commands especially in routers. just a few I noticed when creating my virtual network: any logging command and any exec command (which means you always have a logout timer) these are just a few that I can think of off the top of my head. There are many more but i can only remember the conf t ones right now and I have since uninstalled. I expected more from Sybex. Their CCNA study guide (Lammle) is amazing. All-in-all not good. To get my CCNA I used CCNA study guide (Lammle),CCNA IOS Commands Survival Guide (Lammle), CCNA Fast Pass (Lammle) for the book/lab exercises. I used Cisco Packet Tracer 5.3 for my virtual lab.Also, the Study guide would have been enough to pass the exam, but I wanted the extra command info and labs in the Fast Pass and Survival Guide.Packet Tracer is available through Cisco Academy and a few other places. I don’t really know all the ways to get it unless you are DOD. If your DOD you can get it for free.
Thanks for the comment. To know that 1 pesron has benefited from the information that I post is good enough for me. I completely agree with your statement that keeping a blog on going is a challenge. The biggest challenge is having content to post that is beneficial.When it comes to linux finding something that your looking for is sometimes not very easy, and for me, its never easy. It usually takes me a fair amount of time to locate what I need for whatever im working on. I always find myself saying why cant someone just post the things in a easy step by step format in one place instead of having to search all over for the answer. So thats what I attempt to do.Thanks again for the comment. Its awesome. Please keep coming back and feel free to post your things you have found or run into
EIGRP Load Balancing…
@9tut – + Load balancing: EIGRP supports UNEQUAL metric load balancing, which allows administrators to better distribute traffic flow in their networks.
@Todd Lammle Book – Load – Balance up to four EQUAL cost link
Please confirm. thanks
@please Explain, EIGRP can load balance upto 4 equal cost path links by default, you can use variance command, set it to one, it will load balance equal cost paths, but it can provide load balancing upto 16 paths(variable cost path links)
@9tut and @Xallax – Hii, i found these tutorials extremely good, i would like to know what you guys are doing these days and in terms of certifications by Cisco , really i would love to help u guys in these tutorials someday .. I appreciate your efforts !!
@9tut.. Superb explanation of AD , FD n successor route , even Todd Lammle didn’t explained it in such a nice way..!!
This was the best description of AD FD that I ever read….well done and thank you.
Hi guys,
Thank you for the wonderful work you people are doing for everyone who is trying to learn all of this stuff. Thanks @9tut you’re great.
By the way can you please tell me where i can get the Packetracer you are using please let me know. You may contact me at linking@gmail.com.
Thank you and bless yall….
Sorry actually my email is linkony@gmail.com
@9tut my email is linkony@gmail.com please pass on the Packetracer tool.
This is good tutorial.
For those want to understand further the strengths of EIGRP for your network, you may want to read these articles:
http://www.netxplane.com/2012/07/the-strength-of-eigrp-part-i.html (EIGRP Feasible Successor)
http://www.netxplane.com/2012/07/the-strength-of-eigrp-part-ii.html (EIGRP Unequal Load Sharing)
loop-free path = valid path ??????????? help meeee
good job………….මේක හොද වැඩක් ……….දිගටම කරන්න ……..
I love this, its so great ! and easy to understand
This tutorial was written very good I didn’t expect it to be on this site, better than some books.
When EIGRP comes up for the first time.(the router will try to establish a neighboring relationships by sending “Hello” packets to others running EIGRP)-its fine but…it exchanges its TOPOLOGY table with its neighbors and not ROUTING table…in this above diagram R2 will also send its TOPOLOGY table to R1 by “Update” packets. Remember that R2 will send its complete TOPOLOGY table for the first time and not ROUTING table.R1 confirms it has received the Update packet by an “ACK” message.R1 will also send to R2 all of its TOPOLOGY table for the first time.R2 sends a message saying it has received R1′s TOPOLOGY table.
When EIGRP comes up for the first time.(the router will try to establish a neighboring relationships by sending “Hello” packets to others running EIGRP)-its fine but…it exchanges its TOPOLOGY table with its neighbors and not ROUTING table…in this above diagram R2 will also send its TOPOLOGY table to R1 by “Update” packets. Remember that R2 will send its complete TOPOLOGY table for the first time and not ROUTING table.R1 confirms it has received the Update packet by an “ACK” message.R1 will also send to R2 all of its TOPOLOGY table for the first time.R2 sends a message saying it has received R1′s TOPOLOGY table.
This is very easy tutorial.
hats off 9tut worth 9$
this tutorial is very good, i understand so much things. So please post this type of notes & improve our knowledge.
Regards & Thanks
Ramesh
Shemie,
can yo uplseaes let meknow when can i download Packet Tracer 5.3.. as i am just able to find only the broken links and that disappoints me :(
One question? Do i have a brain freeze or if K5 is 0 then all is zero?
The literature is amazing , some times we find things to be difficult because we do not have right people to expalin it !!!, wel done
Gaid
@anyone
how to change the AS number of eigrp without using “no” command?
plz help me my xm is on 29th………..tnx in advance
widout no command we can’t chnge it ..we hav to put
“no router eigrp AS ”
thn agn new as no as above
Since I can’t afford to enroll into any online or onsite classes I have had to use whatever help I can find on the Internet. The Sybex test engine is very limited so I turned to GNS3. Since it is a Cisco cert I require i have found that using the Cisco learning forum a big help. I just now found 9tut and it also helps. I feel that it is possible to pass any Cisco test without buying into any online or onsite training. Again thanks to 9tut for your help.
Much gratitude to 9tut.com. Your work is like a Gem for those who wants to learn about Cisco system and face the CCNA exam. Although, I have once gone through Todd Lamelle’s book, the concise presentation of your materials helps to quickly review the concepts and retain in the brain. I have already taken the membership to support your effort. Keep going 9tut.com, you are the hope for all of us!!!Cheers!!
thank so much.
plz i want a full summary of eigrp
When calculating the metric you say 1024 is the speed of T1, are you talking about a T1 carrier? T1′s are 1.544Mbps
Didn’t get the use of “no auto summary command” plz explain
@9tut
You guys are Rockstar! Even Todd lamle have not explained this way, about AD and FD. I have used Reachard Deal’s(easy and vast) book to understand AD and FD. Its is truly great
@ Shir
“auto summary” is the term used to refer summarized boundary of a class full network. so 10.0.5.0 would be treated as 10.0.0.0, where subnet bit of an address is situated to that class(known as default mask(means no subnet)). whether it is under class A,B or C.
192.168.1.1 = 192.168.1.0 (for class c)
172.16.25.0 = 172.16.0.0 (for class b)
21.25.35.74 = 21.0.0.0 (for class a)
Hello
This is Abdiqani I really interest in this Networking and I had some confusion of EIGRP but now I understand very well
Thanks a lot
Lol.
The pictures made this so worth reading.
Great clarification of EIGRP in few words then what it has been written on most of the CCNA books.
Could someone clarify this scenario of metric calculation, formula to calculate metrics is:
metric = [K1 * bandwidth + (K2 * bandwidth)/(256 - load) + K3 * delay] * [K5/(reliability + K4)]
If K2=0, K4=0 and K5=0 => [K1 * bandwidth + 0 + K3 * delay] * [ 0 / (reliability + 0)]
=> [K1 * bandwidth + K3 * delay] * 0 = (anything multiplied with zero, is zero? = 0 (so the result for metric should be 0!!! ???
So could someone clarify please what am I doing wrong in this calculation?
it’s very very good summary of EIGRP protocoles. thank
Muuy bueno
i like it very much
I really hate to beat a dead horse here, but I really agree with Jason. This page needs to be updated to state that the EIGRP Metric formula is a conditional formula insomuch that when K5=0 the last segment [K5/(reliability + K4)] is thrown out. At the very least the formula should be stated:
Metric = ((K1*Bandwidth) + ((K2 * Bandwidth)/(256 – load) + (K3 * delay))(K5/(reliability +K4)) when K5 > 0
AND
Metric = ((K1*Bandwidth) + ((K2 * Bandwidth)/(256 – load) + (K3 * delay)) WHEN K5 = 0
Only by the second rule does this formula truly reduce to Metric = BW + Delay.
It should also be noted that the explanation of how to get to the formula 256*((10^7/slowest bw[in kbps]) + (Sum of delay[in μsec])/10)) is seriously lacking and also has an error on the unit of measurement for delay.
By scope of the reduced formula, Metric = BW + Delay, one must first understand how to calculate the values for BW and Delay as they pertain to this formula.
Formula for Bandwidth:
BW = 256 * (10^7 / speed of the lowest bandwidth on all outgoing interfaces on the route [in kbps])
Formula for Delay:
Delay = 256 * Delay [in μsec]
Note: Delay is displayed in msec (NOT μsec as explained in the author’s text) from the command “show interfaces” command, thus you must divide this sum by 10. So it would really look like this: Delay = 256 * (Delay [in msec]/10)
In the end, for a K=0 Metric formula you’re left with:
Metric = (256 * (10^7/min bandwidth [in kbps])) + (256 * (Delay [in msec]/10))
From the above formula, 256 can be factored out to produce:
Metric = 256 * ((10^7/min bandwidth [in kbps]) + (Delay [in msec]/10))
This is still a great explanation of EIGRP altogether. My comment is only meant to clarify (if not add to) the author’s point on metric calculation for the math folks who found K5=0 a frustrating variable in this equation.
Sources:
https://learningnetwork.cisco.com/thread/31407
http://www.cisco.com/en/US/tech/tk365/technologies_white_paper09186a0080094cb7.shtml#eigrpmetrics
Hi , very good tutorial.
But …the calculations with all the formulas, do we have to know how to apply them in the exam?!!!
Hi every one if some one of you have link of Packet Tracer V5.3 kindly send it.
@Jason @UncleJohnnie: Thanks for your detection, I updated the unit of msec.
Thank you for the teaching I like it.