當前位置:首頁 » 網路連接 » 計算機網路中路由選擇演算法
擴展閱讀
h5網站打不開怎麼辦 2024-10-28 08:19:19
抖音網站視頻怎麼下載 2024-10-28 08:14:37
聯想平板電腦怎麼調 2024-10-28 08:12:44

計算機網路中路由選擇演算法

發布時間: 2024-10-28 04:32:14

計算機網路自學筆記:選路演算法

網路層必須確定從發送方到接收方分組所經過的路徑。選路就是在網路中的路由器里的給某個數據報確定好路徑(即路由)。

一 台主機通常直接與一台路由器相連接,該路由器即為該主機的默認路由器,又稱為該主機的默認網關。 每當某主機向外部網路發送一個分組時,該分組都被傳送給它的默認網關。

如果將源主機的默認網關稱為源路由器,把目的主機的默認網關稱為目的路由器。為一個分組從源主機到目的主機選路的問題於 是可歸結為從源路由器到目的路由器的選路問題。

選路演算法的目標很簡單:給定一組路由器以及連接路由器的鏈路,選路演算法要找到一條從源路由器到目的路由器的最好路徑,通常一條好路徑是指具有最低費用的路徑。

圖 G=(N,E)是一個 N 個節點和 E 條邊的集合,其中每條邊是來自 N 的一對節點。在網 絡選路的環境中,節點表示路由器,這是做出分組轉發決定的節點,連接節點的邊表示路由 器之間的物理鏈路。

一條邊有一個值表示它的費用。通常一條邊的費用可反映出對應鏈路的物理長度、鏈路速度或與該鏈路相關的費用。

對於 E 中的任一條邊(xy)可以用 c(xy )表示節點 x 和 y 間邊的費用。一般考慮的都是無向 圖,因此邊(xy)與邊(y x)是相同的並且開銷相等。節點 y 也被稱為節點 x 的鄰居。

在圖中為各條邊指派了費用後,選路演算法的目標自然是找出從源到目的間的最低費用路徑。圖 G=(N,E)中的一條路徑(Path)是一個節點的序列,使得每一對以(x1,x2), (x2,x3),…,是 E 中的邊。路徑的費用是沿著路徑所有邊費用的總和。

從廣義上來說,我們對 選路演算法分類的一種方法就是根據該演算法是全局性還是分布式來區分的。

.全局選路演算法: 用完整的、全局性的網路信息來計算從源到目的之間的最低費用路徑。

實際上, 具有全局狀態信息的演算法常被稱作鏈路狀態 LS 演算法, 因為該演算法必須知道網路中每條鏈路的費用。

.分布式選路演算法: 以迭代的、分布式的方式計算出最低費用路徑。通過迭代計算並與相鄰節點交換信息,逐漸計算出到達某目的節點或一組目的節點的最低費用路徑。

DV 演算法是分布式選路演算法, 因為每個節點維護到網路中的所有其他節點的費用(距離)估計的矢量。

選路演算法的第二種廣義分類方法是根據演算法是靜態的還是動態的來分類。

一: 鏈路狀態選路演算法 LS

在鏈路狀態演算法中,通過讓每個節點向所有其他路由器廣播鏈路狀態分組, 每個鏈路狀態分組包含它所連接的鏈路的特徵和費用, 從而網路中每個節點都建立了關於整個網路的拓撲。

Dijkstra 演算法計算從源節點到網路中所有其他節點的最低費用路徑.

Dijkstra 演算法是迭代演算法,經演算法的第 k 次迭代後,可知道到 k 個目的節點的最低費用路徑。

定義下列記號:

D(V)隨著演算法進行本次迭代,從源節點到目的節點的最低費用路徑的費用。

P(v)從源節點到目的節點 v 沿著當前最低費用路徑的前一節點(,的鄰居)。

N`節點子集;如果從源節點到目的節點 v 的最低費用路徑已找到,那麼 v 在 N`中。

Dijkstra 全局選路演算法由一個初始化步驟和循環組成。循環執行的次數與網路中的節點個數相同。在結束時,演算法會計算出從源節點 u 到網路中每個其他節點的最短路徑。

考慮圖中的網路,計算從 u 到所有可能目的地的最低費用路徑。

.在初始化階段 ,從 u 到與其直接相連的鄰居 v、x、w 的當前已知最低費用路徑分別初始化為 2,1 和 5。到 y 與 z 的費用被設為無窮大,因為它們不直接與 u 連接。

.在第一次迭代時, 需要檢查那些還未加到集合 N`中的節點,找出在前一次迭代結束時具有最低費用的節點。那個節點是 x 其費用是 1,因此 x 被加到集合 N`中。然後更新所有節點的 D(v),產生下表中第 2 行(步驟)所示的結果。到 v 的路徑費用未變。經過節點 x 到 w 的 路徑的費用被確定為 4。因此沿從 u 開始的最短路徑到 w 的前一個節點被設為 x。類似地, 到 y 經過 x 的費用被計算為 2,且該表項也被更新。

.在第二次迭代時 ,節點 v 與 y 被發現具有最低費用路徑 2。任意選擇將 y 加到集合 N` 中,使得 N』中含有 u、x 和 y。通過更新,產生如表中第 3 行所示的結果。

.以此類推…

當 LS 演算法結束時,對於每個節點都得到從源節點沿著它的最低費用路徑的前繼節點, 對於每個前繼節點,又有它的前繼節點,按照此方式可以構建從源節點到所有目的節點的完 整路徑。

根據從 u 出發的最短路徑,可以構建一個節點(如節點 u)的轉發表。

二 距離矢量選路演算法 DV

LS 演算法是一種使用全局信息的演算法,而距離矢量演算法是一種迭代的、非同步的和分布式的演算法。

Bellman-Ford 方程:

設 dx(y)是從節點 x 到節點 y 的最低費用路徑的費用,則有  dx(y) = min {c(x,v) + dv(y) }

PS: 方程中的 min,是指取遍 x 的所有鄰居。

Bellman-Ford 方程含義相當直觀,意思是從 x 節點出發到 y 的最低費用路徑肯定經過 x 的某個鄰居,而且 x 到這個鄰居的費用加上這個鄰居到達目的節點 y 費用之和在所有路徑 中其總費用是最小的。 實際上,從 x 到 v 遍歷之後,如果取從 v 到 y 的最低費用路徑,該路 徑費用將是 c(x,v)+ dv(y)。因此必須從遍歷某些鄰居 v 開始,從 x 到 y 的最低費用是對所有鄰 居的 c(x,v)+dv(y)的最小值。

在該 DV 演算法中,當節點 x 看到它的直接相連的鏈路費用變化,或從某個鄰居接收到一 個距離矢量的更新時,就根據 Bellman-Ford 方程更新其距離矢量表。

三 LS 與 DV 選路演算法的比較

DV 和 LS 演算法採用不同的方法來解決計算選路問題。

在 DV 演算法中,每個節點僅與它的直接相連鄰居交換信息,但它為它的鄰居提供了從其 自己到網路中(它所知道的)所有其他節點的最低費用估計。

在 LS 演算法中,每個節點(經廣播)與所有其他節點交換信息,但它僅告訴它們與它直接 相連鏈路的費用。

·報文復雜性:

LS 演算法要求每個節點都知道網路中每條鏈路的費用,需要發送 O(nE)個消息。

DV 演算法要求在每次迭代時,在兩個直接相連鄰居之間交換報文,演算法收斂所需的時間 依賴於許多因素。當鏈路費用改變時,DV 演算法僅當在會導致該節點的最低費用路徑發生改 變時,才傳播已改變的鏈路費用。

·收效速度:

DV演算法收斂較慢,且在收斂時會遇到選路環路。DV演算法還會遭受到計數到無窮的問題。

•健壯性:  在 LS 演算法中,如果一台路由器發生故障、或受到破壞,路由器會向其連接的鏈路廣播 不正確費用,導致整個網路的錯誤。

在 Dv 演算法下, 每次迭代時,其中一個節點的計算結果會傳遞給它的鄰居,然後在下次迭代時再間接地傳遞給鄰居的鄰居。在這種情況下,DV 演算法中一個不正確的計算結果也會擴散到整個網路。

四.層次選路

兩個原因導致層次的選路策略:

•規模: 隨著路由器數目增長,選路信息的計算、存儲及通信的開銷逐漸增高。

•管理自治: 一般來說,一個單位都會要求按自己的意願運行路由器(如運行其選擇的某 種選路演算法),或對外部隱藏其內部網路的細節。

層次的選路策略是通過將路由器劃分成自治系統 AS 來實施的。

每個 AS 由一組通常在相同管理控制下的路由器組成(例如由相同的 ISP 運營或屬於相同 的公司網路)。在相同的 AS 內的路由器都全部運行同樣的選路演算法。

在一個自治系統內運行的選路演算法叫做自治系統內部選路協議。 在一個 AS 邊緣的一台 或多台路由器,來負責向本 AS 之外的目的地轉發分組,這些路由器被稱為網關路由器

在各 AS 之間,AS 運行相同的自治系統間選路協議。

Ⅱ 路由器原理和常用的路由協議及演算法的介紹

近十年來,隨著計算機網路規模的不斷擴大,大型互聯網路(如Internet)的迅猛發展,路由技術在網路技術中已逐漸成為關鍵部分,路由器也隨之成為最重要的網路設備。用戶的需求推動著路由技術的發展和路由器的普及,人們已經不滿足於僅在本地網路上共享信息,而希望最大限度地利用全球各個地區、各種類型的網路資源。而在目前的情況下,任何一個有一定規模的計算機網路(如企業網、校園網、智能大廈等),無論採用的是快速以大網技術、FDDI技術,還是ATM技術,都離不開路由器,否則就無法正常運作和管理。

1、網路互連

把自己的網路同其它的網路互連起來,從網路中獲取更多的信息和向網路發布自己的消息,是網路互連的最主要的動力。網路的互連有多種方式,其中使用最多的是網橋互連和路由器互連。

1.1 網橋互連的網路

網橋工作在OSI模型中的第二層,即鏈路層。完成數據幀(frame)的轉發,主要目的是在連接的網路間提供透明的通信。網橋的轉發是依據數據幀中的源地址和目的地址來判斷一個幀是否應轉發和轉發到哪個埠。幀中的地址稱為「MAC」地址或「硬體」地址,一般就是網卡所帶的地址。

網橋的作用是把兩個或多個網路互連起來,提供透明的通信。網路上的設備看不到網橋的存在,設備之間的通信就如同在一個網上一樣方便。由於網橋是在數據幀上進行轉發的,因此只能連接相同或相似的網路(相同或相似結構的數據幀),如乙太網之間、乙太網與令牌環(tokenring)之間的互連,對於不同類型的網路(數據幀結構不同),如乙太網與X.25之間,網橋就無能為力了。

網橋擴大了網路的規模,提高了網路的性能,給網路應用帶來了方便,在以前的網路中,網橋的應用較為廣泛。但網橋互連也帶來了不少問題:一個是廣播風暴,網橋不阻擋網路中廣播消息,當網路的規模較大時(幾個網橋,多個乙太網段),有可能引起廣播風暴(broadcastingstorm),導致整個網路全被廣播信息充滿,直至完全癱瘓。第二個問題是,當與外部網路互連時,網橋會把內部和外部網路合二為一,成為一個網,雙方都自動向對方完全開放自己的網路資源。這種互連方式在與外部網路互連時顯然是難以接受的。問題的主要根源是網橋只是最大限度地把網路溝通,而不管傳送的信息是什麼

1.2 路由器互連網路

路由器互連與網路的協議有關,我們討論限於TCP/IP網路的情況。

路由器工作在OSI模型中的第三層,即網路層。路由器利用網路層定義的「邏輯」上的網路地址(即IP地址)來區別不同的網路,實現網路的互連和隔離,保持各個網路的獨立性。路由器不轉發廣播消息,而把廣播消息限制在各自的網路內部。發送到其他網路的數據茵先被送到路由器,再由路由器轉發出去。

IP路由器只轉發IP分組,把其餘的部分擋在網內(包括廣播),從而保持各個網路具有相對的獨立性,這樣可以組成具有許多網路(子網)互連的大型的網路。由於是在網路層的互連,路由器可方便地連接不同類型的網路,只要網路層運行的是IP協議,通過路由器就可互連起來。

網路中的設備用它們的網路地址(TCP/IP網路中為IP地址)互相通信。IP地址是與硬體地址無關的「邏輯」地址。路由器只根據IP地址來轉發數據。IP地址的結構有兩部分,一部分定義網路號,另一部分定義網路內的主機號。目前,在Internet網路中採用子網掩碼來確定IP地址中網路地址和主機地址。子網掩碼與IP地址一樣也是32bit,並且兩者是一一對應的,並規定,子網掩碼中數字為「1」所對應的IP地址中的部分為網路號,為「0」所對應的則為主機號。網路號和主機號合起來,才構成一個完整的IP地址。同一個網路中的主機IP地址,其網路號必須是相同的,這個網路稱為IP子網。

通信只能在具有相同網路號的IP地址之間進行,要與其它IP子網的主機進行通信,則必須經過同一網路上的某個路由器或網關(gateway)出去。不同網路號的IP地址不能直接通信,即使它們接在一起,也不能通信。

路由器有多個埠,用於連接多個IP子網。每個埠的IP地址的網路號要求與所連接的IP子網的網路號相同。不同的埠為不同的網路號,對應不同的IP子網,這樣才能使各子網中的主機通過自己子網的IP地址把要求出去的IP分組送到路由器上。

2、路由原理

當IP子網中的一台主機發送IP分組給同一IP子網的另一台主機時,它將直接把IP分組送到網路上,對方就能收到。而要送給不同IP於網上的主機時,它要選擇一個能到達目的子網上的路由器,把IP分組送給該路由器,由路由器負責把IP分組送到目的地。如果沒有找到這樣的路由器,主機就把IP分組送給一個稱為「預設網關(defaultgateway)」的路由器上。「預設網關」是每台主機上的一個配置參數,它是接在同一個網路上的某個路由器埠的IP地址。

路由器轉發IP分組時,只根據IP分組目的IP地址的網路號部分,選擇合適的埠,把IP分組送出去。同主機一樣,路由器也要判定埠所接的是否是目的子網,如果是,就直接把分組通過埠送到網路上,否則,也要選擇下一個路由器來傳送分組。路由器也有它的預設網關,用來傳送不知道往哪兒送的IP分組。這樣,通過路由器把知道如何傳送的IP分組正確轉發出去,不知道的IP分組送給「預設網關」路由器,這樣一級級地傳送,IP分組最終將送到目的地,送不到目的地的IP分組則被網路丟棄了。

目前TCP/IP網路,全部是通過路由器互連起來的,Internet就是成千上萬個IP子網通過路由器互連起來的國際性網路。這種網路稱為以路由器為基礎的網路(routerbasednetwork),形成了以路由器為節點的「網間網」。在「網間網」中,路由器不僅負責對IP分組的轉發,還要負責與別的路由器進行聯絡,共同確定「網間網」的路由選擇和維護路由表。

路由動作包括兩項基本內容:尋徑和轉發。尋徑即判定到達目的地的最佳路徑,由路由選擇演算法來實現。由於涉及到不同的路由選擇協議和路由選擇演算法,要相對復雜一些。為了判定最佳路徑,路由選擇演算法必須啟動並維護包含路由信息的路由表,其中路由信息依賴於所用的路由選擇演算法而不盡相同。路由選擇演算法將收集到的不同信息填入路由表中,根據路由表可將目的網路與下一站(nexthop)的關系告訴路由器。路由器間互通信息進行路由更新,更新維護路由表使之正確反映網路的拓撲變化,並由路由器根據量度來決定最佳路徑。這就是路由選擇協議(routingprotocol),例如路由信息協議(RIP)、開放式最短路徑優先協議(OSPF)和邊界網關協議(BGP)等。

轉發即沿尋徑好的最佳路徑傳送信息分組。路由器首先在路由表中查找,判明是否知道如何將分組發送到下一個站點(路由器或主機),如果路由器不知道如何發送分組,通常將該分組丟棄;否則就根據路由表的相應表項將分組發送到下一個站點,如果目的網路直接與路由器相連,路由器就把分組直接送到相應的埠上。這就是路由轉發協議(routedprotocol)。

路由轉發協議和路由選擇協議是相互配合又相互獨立的概念,前者使用後者維護的路由表,同時後者要利用前者提供的功能來發布路由協議數據分組。下文中提到的路由協議,除非特別說明,都是指路由選擇協議,這也是普遍的習慣。

3、路由協議

典型的路由選擇方式有兩種:靜態路由和動態路由。

靜態路由是在路由器中設置的固定的路由表。除非網路管理員干預,否則靜態路由不會發生變化。由於靜態路由不能對網路的改變作出反映,一般用於網路規模不大、拓撲結構固定的網路中。靜態路由的優點是簡單、高效、可靠。在所有的路由中,靜態路由優先順序最高。當動態路由與靜態路由發生沖突時,以靜態路由為准。

動態路由是網路中的路由器之間相互通信,傳遞路由信息,利用收到的路由信息更新路由器表的過程。它能實時地適應網路結構的變化。如果路由更新信息表明發生了網路變化,路由選擇軟體就會重新計算路由,並發出新的路由更新信息。這些信息通過各個網路,引起各路由器重新啟動其路由演算法,並更新各自的路由表以動態地反映網路拓撲變化。動態路由適用於網路規模大、網路拓撲復雜的網路。當然,各種動態路由協議會不同程度地佔用網路帶寬和CPU資源。

靜態路由和動態路由有各自的特點和適用范圍,因此在網路中動態路由通常作為靜態路由的補充。當一個分組在路由器中進行尋徑時,路由器首先查找靜態路由,如果查到則根據相應的靜態路由轉發分組;否則再查找動態路由。

根據是否在一個自治域內部使用,動態路由協議分為內部網關協議(IGP)和外部網關協議(EGP)。這里的自治域指一個具有統一管理機構、統一路由策略的網路。自治域內部採用的路由選擇協議稱為內部網關協議,常用的'有RIP、OSPF;外部網關協議主要用於多個自治域之間的路由選擇,常用的是BGP和BGP-4。下面分別進行簡要介紹。

3.1 RIP路由協議

RIP協議最初是為Xerox網路系統的Xeroxparc通用協議而設計的,是Internet中常用的路由協議。RIP採用距離向量演算法,即路由器根據距離選擇路由,所以也稱為距離向量協議。路由器收集所有可到達目的地的不同路徑,並且保存有關到達每個目的地的最少站點數的路徑信息,除到達目的地的最佳路徑外,任何其它信息均予以丟棄。同時路由器也把所收集的路由信息用RIP協議通知相鄰的其它路由器。這樣,正確的路由信息逐漸擴散到了全網。

RIP使用非常廣泛,它簡單、可靠,便於配置。但是RIP只適用於小型的同構網路,因為它允許的最大站點數為15,任何超過15個站點的目的地均被標記為不可達。而且RIP每隔30s一次的路由信息廣播也是造成網路的廣播風暴的重要原因之一。

3.2 OSPF路由協議

80年代中期,RIP已不能適應大規模異構網路的互連,0SPF隨之產生。它是網間工程任務組織(1ETF)的內部網關協議工作組為IP網路而開發的一種路由協議。

0SPF是一種基於鏈路狀態的路由協議,需要每個路由器向其同一管理域的所有其它路由器發送鏈路狀態廣播信息。在OSPF的鏈路狀態廣播中包括所有介面信息、所有的量度和其它一些變數。利用0SPF的路由器首先必須收集有關的鏈路狀態信息,並根據一定的演算法計算出到每個節點的最短路徑。而基於距離向量的路由協議僅向其鄰接路由器發送有關路由更新信息。

與RIP不同,OSPF將一個自治域再劃分為區,相應地即有兩種類型的路由選擇方式:當源和目的地在同一區時,採用區內路由選擇;當源和目的地在不同區時,則採用區間路由選擇。這就大大減少了網路開銷,並增加了網路的穩定性。當一個區內的路由器出了故障時並不影響自治域內其它區路由器的正常工作,這也給網路的管理、維護帶來方便。

3.3 BGP和BGP-4路由協議

BGP是為TCP/IP互聯網設計的外部網關協議,用於多個自治域之間。它既不是基於純粹的鏈路狀態演算法,也不是基於純粹的距離向量演算法。它的主要功能是與其它自治域的BGP交換網路可達信息。各個自治域可以運行不同的內部網關協議。BGP更新信息包括網路號/自治域路徑的成對信息。自治域路徑包括到達某個特定網路須經過的自治域串,這些更新信息通過TCP傳送出去,以保證傳輸的可靠性。

為了滿足Internet日益擴大的需要,BGP還在不斷地發展。在最新的BGp4中,還可以將相似路由合並為一條路由。

3.4 路由表項的優先問題

在一個路由器中,可同時配置靜態路由和一種或多種動態路由。它們各自維護的路由表都提供給轉發程序,但這些路由表的表項間可能會發生沖突。這種沖突可通過配置各路由表的優先順序來解決。通常靜態路由具有默認的最高優先順序,當其它路由表表項與它矛盾時,均按靜態路由轉發。

4、路由演算法

路由演算法在路由協議中起著至關重要的作用,採用何種演算法往往決定了最終的尋徑結果,因此選擇路由演算法一定要仔細。通常需要綜合考慮以下幾個設計目標:

——(1)最優化:指路由演算法選擇最佳路徑的能力。

——(2)簡潔性:演算法設計簡潔,利用最少的軟體和開銷,提供最有效的功能。

——(3)堅固性:路由演算法處於非正常或不可預料的環境時,如硬體故障、負載過高或操作失誤時,都能正確運行。由於路由器分布在網路聯接點上,所以在它們出故障時會產生嚴重後果。最好的路由器演算法通常能經受時間的考驗,並在各種網路環境下被證實是可靠的。

——(4)快速收斂:收斂是在最佳路徑的判斷上所有路由器達到一致的過程。當某個網路事件引起路由可用或不可用時,路由器就發出更新信息。路由更新信息遍及整個網路,引發重新計算最佳路徑,最終達到所有路由器一致公認的最佳路徑。收斂慢的路由演算法會造成路徑循環或網路中斷。

——(5)靈活性:路由演算法可以快速、准確地適應各種網路環境。例如,某個網段發生故障,路由演算法要能很快發現故障,並為使用該網段的所有路由選擇另一條最佳路徑。

路由演算法按照種類可分為以下幾種:靜態和動態、單路和多路、平等和分級、源路由和透明路由、域內和域間、鏈路狀態和距離向量。前面幾種的特點與字面意思基本一致,下面著重介紹鏈路狀態和距離向量演算法。

鏈路狀態演算法(也稱最短路徑演算法)發送路由信息到互聯網上所有的結點,然而對於每個路由器,僅發送它的路由表中描述了其自身鏈路狀態的那一部分。距離向量演算法(也稱為Bellman-Ford演算法)則要求每個路由器發送其路由表全部或部分信息,但僅發送到鄰近結點上。從本質上來說,鏈路狀態演算法將少量更新信息發送至網路各處,而距離向量演算法發送大量更新信息至鄰接路由器。

由於鏈路狀態演算法收斂更快,因此它在一定程度上比距離向量演算法更不易產生路由循環。但另一方面,鏈路狀態演算法要求比距離向量演算法有更強的CPU能力和更多的內存空間,因此鏈路狀態演算法將會在實現時顯得更昂貴一些。除了這些區別,兩種演算法在大多數環境下都能很好地運行。

最後需要指出的是,路由演算法使用了許多種不同的度量標准去決定最佳路徑。復雜的路由演算法可能採用多種度量來選擇路由,通過一定的加權運算,將它們合並為單個的復合度量、再填入路由表中,作為尋徑的標准。通常所使用的度量有:路徑長度、可靠性、時延、帶寬、負載、通信成本等。

5、新一代路由器

由於多媒體等應用在網路中的發展,以及ATM、快速乙太網等新技術的不斷採用,網路的帶寬與速率飛速提高,傳統的路由器已不能滿足人們對路由器的性能要求。因為傳統路由器的分組轉發的設計與實現均基於軟體,在轉發過程中對分組的處理要經過許多環節,轉發過程復雜,使得分組轉發的速率較慢。另外,由於路由器是網路互連的關鍵設備,是網路與其它網路進行通信的一個「關口」,對其安全性有很高的要求,因此路由器中各種附加的安全措施增加了CPU的負擔,這樣就使得路由器成為整個互聯網上的「瓶頸」。

傳統的路由器在轉發每一個分組時,都要進行一系列的復雜操作,包括路由查找、訪問控製表匹配、地址解析、優先順序管理以及其它的附加操作。這一系列的操作大大影響了路由器的性能與效率,降低了分組轉發速率和轉發的吞吐量,增加了CPU的負擔。而經過路由器的前後分組間的相關性很大,具有相同目的地址和源地址的分組往往連續到達,這為分組的快速轉發提供了實現的可能與依據。新一代路由器,如IPSwitch、TagSwitch等,就是採用這一設計思想用硬體來實現快速轉發,大大提高了路由器的性能與效率。

新一代路由器使用轉發緩存來簡化分組的轉發操作。在快速轉發過程中,只需對一組具有相同目的地址和源地址的分組的前幾個分組進行傳統的路由轉發處理,並把成功轉發的分組的目的地址、源地址和下一網關地址(下一路由器地址)放人轉發緩存中。當其後的分組要進行轉發時,茵先查看轉發緩存,如果該分組的目的地址和源地址與轉發緩存中的匹配,則直接根據轉發緩存中的下一網關地址進行轉發,而無須經過傳統的復雜操作,大大減輕了路由器的負擔,達到了提高路由器吞吐量的目標。

Ⅲ 計算機網路-網路層-路由選擇協議

互聯網採用的 路由選擇協議主要是自適應的(即動態的)、分布式路由選擇協議悉漏帶 。由於以下兩個原因,互聯網採用分層次的睜蘆路由選擇協議:

把整個互聯網劃分為許多較小的 自治系統 (autonomous system),一般都記為AS。自治系統AS是在單一技術管理下的一組路由器,而這些路由器使用一種自治系統內部的路由選擇協議和共同的度量。一個AS對其他AS表現出的是 一個單一的和一致的路由選擇策路 。

在目前的互聯網中,一個大的ISP就是一個自治系統。這樣,互聯網就把路由選擇協議劃分為兩大類,即:

(I) 內部網關協議IGP (Interior Gateway Protocol)即在一個自治系統內部使用的路由選擇協議,而這與在互聯網中的其他自治系統選用什麼路由選擇協議無關。目前這類路由選擇協議使用得最多,如RIP和OSPF協議。

(2) 外部網關協議EGP (External Gateway Protocol)若源主機和目的主機處在不同的自治系統中(這兩個自治系統可能使用不同的內部網關協議),當數據報傳到一個自治系統的邊界時,就需要使用一種協議將路由選擇信息傳遞到另一個自治系統中。這樣的協議就是外部網關協議EGP。目前使用最多的外部網關協議是BGP的版本4(BGP4)。

自治系統之間的路由選擇也叫做域間路由選擇(interdomain routing),而在自治系統內部路由選擇叫做域內路由選擇(intradomain routing)。

圖4-31是兩個自治系統互連在一起的示意圖。每個自治系統自己決定在本自治系統內部運行哪一個內部路由選擇協議(例如,可以是RIP,也可以是OSP℉)。但每個自治系統都有一個或多個路由器(圖中的路由器R1和搜罩R2)除運行本系統的內部路由選擇協議外,還要運行自治系統間的路由選擇協議(BGP4)。