OSPF是由IETF的IGP工作組為IP網(wǎng)絡(luò)設(shè)計(jì)的路由協(xié)議 , 此工作組于1988年設(shè)計(jì)了基于最短路優(yōu)先(SPF)算法的IGP用于Internet 。同IGRP一樣 , OSPF的產(chǎn)生是因?yàn)?0年代中期RIP協(xié)議已經(jīng)不能用于大型異構(gòu)的Internet結(jié)構(gòu)了 。下面我們談一下OSPF的路由運(yùn)行環(huán)境 , 路由算法和通常的協(xié)議組件 。
OSPF是在包括Bolt , Beranek的努力下完成的 , 它使用了Newman的最短路優(yōu)先(SPF)算法進(jìn)行工作 。它有兩個(gè)基本特點(diǎn) , 首先它是開放的 , 第二個(gè)非凡就是它是基于SPF算法進(jìn)行的 , 也就是我們?cè)趫D論所說(shuō)的Dijkstra算法 。OSPF是內(nèi)部使用連接狀態(tài)路由協(xié)議 , 協(xié)議通過(guò)向同層結(jié)點(diǎn)發(fā)送連接狀態(tài)信息(LSA)工作 , 當(dāng)路由器接收到這些信息時(shí) , 它就可以根據(jù)SPF算法計(jì)算出到每個(gè)結(jié)點(diǎn)的最短路了 。它的工作方式與我們熟悉的RIP和IGRP協(xié)議不同 , SPF只使用發(fā)送當(dāng)前結(jié)點(diǎn)到相鄰結(jié)點(diǎn)的路由信息 , 而RIP和IGRP需要結(jié)點(diǎn)把自己結(jié)點(diǎn)保留的由路表或路由表的一部分全部到相鄰結(jié)點(diǎn) , 相鄰結(jié)點(diǎn)根據(jù)這些信息更新自己的路由表 , 前者發(fā)送的信息量少 , 而后者發(fā)送的信息量多 。
與我們熟悉的RIP不同 , OSPF的路由信息在一個(gè)樹狀結(jié)構(gòu)內(nèi)傳送 , 這個(gè)樹狀結(jié)構(gòu)內(nèi)最大的結(jié)構(gòu)就是一個(gè)自治域(AS) , 它們是使用同一路由策略的一組網(wǎng)絡(luò) 。OSPF是一個(gè)內(nèi)部路由協(xié)議 , 但這并不是說(shuō)它不能向其它AS向送路由信息 , 我們可以知道 , OSPF的方法就是尋找一個(gè)AS內(nèi)的最短路 , 它建立在一個(gè)基本的假設(shè)之上 , 也就是假如在每個(gè)小范圍內(nèi)都最短那整個(gè)路徑一定最短 。一個(gè)AS可以被分為不同的域 , 這不同的域包括同構(gòu)的網(wǎng)絡(luò)和與之相關(guān)的主機(jī) , 有多個(gè)接口的路由器可以屬于不同的域 , 它些非凡的路由器稱為域邊界路由器 , 它保存每個(gè)域的拓樸結(jié)構(gòu)數(shù)據(jù)庫(kù) 。拓樸結(jié)構(gòu)數(shù)據(jù)庫(kù)內(nèi)保存了與這個(gè)路由器相連的網(wǎng)絡(luò)的拓樸結(jié)構(gòu) , 同時(shí)它也保存了同一域中所有路由器發(fā)送來(lái)的LSA信息 , 我們已經(jīng)知道了 , 在同一域中的路由器有相同的路由信息 , 因此它們有相同的拓樸結(jié)構(gòu)數(shù)據(jù)庫(kù) 。我們?cè)陂喿x關(guān)于OSPF的文檔時(shí) , 經(jīng)常會(huì)看到域這個(gè)名詞 , 它是描述擁有相同拓樸結(jié)構(gòu)數(shù)據(jù)庫(kù)的路由器的那部分網(wǎng)絡(luò) , 它有時(shí)和AS相互混用 , 希望注重 。對(duì)于域外的實(shí)體而言這個(gè)域的拓樸結(jié)構(gòu)對(duì)它們來(lái)說(shuō)是可見的 , OSPF使用將AS分塊的方法減少網(wǎng)絡(luò)通信量 。既然分了一個(gè)域的概念 , 那路由方法也要分為兩種了 , 一種是用于目的結(jié)點(diǎn)和源結(jié)點(diǎn)在同一個(gè)域內(nèi)和另一種是用于目的結(jié)點(diǎn)和源結(jié)點(diǎn)在不同的域內(nèi) 。
OSPF主干負(fù)責(zé)在域之間傳送路由信息 , 它包括所有的邊界路由器和未完全包括在任何單獨(dú)一個(gè)域中的網(wǎng)絡(luò)結(jié)構(gòu)以及與此網(wǎng)絡(luò)結(jié)構(gòu)相關(guān)的設(shè)備 。下圖就顯示了不同情況 , 體現(xiàn)了由路由器連接的不同域 。
在上圖中 , 路由器4 , 5 , 6 , 10 , 11和12構(gòu)成了主干 , 假如在域3中的主機(jī)H1希望發(fā)送數(shù)據(jù)到域2中的主機(jī)H2 , 那它就必須把包發(fā)到路由器13 , 由它將信息發(fā)送到路由器12 , 再由12發(fā)送到路由器11 , 由路由器11將路由信息發(fā)送到域邊界路由器10 , 再由兩個(gè)域內(nèi)路由器9和7將信息發(fā)送到主機(jī)H2 。剛才我們提到了主干 , 主干自己也是一個(gè)OSPF域 , 此域內(nèi)的路由器使用相同的路由策略 , 此域的結(jié)構(gòu)對(duì)所有域內(nèi)路由器來(lái)說(shuō)是可見的 。大家要注重到 , 主干域的結(jié)構(gòu)是不同構(gòu)的 , 因此主干域的相互連接要使用虛擬連接方式進(jìn)行 , 也就是說(shuō) , 兩個(gè)主干域內(nèi)的路由器必須通過(guò)一個(gè)非主干域進(jìn)行通信 , 而這種通信又是對(duì)這兩個(gè)主干域路由器透明的 。
說(shuō)到現(xiàn)在 , 我們有些人仍然對(duì)SPF算法如墜云霧 , 下面我們就來(lái)簡(jiǎn)單地說(shuō)一下這個(gè)算法 , 假如不理解這個(gè)算法就無(wú)法理解OSPF的工作過(guò)程 。當(dāng)一個(gè)SPF路由器啟動(dòng)時(shí) , 它初始化它的路由信息結(jié)構(gòu)表 , 然后等待下層接口 , 當(dāng)它確定下層接口可用時(shí) , 它就使用OSPF的Hello協(xié)議向相鄰的路由器發(fā)送一個(gè)問(wèn)候包 , 然后接收這些路由器發(fā)回的信息 。這個(gè)問(wèn)候包不但可以幫助路由器在初始工作時(shí)了解相鄰結(jié)構(gòu) , 而且可以在運(yùn)行中了解相鄰路由器的工作情況 , 假如相鄰的路由器關(guān)機(jī)了 , 那就不會(huì)從它那里收到回應(yīng)信息了 。假如網(wǎng)絡(luò)支持多個(gè)路由器 , Hello協(xié)議可以幫助選擇一個(gè)主控路由器和一個(gè)備份路由器 , 由主控路由器向整個(gè)網(wǎng)絡(luò)發(fā)送LSA 。
推薦閱讀
- 二 OSPF路由協(xié)議概念及工作原理
- 一級(jí)造價(jià)工程師的最新報(bào)考條件
- 酒駕撞死人最高判刑多少年
- 元寶饅頭怎么做
- 阻止OSPF LSA擴(kuò)散
- 最美證件照軟件制作寸照教程
- 怎么看房子朝向最簡(jiǎn)單方法
- 如何區(qū)分玉米和高粱
- 最強(qiáng)蝸牛領(lǐng)導(dǎo)力怎么提升
- A1200以及A1200R最新版本的介紹
