Networking Study
Networking Study
OSPF (Open Shortest Path First) is an Interior Gateway Protocol (IGP). It is a link-state routing
protocol that uses the Shortest Path First (SPF) algorithm to calculate the best route. OSPF routing
protocol is an open standard, so various network vendors implement it.
Supports VLSM, CIDR, manual route summarization, equal cost load balancing
Routers running OSPF protocol have to establish neighbor relationships before exchanging routes.
Because OSPF is a link-state routing protocol, neighbors don’t exchange routing tables. Instead, they
exchange information about network topology. Each OSPF router then runs SPF or Dijkstra algorithm
to calculate the best routes and adds those to the routing table. Because each router knows the
entire topology of a network, the chance for a routing loop to occur is minimal.
Each OSPF router stores routing and topology information in three tables:
OSPF Neighbors
OSPF routers need to establish a neighbor relationship before exchanging routing updates. OSPF
neighbors are dynamically discovered by sending Hello packets from each OSPF-enabled interface on
a router. Hello packets are sent to the multicast IP address of 224.0.0.5.
Routers R1 and R2 are directly connected. After OSPF is enabled, both routers send Hellos to
establish a neighbor relationship. You can verify that the neighbor relationship has been established
by typing the ‘show ip ospf neighbors’ command.
In the example above, you can see that the router-id of R2 is 2.2.2.2. Each OSPF router is assigned a
router ID. A router ID is determined by using one of the following:
The following fields in the Hello packets must be the same on both routers in order for routers to
become neighbors:
subnet
area id
authentication
MTU
By default, OSPF sends hello packets every 10 seconds on an Ethernet network (Hello interval). A
dead timer is four times the value of the hello interval, so if a router on an Ethernet network doesn’t
receive at least one Hello packet from an OSPF neighbor for 40 seconds, the router declares that
neighbor to be down.
Before establishing a neighbor relationship, OSPF routers need to go through several state changes.
These states are explained below:
1. Init state – a router has received a Hello message from the other OSPF router
2. 2-way state – the neighbor has received the Hello message and replied with a Hello message of his
own
3. Exstart state – beginning of the Link State Database (LSDB) exchange between both routers.
Routers are starting to exchange link state information.
4. Exchange state – DBD (Database Descriptor) packets are exchanged. DBDs contain LSAs headers.
Routers will use this information to see what LSAs need to be exchanged.
5. Loading state – one neighbor sends LSRs (Link State Requests) for every network it doesn’t know
about. The other neighbor replies with the LSUs (Link State Updates), which contain information
about requested networks. After all the requested information have been received, other neighbor
goes through the same process
6. Full state – both routers have the synchronized database and are fully adjacent to each other.
NOTE
Depending on the network, OSPF can elect a Designated Router (DR) and a Backup Designated
Router (BDR). DR and BDR serve as the central point for exchanging OSPF routing information.
Each area in the OSPF network has to connect to the backbone area (area 0). All routers inside an
area must have the same area ID to become OSPF neighbors. A router with interfaces in more than
one area (area 0 and area 1, for example) is called Area Border Router (ABR). A router that connects
an OSPF network to other routing domains (EIGRP network, for example) is called Autonomous
System Boundary Router (ASBR).
NOTE
To better understand the concept of OSPF areas, consider the following example.
ospf areas
All routers are running OSPF. Routers R1 and R2 are inside the backbone area (area 0). Router R3 is
an ABR because it has interfaces in two areas, namely Area 0 and Area 1. Routers R4 and R5 are
inside Area 1. Router R6 is an ASBR because it connects the OSPF network to another routing domain
(an EIGRP domain in this case). If the R1’s directly connected subnet fails, router R1 sends the routing
update only to R2 and R3 because all routing updates are localized inside the area.
NOTE
The role of an ABR is to advertise address summaries to neighboring areas. The role of an ASBR is to
connect an OSPF routing domain to another external network (e.g. Internet, EIGRP network…).
After configuring OSPF on both routers, routers exchange LSAs to describe their topology database.
Router R1 sends an LSA header for its directly connected network 10.0.1.0/24. Router R2 checks its
topology database and determines that it doesn’t have information about that network. Router R2
then sends a Link State Request message requesting further information about that network. Router
R1 responds with Link State Update, which contains information about subnet 10.0.1.0/24, such as
next hop address, cost, etc.