開放最短路徑優先協議
出自 MBA智库百科(https://wiki.mbalib.com/)
開放最短路徑優先協議(Open Shortest Path First, OSPF)
目錄 |
什麼是開放最短路徑優先協議[1]
開放最短路徑優先協議是內部網關協議,用於在同一個自治系統AS中的路由器之間發佈路由信息。它是由IETF制定的一種基於鏈路狀態的內部網關協議。
開放最短路徑優先協議的特點[2]
(1)使用分散式的鏈路狀態協議。
(2)路由器發送的信息是本路由器與哪些路由器相鄰,以及鏈路狀態(距離、時延、帶寬等)信息。
(3)當鏈路狀態發生變化時用洪泛法向所有路由器發送。
(4)所有的路由器最終都能建立一個鏈路狀態資料庫。
(5)為了能夠用於規模很大的網路,OSPF將一個自治系統再劃分為若幹個更小的區域,一個區域內的路由器數不超過200個。
開放最短路徑優先協議的基本原理[3]
開放最短路徑優先協議是基於鏈路狀態的分散式路由選擇協議。它剋服了RIP協議存在的一些缺點和局限,不受網路範圍的限制(網路範圍太大時,為了提高性能可以劃分成若幹網路區域),支持VLSM技術,並且提供服務類型選路、負載均衡等功能,能在不同網路之間同時使用多條路由,成為目前應用越來越普遍的內部網關協議。
與RIP協議不同的是,使用OSPF協議的路由器發送的消息不是路由表中的信息,而是兩個路由器之間的鏈路狀態信息,並把該信息廣播給網路中所有的路由器。每個路由器再把所有的信息收集起來,形成整個網路的拓撲結構圖,採用Dijkstra最短路徑路由演算法產生各自的路由表。所謂鏈路狀態信息,指的是與該路由器相鄰的網路和路由器信息以及將信息發送到這些網路和路由器所需的費用,這種費用可以是帶寬、距離、時延或真正的費用等,如以108/帶寬表示。為了確認哪些相鄰站是可到達的,OSPF規定,每兩個相鄰路由器每隔10s交換一次Hello報文(短報文),若40s沒有收到某個相鄰路由器發來的Hello報文,則認為該路由器是不可達的,應立即修改鏈路狀態資料庫,並重新計算路由表。
由於鏈路狀態的修改只包含路由器的鏈路報告,而不是整個路由表,因而開銷小。而且路由器間鏈路狀態信息的交流只在鏈路狀態發生變化後才進行,OSPF信息不用UDP而是直接用IP數據報發送,並且數據報很短,減少了路由信息的通信量,避免數據報分片等帶來的不便,所有這些都使OSPF比RIP效率更高,其使用配置也相對複雜一些。
1997年7月公佈了最新版本OSPFv2(RFC 2178),進一步改善了0SPF的性能。目前幾乎所有路由器廠商都支持OSPF,並開始在一些網路中取代舊的RIP協議。
開放最短路徑優先協議的執行過程[2]
(1)路由器的初始化過程。每個路由器用資料庫描述分組和相鄰路由器交換本資料庫中已有的鏈路狀態摘要信息,路由器使用鏈路狀態請求分組,向對方請求發送自己所缺少的某些鏈路狀態項目的詳細信息,通過一系列的分組交換,建立全網同步的鏈路資料庫。
(2)網路運行過程。路由器的鏈路狀態發生變化時,該路由器就要使用鏈路狀態更新分組,用洪泛法向全網更新鏈路狀態。每個路由器計算出以本路由器為根的最短路徑樹,並根據最短路徑樹更新路由表。