|
Home > Archive > CCNP > April 2004 > DUAL, EIGRP, and topology tables.
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
DUAL, EIGRP, and topology tables.
|
|
| strikeattack 2001-05-10, 6:52 pm |
| I came across this passage in the BSCN Cisco Press Book. ISBN #1-57870-228-3, Page 258, line 5.
"DUAL is the finite-state machine that selects which information will be stored in the topology table."
Does anyone else find that sentence incorrect? The route exchange process populates the topology table, and then DUAL reads the topology table to determine successors to put in the routing table. Not the topology table. You guys think they might be talking about the feasible successor, which IS stored in the topology table?
Thoughts? | |
| Transylvanian 2001-05-11, 6:09 am |
| The more I read about it, the more I agree with you...to my understanding at the moment it should be "DUAL is the finite-state machine that selects which information will be stored in the routing table."
My opinion is based on reading the CISCO papers, not on a thorough understanding of DUAL...
"The protocol-dependent modules populate the table[topology table], and the table is acted on by the DUAL finite-state machine."-http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/en_igrp.htm#xtocid282835
http://www.cisco.com/cpress/cc/td/c...h2nd/it2436.htm
DUAL... decision process for all route computations ... tracking all routes advertised by all neighbors. DUAL ...selects routes for insertion in a routing table based on feasible successors. | |
| strikeattack 2001-05-13, 7:20 am |
| Hmmm... one reply. Everyone else is of the same opinion then? | |
| vr2zjw 2001-05-13, 9:23 pm |
| The sentence is right.
DUAL is the algorithm to learn the topology from you neighbor when a route is down and there is no fesible succesor. The DUAL algorithm give you the topology table, successor & fesiable successor.
I don't see any problem. | |
| doctorcisco 2001-05-14, 3:45 am |
| quote: Originally posted by vr2zjw
The sentence is right.
DUAL is the algorithm to learn the topology from you neighbor when a route is down and there is no fesible succesor. The DUAL algorithm give you the topology table, successor & fesiable successor.
I don't see any problem.
I see a problem. The book is unclear about the following, IMO:
1) Is the information in the topology table a subset of, or complete listing of, the information received from the neighbor routers?
2) Does DUAL place information into the topology table, use information that is already in the topology table, or both?
I've also found out that the output from the sh ip eigrp top and sh ip eigrp top all commands on a real world router don't seem to match what the book says they'll give you:
According to the Cisco link http://www.cisco.com/cpress/cc/td/c...tm#xtocid224866 : "The topology table contains all destinations advertised by neighboring routers. The protocol-dependent modules populate the table, and the table is acted on by the DUAL finite-state machine. Each entry in the topology table includes the destination address and a list of neighbors that have advertised the destination."
BSCN book (p. 254, last paragraph), "When the router dynamically discovers a new neighbor, it sends an update about the routes that it knows to its new neighbor and receives the same table from the new neighbor. *The topology table contains all destinations advertised by the neighboring routers.* The show ip eigrp topology all-links command displays all the IP entries in the topology table. The show ip eigrp topology command displays only the successor and feasible successor for IP routes."
Both statements mean (to me, at least) that the topology table contains all the raw data received from the neighbors (the neighbors' destinations and metrics, minus anything removed due to split horizon). DUAL then hashes this information, selects the best routes, puts the successor(s) in the routing table, and marks the successor(s) and feasible successor(s) as such in the topology table.
Then, on p. 256, the book says, "EIGRP selects primary and backup routes and injects those routes into the topology table (up to 6 per destination)." Injects? Aren't they already there? I could understand "marks," or "chooses."
Then comes the bit on p. 258 that strike is asking about.
All in all, I'm confused too.
doctorcisco | |
| strikeattack 2001-05-14, 7:48 am |
| Doctor Cisco,
I agree with your reply. Your description describes EXACTLY what I thought was occurring. I do remember the Cisco book saying that it "tags" or "marks" a feasible successor, and that IS stored in the topology table. But, as far as I know, that is the only information that is stored in the topology table that is not EXCHANGE route information populated by the PDM.
Vr2zjw, I see that you have your CCNP and have already taken this test... If we are wrong, can you point out our errors? For starters, I cannot understand how "The DUAL algorithm gives you the topology table". How can DUAL give you the topology table if it reads the topology table that was created by PDMs and the Exchange Process? Doesn't the DUAL then read this raw data, determine successors and feasible successors, and then place the successor in the routing table and the feasible successor in the topology table? | |
| vr2zjw 2001-05-14, 10:32 am |
| I think DUAL only produce the EIGRP topology table. I don't know who will put the succesor into the route table as there may be other routing process with a lower administrative distance. So DUAL definite is not the one to do so.
I don't have the BSCN cisco book but if you have the Jeff Doyle TCP/IP routing volume 1, there is a very detail chapter talking about EIGRP.
Just find a white paper from cisco
http://www.cisco.com/warp/public/103/eigrp-toc.html | |
| doctorcisco 2001-05-15, 8:57 pm |
| Here's the reply I got from someone at Cisco on another discussion site. Short answer is that Strike and I were right, and the book was unclear/wrong. The paragraps that begin indented were my originals; paragraps that begin at the far left are the answers I got:
Hi Dennis,
My summary: 1. Neighbors send the destinations and metrics from their
routing tables, minus anything that would violate split horizon.
Correct
2. Information from neighbors goes into topology table.
Correct
3. Using all the raw material in the topology table, DUAL calculates the
metrics for all the possible routes for a given destination, decides what
the successor(s) and feasible successor(s) are, and puts the successor(s) in
the routing table.
Correct
BSCN Book, p. 256: "EIGRP selects primary and backup routes and injects
those routes into the topology table (up to 6 per destination)." Aren't they
already there? What, exactly does "injects" mean? I could understand it
"marking" these routes as primary and backup, i.e. successor and feasible
successor. But, "injects?"
I agree, there is no "injection", only a "marking" for the routes that have a feasible successor. BTW, a router keeps always ALL the information it receives from neighbors, even if that information does not satisfy the feasibility condition, and if you do "show ip eigrp <AS-Number> topology" you will see all of them.
BSCN Book, p. 258: "DUAL is the finite-state machine that selects which
information will be stored ***in the topology table***. As such, DUAL
embodies the decision process for all route computations. It tracks all
routes advertised by all neighbors. DUAL uses the distance information,
known as a metric, to select an efficient, loop-free path to each
destination and inserts that choice in the routing table." Shouldn't the
part between the *** read, "... in the *routing* table?"
Correct, DUAL is used to determine a successor for a route that is then inserted in the routing table. The part where DUAL looks for a FS in the local router is also called "Local Computation" in the DUAL terminology. Look into "sho ip ei events" or try debug ip ei events to see how it actually works.
My confusion boils down to 3 different ways of asking the same question:
1) Is the topology table a complete list of information received from the EIGRP neighbors, as the Cisco web link says, or is it a subset of this information chosen by DUAL, as the BSCN book seems to say?
The first one.
2) Does DUAL "inject" successor and feasible successor information INTO the
topology table, or simply mark/choose routes that are already there after it
calculates its metrics for them?
The second one
3) Does DUAL decide "which information will be stored in the topology
table," or not?
No, it decides what goes in the routing table.
If you want a suggestion, get Jeff Doyle´s book "Routing TCP-IP Vol.1". It´s much more than what you need to pass BSCN, but you get a much better understanding on what routing protocols effectively do...
Less Confused Now,
doctorcisco | |
| strikeattack 2001-05-15, 9:48 pm |
| Dr. Cisco,
Awesome detective work! I am more comfortable with the whole process and this is how I am going to remember it for the test:
1. A router receives an advertised route.
2. Routes are received by the PDM, and added to topology table.
3. DUAL runs against the topology table and populates the routing table with sucessors.
4. DUAL then "MARKS or TAGS" feasible successors for all subnets in the TOPOLOGY TABLE, if they exist.
5. If a route goes down, the router deletes the entry from the routing table, and COPIES the tagged entry from the topology table, without contacting a neighbor.
IMO, I view the topology table as "pristine" data that cannot be changed. However, DUAL can "MARK or TAG" routes in the topology table as feasible successors, but the actual data itself does not change. | |
|
| According to Cisco Documentation "DUAL finite-state machine embodies the decision process for all route computations by tracking all routes advertised by all neighbors. DUAL uses distance information to select efficient, loop-free paths and selects routes for insertion in a routing table based on feasible successors". | |
|
| A question:Are there any other entrys neither a successor nor a feasible successor in the topology table? | |
| Yankee 2004-04-01, 5:31 am |
| Routes that are considered to be "not loop free" do not make it into the topology table. I choose those words carefully because the route may actually be route free, but due to a weird BW statement or something the math will make it seem like it may be a loop. You can find a previous discussion on this where I did a small lab to prove this.
Yankee | |
|
| hello Yankee,I checked your previous lab,and i think it's correct.but the following is selected from a real router output:
P 172.16.2.128/30, 2 successors, FD is 40642560, serno 100745
via 172.16.28.2 (40642560/40640000), FastEthernet4/1/1
via 172.16.101.10 (40642560/40640000), FastEthernet4/1/0
via 172.16.9.250 (41664000/41152000), Serial1/0/6:0
notice the third entry,its RD is 41152000,higher than the FD,which is 40642560.as far as this router is concerned,this path is neither a successor nor a feasible successor,and is possible a loop path.
To my confused,for another network,say 172.16.210.0/24,there is indeed a path whose RD is higher than the FD,but this path not appears in the topology table!
so I think there are entries neither a successor nor a feasible successor,regarded as a possible loop path by the EIGRP process.and they say the show ip eigrp topo command only display feasible successors,to display all entries in the topology,use the show ip eigrp topo all-links command.but i don't know why not applies to all networks.
The router is 7507, IOS Version 12.2(8)T5 | |
| Yankee 2004-04-02, 12:42 pm |
| Your post made me question my previous test, so I reset up the same basic lab. In addition I pulled this quote from CCO:
Usage Guidelines
The show ip eigrp topology command can be used without any keywords or arguments. If this command is used without any keywords or arguments, then only routes that are feasible successors are displayed. The show ip eigrp topology command can be used to determine Diffusing Update Algorithm (DUAL) states and to debug possible DUAL problems.
My lab again gave me the same results. The route is pulled from the topology table when it is not deemed to be mathmatically loop free (using the sh ip eigrp topo all). This would seem to be a proper reaction becaue the router would send a query to its neighbors before ever using the route you show.
I suggest you at least clear that neighbor and see if that route disappears from your topo table as I still believe it should not be there.
Yankee | |
| darthfeces 2004-04-05, 10:41 am |
| wow !!!
a real discussion !!!
welcome back guys !!!
i think i even have to read the thread before i join in !!! | |
| darthfeces 2004-04-05, 10:49 am |
| this is an out of print book
what i find odd is nothing is listed in errata ......
Building Scalable Cisco Networks
ISBN: 1-57870-228-3
Cisco Press
Errata
7th Printing
Page 104 – The third sentence at the top of the page should read, “The MAC address used for 224.0.0.5 is
01005E 000005, and the MAC address for 244.0.0.6 is 01005E 000006.”
Page 109 – The first sentence of ‘Step 3’ should read, “All routers that received the packet send a multicast
reply hello packet to Router A with their corresponding information, as listed in Step 1.”
Page 148 – Regarding Table 3-8, add the following to the end of the ‘Command’ and ‘Description’
columns respectively:
frame-relay switching Enables frame-relay switching on the router.
frame-relay intf-type Defines the frame-relay interface type (dce or dte)
on an interface
frame-relay route Defines a static frame-relay route on an interface,
for switching frames between DLCIs.
The 8th row under the ‘Command’ column should read:
show ip ospf interface (use lower-case ‘i’)
Page 159 – The second sentence of the fourth paragraph should read, “Point-to-point interfaces generate
two links in the OSPF database.”
Page 179 – The last sentence on the page should read, “Type 6 LSAs do not appear in Table 4-1 because
they are not supported by Cisco Routers.”
Page 183 – Regarding Example 4-3 and 4-4 – Change the ‘0 IA’s to ‘O IA’s (Changing the zeros to the
capital letter O).
Page 222 – Regarding Step 5, Change the ‘0’s to ‘O’s and the ‘0 E2’ to ‘O E2’s. (The zeros should be
changed to Capital Os).
Page 253 – The first sentence of the third paragraph should read, “The rate at which hello packets are sent,
called the hello interval, can be adjusted per interface with the ip hello-interval eigrp
command.”
The last sentence of the third paragraph should read, “The hold time can also be adjusted with
the ip hold-time eigrp command.”
Page 298 – Regarding Step 2, the first command of the configuration should read:
p1r1(config)#router eigrp 200
Page 714 – The third row of the table under the heading ‘Protocol’ should read: IGRP, EIGRP, OSPF
4th Printing
Page 128 – The first sentence of the second paragraph under the heading ‘Cost Modification’ should read,
“As mentioned earlier, the OSPF metric is calculated as reference bandwidth divided by
bandwidth, with the reference bandwidth equal to 100 Mbps or, if you prefer, 108 bps.”
1st Printing
Page 17 – Regarding Figure 1-5, The table under ‘Router A’ should read:
Routing table
10.1.0.0
10.2.0.0
172.16.0.0 | |
| Yankee 2004-04-06, 5:34 am |
| It's early and I don't know what ya are trying to say Darth! But I will say I have never found a direct answer to this in a book which is why I did up a lab to find out.
Yankee | |
| darthfeces 2004-04-07, 11:42 am |
| i mean welcome back guys !!!!
it's awesome to see a great discussion here again.
doesn't anyone need a braindump anymore ??? | |
| Yankee 2004-04-07, 12:07 pm |
| It's nice when someone asks an intelligent question, ain't it!
Yankee | |
| darthfeces 2004-04-07, 12:55 pm |
| what i meant about the errata is it's odd that cisco has nothing listed and apparently hasn't been asked or hasn't acknowledged anything about the topic of this thread |
|
|
|
|