" />
單路徑vs多路徑
一些復雜的路由協議可以支持到同一目的地的多條路徑。與單路徑算法不同,多路徑算法可以在多條路徑之間實現數據流量的多路復用。多路徑路由算法的優勢是非常明顯的,可以提供更大的數據吞吐量,同時增強了網絡的可靠性。
單層結構vs分層結構
在單層次的路由系統中,所有的路由器都是對等的;而在分層路由系統中,則是由一部分路由器組成路由主干。任何一臺主機發送出的數據包首先經過非主干路由器到達主干路由器,然后沿著路由主干傳遞。當到達目的地的網絡區域時,從主干路由器轉入非主干路由器,并最終抵達目標接收方。
通常,我們把路由系統中的本地節點群稱為域,自主系統,或區域。在分層路由系統中,一個域中的某些路由器可以與位于其它域中的路由器進行通訊,而另外一些路由器則只能與本域中的路由器通訊。在規模更大的網絡中,可能會存在更多的路由等級,而路由主干一般都是由位于最高等級的路由器組成。
分層路由的最大優勢就在于其組成結構與我們在現實企業中所采用的治理和組織結構相符,因而可以非常好的支持公司內部的數據流量和模式。舉例來說,在企業網中,絕大多數的網絡通訊都發生在小范圍內的組或域中,所以域內路由器只需要知道如何與本域中的其它路由器通訊即可,不必關心其它域中的路由器。這樣,就可以使路由算法得到簡化,并相應降低了路由的更新流量。
主機智能vs路由器智能
所謂主機智能算法就是指由數據包的發送方決定整個傳輸過程中的完整路由,通常也被稱為源路由。在源路由系統中,路由器的作用只是簡單的存儲和轉發。
路由器智能算法的基礎就是假定數據包的發送方對路由沒有任何決定能力,完全由路由器基于各自的計算方法選擇和確定數據的傳輸路徑。
域間vs域內
有些路由算法只能在單獨的域中使用,而另外一些路由算法則既可以在域間也可以在域內使用。這兩種算法的性質是不同的,因此,一種好的域內路由算法往往并不一定能夠在域間環境下使用。
鏈路狀態vs距離向量
鏈路狀態算法(又稱為最短路徑優先算法)可以把路由信息傳遞到網絡上的所有節點。不過每一臺路由器只是向外界發送描述自己鏈路狀態的那一小部分路由表信息。距離向量算法(又稱為 Bellman-Ford算法)要求每一臺路由器向外發送全部或絕大部分的路由表信息,不過該信息只能發送給臨近的路由器。因此,兩者的區別就是鏈路狀態算法可以向整個網絡范圍發送數據量較小的更新信息,而距離向量算法則是只能向臨近的路由器發送大批量的更新信息。
因為鏈路狀態算法的聚斂速度相對較快,所以要比距離向量算法更能有效的避免路由回路的出現。不過,從另一方面來說,鏈路狀態算法需要占用更多的CPU處理時間和系統內存,因此比距離向量算法的實現和支持成本更高。除了我們在這里所提到的區別之外,兩種路由算法都可以在絕大多數的網絡環境中使用。
路由度量標準
路由算法使用很多不同的度量標準來確定最佳路徑。一些復雜的路由算法更是可以把幾個獨立的度量標準綜合起來,作出更為全面和準確的路由決定。以下是最為常用的路由度量標準:
路徑長度
路徑長度是最為常用的一種路由度量標準。有些路由協議可以答應網絡治理人員為每一條網絡連接指定路由成本。在這種情況下,路徑長度就是所有有關連接的路由成本的總和。其它一些路由協議還可以定義跳數,即數據包從源地址到目的地所必須經過的網絡互連設備(如路由器等)的個數。
在路由算法的范疇內,可靠性主要是指每一條網絡連接的可使用性(通常使用誤碼率表示)。一些網絡連接可能比其它連接更輕易出現問題。在網絡故障修復之后,有些網絡連接可能比其它連接的恢復速度更快或更方便。網絡治理人員可以把任何可靠性因素考慮在內,并據此為每一條網絡連接指定相應的可靠值。
路由時延是指通過網絡把數據包從源地址移動到目的地所需要的時間總和。有許多因素可以造成路由時延,其中包括網絡連接的帶寬,每一臺途經路由器的負載,網絡擁擠狀況以及數據包所需要經過的物理距離等。因為路由時延是多項重要變量的綜合反映,所以被普遍的采用。
帶寬是指一條網絡連接所能提供的流量吞吐能力。很明顯,10-Mbps以太網的帶寬要大大高出64-kbps專線的帶寬。雖然帶寬反映了一條網絡連接所能夠提供的最大速率,但是有時使用寬帶連接的路由并不一定是最優路徑。例如,假如一條高速連接非常繁忙,那么實際等待發送數據包的時間可能會更長。
負載是指象路由器這樣的網絡資源和設備的繁忙程度。我們可以通過多種方式計算負載,例如CPU的使用率以及每秒鐘可以處理的數據包的數目等。對路由負載進行長期的持續監控可以更加有效的治理和配置網絡資源。
通訊成本是另外一種非常重要的路由度量標準,尤其是對那些相對于網絡性能更加關注運行成本的企業來說,其重要性就更加明顯。舉例來說,有時企業會為了節省公用線路的使用成本而改用延遲更大的私人線路,這就是通訊成本的具體體現。
新聞熱點
疑難解答