自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

OSPF之鄰居關(guān)系、鄰接關(guān)系

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
Ospf中路由器之間存在兩種連接關(guān)系:鄰居關(guān)系和鄰接關(guān)系。本博文將詳細(xì)介紹這2種關(guān)系建立及工作原理。

 Ospf中路由器之間存在兩種連接關(guān)系:鄰居關(guān)系和鄰接關(guān)系。本博文將詳細(xì)介紹這2種關(guān)系建立及工作原理。

如果兩臺(tái)路由器之間共享一條公共數(shù)據(jù)鏈路(兩臺(tái)路由器中間沒(méi)有其它路由器,或者兩臺(tái)路由器之間存在虛連接),并且成功協(xié)商了hello包中所指定的參數(shù),那么它們就成為鄰居。如果兩個(gè)鄰居之間需要同步LSDB,那么它們之間需要建立鄰接關(guān)系。如果兩個(gè)路由器之間建立了鄰接關(guān)系,那么它們的LSDB一定是同步的。LSA只在存在鄰接關(guān)系的路由器之間傳遞。

那么鄰居關(guān)系和鄰接關(guān)系怎么建立呢?鄰居關(guān)系通過(guò)hello報(bào)文來(lái)建立。Hello報(bào)文中包含如下一些內(nèi)容:

1、始發(fā)路由器的router-id

2、始發(fā)路由器接口的area-id

3、始發(fā)路由器接口的地址掩碼

4、始發(fā)路由器接口的authentication type和authentication message

5、始發(fā)路由器接口的hello-interval

6、始發(fā)路由器接口的router dead-interval

7、路由器優(yōu)先級(jí)

8、指定DR和BDR

9、標(biāo)識(shí)可選性能的5個(gè)標(biāo)志位

10、始發(fā)路由器的所有有效neighbor router-id(始發(fā)路由器接收到了它們的hello報(bào)文)

以兩臺(tái)路由器之間建立鄰居關(guān)系為例:

1、R1發(fā)送hello報(bào)文(組播或者單播,鏈路層類型來(lái)定),neighbor字段為空

2、R2收到hello報(bào)文,為R1建立一個(gè)鄰居數(shù)據(jù)結(jié)構(gòu),并把R1的鄰居狀態(tài)置為init,然后向R1發(fā)送hello報(bào)文,neighbor字段中包含R1的rougerID,表示自己收到了R1的hello報(bào)文。

3、R1收到R2的hello報(bào)文之后,為R2建立一個(gè)鄰居數(shù)據(jù)結(jié)構(gòu),并把鄰居狀態(tài)置為2way,然后向R2發(fā)送hello報(bào)文,報(bào)文的neighbor字段中包含R2的routerID。

4、R2收到R1的hello報(bào)文后,把R1的鄰居狀態(tài)置為2way

至此,鄰居關(guān)系就建立起來(lái)了,鄰居路由器之間會(huì)按時(shí)發(fā)送hello報(bào)文進(jìn)行?;睿绻鹔ello報(bào)文超時(shí),那么該路由器就會(huì)宣告這里鄰居失效。

所有路由器之間都達(dá)到2way狀態(tài)后,它們會(huì)根據(jù)網(wǎng)絡(luò)類型判斷是否需要選舉DR和BDR,如果需要的話就開(kāi)始選舉DR和BDR。

鄰居路由器之間會(huì)判斷是否需要建立鄰接關(guān)系,怎么判斷呢?

1、 如果是point-to-point鏈路,需要建立鄰接關(guān)系

2、 如果是point-to-multipoint鏈路,需要建立鄰接關(guān)系

3、 如果網(wǎng)絡(luò)類型是虛鏈路,需要建立鄰接關(guān)系

4、 本地路由器是網(wǎng)段上的DR,需要建立鄰接關(guān)系

5、 本地路由器是網(wǎng)段上的BDR,需要建立鄰接關(guān)系

6、 鄰居路由器是網(wǎng)段上的DR,需要建立鄰接關(guān)系

7、 鄰居路由器是網(wǎng)段上的BDR,需要建立鄰接關(guān)系

如何建立鄰接關(guān)系呢?

其實(shí)鄰接關(guān)系的建立過(guò)程中就順帶把LSDB同步了。過(guò)程如下:

建立鄰接關(guān)系使用下面三種協(xié)議報(bào)文:

Hello報(bào)文type1、數(shù)據(jù)庫(kù)描述數(shù)據(jù)包type2、鏈路狀態(tài)請(qǐng)求報(bào)文type3、鏈路狀態(tài)更新報(bào)文type4、鏈路狀態(tài)確認(rèn)報(bào)文type5

1、RT1的一個(gè)連接到廣播類型網(wǎng)絡(luò)的接口上激活了OSPF協(xié)議,并發(fā)送了一個(gè)HELLO報(bào)文(使用組播地址224.0.0.5)。由于此時(shí)RT1在該網(wǎng)段中還未發(fā)現(xiàn)任何鄰居,所以HELLO報(bào)文中的Neighbor字段為空。

2、RT2收到RT1發(fā)送的HELLO報(bào)文后,為RT1創(chuàng)建一個(gè)鄰居的數(shù)據(jù)結(jié)構(gòu),并且將RT1的鄰居狀態(tài)機(jī)置為Init。RT2發(fā)送一個(gè)HELLO報(bào)文回應(yīng)RT1,并且在報(bào)文中的Neighbor字段中填入RT1的Router id,表示已收到RT1的HELLO報(bào)文。

3、RT1收到RT2回應(yīng)的HELLO報(bào)文后,為RT2創(chuàng)建一個(gè)鄰居的數(shù)據(jù)結(jié)構(gòu),并將鄰居狀態(tài)機(jī)置為Exstart狀態(tài)。下一步雙方開(kāi)始發(fā)送各自的鏈路狀態(tài)數(shù)據(jù)庫(kù)。

為了提高發(fā)送的效率,雙方需先了解一下對(duì)端數(shù)據(jù)庫(kù)中那些LSA是自己所需要的(如果某一條LSA自己已經(jīng)有了,就不再需要請(qǐng)求了)。方法是先發(fā)送DD報(bào)文,DD報(bào)文中包含了對(duì)本地?cái)?shù)據(jù)庫(kù)中LSA的摘要描述(每一條摘要可以惟一標(biāo)識(shí)一條LSA,但所占的空間要少得多)。由于OSPF直接用IP報(bào)文來(lái)封裝自己的協(xié)議報(bào)文,所以在傳輸?shù)倪^(guò)程中必須考慮到報(bào)文傳輸?shù)目煽啃浴?/p>

為了做到這一點(diǎn),在DD報(bào)文的發(fā)送過(guò)程中需要確定雙方的主從關(guān)系。作為Master的一方定義一個(gè)序列號(hào)seq,每發(fā)送一個(gè)新的DD報(bào)文將seq加一。作為Slave的一方,每次發(fā)送DD報(bào)文時(shí)使用接收到的上一個(gè)Master的DD報(bào)文中的seq。實(shí)際上這種序列號(hào)機(jī)制是一種隱含的確認(rèn)方法。如果再加上每個(gè)報(bào)文都有超時(shí)重傳,就可以保證這種傳輸是可靠的。

RT1首先發(fā)送一個(gè)DD報(bào)文,宣稱自己是Master(MS=1),并規(guī)定序列號(hào)為x。I=1表示這是***個(gè)DD報(bào)文,報(bào)文中并不包含LSA的摘要,只是為了協(xié)商主從關(guān)系。M=1說(shuō)明這不是***一個(gè)報(bào)文。

4. RT2在收到RT1的DD報(bào)文后,將RT1的鄰居狀態(tài)機(jī)改為Exstart,并且回應(yīng)了一個(gè)DD報(bào)文(該報(bào)文中同樣不包含LSA的摘要信息)。由于RT2的RouterID較大,所以在報(bào)文中RT2認(rèn)為自己是Master,并且重新規(guī)定了序列號(hào)為y。

5. RT1收到報(bào)文后,同意了RT2為Master,并將RT2的鄰居狀態(tài)機(jī)改為Exchange。RT1使用RT2的序列號(hào)y來(lái)發(fā)送新的DD報(bào)文,該報(bào)文開(kāi)始正式地傳送LSA的摘要。在報(bào)文中RT1將MS=0,說(shuō)明自己是Slave。

6. RT2收到報(bào)文后,將RT1的鄰居狀態(tài)機(jī)改為Exchange,并發(fā)送新的DD報(bào)文來(lái)描述自己的LSA摘要,需要注意的是:此時(shí)RT2已將報(bào)文的序列號(hào)改為y+1了。

7. 上述過(guò)程持續(xù)進(jìn)行,RT1通過(guò)重復(fù)RT2的序列號(hào)來(lái)確認(rèn)已收到RT2的報(bào)文。RT2通過(guò)將序列號(hào)+1來(lái)確認(rèn)已收到RT1的報(bào)文。當(dāng)RT2發(fā)送***一個(gè)DD報(bào)文時(shí),將報(bào)文中的M=0,表示這是***一個(gè)DD報(bào)文了

8. RT1收到***一個(gè)DD報(bào)文后,發(fā)現(xiàn)RT2的數(shù)據(jù)庫(kù)中有許多LSA是自己沒(méi)有的,將鄰居狀態(tài)機(jī)改為L(zhǎng)oading狀態(tài)。此時(shí)RT2也收到了RT1的***一個(gè)DD報(bào)文,但RT1的LSA,RT2都已經(jīng)有了,不需要再請(qǐng)求,所以直接將RT1的鄰居狀態(tài)機(jī)改為Full狀態(tài)。

9. RT1發(fā)送LS Request報(bào)文向RT2請(qǐng)求所需要的LSA。RT2用LS Update報(bào)文來(lái)回應(yīng)RT1的請(qǐng)求。RT1收到之后,需要發(fā)送LS Ack報(bào)文來(lái)確認(rèn)。上述過(guò)程持續(xù)到RT1中的LSA與RT2的LSA完全同步為止。此時(shí)RT1將RT2的鄰居狀態(tài)機(jī)改為Full狀態(tài)。

注:

以上過(guò)程是兩臺(tái)路由器由相互沒(méi)有發(fā)現(xiàn)對(duì)方的存在到建立鄰接關(guān)系的過(guò)程。或者可以理解為網(wǎng)絡(luò)中新加入一臺(tái)路由器時(shí)的處理情況。當(dāng)兩臺(tái)路由器之間的狀態(tài)機(jī)都已經(jīng)達(dá)到Full狀態(tài)之后,如果此時(shí)網(wǎng)絡(luò)中再有路由變化時(shí),就無(wú)須重復(fù)以上的所有步驟。只由一方發(fā)送LS Update報(bào)文通知需要更新的內(nèi)容,另一方發(fā)送LS Ack報(bào)文予以回應(yīng)即可。雙方的鄰居狀態(tài)機(jī)在此過(guò)程中不再發(fā)生變化。

原文鏈接:http://blog.sina.com.cn/s/blog_620dbe2e0101nil7.html

責(zé)任編輯:林琳 來(lái)源: 博客
相關(guān)推薦

2009-08-07 10:43:24

OSPF路由器鄰接關(guān)系

2011-04-13 16:33:29

OSPF

2011-04-13 16:40:02

OSPF

2013-12-13 14:46:55

OSPFMTU鄰接關(guān)系

2020-07-03 09:16:13

OSPF鄰居子網(wǎng)掩碼

2019-12-05 08:05:52

OSPF網(wǎng)絡(luò)鄰接關(guān)系

2009-02-20 10:13:00

路由路由技術(shù)

2010-08-18 12:57:25

2019-11-24 19:20:57

OSPF鄰居路由器

2013-07-01 11:27:11

2010-11-26 10:57:13

跳槽

2009-12-17 16:16:00

CCIE學(xué)習(xí)

2009-06-09 11:03:15

OSPF鄰居認(rèn)證路由器

2025-04-11 10:18:58

2011-03-30 16:27:07

POS接口OSPF

2011-04-11 16:29:31

OSPF

2010-06-29 13:11:40

UML類圖依賴關(guān)系

2012-05-30 15:03:43

ibmdw

2017-04-27 08:54:54

Python文本分析網(wǎng)絡(luò)

2022-09-30 07:32:39

架構(gòu)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)