摘 要:OSPF是開放最短路徑優先路由協議,它是一種鏈路狀態型路由協議,功能強大,負載小,通過自身維持的數據鏈路狀態庫計算路由表,收斂時間短,工作效率高,基于分層的網絡規劃可以在中型、大型網絡規模中使用,OSPF支持MD5驗證,在路由器相互交換信息中的安全性得到保障,是大型網絡規劃時的首選。
關鍵詞:OSPF;狀態機;鏈路狀態算法;協議;Virtual-Link
1 OSPF的概念
開放式最短路徑優先OSPF(Open Shortest Path First)是IETF組織開發的一個基于鏈路狀態的內部網關協議(Interior Gateway Protocol)。目前針對IPv4協議使用的是OSPF Version 2(RFC2328);針對IPv6協議使用OSPF Version 3(RFC2740)。OSPF(開放最短路徑優先)屬于IGP內部網關路由協議,協議基于鏈路狀態算法。OSPF直接運行于IP協議之上,使用IP協議號89。(圖1)
圖1
2 OSPF基本特點
支持無類域間路由(CIDR);支持區域劃分;無路由自環;路由變化收斂速度快;使用IP組播收發協議數據;支持多條等值路由;支持協議報文的認證。
2.1 鄰居狀態機
OSPF共有8種狀態機,分別是:Down、Attempt、Init、2-way、Exstart、Exchange、Loading、Full。
Down:鄰居會話的初始階段,表明沒有在鄰居失效時間間隔內收到來自鄰居路由器的Hello數據包。
Attempt:該狀態僅發生在NBMA網絡中,表明對端在鄰居失效時間間隔(dead interval)超時后仍然沒有回復Hello報文。此時路由器依然每發送輪詢Hello報文的時間間隔(poll interval)向對端發送Hello報文。
Init:收到Hello報文后狀態為Init。
2-way:收到的Hello報文中包含有自己的Router ID,則狀態為2-way;如果不需要形成鄰接關系則鄰居狀態機就停留在此狀態,否則進入Exstart狀態。
Exstart:開始協商主從關系,并確定DD的序列號,此時狀態為Exstart。
Exchange:主從關系協商完畢后開始交換DD報文,此時狀態為Exchange。
Loading:DD報文交換完成即Exchange done,此時狀態為Loading。
Full:LSR重傳列表為空,此時狀態為Full。
2.2 查看鄰居狀態
查看OSPF鄰居是否建立的命令為show ip ospf neighbour。
Neighbour ID為對端設備的router-id。可以手工設置,默認的話以設備中ip地址最大的地址。要手工更改router-id之后,必須重啟ospf進程以生效。命令為clear ip ospf process。
Pri、Address分別為對端設備的優先級,以及地址。Interface是自己設備的出接口。
State有兩個穩定狀態,一個為two-way狀態,一個為full狀態。
2.3 鏈路狀態算法的路由計算過程
為減小多路訪問網絡中OSPF流量,OSPF會選擇一個指定路由器(DR)和一個備份指定路由器(BDR)。當多路訪問網絡發生變化時,DR負責更新其他所有OSPF路由器。BDR會監控DR的狀態,并在當前DR發生故障時接替其角色。
BDR和DR/DRother建立完全鄰接關系(Full),而其他非指定路由器DRother之間建立部分連接關系,也稱為雙向鄰居關系(Two-Way)。(圖2)
圖2
2.4 OSPF宣告網絡
OSPF的配置為:(1)開啟ospf進程:Router ospf 1(2)設置ospf的router-id(3)宣告網絡,命令為:Network X.X.X.X X.X.X.X area 0(4)這里宣告網絡有兩個作用,第一個為宣告自身設備有這一個網段的路由。第二個為與對端設備建立連接。每一個宣告都會有這兩個作用。宣告之后,這每一個網段都會想網絡中發送hello包,因此會造成帶寬浪費,因此出現了靜默接口。Ospf是基于接口建立鄰居關系的。宣告的話也是宣告接口地址的。宣告32位的地址或者是宣告接口所在的網段都可以,作用一樣。
3 Virtual-Link
OSPF采用由兩層組成的分層結構,這要求所有的區域都與主干區域(區域0)直接相連。但是,當某個OSPF區域與OSPF主干區域(區域0)之間沒有直接連接時,便會導致LSDB不一致以及該區域中的網絡無法到達區域0。采用虛鏈路在該區域與主干區域之間建立起邏輯的連接,便可解決LSDB不一致以及該區域中的網絡無法到達區域0的問題。Virtual-Link在生產環境中應該極力避免的。該技術的出現只是為了解決有方案設計不當而導致的area0被分割。
4 結束語
OSPF路由選擇協議的缺點是它的配置相對比較復雜,需要占用大量的處理器資源。但是,隨著現代高速CPU的出現,它所需要的資源已經不成問題。而且由于OSPF是開放的協議,是IETF組織公布的標準,世界上主要的網絡設備廠都支持該協議,所以它的可靠性由于公開而得到保障,并且在眾多的廠商支持下,會不斷地走向完善。
作者簡介:盛偉(1983,10-),男,湖北省武漢市(籍貫),現職稱:助理工程師,學歷:本科,研究方向:信息技術。