OSPF基础理解
OSPF路由器之間交換鏈路狀態(tài)公告(LSA)信息。OSPF的LSA中包含連接的接口、使用的Metric及其他變量信息。?LSAs 被路由器接收用于維護(hù)它們的 RIB(路由表)。?OSPF路由器收集鏈接狀態(tài)信息并使用SPF算法來(lái)計(jì)算到各節(jié)點(diǎn)的最短路徑。LSA也有幾種不同功能的報(bào)文,在這里簡(jiǎn)單地介紹一下:??
- LSA TYPE 1:router LSA由每臺(tái)路由器為所屬的區(qū)域產(chǎn)生的LSA,描述本區(qū)域路由器鏈路到該區(qū)域的狀態(tài)和代價(jià)。一個(gè)邊界路由器可能產(chǎn)生多個(gè)LSA TYPE1。?
- LSA TYPE 2:network LSA由DR產(chǎn)生,含有連接某個(gè)區(qū)域路由器的所有鏈路狀態(tài)和代價(jià)信息。只有DR可以監(jiān)測(cè)該信息。?
- LSA TYPE 3:summary LSA由ABR產(chǎn)生,含有ABR與本地內(nèi)部路由器連接信息,可以描述本區(qū)域到主干區(qū)域的鏈路信息。它通常匯總?cè)笔÷酚啥皇莻魉蛥R總的OSPF信息給其他網(wǎng)絡(luò)。?
- LSA TYPE 4:Summary LSA由ABR產(chǎn)生,由主干區(qū)域發(fā)送到其他ABR,?含有ASBR的鏈路信息,與LSA TYPE 3的區(qū)別在于TYPE 4描述到OSPF網(wǎng)絡(luò)的外部路由,而TYPE 3則描述區(qū)域內(nèi)路由。?
- LSA TYPE 5:AS External LSA由ASBR產(chǎn)生,含有關(guān)于自治域外的鏈路信息。除了存根區(qū)域和完全存根區(qū)域,LSA TYPE 5在整個(gè)網(wǎng)絡(luò)中發(fā)送。?
- LSA TYPE 6:multicast?OSPF LSA,MOSF可以讓路由器利用鏈路狀態(tài)數(shù)據(jù)庫(kù)的信息構(gòu)造用于多播報(bào)文的多播發(fā)布樹(shù)。?
- LSA TYPE 7:Not-So-Stubby LSA由ASBR產(chǎn)生的關(guān)于NSSA的信息。LSA TYPE 7可以轉(zhuǎn)換為L(zhǎng)SA TYPE 5。
?
OSPF的五種包:
1、Hello包 ——只在狀態(tài)init、狀態(tài)exstart發(fā)送
功能:用于建立和維持鄰居關(guān)系 (每10s相互發(fā)送Hello包,若40s內(nèi)沒(méi)有發(fā)送,則鄰居關(guān)系刪除)
重要字段:路由器的router-id
? ? ? ? ? ? ? ? ? 路由器接口的area-id (必須一致)
? ? ? ? ? ? ? ? ? 路由器接口的IP地址和掩碼
? ? ? ? ? ? ? ? ? 路由器接口的認(rèn)證,hello時(shí)間間隔,死亡時(shí)間間隔(必須一致)
? ? ? ? ? ? ? ? ? neighbor字段
? ? ? ? ? ? ? ? ? STUB標(biāo)識(shí)(末節(jié)標(biāo)識(shí))(必須一致)
-
2、DBD包(database description)——只在狀態(tài)exchange發(fā)送
功能:(鏈路狀態(tài)數(shù)據(jù)庫(kù)描述)報(bào)文,描述本地路由器保存的LSDB(鏈路狀態(tài)數(shù)據(jù)庫(kù)); 用于對(duì)OSPF的網(wǎng)絡(luò)拓?fù)溥M(jìn)行描述
3、LSR包(Link State Request)——只在狀態(tài)loading發(fā)送
功能:用于請(qǐng)求對(duì)方的路由信息,向鄰居請(qǐng)求本地沒(méi)有的LSA;
4、LSU包(Link State Update)——只在狀態(tài)loading發(fā)送
功能:用于存儲(chǔ)和傳遞路由信息?向鄰居發(fā)送其請(qǐng)求或更新的LSA;
5、LSACK包(Link State Acknowledgment)——只在狀態(tài)loading發(fā)送
功能:用于對(duì)LSU等包進(jìn)行可靠確認(rèn),收到鄰居發(fā)送的LSA后發(fā)送的確認(rèn)報(bào)文。
?OSPF建立鄰居過(guò)程的7個(gè)狀態(tài)機(jī):
down——>init——>two-way——>exstart——>exchange——>loading——>full
1.down?????? //雙方還沒(méi)有進(jìn)行任何交互
2.init????????? //此狀態(tài)只交互hello包,沒(méi)有同步任何路由信息
3.two-way? //達(dá)到狀態(tài)two-way,建立鄰居關(guān)系(形成鄰居關(guān)系后要進(jìn)行DR/BDR選舉)
4.exstart??? // 進(jìn)行主從關(guān)系選舉,為了確定誰(shuí)在exchange狀態(tài)先發(fā)送DBD包
5.exchange //通過(guò)交互DBD包,建立各自的拓?fù)浔?/span>
6.loading? //請(qǐng)求對(duì)方路由信息,此狀態(tài)交互LSR包、LSU包、LSACK包
7.full?????????? //建立鄰接關(guān)系? 達(dá)到LSDB的同步
總結(jié)
- 上一篇: 新一代图片编解码技术在淘宝的应用及落地
- 下一篇: Mybatis generator自动生