OSPF的5包7狀態(tài)
數(shù)據(jù)包
Hello:發(fā)現(xiàn)、建立鄰居(鄰接)關(guān)系、維持、周期?;?;存在全網(wǎng)唯一的RID,使用IP地址表示
DBD:本地的數(shù)據(jù)庫的目錄(摘要),LSDB的目錄(所有LSA的集合)
LSR:基于DBD包中的未知信息進(jìn)行查詢
LSU:攜帶了真正的LSA信息(鏈路狀態(tài)通告),用于答復(fù)對端的LSR
LSack:對傳遞LSA信息進(jìn)行確認(rèn),鏈路狀態(tài)確認(rèn)
狀態(tài)機(jī)
Down:一旦啟動后發(fā)出hello包,則立即進(jìn)入下一狀態(tài)
Init(初始化):若收到了攜帶了自己的RID的hello包,則和對方一起進(jìn)入下一狀態(tài)
Two-way(雙向通信):鄰居關(guān)系建立(DR/BDR選舉),此時進(jìn)行條件匹配,若成功,RID大的優(yōu)先進(jìn)入下一狀態(tài);若失敗,則保持鄰居關(guān)系,hello包10s周期?;罴纯?/p>
Exstart(預(yù)啟動):使用類hello的DBD進(jìn)行主從選舉,RID大的優(yōu)先進(jìn)入下一狀態(tài)
Exchange(準(zhǔn)交換):使用真正的DBD包進(jìn)行數(shù)據(jù)庫目錄交換共享
Loading(加載):使用LSR/LSU/LSack來獲取未知的LSA信息
Full(轉(zhuǎn)發(fā)):鄰接關(guān)系建立的標(biāo)志
什么是條件匹配?
1.MA網(wǎng)段進(jìn)行DR/BDR選舉,P2P網(wǎng)段中沒有DR/BDR
2.點到點網(wǎng)絡(luò)直接進(jìn)入下一狀態(tài);MA網(wǎng)絡(luò)將進(jìn)行DR/BDR選舉(40S),非DR/BDR間不得進(jìn)入下一狀態(tài)
拓?fù)洌?/p>
Down:關(guān)閉狀態(tài)
init:初始化
Hello包:12.1.1.1 以 10s為周期向其他鏈路以組播方式發(fā)送hello包,并攜帶了自己的RID
此時,R2收到了R1的hello包,并向R1發(fā)送hello(打招呼)
Init完成,雙方成為鄰居關(guān)系Two-way:鄰居關(guān)系建立(DR/BDR選舉)
Exstart預(yù)啟動
發(fā)送了四次的DBD是因為,首先R1想要先進(jìn)入下一狀態(tài),但是R2告訴R1你的RID比我的?。ㄒ脒M(jìn)入下一狀態(tài)RID要是較大方,此時R2將R1的RID與自己進(jìn)行了比較),R2向R1發(fā)送DBD請求,告訴R1 我才是RID大的
R1第一次發(fā)送DBD將自己的master置成Yes
告訴R2,我應(yīng)該是Master;
注意此時DD-seq是2765
R2給R1回應(yīng)
我的RID比你大,我才應(yīng)該是Master,并且將自己的MS置位為Yes
注意此時的DD-seq是465
R1第二次發(fā)送DBD
由于R1的RID比R2小,那么R1就將自己的MS置成No
這個DD是為了確認(rèn)上一步中R2發(fā)來的DD的,所以DD-seq是465(與上一步中R2發(fā)來的相同)
R2再發(fā)送一個DD
將M置位0,告訴R1我沒有DD要發(fā)送了
此時的DD-seq是在上一次發(fā)送DD-seq的基礎(chǔ)上+1,因為是新發(fā)出來的DD,注意這個465發(fā)出后,一定會收到一個465用于確認(rèn)的
R1第三次發(fā)送DBD
將M置位為0,表示我也沒有DBD要發(fā)送了
注意DD-seq就是466,用于確認(rèn)上一步中R2發(fā)來的DD的
總結(jié)整個過程
Exchange準(zhǔn)交換:雙方交換DBD
Loading::使用LSR/LSU/LSACK獲取未知的LSA信息 (共享拓?fù)鋱D)
R1向R2以單播方式發(fā)送LSR的請求
R2給R1 回復(fù)LSU的確認(rèn)包含了LSA,路由信息或拓?fù)湫畔?/p>
R1 R2之間互相發(fā)送LSR LSU
R1 要給R2發(fā)送 LSU的確認(rèn)
至此,7個狀態(tài)機(jī)制完成,路由與拓?fù)渫瓿山粨Q。
審核編輯:劉清
-
OSPF
+關(guān)注
關(guān)注
0文章
80瀏覽量
14859 -
狀態(tài)機(jī)
+關(guān)注
關(guān)注
2文章
490瀏覽量
27442 -
DBD
+關(guān)注
關(guān)注
0文章
3瀏覽量
6982
原文標(biāo)題:如何使用WireShark詳細(xì)分析OSPF狀態(tài)運行機(jī)制?
文章出處:【微信號:網(wǎng)絡(luò)技術(shù)干貨圈,微信公眾號:網(wǎng)絡(luò)技術(shù)干貨圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論