複製鏈接
請複製以下鏈接發送給好友

路由選擇

鎖定
在確定最佳路徑的過程中,路由選擇算法需要初始化和維護路由選擇表( routing table )。路由選擇表中包含的路由選擇信息根據路由選擇算法的不同而不同。一般在路由表中包括這樣一些信息:目的網絡地址,相關網絡節點,對某條路徑滿意程度,預期路徑信息等。
路由器之間傳輸多種信息來維護路由選擇表,修正路由消息就是最常見的一種。修正路由消息通常是由全部或部分路由選擇表組成,路由器通過分析來自所有其他路由器的最新消息構造一個完整的網絡拓撲結構詳圖。鏈路狀態廣播便是一種路由修正信息。
中文名
路由選擇
外文名
route selection
基本操作
最佳路徑判定和網間信息包的傳送
領    域
信息科學

路由選擇選擇定義

路由選擇是指選擇通過互連網絡從源節點向目的節點傳輸信息的通道,而且信息至少通過一箇中間節點。路由選擇工作在 OSI 參考模型的網絡層。

路由選擇選擇組成

路由選擇包括兩個基本操作,即最佳路徑的判定和網間信息包的傳送(交換)。兩者之間,路徑的判定相對複雜。

路由選擇路徑判定

在確定最佳路徑的過程中,路由選擇算法需要初始化和維護路由選擇表( routing table )。路由選擇表中包含的路由選擇信息根據路由選擇算法的不同而不同。一般在路由表中包括這樣一些信息:目的網絡地址,相關網絡節點,對某條路徑滿意程度,預期路徑信息等。
為了成功地轉發一個數據包,IP路由算法根據路由表選擇 下一跳的目的地址。
IP路由算法如下:
假設一個 待轉發的IP報文的目的地址是D, 網絡前綴是N:
If (N屬於某直連網絡)
把IP報文直接轉發
else if(路由表包含目的為D的路由)
根據路由表中的下一跳轉發IP報文(如果存在多條匹配的路由,則選擇子網掩碼長度最長的路由轉發)
Else if(路由表中存在缺省路由)
根據缺省路由轉發IP報文
Else
向源主機 發送ICMP 出錯消息,通知IP報文不能被轉發。
路由器之間傳輸多種信息來維護路由選擇表,修正路由消息就是最常見的一種。修正路由消息通常是由全部或部分路由選擇表組成,路由器通過分析來自所有其他路由器的最新消息構造一個完整的網絡拓撲結構詳圖。鏈路狀態廣播便是一種路由修正信息。 [1] 

路由選擇交換過程

所謂交換指當一台主機向另一台主機發送數據包時,源主機通過某種方式獲取路由器地址後,通過目的主機的協議地址(網絡層)將數據包發送到指定的路由器物理地址(介質訪問控制層)的過程。
通過使用交換算法檢查數據包的目的協議地址,路由器可確定其是否知道如何轉發數據包。如果路由器不知道如何將數據包轉發到下一個節點,將丟棄該數據包;如果路由器知道如何轉發,就把物理目的地址變換成下一個節點的地址,然後轉發該數據包。在傳輸過程中,其物理地址發生變化,但協議地址總是保持不變。

路由選擇選擇算法

各種路由算法不盡相同,主要是由於:首先,算法設計者的設計目標會影響路由選擇協議的運行結果;其次,現有的各種路由選擇算法對網絡和路由器資源的影響不同;最後,不同的計量標準也會影響最佳路徑的計算結果。 [2] 

路由選擇其他

路由選擇基礎知識

路由是將對象從一個地方轉達發到另一個地方的一箇中繼過程
學習和維持網絡拓撲結構知識的機制被認為是路由功能。渡越數據流經路由器進入接口
穿過路由器被移送到外出接口的過程,是另一項單獨的功能,被認為是交換/轉發功能。路由設備必須同時具有路由和交換的功能才可以作為一台有效的中繼設備。
為了進行路由,路由器必須知道下面三項內容:
l、路由器必須確定它是否激活了對該協議組的支持;
2、路由器必須知道目的地網絡;
3、路由器必須知道哪個外出接口是到達目的地的最佳路。
路由選擇協議通過度量值來決定到達目的地的最佳路徑。小度量值代表優選的路徑;如果兩條或更多路徑都有一個相同的小度量值,那麼所有這些路徑將被平等地分享。通過多條路徑分流數據流量被稱為到目的地的負載均衡。
執行路由操作所需要的信息被包含在路由器路由表中,它們由一個或多個路由選擇協議進程生成。路由表由多個路由條目組成,每個條目指明瞭以下內容:
*學習該路由所用的機制(動態或手動)
*邏輯目的地
*度量值(它是度量一條路徑的總"總開銷"的一個尺度)
*去往目的地下一HOP的中繼設備(路由器)的地址;
*路由信息的新舊程度
*與要去往目的地網絡相關聯的接口
使用命令SHOW IP ROUTE可看到以上內容
缺省管理距離的預先分配原則是:人工設置的路由條目優先級高於動態學到路由條目,度量值算法複雜的路由選擇協議優先級高於度量值算法簡單的路由選擇協議。
路由器一般選擇具有最小度量值的路徑;CISCO路由器的IP環境中如果同時出現了多條度量值最低且相同的路徑,那麼在這多條路徑上將啓用負載均衡,C ISCO默認支持4條相同度量值的路徑,通過使用"maximum-paths"命令可以認CISCO路由器支持最多達6條相同度量值路徑。
RIP是一種用在小到中型TCP/IP網絡中採用的路由選擇協議,它採用跳數作為度量值,它的負載均衡功能是缺省啓用的,RIP決定最佳路徑時是不考慮帶寬的!!!
IGRP是一種用在中到大型TCP/IP網絡中採用的路由選擇協議,它採用複合的度量值,它考慮了帶寬、延遲、可靠性、負載和最大傳輸單元(M TU),但缺省地使用了帶寬和延時值。IGRP也能進行負載均衡。
路由器啓動之後,它立刻試圖與其相鄰路由設備建立路由關係。該初始通信的目的是為了識別相鄰設備,並且開始進行通信並學習網絡相結構。建立相鄰關係的方法和對拓撲結構的初始學習隨路由選擇協議的不同而不同。
路由選擇協議會交換定期的HELLO消息或定期的路由更新數據包,以維持相鄰設備間進行着通信。
在瞭解了網絡拓撲結構,且路由表中已包含了到已知地網絡的最佳路徑後,向這些目的地的數據轉發就可以開始了。

路由選擇選擇協議

有類別路由選擇(classful routing)概述
不隨各網絡地址發送子網掩碼信息的路由選擇協議被稱為有類別的選擇協議(RIPv1、IGRP)
當採用有類別路由選擇協議時,屬於同一主類網絡(A類、B類和C類)有所有子網絡都必須使用同一子網掩碼。運行有類別路由選擇協議的路由選擇協議的路由器將執行下面工作的一項以確定該路由型網絡部分:
*如果路由更新信息是關於在接收接口上所配的同一主類網絡的,路由器將採用配置在接口上的子網掩碼
*如果路由更新是關於在接收接口上所配的不同主類的網絡的,路由器將根據其所屬地址類別採用缺省的子網掩碼
有類別歸納路由的生成是由有類別路由選擇協議自動處理的
無類別路由選擇(classless routing)概述
無類別路由選擇協議包括開放最短路徑優先(OSPF)、EIGRP、RIPV2、中間系統到中間系統(IS-IS)和邊界網關協議版本4(BGP4)。
在同一主類網絡中使用不同的掩碼長度被稱為可變長度的子網掩碼(VLSM)。無類別路由選擇路由選擇協議支持VLSM,因此可以更為有效的設置子網掩碼,以滿足不同子網對不同主機數目的需求,可以更充分的利用主機地址
多數距離矢量路由選擇協議產生的定期的、例行的路由更新只傳輸到直接相連的路由設備。
在純距離矢量型路由環境中,路由更新包括一個完整的路由表,通過接收相鄰設備的全路由表,路由能夠核查所有已知路由,然後根據所接收到的更新信息修改本地路由表。解決路由問題的距離矢量法有時被稱為" 傳聞路由(routing by rumor)"
CISCO IOS支持幾種距離矢量路由選擇協議,兇手RIPv1、RIPv2和IGRP。CISCO也直持EIGRP,它是一種高級的距離矢量路由選擇協議
路由選擇協議通常與協議組的網絡層關聯
大多數距離矢量路由選擇協議採用貝樂曼-福特(Bellman-Ford)算法來計算路由。EIGRP是一種高級的距離矢量路由協議,它採用彌散修正算法(D UAL)
Cisco的IP距離矢量路由選擇協議的比較
特徵RIPv1RIPv2IGRPEIGRP
計數到無限XXX
橫向距離XXXX
觸發式更新,路由反向 XXXX
負載均衡-等成本路徑XXXX
負載均衡-非等成本路徑XX
VLSM支持XX
度量值跳數跳數複合複合
跳數限制
易擴展性小小中大
注:IGRP和EIGRP的跳數限制缺省為100,但是可以配置到最大為255。
鏈路狀態型路由選擇協議只當網絡拓撲結構發生變化時才生成路由更新數據包。當鏈路狀態發生變化時,檢測到這一變化的設備就生成一個關於該鏈路(路由)的鏈路狀態通告(L SA)。隨後LSA通過一個特殊的多目組播地址被傳播給所有相鄰設備。每台路由設備都會保留LSA拷貝,並向其相鄰設備轉發該LSA(這個過程變稱為擴散f looding)然後更新其拓撲結構數據庫(這是一個包含網絡所有鏈路狀態信息表)。LSA擴散被用於確保所有路由設備都能瞭解到這個變化,這樣它們就能夠更新它們的數據,並生成一個更新過的、反映新的網絡拓撲結構路由表
Cisco的鏈路狀態型路由選擇協議的比較
特徵OSPFIS-ISEIGRP
要求體系化拓撲結構XX
保留對所有可能路由的瞭解XXX
路由歸納-人工XXX
路由歸納-自動X
事件觸發式通告XXX
負載均衡-等成本路徑XXX
負載均衡-非等成本路徑X
VLSM支持XXX
路由算法DijkstraIS-ISDUAL
度量值鏈路成本(帶寬)鏈路成本(帶寬)複合
跳數限制無1024100
易擴展性大很大大
路由器中的路由進程都必須留有到各可能目的地邏輯網絡的無環路單路徑,當所有路由表都達到同步,且每個路由表都包含有到各目的地網絡的一條可用路由時,網絡就達到了收斂狀態。收斂是在網絡拓撲結構發生變化後,比如增加了新的路由或現有路由的狀態發生了變化後,與路由表同步相關聯的活動。
收斂時間是網絡中所有路由對當前拓撲結構的認知達到一致所需的時間,網絡的大小、所使用的路由選擇協議以及眾多可配置的計時器都能夠影響收斂時間。
有兩種檢測的方法:
*當物理層數據鏈路層沒能接收到一定數量(通常是3)的連續keepalive消息時,就認為該鏈路失效。
*當路由選擇協議沒能接收到一定數量(通常是3)的連續Hello消息或路由更新或相類似消息時,就認為該鏈路失效了。
大多數路由選擇協議都具有防止在鏈路狀態轉換過程中產生拓撲結構環路用的計時器。 [3] 
參考資料
  • 1.    董軍, 潘雲鶴. 路由選擇的多Agent系統模型[J]. 計算機學報, 2000, 23(2):221-221.
  • 2.    劉芳, 馮小軍. 免疫組播路由選擇算法[J]. 計算機學報, 2003, 26(6):37-42.
  • 3.    張祿林, 李承恕. MANET路由選擇協議的比較分析研究[J]. 電子學報, 2000, 28(11):88-91.