路由器原理及常用的路由協(xié)議、路由算法
0SPF是一種基于鏈路狀態(tài)的路由協(xié)議,需要每個路由器向其同一管理域的所有其它路由器發(fā)送鏈路狀態(tài)廣播信息。在OSPF的鏈路狀態(tài)廣播中包括所有接口信息、所有的量度和其它一些變量。利用0SPF的路由器首先必須收集有關的鏈路狀態(tài)信息,并根據(jù)一定的算法計算出到每個節(jié)點的最短路徑。而基于距離向量的路由協(xié)議僅向其鄰接路由器發(fā)送有關路由更新信息。
與RIP不同,OSPF將一個自治域再劃分為區(qū),相應地即有兩種類型的路由選擇方式:當源和目的地在同一區(qū)時,采用區(qū)內路由選擇;當源和目的地在不同區(qū)時,則采用區(qū)間路由選擇。這就大大減少了網(wǎng)絡開銷,并增加了網(wǎng)絡的穩(wěn)定性。當一個區(qū)內的路由器出了故障時并不影響自治域內其它區(qū)路由器的正常工作,這也給網(wǎng)絡的管理、維護帶來方便。
3.3 BGP和BGP-4路由協(xié)議
BGP是為TCP/IP互聯(lián)網(wǎng)設計的外部網(wǎng)關協(xié)議,用于多個自治域之間。它既不是基于純粹的鏈路狀態(tài)算法,也不是基于純粹的距離向量算法。它的主要功能是與其它自治域的BGP交換網(wǎng)絡可達信息。各個自治域可以運行不同的內部網(wǎng)關協(xié)議。BGP更新信息包括網(wǎng)絡號/自治域路徑的成對信息。自治域路徑包括到達某個特定網(wǎng)絡須經(jīng)過的自治域串,這些更新信息通過TCP傳送出去,以保證傳輸?shù)目煽啃浴?p>為了滿足Internet日益擴大的需要,BGP還在不斷地發(fā)展。在最新的BGp4中,還可以將相似路由合并為一條路由。
3.4 路由表項的優(yōu)先問題
在一個路由器中,可同時配置靜態(tài)路由和一種或多種動態(tài)路由。它們各自維護的路由表都提供給轉發(fā)程序,但這些路由表的表項間可能會發(fā)生沖突。這種沖突可通過配置各路由表的優(yōu)先級來解決。通常靜態(tài)路由具有默認的最高優(yōu)先級,當其它路由表表項與它矛盾時,均按靜態(tài)路由轉發(fā)。
4 路由算法
路由算法在路由協(xié)議中起著至關重要的作用,采用何種算法往往決定了最終的尋徑結果,因此選擇路由算法一定要仔細。通常需要綜合考慮以下幾個設計目標:
——(1)最優(yōu)化:指路由算法選擇最佳路徑的能力。
——(2)簡潔性:算法設計簡潔,利用最少的軟件和開銷,提供最有效的功能。
——(3)堅固性:路由算法處于非正?;虿豢深A料的環(huán)境時,如硬件故障、負載過高或操作失誤時,都能正確運行。由于路由器分布在網(wǎng)絡聯(lián)接點上,所以在它們出故障時會產(chǎn)生嚴重后果。最好的路由器算法通常能經(jīng)受時間的考驗,并在各種網(wǎng)絡環(huán)境下被證實是可靠的。
——(4)快速收斂:收斂是在最佳路徑的判斷上所有路由器達到一致的過程。當某個網(wǎng)絡事件引起路由可用或不可用時,路由器就發(fā)出更新信息。路由更新信息遍及整個網(wǎng)絡,引發(fā)重新計算最佳路徑,最終達到所有路由器一致公認的最佳路徑。收斂慢的路由算法會造成路徑循環(huán)或網(wǎng)絡中斷。
——(5)靈活性:路由算法可以快速、準確地適應各種網(wǎng)絡環(huán)境。例如,某個網(wǎng)段發(fā)生故障,路由算法要能很快發(fā)現(xiàn)故障,并為使用該網(wǎng)段的所有路由選擇另一條最佳路徑。
路由算法按照種類可分為以下幾種:靜態(tài)和動態(tài)、單路和多路、平等和分級、源路由和透明路由、域內和域間、鏈路狀態(tài)和距離向量。前面幾種的特點與字面意思基本一致,下面著重介紹鏈路狀態(tài)和距離向量算法。
鏈路狀態(tài)算法(也稱最短路徑算法)發(fā)送路由信息到互聯(lián)網(wǎng)上所有的結點,然而對于每個路由器,僅發(fā)送它的路由表中描述了其自身鏈路狀態(tài)的那一部分。距離向量算法(也稱為Bellman-Ford算法)則要求每個路由器發(fā)送其路由表全部或部分信息,但僅發(fā)送到鄰近結點上。從本質上來說,鏈路狀態(tài)算法將少量更新信息發(fā)送至網(wǎng)絡各處,而距離向量算法發(fā)送大量更新信息至鄰接路由器。
由于鏈路狀態(tài)算法收斂更快,因此它在一定程度上比距離向量算法更不易產(chǎn)生路由循環(huán)。但另一方面,鏈路狀態(tài)算法要求比距離向量算法有更強的CPU能力和更多的內存空間,因此鏈路狀態(tài)算法將會在實現(xiàn)時顯得更昂貴一些。除了這些區(qū)別,兩種算法在大多數(shù)環(huán)境下都能很好地運行。
最后需要指出的是,路由算法使用了許多種不同的度量標準去決定最佳路徑。復雜的路由算法可能采用多種度量來選擇路由,通過一定的加權運算,將它們合并為單個的復合度量、再填入路由表中,作為尋徑的標準。通常所使用的度量有:路徑長度、可靠性、時延、帶寬、負載、通信成本等。
5 新一代路由器
由于多媒體等應用在網(wǎng)絡中的發(fā)展,以及ATM、快速以太網(wǎng)等新技術的不斷采用,網(wǎng)絡的帶寬與速率飛速提高,傳統(tǒng)的路由器已不能滿足人們對路由器的性能要求。因為傳統(tǒng)路由器的分組轉發(fā)的設計與實現(xiàn)均基于軟件,在轉發(fā)過程中對分組的處理要經(jīng)過許多環(huán)節(jié),轉發(fā)過程復雜,使得分組轉發(fā)的速率較慢。另外,由于路由器是網(wǎng)絡互連的關鍵設備,是網(wǎng)絡與其它網(wǎng)絡進行通信的一個“關口”,對其安全性有很高的要求,因此路由器中各種附加的安全措施增加了CPU的負擔,這樣就使得路由器成為整個互聯(lián)網(wǎng)上的“瓶頸”。
傳統(tǒng)的路由器在轉發(fā)每一個分組時,都要進行一系列的復雜操作,包括路由查找、訪問控制表匹配、地址解析、優(yōu)先級管理以及其它的附加操作。這一系列的操作大大影響了路由器的性能與效率,降低了分組轉發(fā)速率和轉發(fā)的吞吐量,增加了CPU的負擔。而經(jīng)過路由器的前后分組間的相關性很大,具有相同目的地址和源地址的分組往往連續(xù)到達,這為分組的快速轉發(fā)提供了實現(xiàn)的可能與依據(jù)。新一代路由器,如IP Switch、Tag Switch等,就是采用這一設計思想用硬件來實現(xiàn)快速轉發(fā),大大提高了路由器的性能與效率。
新一代路由器使用轉發(fā)緩存來簡化分組的轉發(fā)操作。在快速轉發(fā)過程中,只需對一組具有相同目的地址和源地址的分組的前幾個分組進行傳統(tǒng)的路由轉發(fā)處理,并把成功轉發(fā)的分組的目的地址、源地址和下一網(wǎng)關地址(下一路由器地址)放人轉發(fā)緩存中。當其后的分組要進行轉發(fā)時,茵先查看轉發(fā)緩存,如果該分組的目的地址和源地址與轉發(fā)緩存中的匹配,則直接根據(jù)轉發(fā)緩存中的下一網(wǎng)關地址進行轉發(fā),而無須經(jīng)過傳統(tǒng)的復雜操作,大大減輕了路由器的負擔,達到了提高路由器吞吐量的目標。
評論