網路層 路由演算法及協議 上

2021-10-25 09:17:29 字數 2024 閱讀 7066

在前面我們學過,ip位址=網路號+主機號。路由選擇演算法是基於網路的,準確說是基於網路號的,而不是基於ip位址。

先看乙個例子:

當你想向遠方的親戚寄乙個快遞時,往往都是先把東西送到快遞站,然後由快遞站選擇路徑傳遞到親戚手中。

那麼可以這麼粗略地比喻,這個快遞站負責的範圍就是乙個網路,而你就是網路中的一台主機,快遞站就是路由器。

往往快遞站選擇郵遞路線都是基於快遞站的位址(也就是基於網路),而不是基於你的位址。

由此可看出路由選擇演算法處理的問題本質所在:基於網路,選擇合適的分組傳送路徑

如圖所示,假設此時網路m中的主機甲想向網路n的主機乙傳送乙個分組(資料報)

假設經過路由器的某種協同合作。自動給該待傳送的分組選擇了如下路徑:

那麼對該分組,路由器f就是路由器c的下一跳路由,同理分組在路由器f時,其下一跳路由即為路由器g,該條路徑就是該分組的路由路徑。網路m也稱與路由器a直接相連,同理網路n與路由器g直接相連。

路由器接收到分組p後,從p中提取目的ip位址a,得出目標位址的網路號n若n與該路由器直接相連,則直接交付目的主機,否則間接交付,執行3

查詢路由表,若發現存在網路號n的特定路由,把分組交給指定的下一跳路由,否則執行5

若路由表有預設路由,把分組交給預設路由,否則執行6

報告**分組出錯

注:路由表並沒有給出分組在網際網路傳送的完整路徑,只是給出了經過當前路由時的下一條路徑;路由**時,並沒有把下一跳路由器的ip位址填入分組(否則目的主機ip被佔),而是交付給資料鏈路層,通過查詢ip位址-mac位址對映表,把下一跳路由器的mac位址填入資料幀進行傳輸

路由選擇演算法分為兩大類:靜態路由演算法(一般人工配置),動態路由演算法(一般機器配置)。一般人工配置麻煩,效果不一定好,相對而言,機器配置就有很多優勢。

由於處於安全等方面,網際網路中有自治系統as(autonomous system) ,比如某個國家計算機網路自治,此時可能安全性比效率更重要,故又有分類:

rip協議(routing information protocol):屬於內部閘道器協議,動態路由協議。基於距離向量的路由選擇協議,兩個路由之間的距離定義為1,路由器到本網的距離定義為1,距離等於16即認為無窮大,目標網路不可達,相鄰路由器之間定期進行資訊交換,協同合作確定路由路徑,完成路由器的工作。

ospf協議(open shortest path first):屬於內部閘道器協議,動態路由協議。基於鏈路狀態的路由選擇協議(所謂鏈路是路由路徑的一種專業描述),利用特定的方法(比如傳輸時延)定義兩個路由之間的鏈路代價,工作時全部路由器自動同步鏈路資料庫,以此協同合作確定路由路徑,完成路由器的工作。

bgp協議(border gateway protocol):屬於外部閘道器協議,動態路由協議。自治系統至少選出乙個發言人(即代表路由器),代表該自治系統下的路由器,與其他自治系統的代表路由器共同工作,路由選擇合適路徑。自治系統間的路由選擇一般是樹形結構,層次分明,不存在環形路徑。

兩類典型的動態路由演算法:距離向量路由(distance vector)演算法,鏈路狀態路由(link state)演算法。rip屬於距離向量路由演算法,ospf屬於鏈路狀態路由演算法,具體演算法內容見下一節。

網路層 路由協議

不存在一種絕對的最佳路由演算法.所謂 最佳 只能是相對於某一種特定要求下得出的較為合理的選擇而已 實際的路由選擇演算法,應盡可能接近於理想的演算法 路由選擇是非常複雜的問題,是網路中的所有結點共同協調工作的結果 路由選擇的環境往往是不斷變化的,而這種變化有時無法事先知道 定義 當路由表中與包的目的位...

網路層 路由協議

網路層 路由協議 路由協議特點 圖釋預設路由 特定主機路由 路由表資訊 分組 演算法 動態路由 理想路由演算法 分層次路由選擇協議 自治系統 as 網際網路有兩大類路由選擇協議 和路由選擇 不存在一種絕對的最佳路由演算法.所謂 最佳 只能是相對於某一種特定要求下得出的較為合理的選擇而已 實際的路由選...

網路層 路由協議

路由協議特點 圖釋預設路由 特定主機路由 路由表資訊 分組 演算法 動態路由 理想路由演算法 分層次路由選擇協議 自治系統 as 網際網路有兩大類路由選擇協議 和路由選擇 不存在一種絕對的最佳路由演算法.所謂 最佳 只能是相對於某一種特定要求下得出的較為合理的選擇而已 實際的路由選擇演算法,應盡可能...