路由選擇算法概述
路由選擇算法就是路由選擇的方法或策略。1、路由選擇算法分類:按照路由選擇算法能否隨網路的拓撲結構或者通信量自適應地進行調整變化進行分類,路由選擇算法可以分為靜態路由選擇算法和動態路由選擇算法。
![路由技術](/img/d/177/nBnauM3X4QzN2AzM0MTO3gTNxITM2gTM0YTMwADMwAzMxAzLzkzLyczLt92YucmbvRWdo5Cd0FmLyE2LvoDc0RHa.jpg)
動態路由選擇算法:動態路由選擇算法就是自適應路由選擇算法,是依靠當前網路的狀態信息進行決策,從而使路由選擇結果在一定程度上適應網路拓撲結構和通信量得變化。動態路由選擇算法得特點是能較好的適應網路狀態的變化,但是實現起來較為複雜,開銷也比較大。動態路由選擇算法一般採用路由表法,主要包括分散式路由選擇算法和集中式路由選擇算法。分散式路由選擇算法是每一個節點通過定期得與相鄰節點交換路由選擇得狀態信息來修改各自的路
![路由技術](/img/4/f0b/nBnauM3XzIjNygTM3ADM4YTNxITM2gTM0YTMwADMwAzMxAzLwAzL3AzLt92YucmbvRWdo5Cd0FmL0E2LvoDc0RHa.jpg)
動態路由是指路由協定可以自動根據實際情況生成的路由表的方法。動態路由的主要優點是,如果存在到目的站點的多條路徑,運行了路由選擇協定(如RIP或IGRP)之後,而正在進行數據傳輸的一條路徑發生了中斷的情況下,路由器可以自動的選擇另外一條路徑傳輸數據。這對於建立一個大型的網路是一個優點。大多數路由選擇協定可分成兩種基本路由選擇協定:距離矢量路由選擇協定(也稱Bellman-Ford協定),計算網路中鏈路的距離矢量,然後根據計算結果進行路由選擇。典型的距離向量路由選擇協定有IGRP、RIP等。路由器定期向鄰居路由器傳送訊息,訊息的內容就是自己的整個路由表,如:1)到達目的網路所經過的距離、2)到達目的網路的下一跳地址
運行距離矢量的路由器會根據相鄰路由器傳送過來的信息,更改自己的路由表。
![路由技術](/img/d/56e/nBnauM3X3YDN4IjN1MTO3gTNxITM2gTM0YTMwADMwAzMxAzLzkzL4IzLt92YucmbvRWdo5Cd0FmLzE2LvoDc0RHa.jpg)
2、網際網路得路由選擇協定:(1)自治系統(AS):由於網際網路規模龐大,為了路由選擇的方便和簡化,一般將整個網際網路劃分為許多較小的區域,稱為自治系統。每個自治系統內部採用得路由選擇協定可以不同,自治系統根據自身得情況有權決定採用哪種路由選擇協定。(2)網際網路的路由選擇協定得特點:網際網路的路由選擇協定得特點是:屬於自適應的選擇協定(即動態的);是分散式路由選擇協定;網際網路採用分層次的路由選擇協定,即分自治系統內部和自治系統外部路由選擇協定。(3)網際網路得路由選擇協定分類:內部網關協定(IGP):在一個自治系統內部使用得路由選擇協定。具體的協定有RIP和OSPF等。外部網關協定(EGP):兩個自治系統之間使用得路由選擇協定。目前使用最多的是BGP(即BGP-4)此處的網關指的是路由器。
路由協定
![路由技術](/img/8/57d/nBnauM3X2UDN2AjN0YTO3gTNxITM2gTM0YTMwADMwAzMxAzL2kzL4AzLt92YucmbvRWdo5Cd0FmL0E2LvoDc0RHa.jpg)
OSPF(OpenShortestPathFirst)是一個內部網關協定(InteriorGatewayProtocol,簡稱IGP),用於在單一自治系統(autonomoussystem,AS)內決策路由。與RIP相對,OSPF是鏈路狀態路由協定,而RIP是距離向量路由協定。鏈路是路由器接口的另一種說法,因此OSPF也稱為接口狀態路由協定。OSPF通過路由器之間通告網路接口的狀態來建立鏈路狀態資料庫,生成最短路徑樹,每個OSPF路由器使用這些最短路徑構造路由內部網關協定(InteriorGatewayProtocols,IGP)用在一個域中交換路由選擇信息,如路由選擇信息協定(RIP)和優先開放最短路徑協定(OSPF)。OSPF是與OSI的IS-IS協定十分相似的內部路由選擇協定。在區域的邊界,周邊路由器將一個域與其它域相連。這些路由器使用外部路由選擇協定(ExteriorRoutingProto-cols)交換路由選擇。外部網關協定([[ExteriorGatewayProtocol,EGP)為位於自治域邊界的兩個相鄰的周邊路由器提供一種交換訊息和信息的方法。對於EGP的替代是周邊網關協定(BorderGatewayProtocol,BGP),它被用於提供改進性能,如指定路由選擇策略的能力。
![路由技術](/img/8/1c0/nBnauM3XwEjM1gDM2YTO3gTNxITM2gTM0YTMwADMwAzMxAzL2kzLyYzLt92YucmbvRWdo5Cd0FmLyE2LvoDc0RHa.jpg)
路由選擇信息協定(RIP):RIP使用距離向量算法(DVA)計算路由選擇路徑。在DVA中,路由選擇的確是基於到一個目的站中最少路由中繼(hop)數或到一個相鄰路由器路徑的費用計算出來的一個總的費用。RIP路由選擇表與其它路由器大約每30秒鐘交換一次,路由器就是基於新的訊息來重新生成它們的路由選擇信息表。如果一個路由器連到低吞吐量的WAN鏈路,那么它在重新生成路由選擇表時就會落後。另外,交換路由選擇信息表要增加網路額外開銷,它會引起許多擁塞,進一步推遲路由選擇表的更新。如果一條路由失敗了,重新建立路由選擇表所需的延遲將會推遲一條新的路由儘快地建立。
優先開放最短路徑(OSPF):OSPF是一個鏈路狀態路由選擇算法,它是由開放系統互連(OSI)中間系統對中間系統(IS-IS)域內路由選擇協定所做的工作派生出來的。鏈路狀態路由選擇與距離向量路由選擇相比,需要更強的處理能力,但提供更多路由選擇處理控制和更快的變化回響,Dijkstra算法用於計算路由是基於分組必須跳躍(hop)過的路由器數、傳輸線路的速度、交通擁塞延遲和根據某種度量的路由器費用。OSPF路由選擇表只在必要時更新和僅更新有效(變化)的信息。
![路由技術](/img/8/72b/nBnauM3X3MDM4cTM5YTO3gTNxITM2gTM0YTMwADMwAzMxAzL2kzL4YzLt92YucmbvRWdo5Cd0FmL0E2LvoDc0RHa.jpg)
外部網關協定(EGP):外部網關協定(EGP)提供一種方法,為兩個位於它們各自域邊界的相鄰路由器交換信息和訊息。外部網關協定還提供一種方法,為路由器相互交換路由選擇信息。每一個域有一個或多個路由器被選作EGP協定路由器。每一個EGP使用內部網關協定和同一域內部的網關交換路由選擇信息,以便它知道局域內端系統(主機)的地址。EGP與其它域內的EGP相連和交換有關各自域內端系統的路由選擇信息。有了這些信息,網關就知道傳送信息到域外其它系統的最佳路徑。
EGP的主要功能如下:執行相鄰網關連線過程使兩個外部網關相連和決定交換信息。通過傳送一條訊息周期性地核實相鄰的路由器和等待一個回響,這將確保一個外部網關仍可採用。周期性地交換路由選擇信息。路由器的EGP例行程式能夠輪詢相鄰的路由器以獲得更新的信息。通常要維持兩張表,用內部協定如RIP和OSPF獲得一張內部路由表,用EGP獲得一張外部路由表。然而,EGP有下述周邊網關協定(BGP)試圖解決的缺點。EGP是在Internet組成單個主幹網時設計的,它對於今天的多主幹網不是有效的。路由器是用顯式定義那些路由器能夠連線的靜態路由選擇表設定的,這避免環路和提供安全性,但不支持一個可擴展的網路。
域間策略路由選擇協定:幾個新的域間路由選擇協定被推薦在Internet網上使用。隨著Internet網規模的擴大,現行的外部協定不能提供足夠的擴展能力。實現基於策略路由選擇的新協定比EGP更具有可擴展性(Internet的要求)。基於策略路由選擇給管理員更多的網路控制、允許最佳化交通流量和實現安全特性以及服務收費。
周邊網關協定(BGP):周邊網關協定(BorderGatewayProtocol,BGP)作為一種中間解決方法提供了一些有限的策略特性,但它沒有解決可擴展的需求。路由器屬性如一條路徑的費用和安全性也被加入BGP。由於BGP的路由選擇信息交換隻傳送增加的部分而不是整個資料庫,所以它所需的頻寬降低了。
![路由技術](/img/8/409/nBnauM3XwgTM2AjMxcTO3gTNxITM2gTM0YTMwADMwAzMxAzL3kzL2IzLt92YucmbvRWdo5Cd0FmLxE2LvoDc0RHa.jpg)
域間策略路由選擇(IDPR):域間策略路由選擇(InterdomainPolicyRouting,IDPR)是一個在域間實現源路由選擇和基於策略的路由選擇的鏈路狀態路由選擇協定。源路由選擇由於分組本身保持路徑信息而提供一些有用的增強特性。這對於初始發現路徑是很必要的,但後繼的分組只是簡單地把路徑放入自己的頭部。
OSPF協定與傳統路由協定RIP協定的比較:RIP協定是一種傳統的路由協定,適合比較小型的網路,但是當前Internet網路的迅速發展和急劇膨脹使RIP協定無法適應今天的網路。OSPF協定則是在Internet網路急劇膨脹的時候制定出來的,它克服了RIP協定的許多缺陷。1、RIP協定一條路由有15跳(網關或路由器)的限制,如果一個RIP網路路由跨越超過15跳(路由器),則它認為網路不可到達,而OSPF對跨越路由器的個數沒有限制。2、OSPF協定支持可變長度子網掩碼(VLSM),RIP則不支持,這使得RIP協定對當前IP位址的缺乏和可變長度子網掩碼的靈活性缺少支持。3、RIP協定不是針對網路的實際情況而是定期地廣播路由表,這對網路的頻寬資源是個極大的浪費,特別對大型的廣域網。OSPF協定的路由廣播更新只發生在路由狀態變化的時候,採用IP多路廣播來傳送鏈路狀態更新信息,這樣對頻寬是個節約。4、RIP網路是一個平面網路,對網路沒有分層。OSPF在網路中建立起層次概念,在自治域中可以劃分網路域,使路由的廣播限制在一定的範圍內,避免鏈路中繼資源的浪費。5、OSPF在路由廣播時採用了授權機制,保證了網路安全。上述兩者的差異顯示了OSPF協定後來居上的特點,其先進性和複雜性使它適應了今天日趨龐大的Internet網,並成為主要的網際網路路由協定。
RIP路由表
![路由技術](/img/c/d5b/nBnauM3X0ETO4QTOwkTO3gTNxITM2gTM0YTMwADMwAzMxAzL5kzLygzLt92YucmbvRWdo5Cd0FmL0E2LvoDc0RHa.jpg)
![路由技術](/img/a/10c/nBnauM3XxEzN4YTNwADM4gTNxITM2gTM0YTMwADMwAzMxAzLwAzL1UzLt92YucmbvRWdo5Cd0FmL0E2LvoDc0RHa.jpg)
RIP協定的實現:RIP根據V-D算法的特點,將協定的參加者分為主動機和被動機兩種。主動機主動向外廣播路由刷新報文,被動機被動地接收路由刷新報文。一般情況下,主機作為被動機,路由器則既是主動機又是被動機,即在向外廣播路由刷新報文的同時,接受來自其它主動機的V-D報文,並進行路由刷新。RIP規定,路由器每30秒向外廣播一個V-D報文,報文信息來自本地路由表。RIP的V-D報文中,其距離以驛站計:與信宿網路直接相連的路由器規定為一個驛站,相隔一個路由器則為兩個驛站……以此類推。一條路由的距離為該路由(從信源機到信宿機)上的路由器數。為防止尋徑環長期存在,RIP規定,長度為16的路由為無限長路由,即不存在的路由。所以一條有效的路由長度不得超過15。正是這一規定限制了RIP的使用範圍,使RIP局限於中小型的網路網點中。為了保證路由的及時有效性,RIP採用觸發刷新技術和水平分割法。當本地路由表發生修改時,觸發廣播路由刷新報文,以迅速達到最新路由的廣播和全局路由的有效。水平分割法是指當路由器從某個網路接口傳送RIP路由刷新報文時,其中不包含從該接口獲取的路由信息。這是由於從某網路接口獲取的路由信息對於該接口來說是無用信息,同時也解決了兩路由器間的慢收斂問題。
![路由技術](/img/2/b52/nBnauM3X3UjNykTM2kTO3gTNxITM2gTM0YTMwADMwAzMxAzL5kzL0gzLt92YucmbvRWdo5Cd0FmLzE2LvoDc0RHa.jpg)
RIP啟動和運行的整個過程如下所描述:某路由器剛啟動RIP時,以廣播的形式向相鄰路由器傳送請求報文,相鄰路由器的RIP收到請求報文後,回響請求,回發包含本地路由表信息的回響報文。RIP收到回響報文後,修改本地路由表的信息,同時以觸發修改的形式向相鄰路由器廣播本地路由修改信息。相鄰路由器收到觸發修改報文後,又向其各自的相鄰路由器傳送觸發修改報文。在一連串的觸發修改廣播後,各路由器的路由都得到修改並保持最新信息。同時,RIP每30秒向相鄰路由器廣播本地路由表,各相鄰路由器的RIP在收到路由報文後,對本地路由進行的維護,在眾多路由中選擇一條最佳路由,並向各自的相鄰網廣播路由修改信息,使路由達到全局的有效。同時RIP採取一種逾時機制對過時的路由進行逾時處理,以保證路由的實時性和有效性。RIP作為內部路由器協定,正是通過這種報文交換的方式,提供路由器了解本自治系統內部個網路路由信息的機制。
RIP-2支持版本1和版本2兩種版本的報文格式。在版本2中,RIP還提供了對子網的支持和提供認證報文形式。版本2的報文提供子網掩碼域,來提供對子網的支持;另外,當報文中的路由項地址域值為0xFFFF時,默認該路由項的剩餘部分為認證。RIP2對撥號網的支持則是參考需求RIP和觸發RIP的形式經修改而加入的新功能。這時,我們只是要求在撥號網撥通之後對路由進行30秒一次的廣播,而在沒撥通時並不作如是要求,這是根據具體情況變通的結果。
![路由技術](/img/a/030/nBnauM3XzcjN3AzNzADM4gTNxITM2gTM0YTMwADMwAzMxAzLwAzL3QzLt92YucmbvRWdo5Cd0FmLyE2LvoDc0RHa.jpg)
RIP的限制:雖然RIP有很長的歷史,但它還是有自身的限制。它非常適合於為早期的網路互聯計算路由;然而,技術進步已極大地改變了網際網路。建造和使用的方式。因此,RIP會很快被今天的網際網路所淘汰。RIP的一些最大限制是:
·不能支持長於15跳的路徑。
·依賴於固定的度量來計算路由。
·對路由更新反應強烈。
·相對慢的收斂。
·缺乏動態負均衡支持。
OSPF協定
![路由技術](/img/5/d9a/nBnauM3XzIDM3IjN2IDM4gTNxITM2gTM0YTMwADMwAzMxAzLyAzL4MzLt92YucmbvRWdo5Cd0FmL0E2LvoDc0RHa.jpg)
![路由技術](/img/c/289/nBnauM3XzUDN2UTN4IDM4gTNxITM2gTM0YTMwADMwAzMxAzLyAzLwQzLt92YucmbvRWdo5Cd0FmLyE2LvoDc0RHa.jpg)
EGP協定
![路由技術](/img/7/8f7/nBnauM3XzATOwETN2UDM4gTNxITM2gTM0YTMwADMwAzMxAzL1AzL4czLt92YucmbvRWdo5Cd0FmLxE2LvoDc0RHa.jpg)
外部網關協定用於在非核心的相鄰網關之間傳輸信息。非核心網關包含網際網路上所有與其直接相鄰的網關的路由信息及其所連機器信息,但是它們不包含Internet上其他網關的信息。對絕大多數EGP而言,只限制維護其服務的區域網路或廣域網信息。這樣可以防止過多的路由信息在區域網路或廣域網之間傳輸。EGP強制在非核心網關之間交流路由信息。
![路由技術](/img/2/c93/nBnauM3XwcTN1QzN4UDM4gTNxITM2gTM0YTMwADMwAzMxAzL1AzL3IzLt92YucmbvRWdo5Cd0FmLwE2LvoDc0RHa.jpg)
EGP報文首部:為了實現上述三個基本功能,EGP定義了下表所列的九種報文類型:
EGP報文類型 描述
AcquisitionRequest(獲取請求)請求路由器成為鄰站(對等路由器)
AcquisitionConfirm(獲取證實)對獲取請求的肯定回響
AcquisitionRefuse(獲取拒絕)對獲取請求的否定回響
CeaseRequest(中止請求)請求中止鄰站關係
CeaseConfirm(中止證實)對中止請求的證實回響
Hello(你好)請求鄰站回答是否活躍
IHeardYou(我聽見你)對Hello報文的回答
PollRequest(輪詢請求)請求更新網路的選路
RoutingUpdate(選路更新)網路可達信息
Error(差錯)對不正確報文的回響
所有的EGP報文都有固定的首都用於說明報文類型。
![路由技術](/img/6/ecf/nBnauM3X0QzN3YDNwYDM4gTNxITM2gTM0YTMwADMwAzMxAzL2AzLyczLt92YucmbvRWdo5Cd0FmLxE2LvoDc0RHa.jpg)
參考文獻
1、《計算機通信網》王曉軍毛京麗編著
2、http://www.cnpaf.net/search.asp
3、http://www.knowsky.com/380367.html
4、http://www.3800hk.com
5、http://codex.wordpress.org.cn/index.php?
6、http://www.ciscosky.org/network/route/LuYaoJiShuJianGe.htm
計算機通信網
了解計算機通信網和計算機通信網的發展史。 |