路由算法的概念
本文主要給大家講述了路由算法的概念問題,同時給大家介紹了路由算法的基本概念,詳細通過此文,對于路由算法不清楚的讀者有了個更清晰的認識。
路由算法是路由協(xié)議必須高效地提供其功能,盡量減少軟件和應用的開銷。當實現(xiàn)路由算法的軟件必須運行在物理資源有限的計算機上時高效尤其重要。路由算法原理 路由算法必須健壯,即在出現(xiàn)不正?;虿豢深A見事件的情況下必須仍能正常處理,例如硬件故障、高負載和不正確的實現(xiàn)。因為路由器位于網(wǎng)絡的連接點,當它們失效時會產(chǎn)生重大的問題。最好的路由算法通常是那些經(jīng)過了時間考驗,證實在各種網(wǎng)絡條件下都很穩(wěn)定的算法。此外路由算法必須能快速聚合,聚合是所有路由器對最佳路徑達成一致的過程。當某網(wǎng)絡事件使路徑斷掉或不可用時,路由器通過網(wǎng)絡分發(fā)路由更新信息,促使最佳路徑的重新計算,最終使所有路由器達成一致。聚合很慢的路由算法可能會產(chǎn)生路由環(huán)或網(wǎng)路中斷。
路由算法可以分為:非自適應的和自適應的。非自適應算法不會根據(jù)當前測量或者估計的流量和拓撲結(jié)構(gòu)來調(diào)整它們的路由決策,這個過程也稱為靜態(tài)路由。相反,自適應算法則會改變它們的路由決策,以反映出拓撲結(jié)構(gòu)的變化,通常也會反映出流量的變化情況,這個過程稱為動態(tài)路由。
路由算法是網(wǎng)絡層軟件的一部分,它負責確定一個進來的分組應該被傳送到哪一條輸出線路上。如果子網(wǎng)內(nèi)部使用了數(shù)據(jù)報,那么路由器必須針對每一個到達的數(shù)據(jù)分組重新選擇路徑,因為從上一次選擇了路徑之后,最佳的路徑可能已經(jīng)改變了。如果子網(wǎng)內(nèi)部使用了虛電路,那么只有當一個新的虛電路被建立起來的時候,才需要確定路由路徑。因此,數(shù)據(jù)分組只要沿著已經(jīng)建立的路徑向前傳遞就行了。無論是針對每個分組獨立地選擇路由路徑,還是只有建立新連接的時候才選擇路由路徑,一個路由算法應具各的特性有:正確性、簡單性、健壯性、穩(wěn)定性、公平性和最優(yōu)性。
路由器使用路由算法來找到到達目的地的最佳路由。當說“最佳路由”時,考慮的參數(shù)包括諸如跳躍數(shù)(分組數(shù)據(jù)包在網(wǎng)絡中從一個路由器或中間節(jié)點到另外的節(jié)點的行程)、延時以及分組數(shù)據(jù)包傳輸通信耗時。路由算法流程圖 關于路由器如何收集網(wǎng)絡的結(jié)構(gòu)信息以及對之進行分析來確定最佳路由,有兩種主要的路由算法: 總體式路由算法和分散式路由算法。采用分散式路由算法時,每個路由器只有與它直接相連的路由器的信息——而沒有網(wǎng)絡中的每個路由器的信息。這些算法也被稱為DV(距離向量)算法。采用總體式路由算法時,每個路由器都擁有網(wǎng)絡中所有其他路由器的全部信息以及網(wǎng)絡的流量狀態(tài)。這些算法也被稱為LS(鏈路狀態(tài))算法。