ospf的建立過程

                                 ospf建立過程
         剛學完了ospf(open shortest path first)、eigrp、bgp等三大協議,這也是路由原理所要求會的知識,尤其ospf,是我們這門課的重點的重點,所以在這裏也覺得有了一些自己的看法,也分享一下吧!!!
        在理解之前,我覺得,腦中最好有這些東西,它們就像是ospf學習的一些主幹吧!!
 首先有5個報文
1.hello報文
2.database dscription (DBD)數據描述報文
3.link-state request (LSR) 鏈路狀態請求報文
4.link-state update  (LSU) 鏈路狀態更新報文
5.link-state ACK(LSAck)     鏈路狀態確認報文 
然後是七個狀態
1.DOWN  狀態
2.INIT狀態
3.TWO-WAY狀態
4.EXSTART狀態
5.CXCHANGE狀態
6.LODING 狀態
7.FULL狀態
       只有有了這些東西,然後 把5個報文分別放入相應的狀態裏,相信你就會有一個新的理解了!!!!
       好了先從狀態入手吧!
1.DOWN狀態
     在這狀態下,所有的設備剛起動,所以相互之間沒有交換任何數據,所以也稱關閉狀態!
2.INIT狀態
      這個狀態又稱準啓動狀態,這時所有的設備開始交換hello報文了(有了報文了注意,hello報文就是在這裏出現了,內容是通告自己是誰,誰在這個鏈路上),鄰居收到同樣也用hello報文回覆一個(我是誰,我有這個鏈路上)這時,設備知道了對方的存在了,所以開始進入下一個狀態
3.TWO-WAY 狀態
       承上啓下,通過比較hello報文中(是否routr-id唯一、是否有相同的生存時間和死亡時間等條件)所有要求符合了,這時就建立了鄰居關係(補一點,hello報文也是區分鏈路狀態和距離矢量的重要之處)
        &&&如果所屬的網絡類型是廣播類型,這時就要在這裏選舉DR/BDR(靠優先級選,優先級相同時,由router-id來選舉),再進入下一狀態
4.EXSTART狀態
         鄰居已建立了(從這裏到最後都屬於鄰接關係的建立了
),開始傳送一個DBD報文(又出現了一個報文),開始交換自己的(LSDB的一個摘要數據),當彼此收到了DBD報文後就回復一個LSAck報文(出現了一個報文)表示我收到了,雙方確認後,進入下一個狀態
5.EXCHANGE狀態
        這時設備之間就開始用這個DBD報文描述的內容與自身的LSDB(Link-state database 鏈路狀態數據庫)比較,當發現了DBD報文中的自己沒有的內容時,這時便進入了下一個狀態       
6.LOAING狀態
       設備由對方的DBD報文比較出了自己沒有的內容,所以要開始發送LSR報文(出現了一個報文)向鄰居學習,這時鄰居沒有的也會向自己發送LSR報文學習,當彼此收到了LSR便發送一個LSAck報文確認收到,並且再向對方發送一個LSU報文(出現了一個報文)告訴鄰居所請求的內容,彼此收到了LSU報文後也要發送一個LSAck報文確認!!這時都開始記錄了,隨之也進入了下一個狀態
7.FULL狀態
      設備都學習到了LSU報文內容,這時鄰接建立完成!!FULL狀態也完成!
      在時,其實設備的路由表中是不會有任何學習來的條目的,因爲ospf是基於報文來讓其它設備學習記錄的,(這也是鏈路狀態與距離矢量的區別吧)這時如果在設備上show ip route
只能看到直連網段,因爲ospf協議在進行完了上面的七種狀態後,還要進行spf計算,最後再由管理距離決定最後進入路由表中的條目!!
       是不是看了上面的過程有點暈,呵呵!畢竟是我的理解,由於知識及表達能力上的不足,所以也希望你能多看山山幾遍!希望對你有些幫助吧!!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章