1、鄰居關系
OSPF設備啟動后,會通過OSPF接口向外發送Hello報文,收到Hello報文的OSPF設備會檢查報文中所定義的參數,如果雙方一致就會形成鄰居關系,兩端設備互為鄰居
2、鄰接關系
形成鄰居關系后,如果兩端設備成功交換DD報文和LSA,才建立鄰接關系。
3、狀態機
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的序列號,協商主/從關系。建立主/從關系主要是為了保證在后續的DD報文交換中能夠有序的發送。
- Exchange:主從關系協商完畢后開始交換DD報文,本端設備將本地的LSDB用DD報文來描述,并發給鄰居設備。
- Loading:兩端設備發送LSR報文向鄰居請求對方的LSA,同步LSDB。
- Full:兩端設備的LSDB已同步,此時狀態為Full。
4、建立鄰接關系
OSPF完成鄰接關系的建立有四個步驟:建立鄰居關系、協商主/從、交互LSDB信息,同步LSDB。