Type 3 LSA's and SPF
I just read a few paragraphs in the OCG that have thrown me.
It says that if a type 3 LSA changes, it doesn't cause SPF to re-run, and recalculate the routes.
How does that work then?
If I have something like this:
and I add a network to R100, R100 will update its type 1 LSA to include the new network, then the ABR is going to create a new type 3 LSA and send that to R0. If SPF doesn't re-run, how does my new network end up being considered and added to the RT on R0?
It says that if a type 3 LSA changes, it doesn't cause SPF to re-run, and recalculate the routes.
How does that work then?
If I have something like this:
and I add a network to R100, R100 will update its type 1 LSA to include the new network, then the ABR is going to create a new type 3 LSA and send that to R0. If SPF doesn't re-run, how does my new network end up being considered and added to the RT on R0?
Current objective: CCNA Security
My blog: mybraindump.co.uk
My blog: mybraindump.co.uk
Comments
-
f0rgiv3n Member Posts: 598 ■■■■□□□□□□From what I'm seeing, type 3 LSA changes DO actually cause SPF to re-run but it's only a partial SPF calculation. It's the same with all of the 3/5/7 LSA types, they all trigger a partial SPF calculation. Types 1/2 are the ones that initiate a full recalculation with SPF.
-
iamme4eva Member Posts: 272I have been thinking about it today and have a theory, which sort of fits but I don't understand...
The OCG definitely says SPF doesn't run.
Is this because, although the Type 3 LSA has changed, the router still knows how to reach it's ABR (because the type 1 and 2's haven't changed), so it doesn't actually need to recalculate it's router further than it's topology topology database needs to worry about? It knows the route and cost to it's ABR, so it just adds the metric of the type 3 route to it's metric to reach it's ABR and that's it done?
If that is true, then what's the process that does that if it's not the SPF algorithm? And am I even correct?Current objective: CCNA Security
My blog: mybraindump.co.uk -
tech_user Member Posts: 5 ■□□□□□□□□□you can see what does effecting the spf calculation with "show ip ospf statistics" command
-
iamme4eva Member Posts: 272you can see what does effecting the spf calculation with "show ip ospf statistics" command
I've seen that - that confirms that SPF doesn't run when a type 3 LSA changes.
I might lab this with debugging on and try and fathom what it happening - that's a job for tomorrow though!Current objective: CCNA Security
My blog: mybraindump.co.uk -
f0rgiv3n Member Posts: 598 ■■■■□□□□□□Those statistics show that it's not running a full SPF recalc. Check out this presentation from Cisco, slide 48 goes into the different SPF calculations:
http://www.cisco.com/en/US/prod/collateral/iosswrel/ps6537/ps6554/ps6599/ps6629/prod_presentation0900aecd80310f6d.pdf -
llllvllll Member Posts: 58 ■■□□□□□□□□Mate SPF will run because to get a change in Lsa 3 u need to add a network in the area right ?
which will result in flooding(new network added) of Lsa 1 and Lsa 2(if there is dr/bdr) which will result in the change of Lsa 3. But SPF will run only in that area where these changes have occured not in other areas.
LSa 3 only tells summary of the other networks in other areas so change in Lsa 3 is only possible if the link goes UP/Down or the new network is introduced.
I'm not saying that the whole SPF calculation will re-run. What i meant is , SPF will only run for the New network added.
I hope this info was helpful. *cheers* -
lrb Member Posts: 526Partial SPF is run on an type3 LSA change as per RFC2328 section 16.5 (Incremental updates -- summary-LSAs).
If you run 'debug ip ospf spf' and force a type 3 LSA change you will see something like this (the local router is in area20; the prefix in question is in area 0):
R1#
*Mar 1 00:05:12.203: OSPF: Schedule partial SPF - type 3 id 9.9.9.9 adv rtr 192.168.2.1
*Mar 1 00:05:12.203: OSPF: Service partial SPF 1/0/0
*Mar 1 00:05:12.203: OSPF process partial spfQ entry
*Mar 1 00:05:12.203: OSPF process partial spfQ LSA id 9.9.9.9: mask 255.255.255.255, type 3 adv_rtr 192.168.2.1, age 1, seq 0x80000001 (Area 20)
*Mar 1 00:05:12.207: OSPF process summary partial ABR 0x0 txit 0x0 LSA 9.9.9.9: mask 255.255.255.255, t3 adv 192.168.2.1, age 1, seq 0x80000001 (Area 20)
*Mar 1 00:05:12.207: OSPF: Start partial processing Summary LSA 9.9.9.9, mask 255.255.255.255, adv 192.168.2.1, age 1, seq 0x80000001 (Area 20) type 3
R1#
*Mar 1 00:05:12.207: Add better path to LSA ID 9.9.9.9, gateway 0.0.0.0, dist 21
*Mar 1 00:05:12.207: Add path: next-hop 192.168.1.2, interface FastEthernet0/0
*Mar 1 00:05:12.207: Add Summary Route to 9.9.9.9/255.255.255.255. Metric: 21, Next Hop: 192.168.1.2
*Mar 1 00:05:12.207: OSPF: New inter-route to 9.9.9.9/32 could be used as forward addr - run external spf
*Mar 1 00:05:12.211: OSPF: Schedule SPF in area 20
Change in LS ID 9.9.9.9, LSA type X, spf-type Prefix Recalculation
*Mar 1 00:05:12.211: OSPF process partial spfQ entry
*Mar 1 00:05:12.211: OSPF process partial spfQ entry
R1#
*Mar 1 00:05:17.215: OSPF: running SPF for area 20, SPF-type Prefix Recalculation
*Mar 1 00:05:17.215: OSPF: ospf_gen_asbr_sum_all_areas
*Mar 1 00:05:17.215: OSPF: Started Building Type 5 External Routes
*Mar 1 00:05:17.215: OSPF: Started Building Type 7 External Routes
*Mar 1 00:05:17.215: OSPF: Entered External route sync - area dummy area
*Mar 1 00:05:17.215: OSPF: Entered NSSA route sync - area 20 -
Danielh22185 Member Posts: 1,195 ■■■■□□□□□□To my knowledge SPF will only recalculate in other areas if the summary route from the ABR changes due to a new route being introduced. However if the new route does still fall within the summary route advertised by the ABR the ABR will not have to flood anything new to area 0. The whole point of different areas is to reduce the flooding of route updates and to contain them within their own areas.Currently Studying: IE Stuff...kinda...for now...
My ultimate career goal: To climb to the top of the computer network industry food chain.
"Winning means you're willing to go longer, work harder, and give more than anyone else." - Vince Lombardi