cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2638
Views
4
Helpful
5
Replies

OSPF:Routing table recalculation

vpalania
Level 1
Level 1

Hi,

In RFC2328, I have found a statement'Installing a new LSA in the database, either as the result of flooding or a newly self-originated LSA, may cause the OSPF routing table structure to be recalculated.'For eg. consider there are 2 routers, R1,R2 in which R1 orginates advertises Router-LSA to R2.In that case, whether both R1 and R2 recalculates routing table.Actually, I am cleared with all that flooding procedure, after that once a new LSA is intalled in the database, how it knows to recalculate routing table ? what triggers? Also, how all routers know that the area is synchronized, to send data ? How each routers know that all routers in the area has same database?

Could someone explain me with an example.

Thanks,

Vijay

5 Replies 5

pkhatri
Level 11
Level 11

Hi Vijay,

The trigger for re-calculating the routing table is the installation of new LSAs in the database - it's as simple as that. However, the part of the routing table that needs to be re-calculated depends on which LSA was just installed. Section 13.2 of RFC2328 is pretty clear on what gets done when different types of LSAs are installed. In your example, both R1 and R2 will re-calculate the entire routing table, since a new type-1 LSA has been originated.

As to your second question - how do routers know that the area is synchronized ? Okay, there are two things that ensure this - database exchange and reliable flooding. Here's an example:

- RT1 boots up and discovers that it has, say, three OSPF neighbors (learned by the Hello protocol).

- RT1 then proceeds to carry out a full database exhcnage with all three of its neighbors. At the end of the database exchange process, RT1 knows that it is full synchronized with all three neighbors. Barring any further topology changes, RT1 will stay sync'ed with these three neighbors.

- Now, consider these three neighbors of RT1. When they had come up, they would have done database exhcange with all of *their* neighbors, ensuring that they were synced with all their neighbors. If you apply this concept recursively, you can see that all neighbors will have identical databases.

- the above considered a steady state scenario. Now assume a change occurs on RT1 and it has to advertise a new router-LSA. It will flood this using the reliable flooding process i.e. it will send the LSA to all of its neighbors and will except to see LSAcks from each of them. It will continue re-transmitting the LSA until it has received LSAcks from all of them. This ensures that changed LSAs will be seen by all neighbors. The fact that OSPF keeps re-transmitting until it sees an ACK means that all neighbors will eventually get that LSA.

- RT1's neighbors will, in turn, send this LSA to their neighbors and expect to see LSAcks. This will continue until all routers in the area have got the LSA.

So, to wrap up, the way that routers know that the area is synchronized is by ensuring that all LSAs are reliably flooded. Therefore, every router knows that if it has got a certain LSA, its neighbor also has a copy of that LSA. They start off with the same database (after database exchange) and ensure that any future LSAs are reliably sent to each other.

Hope that helps,

Paresh

****

- the above considered a steady state scenario. Now assume a change occurs on RT1 and it has to advertise a new router-LSA. It will flood this using the reliable flooding process i.e. it will send the LSA to all of its neighbors and will except to see LSAcks from each of them. It will continue re-transmitting the LSA until it has received LSAcks from all of them. This ensures that changed LSAs will be seen by all neighbors. The fact that OSPF keeps re-transmitting until it sees an ACK means that all neighbors will eventually get that LSA.

****

Doesn't the router send it's changes to the DR, which then sends out LSUs to all routers associated with that DR and awaits acks from those routers.? I'm currently studying OSPF for CCNP, and may be wrong, though. Cheers.

Mark Sargent.

Hi All,

just to add on this, I think the LSU, from the router with the change in link state, is sent to 224.0.0.6, and this is the address the DR/BDR are listening on, and then the DR/BDR send LSUs to all connected routers, via 224.0.0.5. Hope this helps. Again, if I'm wrong, please correct me. Cheers.

Mark Sargent.

Hi,

Only in multi-access networks, there comes the DR/DROther, where the DROther sends LSU to 224.0.0.6.But in

1) Point-to-point networks,Point-to-multipoint(multicasting supported) - sends LSU to 224.0.0.5

2) Virtual Links,Point-to-Multipoint non-broacast send LSU as unicast

Kindly go through the below link:

http://www.cisco.com/en/US/tech/tk365/tech_configuration_examples_list.html

where you will find examples for all network types.

Thanks,

Vijay

Hi,

Just to add to Vijay's post, abd to clarify me earlier post:

- what I described is the generalized mechanism that OSPF uses in order to ensure reliable flooding

- the actual mechanisms used on different link types differ in order to achieve any possible efficiencies, which in the case of multiaccess segments, is done by using a DR. The end effect of all of these mechanisms is still the same: ensure that all routers on a segment see any flooded LSAs.

Hope that helps,

Paresh.

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Review Cisco Networking products for a $25 gift card