OSPF 操作概述
OSPF 路由器通過以下通用的鏈路狀態路由過程,創建并維護路由信息,以達到收斂狀態。
建立鄰居鄰接關系
OSPF路由器必須與其鄰居建立鄰接關系之后才能共享信息。OSPF 路由器從所有啟用OSPF的接口發送Hello包,用來確定這些鏈路上是否有OSPF鄰居。如果發現了鄰居,OSPF 路由器會嘗試與該鄰居建立鄰接關系。
交換鏈路狀態通告
鄰接關系建立后,路由器交換LSA(鏈路狀態通告)。LSA 包含每條直連鏈路的狀態和開銷。路由器將LSA 泛洪給鄰接的鄰居。接收到LSA的鄰接鄰居立即將LSA泛洪給其他的直連鄰居,直到區域中的所有路由器都有相同的LSA為止。
構建拓撲表
收到LSA之后,OSPF路由器會基于收到的LSA構建LSDB(拓撲表)。此數據庫中最終會擁有網絡拓撲的所有信息。對于區域中所有路由器,LSDB中一定都要有相同的信息。
執行SPF 算法
路由器執行SPF 算法。SPF 算法構建SPF 樹。
構建拓撲表
路由器把SPF樹中的最優路徑放入到路由表中,并基于路由表中的條目作出路由決策。