萬盛學電腦網

 萬盛學電腦網 >> 路由器知識 >> 路由器簡介 >> 路由算法基礎知識全解

路由算法基礎知識全解

  路由器使用很普遍,不少用戶對路由器不太了解,本文為大家帶來路由器相關知識,一起來學習啦,希望能幫助你提升自身知識水平。

  路由算法在路由協議中起著至關重要的作用,采用何種算法往往決定了最終的尋徑結果,因此選擇路由算法一定要仔細。通常需要綜合考慮以下幾個設計目標:

  (1)最優化:指路由算法選擇最佳路徑的能力。

  (2)簡潔性:算法設計簡潔,利用最少的軟件和開銷,提供最有效的功能。

  (3)堅固性:路由算法處於非正常或不可預料的環境時,如硬件故障、負載過高或操作失誤時,都能正確運行。由於路由器分布在網絡聯接點上,所以在它們出故障時會產生嚴重後果。最好的路由器算法通常能經受時間的考驗,並在各種網絡環境下被證實是可靠的。

  (4)快速收斂:收斂是在最佳路徑的判斷上所有路由器達到一致的過程。當某個網絡事件引起路由可用或不可用時,路由器就發出更新信息。路由更新信息遍及整個網絡,引發重新計算最佳路徑,最終達到所有路由器一致公認的最佳路徑。收斂慢的路由算法會造成路徑循環或網絡中斷。 (5)靈活性:路由算法可以快速、准確地適應各種網絡環境。例如,某個網段發生故障,路由算法要能很快發現故障,並為使用該網段的所有路由選擇另一條最佳路徑。

  路由算法按照種類可分為以下幾種:靜態和動態、單路和多路、平等和分級、源路由和透明路由、域內和域間、鏈路狀態和距離向量。前面幾種的特點與字面意思基本一致,下面著重介紹鏈路狀態和距離向量算法。

  鏈路狀態算法(也稱最短路徑算法)發送路由信息到互聯網上所有的結點,然而對於每個路由器,僅發送它的路由表中描述了其自身鏈路狀態的那一部分。距離向量算法(也稱為Bellman-Ford算法)則要求每個路由器發送其路由表全部或部分信息,但僅發送到鄰近結點上。從本質上來說,鏈路狀態算法將少量更新信息發送至網絡各處,而距離向量算法發送大量更新信息至鄰接路由器。 由於鏈路狀態算法收斂更快,因此它在一定程度上比距離向量算法更不易產生路由循環。但另一方面,鏈路狀態算法要求比距離向量算法有更強的CPU能力和更多的內存空間,因此鏈路狀態算法將會在實現時顯得更昂貴一些。除了這些區別,兩種算法在大多數環境下都能很好地運行。

  最後需要指出的是,路由算法使用了許多種不同的度量標准去決定最佳路徑。復雜的路由算法可能采用多種度量來選擇路由,通過一定的加權運算,將它們合並為單個的復合度量、再填入路由表中,作為尋徑的標准。通常所使用的度量有:路徑長度、可靠性、時延、帶寬、負載、通信成本等。

   新一代路由器

  由於多媒體等應用在網絡中的發展,以及ATM、快速以太網等新技術的不斷采用,網絡的帶寬與速率飛速提高,傳統的路由器已不能滿足人們對路由器的性能要求。因為傳統路由器的分組轉發的設計與實現均基於軟件,在轉發過程中對分組的處理要經過許多環節,轉發過程復雜,使得分組轉發的速率較慢。另外,由於路由器是網絡互連的關鍵設備,是網絡與其它網絡進行通信的一個“關口”,對其安全性有很高的要求,因此路由器中各種附加的安全措施增加了CPU的負擔,這樣就使得路由器成為整個互聯網上的“瓶頸”。

  傳統的路由器在轉發每一個分組時,都要進行一系列的復雜操作,包括路由查找、訪問控制表匹配、地址解析、優先級管理以及其它的附加操作。這一系列的操作大大影響了路由器的性能與效率,降低了分組轉發速率和轉發的吞吐量,增加了CPU的負擔。而經過路由器的前後分組間的相關性很大,具有相同目的地址和源地址的分組往往連續到達,這為分組的快速轉發提供了實現的可能與依據。新一代路由器,如IP Switch、Tag Switch等,就是采用這一設計思想用硬件來實現快速轉發,大大提高了路由器的性能與效率。

  新一代路由器使用轉發緩存來簡化分組的轉發操作。在快速轉發過程中,只需對一組具有相同目的地址和源地址的分組的前幾個分組進行傳統的路由轉發處理,並把成功轉發的分組的目的地址、源地址和下一網關地址(下一路由器地址)放人轉發緩存中。當其後的分組要進行轉發時,茵先查看轉發緩存,如果該分組的目的地址和源地址與轉發緩存中的匹配,則直接根據轉發緩存中的下一網關地址進行轉發,而無須經過傳統的復雜操作,大大減輕了路由器的負擔,達到了提高路由器吞吐量的目標。

copyright © 萬盛學電腦網 all rights reserved