Protocol in Code · Track

OSPF

link state, flooding, SPF, and RIB

12 sessions Course material (English)

Sessions

OSPF track sessions

Session 01

Hello Starts The Neighbor

What has to match before an OSPF Hello can even start a neighbor relationship?

Open Session 01
Session 02

Neighbor State Machine

How does a received Hello turn into Init, 2-Way, or Full?

Open Session 02
Session 03

DR And BDR Election

If several routers share one broadcast segment, how does the code pick DR and BDR?

Open Session 03
Session 04

LSA As An Object

What does a Router-LSA have to contain before flood and SPF can use it?

Open Session 04
Session 05

Flooding Decides Where The LSA Goes

Once a newer LSA is received, where should it be forwarded next?

Open Session 05
Session 06

LSDB Keeps The Version

How does the LSDB decide whether a newly received Router-LSA replaces the old one?

Open Session 06
Session 07

SPF Turns The LSDB Into A Tree

What are the exact inputs to SPF, and what object does SPF return?

Open Session 07
Session 08

The Tree Becomes Routes

How does the shortest-path tree turn into actual reachable prefixes?

Open Session 08
Session 09

Cost Picks The Winner

If the same prefix appears more than once, which route wins?

Open Session 09
Session 10

Topology Change Recomputes The RIB

When a Router-LSA changes, which part of the route table has to be recomputed?

Open Session 10
Session 11

Area Boundaries Rewrite The View

What changes when routes cross an area boundary through an ABR-like summary step?

Open Session 11
Session 12

Build The Toy OSPF Speaker Loop

What does the smallest readable OSPF speaker look like when Hello, LSDB, SPF, and area summary are connected?

Open Session 12