一、OSPF的五種報(bào)文
| 類型 | 報(bào)文名稱 | 報(bào)文描述 |
|---|---|---|
| 1 | hello | 發(fā)現(xiàn)、建立、周期保活鄰居、鄰接關(guān)系 |
| 2 | DD(Database Description,數(shù)據(jù)庫(kù)描述) | LSDB中LSA的頭部信息(并非完整的LSA信息),也就是本地的數(shù)據(jù)庫(kù)的目錄(摘要) |
| 3 | LSR(Link State Request,鏈路狀態(tài)請(qǐng)求) | 基于對(duì)端發(fā)送的DD報(bào)文中的未知信息(未知的LSA)向OSPF鄰居進(jìn)行查詢 |
| 4 | LSU (Link State Update,鏈路狀態(tài)更新) | 用于答復(fù)對(duì)端的LSR,攜帶各種的LSA。 |
| 5 | LSAck (Link State Acknowledgment,鏈路狀態(tài)確認(rèn)) | 對(duì)從LSU中獲取到的LSA進(jìn)行確認(rèn) |
OSPF的報(bào)文頭部(24byte):

Hello報(bào)文:

DD報(bào)文:

LSR報(bào)文:

LSU報(bào)文:

LSAck報(bào)文:

二、OSPF的七種狀態(tài)機(jī):
| 狀態(tài)機(jī)名稱 | 狀態(tài)機(jī)描述 |
|---|---|
| Down(失效) | 該狀態(tài)還沒有進(jìn)行hello包的收發(fā),一旦進(jìn)行hello的收發(fā),則進(jìn)入下一狀態(tài) |
| Init(初始化) | 接收到的hello包中并不存在本地的route-id,但是會(huì)將發(fā)送該hello包的鄰居置為init狀態(tài),此時(shí)雙方并沒有建立雙向通信,隨著雙方互相收發(fā)hello包,于是才會(huì)進(jìn)入下一狀態(tài) |
| 2-way(雙向通信) | 接收到的hello包中存在本地的route-id,則雙方就會(huì)進(jìn)入2-way雙向通信狀態(tài)。該狀態(tài)也是OSPF最穩(wěn)定的狀態(tài)之一,它標(biāo)志著鄰居關(guān)系的建立,同時(shí)也是鄰接關(guān)系建立的基礎(chǔ) |
| Exstart(預(yù)啟動(dòng)) | 使用類似hello的DD報(bào)文進(jìn)行主從關(guān)系(Master/Slave)選舉,route-id數(shù)值大為主,優(yōu)先進(jìn)入下一狀態(tài)。此時(shí)的DD報(bào)文是空的。 |
| Exchange(準(zhǔn)交換) | 使用真正的DD報(bào)文進(jìn)行數(shù)據(jù)庫(kù)目錄的共享 |
| Loading (加載) | 使用LSR、LSU、LSAck去獲取未知的LSA信息(LSDB同步) |
| Full(全毗鄰) | 鄰接關(guān)系建立的標(biāo)志,此時(shí)不再進(jìn)行LSDB的同步 |
三、OSPF的工作過程
“
224.0.0.5:指的是所有OSPF路由器所使用的組播地址;
224.0.0.6:指的是所有OSPF DR路由器所使用的組播地址。
”
(1)在啟動(dòng)宣告配置之后,OSPF路由器會(huì)使用組播224.0.0.5進(jìn)行OSPF hello包的收發(fā);若接收到的hello包中存在本地的route-id,則建立鄰居關(guān)系,生成鄰居表;
之后基于表中所有的鄰居進(jìn)行條件的匹配,匹配失敗則將維持鄰居關(guān)系,僅hello包周期?;罴纯桑?/p>
(2)匹配成功者之間可以建立鄰接關(guān)系;鄰居間使用DD數(shù)據(jù)包進(jìn)行數(shù)據(jù)庫(kù)目錄的比對(duì);之后使用LSR查詢目錄中未知的LSA信息,對(duì)端使用LSU來攜帶傳遞LSA,最終需要LSAck進(jìn)行接收確認(rèn);
當(dāng)本地收集到區(qū)域內(nèi)所有設(shè)備的LSA信息后,生成LSDB—鏈路狀態(tài)數(shù)據(jù)庫(kù)表;
(3)本地基于LSDB啟用SPF算法,計(jì)算到達(dá)所有未知網(wǎng)段的最短路徑,然后將其加載到路由表內(nèi);
審核編輯:劉清
-
路由器
+關(guān)注
關(guān)注
22文章
3910瀏覽量
119630 -
OSPF
+關(guān)注
關(guān)注
0文章
81瀏覽量
15564 -
狀態(tài)機(jī)
+關(guān)注
關(guān)注
2文章
499瀏覽量
29164
原文標(biāo)題:OSPF五種報(bào)文、七種狀態(tài)機(jī)及其工作過程
文章出處:【微信號(hào):網(wǎng)絡(luò)技術(shù)干貨圈,微信公眾號(hào):網(wǎng)絡(luò)技術(shù)干貨圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
Verilog狀態(tài)機(jī)+設(shè)計(jì)實(shí)例
ARM體系的七種工作模式分別是哪些
OSPF協(xié)議詳解
狀態(tài)機(jī)舉例
防盜報(bào)警單元工作原理及其狀態(tài)機(jī)的設(shè)計(jì)
ospf工作原理_ospf工作過程
狀態(tài)機(jī)如何簡(jiǎn)化PLC程序的編寫
什么是狀態(tài)機(jī) 狀態(tài)機(jī)的描述三種方法
FPGA:狀態(tài)機(jī)簡(jiǎn)述
OSPF鄰居狀態(tài)機(jī)的詳細(xì)講解
Verilog設(shè)計(jì)過程中狀態(tài)機(jī)的設(shè)計(jì)方法
什么是狀態(tài)機(jī)?狀態(tài)機(jī)5要素
OSPF七種狀態(tài)機(jī)及其工作過程
評(píng)論