路由選擇算法就是路由選擇的方法或策略。1、路由選擇算法分類:按照路由選擇算法能否隨網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)或者通信量自適應(yīng)地進(jìn)行調(diào)整變化進(jìn)行分類,路由選擇算法可以分為靜態(tài)路由選擇算法和動態(tài)路由選擇算法。

動態(tài)路由選擇算法:動態(tài)路由選擇算法就是自適應(yīng)路由選擇算法,是依靠當(dāng)前網(wǎng)絡(luò)的狀態(tài)信息進(jìn)行決策,從而使路由選擇結(jié)果在一定程度上適應(yīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)和通信量得變化。動態(tài)路由選擇算法得特點(diǎn)是能較好的適應(yīng)網(wǎng)絡(luò)狀態(tài)的變化,但是實(shí)現(xiàn)起來較為復(fù)雜,開銷也比較大。動態(tài)路由選擇算法一般采用路由表法,主要包括分布式路由選擇算法和集中式路由選擇算法。分布式路由選擇算法是每一個(gè)節(jié)點(diǎn)通過定期得與相鄰節(jié)點(diǎn)交換路由選擇得狀態(tài)信息來修改各自的路

動態(tài)路由是指路由協(xié)議可以自動根據(jù)實(shí)際情況生成的路由表的方法。動態(tài)路由的主要優(yōu)點(diǎn)是,如果存在到目的站點(diǎn)的多條路徑,運(yùn)行了路由選擇協(xié)議(如RIP或IGRP)之后,而正在進(jìn)行數(shù)據(jù)傳輸?shù)囊粭l路徑發(fā)生了中斷的情況下,路由器可以自動的選擇另外一條路徑傳輸數(shù)據(jù)。這對于建立一個(gè)大型的網(wǎng)絡(luò)是一個(gè)優(yōu)點(diǎn)。大多數(shù)路由選擇協(xié)議可分成兩種基本路由選擇協(xié)議:距離矢量路由選擇協(xié)議(也稱Bellman-Ford協(xié)議),計(jì)算網(wǎng)絡(luò)中鏈路的距離矢量,然后根據(jù)計(jì)算結(jié)果進(jìn)行路由選擇。典型的距離向量路由選擇協(xié)議有IGRP、RIP等。路由器定期向鄰居路由器發(fā)送消息,消息的內(nèi)容就是自己的整個(gè)路由表,如:1)到達(dá)目的網(wǎng)絡(luò)所經(jīng)過的距離、2)到達(dá)目的網(wǎng)絡(luò)的下一跳地址
運(yùn)行距離矢量的路由器會根據(jù)相鄰路由器發(fā)送過來的信息,更改自己的路由表。

2、因特網(wǎng)得路由選擇協(xié)議:(1)自治系統(tǒng)(AS):由于因特網(wǎng)規(guī)模龐大,為了路由選擇的方便和簡化,一般將整個(gè)因特網(wǎng)劃分為許多較小的區(qū)域,稱為自治系統(tǒng)。每個(gè)自治系統(tǒng)內(nèi)部采用得路由選擇協(xié)議可以不同,自治系統(tǒng)根據(jù)自身得情況有權(quán)決定采用哪種路由選擇協(xié)議。(2)因特網(wǎng)的路由選擇協(xié)議得特點(diǎn):因特網(wǎng)的路由選擇協(xié)議得特點(diǎn)是:屬于自適應(yīng)的選擇協(xié)議(即動態(tài)的);是分布式路由選擇協(xié)議;因特網(wǎng)采用分層次的路由選擇協(xié)議,即分自治系統(tǒng)內(nèi)部和自治系統(tǒng)外部路由選擇協(xié)議。(3)因特網(wǎng)得路由選擇協(xié)議分類:內(nèi)部網(wǎng)關(guān)協(xié)議(IGP):在一個(gè)自治系統(tǒng)內(nèi)部使用得路由選擇協(xié)議。具體的協(xié)議有RIP和OSPF等。外部網(wǎng)關(guān)協(xié)議(EGP):兩個(gè)自治系統(tǒng)之間使用得路由選擇協(xié)議。目前使用最多的是BGP(即BGP-4)此處的網(wǎng)關(guān)指的是路由器。

OSPF(OpenShortestPathFirst)是一個(gè)內(nèi)部網(wǎng)關(guān)協(xié)議(InteriorGatewayProtocol,簡稱IGP),用于在單一自治系統(tǒng)(autonomoussystem,AS)內(nèi)決策路由。與RIP相對,OSPF是鏈路狀態(tài)路由協(xié)議,而RIP是距離向量路由協(xié)議。鏈路是路由器接口的另一種說法,因此OSPF也稱為接口狀態(tài)路由協(xié)議。OSPF通過路由器之間通告網(wǎng)絡(luò)接口的狀態(tài)來建立鏈路狀態(tài)數(shù)據(jù)庫,生成最短路徑樹,每個(gè)OSPF路由器使用這些最短路徑構(gòu)造路由內(nèi)部網(wǎng)關(guān)協(xié)議(InteriorGatewayProtocols,IGP)用在一個(gè)域中交換路由選擇信息,如路由選擇信息協(xié)議(RIP)和優(yōu)先開放最短路徑協(xié)議(OSPF)。OSPF是與OSI的IS-IS協(xié)議十分相似的內(nèi)部路由選擇協(xié)議。在區(qū)域的邊界,周邊路由器將一個(gè)域與其它域相連。這些路由器使用外部路由選擇協(xié)議(ExteriorRoutingProto-cols)交換路由選擇。外部網(wǎng)關(guān)協(xié)議([[ExteriorGatewayProtocol,EGP)為位于自治域邊界的兩個(gè)相鄰的周邊路由器提供一種交換消息和信息的方法。對于EGP的替代是周邊網(wǎng)關(guān)協(xié)議(BorderGatewayProtocol,BGP),它被用于提供改進(jìn)性能,如指定路由選擇策略的能力!

路由選擇信息協(xié)議(RIP):RIP使用距離向量算法(DVA)計(jì)算路由選擇路徑。在DVA中,路由選擇的確是基于到一個(gè)目的站中最少路由中繼(hop)數(shù)或到一個(gè)相鄰路由器路徑的費(fèi)用計(jì)算出來的一個(gè)總的費(fèi)用。RIP路由選擇表與其它路由器大約每30秒鐘交換一次,路由器就是基于新的消息來重新生成它們的路由選擇信息表。如果一個(gè)路由器連到低吞吐量的WAN鏈路,那么它在重新生成路由選擇表時(shí)就會落后。另外,交換路由選擇信息表要增加網(wǎng)絡(luò)額外開銷,它會引起許多擁塞,進(jìn)一步推遲路由選擇表的更新。如果一條路由失敗了,重新建立路由選擇表所需的延遲將會推遲一條新的路由盡快地建立!
優(yōu)先開放最短路徑(OSPF):OSPF是一個(gè)鏈路狀態(tài)路由選擇算法,它是由開放系統(tǒng)互連(OSI)中間系統(tǒng)對中間系統(tǒng)(IS-IS)域內(nèi)路由選擇協(xié)議所做的工作派生出來的。鏈路狀態(tài)路由選擇與距離向量路由選擇相比,需要更強(qiáng)的處理能力,但提供更多路由選擇處理控制和更快的變化響應(yīng),Dijkstra算法用于計(jì)算路由是基于分組必須跳躍(hop)過的路由器數(shù)、傳輸線路的速度、交通擁塞延遲和根據(jù)某種度量的路由器費(fèi)用。OSPF路由選擇表只在必要時(shí)更新和僅更新有效(變化)的信息!

外部網(wǎng)關(guān)協(xié)議(EGP):外部網(wǎng)關(guān)協(xié)議(EGP)提供一種方法,為兩個(gè)位于它們各自域邊界的相鄰路由器交換信息和消息。外部網(wǎng)關(guān)協(xié)議還提供一種方法,為路由器相互交換路由選擇信息。每一個(gè)域有一個(gè)或多個(gè)路由器被選作EGP協(xié)議路由器。每一個(gè)EGP使用內(nèi)部網(wǎng)關(guān)協(xié)議和同一域內(nèi)部的網(wǎng)關(guān)交換路由選擇信息,以便它知道局域內(nèi)端系統(tǒng)(主機(jī))的地址。EGP與其它域內(nèi)的EGP相連和交換有關(guān)各自域內(nèi)端系統(tǒng)的路由選擇信息。有了這些信息,網(wǎng)關(guān)就知道發(fā)送信息到域外其它系統(tǒng)的最佳路徑。
EGP的主要功能如下:執(zhí)行相鄰網(wǎng)關(guān)連接過程使兩個(gè)外部網(wǎng)關(guān)相連和決定交換信息。通過發(fā)送一條消息周期性地核實(shí)相鄰的路由器和等待一個(gè)響應(yīng),這將確保一個(gè)外部網(wǎng)關(guān)仍可采用。周期性地交換路由選擇信息。路由器的EGP例行程序能夠輪詢相鄰的路由器以獲得更新的信息。通常要維持兩張表,用內(nèi)部協(xié)議如RIP和OSPF獲得一張內(nèi)部路由表,用EGP獲得一張外部路由表。然而,EGP有下述周邊網(wǎng)關(guān)協(xié)議(BGP)試圖解決的缺點(diǎn)。EGP是在Internet組成單個(gè)主干網(wǎng)時(shí)設(shè)計(jì)的,它對于今天的多主干網(wǎng)不是有效的。路由器是用顯式定義那些路由器能夠連接的靜態(tài)路由選擇表設(shè)置的,這避免環(huán)路和提供安全性,但不支持一個(gè)可擴(kuò)展的網(wǎng)絡(luò)。
域間策略路由選擇協(xié)議:幾個(gè)新的域間路由選擇協(xié)議被推薦在Internet網(wǎng)上使用。隨著Internet網(wǎng)規(guī)模的擴(kuò)大,現(xiàn)行的外部協(xié)議不能提供足夠的擴(kuò)展能力。實(shí)現(xiàn)基于策略路由選擇的新協(xié)議比EGP更具有可擴(kuò)展性(Internet的要求);诓呗月酚蛇x擇給管理員更多的網(wǎng)絡(luò)控制、允許優(yōu)化交通流量和實(shí)現(xiàn)安全特性以及服務(wù)收費(fèi)!
周邊網(wǎng)關(guān)協(xié)議(BGP):周邊網(wǎng)關(guān)協(xié)議(BorderGatewayProtocol,BGP)作為一種中間解決方法提供了一些有限的策略特性,但它沒有解決可擴(kuò)展的需求。路由器屬性如一條路徑的費(fèi)用和安全性也被加入BGP。由于BGP的路由選擇信息交換只傳送增加的部分而不是整個(gè)數(shù)據(jù)庫,所以它所需的帶寬降低了!

域間策略路由選擇(IDPR):域間策略路由選擇(InterdomainPolicyRouting,IDPR)是一個(gè)在域間實(shí)現(xiàn)源路由選擇和基于策略的路由選擇的鏈路狀態(tài)路由選擇協(xié)議。源路由選擇由于分組本身保持路徑信息而提供一些有用的增強(qiáng)特性。這對于初始發(fā)現(xiàn)路徑是很必要的,但后繼的分組只是簡單地把路徑放入自己的頭部!
OSPF協(xié)議與傳統(tǒng)路由協(xié)議RIP協(xié)議的比較:RIP協(xié)議是一種傳統(tǒng)的路由協(xié)議,適合比較小型的網(wǎng)絡(luò),但是當(dāng)前Internet網(wǎng)絡(luò)的迅速發(fā)展和急劇膨脹使RIP協(xié)議無法適應(yīng)今天的網(wǎng)絡(luò)。OSPF協(xié)議則是在Internet網(wǎng)絡(luò)急劇膨脹的時(shí)候制定出來的,它克服了RIP協(xié)議的許多缺陷。1、RIP協(xié)議一條路由有15跳(網(wǎng)關(guān)或路由器)的限制,如果一個(gè)RIP網(wǎng)絡(luò)路由跨越超過15跳(路由器),則它認(rèn)為網(wǎng)絡(luò)不可到達(dá),而OSPF對跨越路由器的個(gè)數(shù)沒有限制。2、OSPF協(xié)議支持可變長度子網(wǎng)掩碼(VLSM),RIP則不支持,這使得RIP協(xié)議對當(dāng)前IP地址的缺乏和可變長度子網(wǎng)掩碼的靈活性缺少支持。3、RIP協(xié)議不是針對網(wǎng)絡(luò)的實(shí)際情況而是定期地廣播路由表,這對網(wǎng)絡(luò)的帶寬資源是個(gè)極大的浪費(fèi),特別對大型的廣域網(wǎng)。OSPF協(xié)議的路由廣播更新只發(fā)生在路由狀態(tài)變化的時(shí)候,采用IP多路廣播來發(fā)送鏈路狀態(tài)更新信息,這樣對帶寬是個(gè)節(jié)約。4、RIP網(wǎng)絡(luò)是一個(gè)平面網(wǎng)絡(luò),對網(wǎng)絡(luò)沒有分層。OSPF在網(wǎng)絡(luò)中建立起層次概念,在自治域中可以劃分網(wǎng)絡(luò)域,使路由的廣播限制在一定的范圍內(nèi),避免鏈路中繼資源的浪費(fèi)。5、OSPF在路由廣播時(shí)采用了授權(quán)機(jī)制,保證了網(wǎng)絡(luò)安全。上述兩者的差異顯示了OSPF協(xié)議后來居上的特點(diǎn),其先進(jìn)性和復(fù)雜性使它適應(yīng)了今天日趨龐大的Internet網(wǎng),并成為主要的互聯(lián)網(wǎng)路由協(xié)議。


RIP協(xié)議的實(shí)現(xiàn):RIP根據(jù)V-D算法的特點(diǎn),將協(xié)議的參加者分為主動機(jī)和被動機(jī)兩種。主動機(jī)主動向外廣播路由刷新報(bào)文,被動機(jī)被動地接收路由刷新報(bào)文。一般情況下,主機(jī)作為被動機(jī),路由器則既是主動機(jī)又是被動機(jī),即在向外廣播路由刷新報(bào)文的同時(shí),接受來自其它主動機(jī)的V-D報(bào)文,并進(jìn)行路由刷新。RIP規(guī)定,路由器每30秒向外廣播一個(gè)V-D報(bào)文,報(bào)文信息來自本地路由表。RIP的V-D報(bào)文中,其距離以驛站計(jì):與信宿網(wǎng)絡(luò)直接相連的路由器規(guī)定為一個(gè)驛站,相隔一個(gè)路由器則為兩個(gè)驛站……以此類推。一條路由的距離為該路由(從信源機(jī)到信宿機(jī))上的路由器數(shù)。為防止尋徑環(huán)長期存在,RIP規(guī)定,長度為16的路由為無限長路由,即不存在的路由。所以一條有效的路由長度不得超過15。正是這一規(guī)定限制了RIP的使用范圍,使RIP局限于中小型的網(wǎng)絡(luò)網(wǎng)點(diǎn)中。為了保證路由的及時(shí)有效性,RIP采用觸發(fā)刷新技術(shù)和水平分割法。當(dāng)本地路由表發(fā)生修改時(shí),觸發(fā)廣播路由刷新報(bào)文,以迅速達(dá)到最新路由的廣播和全局路由的有效。水平分割法是指當(dāng)路由器從某個(gè)網(wǎng)絡(luò)接口發(fā)送RIP路由刷新報(bào)文時(shí),其中不包含從該接口獲取的路由信息。這是由于從某網(wǎng)絡(luò)接口獲取的路由信息對于該接口來說是無用信息,同時(shí)也解決了兩路由器間的慢收斂問題。

RIP啟動和運(yùn)行的整個(gè)過程如下所描述:某路由器剛啟動RIP時(shí),以廣播的形式向相鄰路由器發(fā)送請求報(bào)文,相鄰路由器的RIP收到請求報(bào)文后,響應(yīng)請求,回發(fā)包含本地路由表信息的響應(yīng)報(bào)文。RIP收到響應(yīng)報(bào)文后,修改本地路由表的信息,同時(shí)以觸發(fā)修改的形式向相鄰路由器廣播本地路由修改信息。相鄰路由器收到觸發(fā)修改報(bào)文后,又向其各自的相鄰路由器發(fā)送觸發(fā)修改報(bào)文。在一連串的觸發(fā)修改廣播后,各路由器的路由都得到修改并保持最新信息。同時(shí),RIP每30秒向相鄰路由器廣播本地路由表,各相鄰路由器的RIP在收到路由報(bào)文后,對本地路由進(jìn)行的維護(hù),在眾多路由中選擇一條最佳路由,并向各自的相鄰網(wǎng)廣播路由修改信息,使路由達(dá)到全局的有效。同時(shí)RIP采取一種超時(shí)機(jī)制對過時(shí)的路由進(jìn)行超時(shí)處理,以保證路由的實(shí)時(shí)性和有效性。RIP作為內(nèi)部路由器協(xié)議,正是通過這種報(bào)文交換的方式,提供路由器了解本自治系統(tǒng)內(nèi)部個(gè)網(wǎng)絡(luò)路由信息的機(jī)制。
RIP-2支持版本1和版本2兩種版本的報(bào)文格式。在版本2中,RIP還提供了對子網(wǎng)的支持和提供認(rèn)證報(bào)文形式。版本2的報(bào)文提供子網(wǎng)掩碼域,來提供對子網(wǎng)的支持;另外,當(dāng)報(bào)文中的路由項(xiàng)地址域值為0xFFFF時(shí),默認(rèn)該路由項(xiàng)的剩余部分為認(rèn)證。RIP2對撥號網(wǎng)的支持則是參考需求RIP和觸發(fā)RIP的形式經(jīng)修改而加入的新功能。這時(shí),我們只是要求在撥號網(wǎng)撥通之后對路由進(jìn)行30秒一次的廣播,而在沒撥通時(shí)并不作如是要求,這是根據(jù)具體情況變通的結(jié)果。

RIP的限制:雖然RIP有很長的歷史,但它還是有自身的限制。它非常適合于為早期的網(wǎng)絡(luò)互聯(lián)計(jì)算路由;然而,技術(shù)進(jìn)步已極大地改變了互聯(lián)網(wǎng)絡(luò)。建造和使用的方式。因此,RIP會很快被今天的互聯(lián)網(wǎng)絡(luò)所淘汰。RIP的一些最大限制是: