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