- [Narrator] In this video,
we're going to to get an overview
of the EIGRP routing protocol.
And it's interesting
in Cisco's current certification tracks,
there's no coverage of the EIGRP
at the CCNA level.
And in the ENCOR course,
the predecessor to this ENARSI course,
it's only mentioned in the context
of comparing EIGRP with OSPF.
So we want to start at the basics of EIGRP,
and we're going to build on that
over the next few videos.
But to begin with,
let's take a look at some of the characteristics
of the Enhanced Interior Gateway Routing Protocol
or EIGRP.
First, it has very fast convergence.
So if we have a network with multiple routes
to get from point A to point B,
we've got redundancy in other words.
So if one of the links were to fail,
a backup link could take over
in as little two or three seconds.
Now that's in some cases,
we'll be talking about when that's going to happen
that fast and when it's not going to happen
that fast later on in these videos,
but under most conditions,
it's going to have very fast convergence,
similar to OSPF.
It is very scalable.
In fact, this is the routing protocol
that we used at the Walt Disney World,
when I was a network designer there.
We had over 500 routers
at the Walt Disney World property,
and they were all running EIGRP.
Now, something that's unique about EIGRP
as compared to other protocols
is it has the very unique ability
to load-balance traffic
across unequal cost to links.
If you think about OSPF,
and we're trying to get from one router
to another router and we have two links.
If those links have the same cost,
then yes, OSPF will load-balance across those links.
But if one link is running,
maybe at a gig speed,
and one link is running at a 10-gig speed,
it's going to prefer the faster link,
assuming we've adjusted the reference bandwidth.
But with EIGRP,
even though that is the default behavior,
we're going to go over the best path,
we can set up something called the Variance Option,
and the Variance Option says,
alright, here's your best path and here's its metric,
but we're going to allow
that metric to vary by a certain factor.
And if there are other routes
that would get us to that destination
within that range that we're creating
by specifying that variance
then we'll load-balance traffic
across those less attractive links.
And EIGRP is intelligent about it.
It does it proportionally.
So if it does see that one link is better
than the other, it's going to send
the bulk of the traffic across that better link.
It also supports class-less networking.
In other words, it supports
Variable Length Subnet Masking.
Now this is not something terribly unique
to EIGRP. This just means
that we're not like RIP version one,
where we could only advertise
networks at their class-full boundary.
So we could advertise something
with a slash 27 subnet mask, as an example,
and also unlike RIP version one,
which used broadcasts
to advertise its routes,
we're going to use multicast with EIGRP.
And for a time EIGRP
was a Cisco proprietary protocol.
When I worked at Disney world,
it was a Cisco proprietary protocol,
but we had an all Cisco shop
so it was fine.
Now back around 2010,
Cisco opened up EIGRP,
at least partially to the industry
and told other vendors
that they could implement EIGRP
in their equipment.
And from my perspective,
it seems like most players
in the industry essentially said,
"No thanks, we're good" to Cisco.
There's been very little adoption of EIGRP.
Now Juniper's done some adoption
and some other vendors
have done some slight adoption,
but they certainly haven't embraced EIGRP
as a leading a routing protocol by any means.
Now let's talk about some of the components
that make up EIGRP.
Here are four of the big ones:
The first one is neighbor discovery.
This means that we can dynamically
discover our EIGRP neighbors.
We're going to send out those multicast messages
specifically we'll send out multicast hello messages
and other EIGRP speaking routers,
they'll send out those multicast hello messages
and we can see one another
and we can dynamically form a neighborship
without specifying the IP address of our neighbor.
EIGRP also wants to make sure
that a route advertisement really does
get to a neighbor.
So it's sort of like how TCP
is a reliable transport protocol,
and we can notice if something gets dropped.
Well EIGRP is going to use something called RTP
for Reliable Transport Protocol.
And it can verify that a routing advertisement
was indeed received by a neighbor.
And that's obviously going to
cause a little extra traffic
because we have to get that acknowledgement back
from the neighbor.
But EIGRP minimizes this RTP traffic
by not requiring an acknowledgement
for hello messages for example,
because we're going to be sending out
a lot of those hello messages,
we don't want to take up a lot of bandwidth,
with those responses coming back.
But if it's something important,
like a route advertisement,
then yeah, EIGRP will want to get confirmation
that it really was received.
And the way EIGRP makes its forwarding decision
is using an algorithm called DUAL,
the Diffusing Update Algorithm.
And we'll talk later in these videos
about how DUAL works,
but at a super high level,
it's going to identify the neighbor
that has the lowest feasible distance,
we're going to call it.
It's going to have the lowest feasible distance
to a destination network.
And we're going to see
if there's another router
that can also get us there,
but their feasible distance
isn't quite as attractive,
but they can be on standby
in case our primary route goes down,
we can fail-over to that backup route.
And we're going to call that backup route
a feasible successor route.
So if our successor route goes down our primary route,
we can almost immediately,
within a couple of seconds or so
failover to that feasible successor path.
And again, we'll get into more detail later
about how that works specifically.
EIGRP is also somewhat unique
in that it has Protocol-Dependent Modules.
This means that EIGRGP can route multiple protocols.
Now these days, those protocols
are probably IP version four and IP version six.
But back in the day,
I was working on a network at a university
and we were routing three different protocols.
We were routing IP version four,
but we also had a Novell network
and we were routing Novell's IPX protocol
and EIGRP could do that.
And we were also routing Apple's AppleTalk protocol.
And EIGRP could do that as well.
While we don't see much
of any AppleTalk or IPX anymore,
but we do have IP version four
and IP version six.
And when we're troubleshooting EIGRP
or verifying EIGRP,
we need to be aware of the data structures
that EIGRP maintains.
Specifically we've got three data structures.
We've got a Neighbor Table,
we've got an Interface Table
and we have a Topology Table.
And the Neighbor tells us
who our EIGRP neighbors are.
The Interface Table shows us
what interfaces are participating
in this EIGRP routing process.
And the topology table shows
the routes that are known to EIGRP.
Now let's go out to a router
and take a look at these different tables.
If you take a look
at the topology on screen
and you notice router R2 in the middle,
it's got a couple of EIGRP neighbors,
and it's got a couple
of interfaces participating in EIGRP,
and it should have learned some networks via EIGRP.
Let's take a look at those data structures.
I can do a "show ip eigrp neighbors" command
Let's press Enter.
And we see that I've got two neighbors.
This first neighbor, that's R3
and this next neighbor, that is R1.
And in an upcoming video,
we'll come back to this output
and we'll look at this whole time.
We're going to see how these timers work,
coming up in just a few moments.
but I wanted to show you
these three data structures in this video.
This is how we look at our neighbors.
Here's how we look at our interface table.
(keyboard clacking)
And I've got two interfaces participating in EIGRP
Gigabit zero slash one and gigabit zero slash two.
And finally, let's look at our topology table.
This is the table that EIGRP maintains
of routes that it knows about.
Now, keep in mind, just because EIGRP
knows about these routes,
that's not a guarantee that these routes
are going to be injected
into our routers IP routing table.
Remember, we might be getting route information
from different sources,
like a static route or a connected route
or a different routing protocol.
The routes with the lowest administrative distance,
that's the one that we're going to be putting
in our IP routing table.
In fact, let's look at the routing table.
Let's do a "show ip route"
and we can see routes
that are learned via EIGRP with this D code.
The D, my guess is that,
references the DUAL algorithm,
but D means it was learned via EIGRP.
And that's a look at some
of the fundamentals of EIGRP.
In our next video, we going to take a look
at how EIGRP timers work.