開放式最短路徑優先
網際網絡協定 / 維基百科,自由的 encyclopedia
開放式最短路徑優先(英語:Open Shortest Path First,縮寫為 OSPF)是廣泛使用的一種路由協議,它屬於鏈路狀態路由協議,具有路由變化收斂速度快、無路由環路、支持變長子網掩碼(VLSM)和匯總、層次區域劃分等優點。
OSPF是一種基於IP協議的路由協議。它是大中型網絡上使用較為廣泛的IGP協議。OSPF是對鏈路狀態路由協議(英語:Link-state routing protocol)的一種實現,運作於自治系統內部。OSPF分為OSPFv2和OSPFv3兩個版本:OSPFv2定義於RFC 2328(1998),支持IPv4網絡;而OSPFv3定義於RFC 5340(2008),支持IPv6網絡。
它採用戴克斯特拉算法來計算最短路徑樹。它使用「開銷(Cost)」作為路由度量。鏈路狀態數據庫(LSDB)用來保存當前網絡拓撲結構,路由器上屬於同一區域的鏈路狀態數據庫是相同的(屬於多個區域的路由器會為每個區域維護一份鏈路狀態數據庫)。
OSPF提出了「區域(Area)」的概念,一個網絡可以由單一區域或者多個區域組成。其中,一個特別的區域被稱為骨幹區域(Backbone Area),該區域是整個OSPF網絡的核心區域,並且所有其他的區域都與之直接連接。所有的內部路由都通過骨幹區域傳遞到其他非骨幹區域。所有的區域都必須直接連接到骨幹區域,如果不能建立直接連接,那麼可以通過虛鏈路(virtual link)和骨幹區域建立虛擬連接。
同一個廣播域(Broadcast Domain)的路由器或者一個點對點(Point To Point)連接的兩端的路由器,在發現彼此的時候,建立鄰接(Adjacencies)[註 1]。多路訪問網絡以及非廣播多路訪問網絡的路由器會選舉指定路由器(Designated Router, DR)和備份指定路由器(Backup Designated Router, BDR),DR和BDR作為網絡的中心負責路由器之間的信息交換從而降低了網絡中的信息流量。OSPF協議同時使用單播(Unicast)和群播(Multicast)來發送Hello包和鏈路狀態更新(Link State Updates),使用的群播地址為224.0.0.5和224.0.0.6。與RIP和BGP不同的是,OSPF協議不使用TCP或者UDP協議而是直接承載在IP協議之上,IP協議號為89。