Basics of OSPF

OSPF is by far the most popular and important protocol in use today.

Most important features of OSPF:

  1. Its open source !
  2. Very fast convergence time, ( a tad close to even EIGRP )
  3. Link-state routing protocol
  4. Supports multiple, equal cost routes to the same destination
  5. Supports both IPv4 and IPv6
  6. Uses Dijkstra’s algorithm to find the shortest path tree and follows that by populating the routing table with resulting best path.
  7. Allows creation of areas and autonomous system
  8. Minimizes routing update traffic
  9. Supports VLSM/CIDR
  10. Unlimited hop count (unlike RIP)
  11. Supports Multi-vendor deployment.

Lets get familiar with few terms related to OSPF:

  • Router ID: In OSPF this is a unique 32-bit number assigned to each router. This is chosen as the highest IP address on a router, and can be set large by configuring an address on a loopback interface of the chosen router.
  • Neighbor Routers: two routers with a common link that can talk to each other.
  • Adjacency: a two-way relationship between two neighbor routers. Neighbors don’t always form adjacencies.
  • LSA: Link State Advertisements are flooded; they describe routes within a given link.
  • Hello Protocol: this is how routers on a network determine their neighbors and form LSAs.
  • Area: a hierarchy. A set of routers that exchange LSAs, with others in the same area. Areas limit LSAs and encourage aggregate routes.

OSPF protocol builds and maintains three separate tables:

  1. A neighbor table – contains a list of all neighboring routers.
  2. A topology table – contains a list of all possible routes to all known networks within an area. ( and finally.. drum rolls)
  3. A routing table – contains the best route for each known network.

Different types of routers :

  1. ABR : An Area Border Router is a router that is in area zero, and one or more other areas.
  2. DR, BDR : A Designated Router, as we said, is the router that keeps the database for the subnet. It sends and receives updates (via multicast) from the other routers in the same network.
  3. ASBR : The Autonomous System Boundary Router is very special, but confusing. The ASBR connects one or more AS, and exchanges routes between them. The ASBR’s purpose is to redistribute routes from another AS into its own AS.

OSPF states – The device operating OSPF goes through certain states. These states are:

  1. Down – In this state, no hello packet have been received on the interface.
    Note – The Down state doesn’t mean that the interface is physically down. Her, it means that OSPF adjacency process has not started yet.
  2. INIT – In this state, hello packet have been received from the other router.
  3. 2WAY – In the 2WAY state, both the routers have received the hello packets from other routers. Bidirectional connectivity has been established.
    Note – In between the 2WAY state and Exstart state, the DR and BDR election takes place.
  4. Exstart – In this state, NULL DBD are exchanged.In this state, master and slave election take place. The router having the higher router I’d becomes the master while other becomes the slave. This election decides Which router will send it’s DBD first (routers who have formed neighbourship will take part in this election).
  5. Exchange – In this state, the actual DBDs are exchanged.
  6. Loading – In this sate, LSR, LSU and LSA (Link State Acknowledgement) are exchanged.
    Important – When a router receives DBD from other router, it compares it’s own DBD with the other router DBD. If the received DBD is more updated than its own DBD then the router will send LSR to the other router stating what links are needed. The other router replies with the LSU containing the updates that are needed. In return to this, the router replies with the Link State Acknowledgement.
  7. Full – In this state, synchronization of all the information takes place. OSPF routing can begin only after the Full state.


Warning: Unknown: write failed: Disk quota exceeded (122) in Unknown on line 0

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/cpanel/php/sessions/ea-php74) in Unknown on line 0