當前位置:吉日网官网 - 傳統節日 - 路由器原理及常用路由協議和算法介紹。

路由器原理及常用路由協議和算法介紹。

近十年來,隨著計算機網絡規模的不斷擴大和大規模互聯網的快速發展,路由技術逐漸成為網絡技術的關鍵部分,路由器也成為最重要的網絡設備。用戶的需求推動了路由技術的發展和路由器的普及。人們不滿足於只享受本地網絡上的信息,而是希望最大限度地利用世界各個地區的各類網絡資源。目前,任何具有壹定規模的計算機網絡(如企業網、校園網、智能建築等。)在沒有路由器的情況下無法正常運行和管理,無論它使用的是快速互聯網技術、FDDI技術還是ATM技術。

1,網絡互聯

將自己的網絡與其他網絡互聯,從網絡中獲取更多的信息,向網絡發布自己的新聞,是網絡互聯的主要驅動力。網絡互聯的方式有很多種,其中最常用的是網橋互聯和路由器互聯。

1.1橋互聯網絡

網橋工作在OSI模型的第二層,即鏈路層。完整的數據幀轉發,主要目的是在連接的網絡之間提供透明的通信。網橋轉發是根據數據幀中的源地址和目的地址來判斷壹個幀是否應該轉發,轉發到哪個端口。幀中的地址稱為“MAC”地址或“硬件”地址,壹般是帶有網卡的地址。

網橋的功能是將兩個或多個網絡互連起來,並提供透明的通信。網絡上的設備看不到橋的存在,設備之間的通信就像在網絡上壹樣方便。因為網橋轉發數據幀,所以只能連接相同或相似的網絡(結構相同或相似的數據幀),比如以太網和令牌環網的互聯。對於不同類型的網絡(數據幀結構不同),比如以太網和X.25之間,網橋是無能為力的。

網橋擴大了網絡規模,提高了網絡性能,給網絡應用帶來了方便。在以前的網絡中,網橋被廣泛使用。但是,橋的互聯也帶來了很多問題:壹個是廣播風暴。網橋不會阻止網絡中的廣播消息。當網絡很大時(幾個網橋和多個以太網段),可能會引起廣播風暴,導致整個網絡完全被廣播信息填滿,直到完全癱瘓。第二個問題是,在與外網互聯時,網橋會將內外網合並成壹個網絡,雙方會自動完全向對方開放自己的網絡資源。這種互聯方式在與外網互聯時顯然是不可接受的。問題的主要來源是網橋只最大限度地與網絡通信,而不考慮傳輸的信息。

1.2路由器互聯網絡

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

路由器工作在OSI模型的第三層,即網絡層。路由器利用網絡層定義的“邏輯”上的網絡地址(IP地址)來區分不同的網絡,實現網絡互聯和隔離,保持各個網絡的獨立性。路由器不轉發廣播消息,而是將廣播消息限制在自己的網絡內。發送到其他網絡的數據首先發送到路由器,然後由路由器轉發。

IP路由器只轉發IP包,其余的留在網絡中(包括廣播),這樣就保持了各個網絡的相對獨立性,可以形成壹個很多網絡(子網)互聯的大網絡。因為它是在網絡層互連的,所以路由器可以很容易地連接不同類型的網絡。只要網絡層運行的是IP協議,就可以通過路由器互聯。

網絡中的設備用它們的網絡地址(TCP/IP網絡中的IP地址)相互通信。IP地址是壹個“邏輯”地址,與硬件地址無關。路由器只根據IP地址轉發數據。IP地址的結構有兩部分,壹部分定義網絡號,另壹部分定義網絡中的主機號。目前,在Internet網絡中,使用子網掩碼來確定IP地址中的網絡地址和主機地址。子網掩碼和IP地址壹樣,都是32位,它們是壹壹對應的。規定IP地址對應子網掩碼中數字“1”的部分為網絡號,對應數字“0”的部分為主電話號碼。網絡號和主機號組合在壹起形成壹個完整的IP地址。同壹網絡中主機的IP地址必須具有相同的網絡號。這個網絡稱為IP子網。

只能在具有相同網絡號的IP地址之間進行通信。要與其他IP子網中的主機通信,必須通過同壹網絡中的路由器或網關。不同網絡號的IP地址不能直接通信,即使連在壹起。

路由器有多個端口用於連接多個IP子網。要求每個端口的IP地址的網絡號與連接的IP子網的網絡號相同。不同的端口有不同的網絡號,對應不同的IP子網,這樣每個子網中的主機就可以通過自己子網的IP地址向路由器發送所需的IP數據包。

2.路由原則

當壹個IP子網中的主機向同壹IP子網中的另壹臺主機發送IP包時,它會直接將該IP包發送到網絡,對方會收到。當向網絡上不同IP地址的主機發送IP包時,它應該選擇壹個可以到達目的子網的路由器,並將IP包發送到負責將IP包發送到目的地的路由器。如果沒有找到這樣的路由器,主機會將IP數據包發送到名為“默認網關”的路由器。“默認網關”是每臺主機上的配置參數,它是連接到同壹網絡的路由器端口的IP地址。

當路由器轉發壹個IP包時,它只根據IP包的目的IP地址的網絡號部分選擇壹個合適的端口,並將IP包發送出去。與主機壹樣,路由器也應該確定端口是否連接到目的子網。如果是,它會直接通過端口將數據包發送到網絡。否則,它還應該選擇下壹個路由器來傳輸數據包。路由器也有自己的默認網關,用於傳輸IP數據包,而不知道將它們發送到哪裏。這樣,知道如何傳輸的IP包通過路由器被正確轉發,不知道的IP包被發送到“默認網關”路由器。這樣IP包最終會被送到目的地,到達不了目的地的IP包會被網絡丟棄。

目前TCP/IP網絡都是通過路由器互聯的,而互聯網是成千上萬個IP子網通過路由器互聯的國際網絡。這種網絡被稱為基於路由器的網絡(routerbasednetwork ),它以路由器為節點形成“互聯網絡”。在“互聯網絡”中,路由器不僅負責轉發IP數據包,還負責與其它路由器通信。* * *它與確定“互聯網絡”的路由和維護路由表是壹樣的。

路由行為包括兩個基本內容:路由和轉發。尋路是確定到達目的地的最佳路徑,它是通過路由算法來實現的。因為涉及到不同的路由協議和路由算法,所以相對比較復雜。為了確定最佳路徑,路由算法必須啟動並維護壹個包含路由信息的路由表,路由表根據所使用的路由算法而有所不同。路由算法將收集到的不同信息填入路由表,根據路由表可以將目的網絡與下壹跳的關系告知路由器。路由器交換信息以更新路由,更新和維護路由表以正確反映網絡的拓撲變化,路由器根據度量確定最佳路徑。這是路由協議,如路由信息協議(RIP)、開放最短路徑優先協議(OSPF)和邊界網關協議(BGP)。

轉發意味著沿著具有良好路由的最佳路徑傳輸信息包。路由器首先在路由表中查找,以確定它是否知道如何將數據包發送到下壹個站點(路由器或主機)。如果路由器不知道如何發送數據包,它通常會丟棄該數據包。否則,數據包將根據路由表中的相應條目被發送到下壹個站點。如果目的網絡直接連接到路由器,路由器會將數據包直接發送到相應的端口。這是常規協議。

路由轉發協議和路由協議是互補而獨立的概念。前者使用後者維護的路由表,後者使用前者提供的功能發布路由協議數據包。除非特別說明,下面提到的路由協議都是指路由協議,這也是壹個普遍的習慣。

3.路由協議

有兩種典型的路由方法:靜態路由和動態路由。

靜態路由是路由器中設置的固定路由表。除非網絡管理員介入,否則靜態路由不會改變。因為靜態路由不能反映網絡的變化,所以壹般用在網絡規模小、拓撲固定的網絡中。靜態路由的優點是簡單、高效和可靠。在所有路由中,靜態路由的優先級最高。當動態路由與靜態路由沖突時,以靜態路由為準。

動態路由是網絡中的路由器相互通信、傳輸路由信息並使用收到的路由信息更新路由表的過程。它能實時適應網絡結構的變化。如果路由更新信息表明網絡發生了變化,路由軟件將重新計算路由並發送新的路由更新信息。這些消息通過各種網絡,導致路由器重新啟動其路由算法並更新其路由表,以動態反映網絡拓撲的變化。動態路由適用於網絡規模大、網絡拓撲復雜的網絡。當然,各種動態路由協議都會不同程度地占用網絡帶寬和CPU資源。

靜態路由和動態路由各有特點和適用範圍,所以在網絡中動態路由通常作為靜態路由的補充。當壹個包在路由器中進行尋路時,路由器首先尋找壹條靜態路由,如果找到,就按照對應的靜態路由轉發該包;否則,尋找動態路由。

根據是否在自治域內使用,動態路由協議分為內部網關協議(IGP)和外部網關協議(EGP)。這裏的自治域是指具有統壹管理組織和統壹路由策略的網絡。自治域使用的路由協議稱為內部網關協議,常用的協議有RIP、OSPF;;外部網關協議主要用於多個自治域之間的路由,常用的有BGP和BGP-4。下面分別簡單介紹壹下。

3.1 RIP路由協議

RIP協議最初是為Xerox網絡系統中Xeroxparc的通用協議而設計的,是互聯網中常用的路由協議。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傳輸,以確保傳輸的可靠性。

為了滿足互聯網日益增長的需求,BGP還在發展中。在最新的BGp4中,相似的路由也可以合並成壹條路由。

3.4路由表條目的優先級問題

在路由器中,可以同時配置靜態路由和壹條或多條動態路由。它們維護的路由表被提供給轉發器,但是這些路由表中的條目之間可能存在沖突。這種沖突可以通過配置每個路由表的優先級來解決。通常情況下,靜態路由默認具有最高優先級,當其他路由表條目與之沖突時,它們都由靜態路由轉發。

4.路由算法

路由算法在路由協議中起著非常重要的作用,采用哪種算法往往決定了最終的路由結果,所以在選擇路由算法時壹定要慎重。通常,需要綜合考慮以下設計目標:

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

-(2)簡單性:算法設計簡單,用最少的軟件和開銷提供最有效的功能。

-(3)魯棒性:當路由算法處於異常或不可預測的環境中,如硬件故障、負載過大或誤操作時,能正確運行。由於路由器分布在網絡連接點上,當它們發生故障時,將會產生嚴重的後果。最好的路由器算法通常能經受住時間的考驗,在各種網絡環境中被證明是可靠的。

(4)快速收斂:收斂是所有路由器在最佳路徑上達到相同決策的過程。當網絡事件導致路由可用或不可用時,路由器會發出更新消息。路由更新信息遍布網絡,導致最佳路徑的重新計算,最終達到所有路由器認可的最佳路徑。收斂速度慢的路由算法會造成路徑循環或網絡中斷。

(5)靈活性:路由算法能夠快速準確地適應各種網絡環境。例如,如果某個網段出現故障,路由算法應該能夠快速找到故障,並為使用該網段的所有路由選擇另壹條最佳路徑。

路由算法可以分為以下幾類:靜態和動態、單向和多向、平等和分層、源路由和透明路由、域內和域間、鏈路狀態和距離向量。前面幾個的特點和字面意思基本壹致。下面重點介紹鏈路狀態和距離矢量算法。

鏈路狀態算法(也稱為最短路徑算法)向互聯網上的所有節點發送路由信息,但對於每臺路由器,只發送其路由表中描述其自身鏈路狀態的部分。距離矢量算法(也稱為Bellman-Ford算法)要求每臺路由器發送其路由表的全部或部分信息,但只能發送給鄰居節點。本質上,鏈路狀態算法向網絡的所有部分發送少量更新信息,而距離矢量算法向相鄰路由器發送大量更新信息。

因為鏈路狀態算法收斂更快,所以在某種程度上它比距離矢量算法更不容易產生路由環。另壹方面,鏈路狀態算法比距離矢量算法需要更多的CPU能力和更多的存儲空間,因此鏈路狀態算法的實現成本會更高。除了這些不同之處,這兩種算法在大多數環境下都能很好地運行。

最後,應該指出的是,路由算法使用許多不同的度量來確定最佳路徑。復雜的路由算法可能會使用多個度量來選擇路由,並通過壹定的加權運算,將它們組合成壹個單壹的復合度量,然後將其填充到路由表中作為路由的標準。常用的度量指標有:路徑長度、可靠性、延遲、帶寬、負載、通信成本等。

5、新壹代路由器

由於網絡中多媒體和其他應用的發展,以及ATM和快速以太網等新技術的不斷采用,網絡的帶寬和速度迅速提高,傳統的路由器已經不能滿足人們對路由器的性能要求。由於傳統路由器中數據包轉發的設計和實現都是基於軟件的,轉發過程中對數據包的處理要經過很多環節,轉發過程復雜,使得數據包轉發速率較慢。此外,由於路由器是網絡互聯的關鍵設備,是網絡與其他網絡通信的網關,對其安全性要求很高,因此路由器中的各種附加安全措施增加了CPU的負擔,使路由器成為整個互聯網上的“瓶頸”。

傳統路由器在轉發每個數據包時都要執行壹系列復雜的操作,包括路由查找、訪問控制列表匹配、地址解析、優先級管理等附加操作。這壹系列操作極大地影響了路由器的性能和效率,降低了包轉發速率和吞吐量,增加了CPU的負擔。而經過路由器的數據包之間存在很大的相關性,具有相同目的地址和源地址的數據包往往會不斷到達,這就為數據包的快速轉發提供了可能和基礎。新壹代路由器如IPSwitch、TagSwitch等都是采用這種設計思想,用硬件實現快速轉發,大大提高了路由器的性能和效率。

新壹代路由器使用轉發緩存來簡化數據包的轉發操作。在快速轉發的過程中,只有目的地址和源地址相同的壹組包的前幾個包需要進行傳統的路由轉發處理,轉發成功的包的目的地址、源地址和下壹個網關地址(下壹個路由器地址)放入轉發緩存。當要轉發後續數據包時,它應該首先檢查轉發緩存。如果數據包的目的地址和源地址與轉發緩存匹配,則直接根據轉發緩存中的下壹個網關地址進行轉發,不需要經過傳統的復雜操作,從而大大減輕路由器的負擔,達到提高路由器吞吐量的目的。

  • 上一篇:賽龍舟是潮汕的習俗嗎?
  • 下一篇:如何對運動損傷進行康復訓練
  • copyright 2024吉日网官网