1. 程式人生 > >開放最短路徑優先協議ospf

開放最短路徑優先協議ospf

ospf是鏈路狀態行路由協議    組播更新報文224.0.0.5與224.0.0.6

ospf的網路型別有:

點到點網路:點到點網路上的有效鄰居總是可以形成鄰接關係,此網路ospf資料包的組播地址是224.0.0.5

廣播型網路:此網路型別需要選取DR與BDR ,所有始發於DR、BDR的ospf資料包組播地址是224.0.0.5,

                     其他路由器的ospf資料包組播地址是224.0.0.6

NBMA網路:此網路沒有轉發廣播資料包的能力的,因此使用偽廣播(單播)

點到多點:多個點到點的集合

虛鏈路: 解決骨幹區域與非骨幹區域相連問題

跨層封裝到3層,協議號89;觸發更新、週期更新(30min),存在ACK和hello機制,但依然每30min週期一次,作用在於核查;

      僅支援等開銷負載均衡;需要結構化的部署----區域劃分、地址規劃

一、OSPF的資料包

           Hello     用於鄰居的發現、建立、保活

            DBD 資料庫描述表      相當於資料庫目錄

            LSR 鏈路狀態請求       獲取未知LSA

            LSU 鏈路狀態更新       攜帶各種LSA,用於應答LSR

            LSack  鏈路狀態確認     可靠性使用

二、OSPF的狀態機:鄰居間關係的各個階段

             Down:  一旦本地發出hello包進行下一狀態

              Init 初始化:接收到的hello包中若存在本地的RID,那麼進入下一狀態

              2way雙向通訊:鄰居關係建立的標誌

                          條件匹配:1、點到點網路直接進入下一狀態   

                                             2、MA網路將進行DR/BR選舉,非DR/BDR間不能進入下一狀態;

              Exstart 預啟動:使用類似hello 的DBD包來進行主從關係選舉,RID數值大為主;

               主優先進入下一狀態

               Exchange 準交換:使用真實的DBD來共享資料庫目錄,需要ACK確認;

               Loading載入: 使用LSR/LSU/LAack來獲取未知的LSA資訊;

               Full轉發:鄰接關係建立的標誌;

三、OSPF的工作過程:

      啟動協議後,本地向所有鄰居使用224.0.0.5組播發出hello包,在收集到其他鄰居的hello包後,若鄰居的包中存在本地RID,那麼鄰居關係建立,生成鄰居表

條件匹配:匹配失敗將停留於鄰居關係,僅hello包週期保活即可;

         匹配成功可以建立鄰接關係;

鄰接關係間先使用DBD來共享拓撲目錄,之後使用LSR/LSU/LSack來獲取未知的LSA資訊,生成LSDB---資料表中

資料庫建立完成後,本地基於SPF最短路徑選路規則,計算本地到達所有未知網段的最短路徑,然後將其載入到路由表中;

收斂完成後,hello包週期保活;每30min週期使用DBD進行比對;若比對結果一致,繼續保活即可;若不一致將使用LSR/LSU/LSack來獲取未知的資訊;

結構突變:

  1. 新增 ---直連新增網段裝置使用DBD告知鄰居
  2. 斷開 ---直連斷開網段裝置使用DBD告知鄰居
  3. 斷電,無響應---dead time到時刪除鄰居資訊