• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 網絡路由技術基礎

    發表于:2007-06-20來源:作者:點擊數: 標簽:
    何為路由? 所謂路由就是指通過相互連接的 網絡 把信息從源地點移動到目標地點的活動。一般來說,在路由過程中,信息至少會經過一個或多個中間節點。通常,人們會把路由和交換進行對比,這主要是因為在普通用戶看來兩者所實現的功能是完全一樣的。 其實,路

       
      何為路由?
      
      所謂路由就是指通過相互連接的網絡把信息從源地點移動到目標地點的活動。一般來說,在路由過程中,信息至少會經過一個或多個中間節點。通常,人們會把路由和交換進行對比,這主要是因為在普通用戶看來兩者所實現的功能是完全一樣的。

    其實,路由和交換之間的主要區別就是交換發生在OSI參考模型的第二層(數據鏈路層),而路由發生在第三層,即網絡層。這一區別決定了路由和交換在移動信息的過程中需要使用不同的控制信息,所以兩者實現各自功能的方式是不同的。
      
      早在40多年之間就已經出現了對路由技術的討論,但是直到80年代路由技術才逐漸進入商業化的應用。路由技術之所以在問世之初沒有被廣泛使用主要是因為80年代之前的網絡結構都非常簡單,路由技術沒有用武之地。直到最近十幾年,大規模的互聯網絡才逐漸流行起來,為路由技術的發展提供了良好的基礎和平臺。
      
      路由技術的構成
      
      我們通常所說的路由技術其實是由兩項最基本的活動組成,即決定最優路徑和傳輸信息單元(也被稱為數據包)。其中,數據包的傳輸和交換相對較為簡單和直接,而路由的確定則更加復雜一些。
      
      確定路由
      
      度量標準(metric),例如路徑長度等,是被路由算法用來計算和確定到達目的地的最優路徑的標準。為了幫助確定數據傳輸的路徑,路由算法可以建立和維護路由表。路由表中包含了各種路由信息。路由信息根據所使用的路由算法的不同而各異。
      
      路由算法在路由表中寫入各種不同的信息,路由器會根據數據包所要到達的目的地選擇最佳路徑把數據包發送到可以到達該目的地的下一臺路由器處。當下一臺路由器接收到該數據包時,也會查看其目標地址,并使用合適的路徑繼續傳送給后面的路由器。依次類推,直到數據包到達最終目的地。
      
      路由表中還會包含其它一些對路由的計算和選擇有價值的信息。路由器通過比較不同路徑的度量值決定最優路徑,而具體的度量值則要視所使用的路由算法而定。我們將會在文章稍后對一些較為常用的度量標準進行詳細的介紹。
      
      數據包交換
      
      交換算法相對路由算法來說更加簡單,而且絕大多數的路由協議都可以使用相同的交換技術。當數據包的發送方通過一定的方式獲取到路由器的地址之后,就會把數據包以該路由器的物理地址(MAC地址)發送出去,同時使用網絡層地址標識數據包的最終目的地。
      
      當路由器接收到數據包后將查看標明其目的地的協議地址,并決定是否按照該地址將數據包轉發到下一臺路由器。如果路由器不知道如何把數據包轉發到其目的地的話,一般會丟棄該數據包。如果路由器知道數據包的轉發路徑,則會將其中的物理地址改為下一臺路由器的地址,然后將其發送出去。以此類推,直到數據包到達最終的目的地。在整個過程中,數據包的物理地址會隨著移動過程中所經過的不同的路由器而變化,但是代表目的地的協議地址一直保持不變。具體如圖所示:
       網絡路由技術基礎(圖一)
       路由算法
      
      路由算法主要由幾個關鍵因素決定。首先,算法的設計意圖對路由協議的實際運作具有很大的影響。其次,目前存在許多不同類型的路由算法,每一種算法對網絡和路由器資源都有不同的要求和影響。最后,路由算法使用不同的度量標準,從而使最優路徑的計算結果不同。
      
      設計意圖
      
      通常,一種路由算法可以體現出以下幾方面的設計意圖:
      
      最優性
      
      簡單,低開銷
      
      健壯,穩定
      
      快速聚斂
      
      適用性強
      
      最優性是指路由算法選擇最佳路徑的能力,這主要取決于計算最佳路徑所使用的度量標準。舉例來說,一種路由算法可以同時采用數據包經過路由器的跳數和時延作為度量標準,而其中又以時延為主要標準。每一種路由協議都必須嚴格定義度量值的計算方法。
      
      路由協議的設計應當盡可能的簡單。換句話說,路由算法必須能夠以最有效的方式發揮其功能,最大程度的降低軟件和使用開銷。尤其是當實現路由算法的軟件只能在資源有限的機器上運行時,有效性就變得更為重要。
      
      路由算法必須具有良好的健壯性,能夠在出現異?;蛲话l事件(例如硬件損壞,負載過高以及執行錯誤等)時正常運行。因為路由器往往是網絡的連接節點,所以如果出現問題將會帶來非常嚴重的后果。因此,最好的路由算法應當能夠經受時間的考驗,在不同的網絡條件下都能夠保持穩定的運行狀態。
      
      路由算法還應當能夠快速聚斂。所謂聚斂就是指所有路由器就最優路徑重新達成一致的過程。當因為某種原因使路由器出現問題而無法繼續正常使用時,路由器會發出路由更新信息傳遍整個網絡,重新計算最優路徑,并最終使所有路由器就新路徑達成一致。聚斂速度慢的路由算法可能會導致路由回路的出現。
      
      在下圖所示的路由回路中,一個數據包在時間t1到達路由器1。因為路由器1中的信息已經被更新,所以該路由器知道到達數據包目的地的最優路徑應當通過路由器2。因此,路由器1把數據包轉發到路由器2。但是路由器2中的信息沒有被更新,所以仍然認為最優路徑應當通過路由器1,并因此把數據包又轉發回路由器1。這樣,數據包只能在兩臺路由器之間來回傳遞,直到路由器2接收到了路由更新信息或者數據包超出了最大存活時間。
      網絡路由技術基礎(圖二)
      路由算法還應當具有非常好的適應性,能夠快速準確的適應不同的網絡環境。例如,假設某一個網段出現問題,許多路由協議都可以快速的選擇新的最佳路徑替代已經無法使用的原由路徑。路由算法應當能夠通過編程,適應網絡帶寬,網絡時延等參數變量的變化。
      
      算法類型
      
      路由算法可以被劃分成許多不同的類型。主要的分類標準如下:
      
      靜態vs動態
      
      單路徑vs多路徑
      
      單層結構vs分層結構
      
      主機智能vs路由器智能
      
      域間vs域內
      
      鏈路狀態vs距離向量
      
      靜態vs動態
      
      靜態路由算法并不是一種真正意義上的路由算法,而只是由網絡管理員在啟動網絡路由功能之前預先建立起來的路由映射表。除非管理員人為修改,否則映射表的內容不會發生任何變化。使用靜態路由的算法在設計上非常簡單,主要適合在那些數據流量的可預測性強,網絡結構相對簡單的環境中使用。
      
      因為靜態路由系統無法對網絡變化作出響應,所以對今天的大型,動態網絡來說并不適用。目前所使用的絕大多數的主流路由算法都是動態路由算法,可以通過分析接收到的路由更新信息針對變化的網絡環境作出相應的調整。如果網絡發生變化,路由軟件就會重新計算新路由,并將新的路由更新信息發送出去。更新信息可以傳遍整個網絡,所有接收到該信息的路由器都會重新執行各自的路由算法,對路由表作出相應的修改。
      
      靜態路由和動態路由并不是完全對立的,在適當的環境下,兩者可以有機的結合在一起,互為補充。例如,我們可以創建靜態路由,指定一臺專門的路由器作為最后訴求(last resort)路由器來接收所有無法被正確路由的數據包,這樣,我們就可以保證所有的信息都能夠以某種方式被處理。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>