Transcript EIGRP
Omer Ben-Shalom:
Must show how EIGRP is dealing with count to infinity problem
EIGRP routing protocol
Omer ben-shalom
024200164
Distance vector VS link state
Distance - shares all routes with neighbor
routers and advertises many routes on one
link change
Link state - shares only their own links
but with all the routers in the AS/Area
Link state need not calculate before
update so convergence is faster
Distance vector problems
Uses periodic full route update
Routing loops
Accept any neighbor with lower metric
Could have learned this from you or someone
you announced to
Could fool each other endlessly (Count to
infinity), therefore network diameter is limited
Some are classfull
Attempted solutions
Split Horizon / Poison reverse
(or) Set distance to on update
Problematic in Non broadcast media
Hold down timers
Do not advertise routes the way received
Hold update to routes with enlarged matrixes
Both cause large delay in convergence
Link state protocols problems
Each node must know topology of the
whole net, on LSA loses can become a
problem
Complex to calculate:
High memory requirements
High CPU use if frequent changes
Harder to configure and troubleshoot
The EIGRP Challenge
Simple to implement like distance vector
Quick to converge like link state (By doing
distributed calculations)
Use low bandwidth and low memory/CPU
Loop free
Classless
Main features (1)
Reliable transport
Reliable multicast (proprietary), if no
response go to unicast (up to 16)
Use Sequence numbers (send/receive)
Link discovery - Hello protocol with hold
time 3 X hello time (5/60 sec)
Main features (2)
Diffusing distributed algorithm (DUAL)
Modules to integrate with network layer
protocols (IP, AppleTalk, IPX)
All updates are non-periodic, partial and
bounded
‘DUAL’ - diffusing algorithm.
Mark your cost to a route ,the next hop
(successor) and the lowest cost (Feasible
Distance)
Keep any neighbor with lower distance as
possible replacement (Feasible Successor)
Reassess successors on any update or
change
‘DUAL’ (2)
If successor still best - do nothing (update
neighbors)
If replacement exist in table the can be no
loop so switch to it immediately and update
If no replacement change state to active
and query all neighbors
‘Dual’ (3)
Every neighbor will start own calculation
based on data in query
Any neighbor not answering in timeout
makes route ‘stuck in active mode’,
neighbor removed from table and response
assumed INF
After all ‘reply’ recalculate
Example 1 - Feasible successor
(All metrics are 1 hop)
(0)
a
(1)
b
d
(2)
c
e
(2)
(3)
(0)
a
(1)
b
d
(2)
c
e
(2)
(3)
(0)
(1)
a
Q
Q
(2)
c
()
d
b
e
(3)
(0)
(1)
a
()
d
b
3
R
(2)
c
2
R
e
(3)
(0)
(1)
a
U
U
(2)
c
(3)
d
b
e
(3)
Example 2 - No feasible successor
(Not all metrics are 1 hop)
(0)
a
(1)
b
d
(2)
(3)
c
e
(3)
(0)
(1)
a
Q
Q
(3)
c
()
d
b
e
(3)
(0)
(1)
a
()
d
b
3
R
(3)
c
Q
Q
e
()
(0)
(1)
a
()
d
b
R
(3)
c
R
e
3
()
(0)
(1)
a
()
d
b
4
R
(3)
c
4
U
e
(4)
(0)
(1)
a
U
U
4
4
(3)
c
(4)
d
b
e
(4)
Main advantages to DUAL
Simple
Converges as fast as link state
Recovery from loss involves no traffic if
viable successor
No routing loops are possible
Prevents problems
Does not restrict network diameter
Other interesting EIGRP points
Uses a sophisticated matrix of bandwidth,
delay, load and reliability
Classless routing - carries the subnet mask
Allows CIDR (VLSM and route aggregation)
Can be authenticated by MD5
Some last notes on EIGRP
Proprietary to Cisco
On new neighbor discovery - form initial
adjacency and pass whole route table
Questions ?
Extra data for questions
EIGRP data structures:
link state table of neighbors
list of neighbor route costs for all neighbors
EIGRP sequencing
Active (waiting for reply) and passive
states explained
Init with passive / 0 to self INF to all
Drop passive neig with INF cost
More data
Router in active does not issue updates
or update structures until passive for that
route
Answer either ‘no path’ or feasible
successor for neighbor, only when all
arrive change
The 4 active states ???
Link state advantages
Send only link changes not the resulting
route changes (smaller updates)
Propagates update before recalculation faster convergence times.
Not prone to routing loops under normal
circumstances
Routing loops in distance vec.
An error or fail increases matrix for router
Paths to routers who are in loop (learned
from himself for example) look better then
‘real’ paths
Stabilizes when all network learns of
failure (potentially very lengthy)
EIGRP packet types
All under protocol number 88
Hello (5 sec multicast / 60 sec unicast)
ACK
Update
Query / Reply
Request - not implemented
EIGRP HEADER
Version
Opcode
Flags
Sequence
Ack
AS number
TLVs
Checksum
IP Internal TLV
Length
Type = 0x0102
Next Hop
Reserved
External ID
Delay
Bandwidth
MTU
Reliability
Prefix len
Load
Flags
Hop Count
Reserved
Destination
IP External TLV
Length
Type
Next Hop
Originating router
Originating AS
Arbitrary tag
Reserved
External protocol metric
Flags
External ID
Delay
Bandwidth
Reliability
Prefix len
MTU
Load
Hop Count
Reserved
Destination