售前電話
135-3656-7657
售前電話 : 135-3656-7657
根據(jù)上面的討論,我們知道IP網(wǎng)絡(luò)選路采用的是路由表驅(qū)動的下一跳路由方法。路由器每收到一個數(shù)據(jù)報,就根據(jù)目的IP地址查詢路由表,找出匹配網(wǎng)絡(luò)號及相應(yīng)的下一跳路由器,完成數(shù)據(jù)轉(zhuǎn)發(fā)。如果IP報指定至目的主機(jī)的路由,則按此路由轉(zhuǎn)發(fā);如果找不到匹配網(wǎng)絡(luò),則發(fā)往默認(rèn)路由器;如果已到達(dá)本網(wǎng)絡(luò),則轉(zhuǎn)換成物理地址、重新封裝數(shù)據(jù)報后將其發(fā)給主機(jī)。
本節(jié)進(jìn)一步討論路由器中的路由表是如何形成和更新的,也就是路由算法問題。
1.基本原理
雖然路由表只給出至給定目的地的下一跳地址,但是路由器知道這一定是通往該目的地的最佳路由,最佳的含義根據(jù)需要可以是時延、可靠度或吞吐晝等,在理論上都可以對應(yīng)為一個成本函數(shù),最佳路由就是最低成本路由。另外,當(dāng)網(wǎng)絡(luò)局部出現(xiàn)故障或擁塞時,路由表應(yīng)能動態(tài)調(diào)整,以繞過這些出問題的區(qū)域。
為此必須解決兩個問題:
路由器之間如何交換網(wǎng)絡(luò)的拓?fù)浜蜖顟B(tài)信息,使每個路由器都能掌握全網(wǎng)的狀態(tài),這就是路由協(xié)議問題。
路由器如何根據(jù)所掌握的網(wǎng)絡(luò)狀態(tài),計算至各目的地點(diǎn)的最佳路由,這就是路由算法問題。
為了降低問題的復(fù)雜性,從路由的角度可以將一個互聯(lián)網(wǎng)視為由許多個獨(dú)立的子系統(tǒng)組成。每個子系統(tǒng)歸屬一個組織運(yùn)行,內(nèi)部的路由器執(zhí)行同樣的路由算法,具有相同的路由表,這樣的子系統(tǒng)稱作自治系統(tǒng)(AS-AutonomousSystem)。例如3個公司的內(nèi)部網(wǎng)絡(luò)X、Y、Z,都連在Internet上,各自使用不同的路由算法,則就是3個AS。在自治系統(tǒng)內(nèi)部執(zhí)行的、用于內(nèi)部路由器之間交換網(wǎng)絡(luò)狀態(tài)信息的路由協(xié)議稱之為內(nèi)部網(wǎng)關(guān)協(xié)議(!GP-InteriorGatewayPratocol)。目前應(yīng)用最廣泛的IGP就是開放式最短路經(jīng)優(yōu)先(OSPF-OpenShortestPathFirst)協(xié)議,在1990年成為IEfF標(biāo)準(zhǔn)。
在不同自治系統(tǒng)之間也必須交換信息,以便路由器確定至系統(tǒng)外網(wǎng)絡(luò)的路由。每個系統(tǒng)是由邊界路由器作為代表和相鄰系統(tǒng)交換路由信息的,所使用的協(xié)議就稱為外部網(wǎng)關(guān)協(xié)議(EGP-ExteriorGate-wayProtocol)。典型的EGP就是邊界網(wǎng)關(guān)協(xié)議(BGP-BorderGateway Protocol)。
上述概念可用圖2.27予以說明。R尸凡位于自治系統(tǒng)AS1中,它們之間執(zhí)行OSPF協(xié)議,由此每個路由器可以確定至AS1中所有網(wǎng)絡(luò)的最佳路由。R5-fle位于ASi中,也執(zhí)行OSPF協(xié)議。R1和R5為邊界路由器,分別代表AS1和氏為,它們之間執(zhí)行BGP,相互告之經(jīng)過自己能到達(dá)哪些網(wǎng)絡(luò),R1和R5再將此信息轉(zhuǎn)告本系統(tǒng)內(nèi)部的路由器。如果一個數(shù)據(jù)報要從一個自治系統(tǒng)的一臺主機(jī)發(fā)往另一個自治系統(tǒng)的一臺主機(jī),第一個系統(tǒng)的路由器只需要決定下一跳自治系統(tǒng),將其轉(zhuǎn)發(fā)給對應(yīng)的邊界路由器。如此接力傳送至目的自治系統(tǒng)后,該系統(tǒng)的路由器就可根據(jù)路由表將數(shù)據(jù)報送達(dá)目的網(wǎng)絡(luò)。相對來說,EGP傳遞的信息較IGP要少,且較簡單。
2.OSPF協(xié)議
OSPF是一種鏈路狀態(tài)協(xié)議。每個路由器負(fù)責(zé)監(jiān)視和它直接相連的發(fā)送鏈路的狀態(tài),包括鏈路的通達(dá)性,對端節(jié)點(diǎn)和鏈路成本(時延、距離等),當(dāng)鏈路狀態(tài)發(fā)生變化時,用OSPF更新消息通過洪泛方法及時將此信息告之自治系統(tǒng)中所有的路由器。執(zhí)行BGP協(xié)議的邊界路由器還要負(fù)責(zé)維護(hù)至外部系統(tǒng)中網(wǎng)絡(luò)的路由狀態(tài)信息,用OSPF消息通告狀態(tài)變化信息。
每個路由器根據(jù)上述信息,將自治系統(tǒng)抽象為一個有向圖。有向圖的節(jié)點(diǎn)就是路由器和網(wǎng)絡(luò),包括邊界路由器可通達(dá)的外部網(wǎng)絡(luò)。有向圖的邊就是連接兩個路由器或路由器和連接網(wǎng)絡(luò)的鏈路。每條邊賦予一定的成本,鏈路雙向成本一般不相同,且規(guī)定從網(wǎng)絡(luò)到路由器的邊的成本為零。圖2.28為一個自治系統(tǒng)的示例:
其中,H1為和路由器直接相連的主機(jī),也作為有向圖節(jié)點(diǎn)處理;R5、凡為邊界路由器,分別可通達(dá)外部網(wǎng)絡(luò)N12-N14及N12、N15。圖2.'29為該自治系統(tǒng)對應(yīng)的有向圖,圖中標(biāo)出各邊的成本。根據(jù)此圖,各路由器就可利用圖論中的最短路徑算法計算出至各網(wǎng)絡(luò)和各邊界路由器的最小成本路由。表2.2給出從路由器6轉(zhuǎn)發(fā)至各目的網(wǎng)絡(luò)的數(shù)據(jù)報的最優(yōu)路由及下一跳路由器。