路由資訊協議rip (routing information protocol) 是內部閘道器協議igp中最先得到廣泛使用的協議。
rip是一種分布式的、基於距離向量的路由選擇協議,是網際網路的標準協議,最大優點就是簡單。現已很少應用。 rip 協議要求網路中的每乙個路由器都要維護從它自己到其他每乙個目的網路的距離記錄(「距離向量」)。
「距離」的定義
從乙個路由器到直接連線的網路的距離定義為1。 從乙個路由器到非直接連線的網路的距離定義為所經過的路由器數加1。
rip 協議中的「距離」也稱為「跳數」(hop count), 因為每經過乙個路由器,跳數就加 1。這裡的「距離」實際上指的是「最短距離」。
rip認為乙個好的路由就是它通過的路由器的數目少,即「距離短」。rip允許一條路徑最多只能包含15個路由器。 「距離」的最大值為16時即相當於不可達。可見rip只適用於小型網際網路。
rip不能在兩個網路之間同時使用多條路由。rip 選擇乙個具有最少路由器的路由(即最短路由),哪怕還存在另一條高速(低時延)但路由器較多的路由。
rip 協議的三個特點
(1) 僅和相鄰路由器交換資訊。
(2) 交換的資訊是當前本路由器所知道的全部資訊, 即自己的路由表。
(3) 按固定的時間間隔交換路由資訊,例如,每隔30秒。當網路拓撲發生變化時,路由器也及時向相鄰路由器通告拓撲變化後的路由資訊。
路由表的建立
路由器在剛剛開始工作時,只知道到直接連線的網路的距離(此距離定義為 1)。它的路由表是空的。
以後,每乙個路由器也只和數目非常有限的相鄰路由器交換並更新路由資訊。 經過若干次更新後,所有的路由器最終都會知道到達本自治系統中任何乙個網路的最短距離和下一跳路由器的位址。
rip 協議的收斂 (convergence) 過程較快。「收斂」 就是在自治系統中所有的結點都得到正確的路由選擇資訊的過程。
(1) 先修改此rip 報文中的所有專案:把「下一跳」欄位中的位址都改為x,並把所有的「距離」欄位的值加1。三個關鍵資料:到目的位址n,距離d,下一跳路由器是x。
(2) 對修改後的rip報文中的每乙個專案,重複以下步驟: 若專案中的目的網路不在路由表中,則把該專案加到路由表中。 否則若下一跳字段給出的路由器位址是同樣的,則把收到的專案替換原路由表中的專案。 否則若收到專案中的距離小於路由表中的距離,則進行更新, 否則,什麼也不做。
(3) 若3分鐘還沒有收到相鄰路由器的更新路由表,則把此相鄰路由器記為不可達路由器,即將距離置為16(表示不可達)。
(4) 返回。
距離向量演算法的基礎就是bellman-ford 演算法(或 ford-fulkerson 演算法)。
這種演算法的要點是這樣的: 設x是結點a到b的最短路徑上的乙個結點。 若把路徑a→b拆成兩段路徑a→x和x→b,則每 一段路徑a→x和x→b也都分別是結點a 到x 和結點x到b的最短路徑。
rip協議讓網際網路中的所有路由器都和自己的相鄰路由器不斷交換路由資訊,並不斷更新其路由表, 使得從每乙個路由器到每乙個目的網路的路由都是 最短的(即跳數最少)。
雖然所有的路由器最終都擁有了整個自治系統的全域性路由資訊,但由於每乙個路由器的位置不同,它們的路由表當然也應當是不同的。
rip2 報文由首部和路由部分組成。
首部佔4個位元組,命令字段指出報文的意義(1表示請求路由 資訊,2表示對請求路由資訊的響應或未被請求而發出的路 由更新報文)。
rip2 報文中的路由部分由若干個路由資訊組成。每個路由資訊需要用20個位元組。位址族識別符號(又稱為位址類別)字段用來標誌所使用的位址協議(ip位址為2)。路由標記填入自治系統的號碼,這是考慮使rip有可能收到本自治系統以外的路由選擇資訊。再後面指出某個網路位址、該網路的子網掩碼、下一跳路由器位址以及到此網路的距離。
乙個rip報文最多可包括25個路由,因而rip報文的最大長度是4 +20*25 =504 位元組。如超過,必須再用乙個rip報文來傳送。rip2具有簡單的鑑別功能。若使用鑑別功能,則將原來寫入第乙個路由資訊(20 個 位元組)的位置用作鑑別。此時位址族識別符號置為全1, 而路由標記寫入鑑別型別,餘下16位元組為鑑別資料。
在鑑別資料之後才寫入路由資訊,但這時最多只能再放入24 個路由資訊。
rip協議的優缺點
優點:實現簡單,開銷較小。
缺點:rip 限制了網路的規模,它能使用的最大距離為15(16 表示不可達)、路由器之間交換的路由資訊是路由器中的完整路由表, 因而隨著網路規模的擴大,開銷也就增加。、「壞訊息傳播得慢」,使更新過程的收斂時間過長。
計算機網路 網路層 內部閘道器協議OSPF
ospf協議的名字是開放最短路徑優先。其最主要的特徵是使用分布式的鏈路狀態協議,它的三個要點和rip有所不同。使用洪氾法向本自治系統中的所有路由器傳送資訊。就是路由器向所有相鄰的路由器傳送資訊,收到資訊的路由器再將此資訊傳送給所有與自己相鄰的路由器 除剛傳送資訊過來的那個路由器外 最終本自治系統中的...
計算機網路(10)網路層
ip多播 ip多播就是一對多的通訊,網際網路範圍內的多播要靠路由器來實現,能夠執行多播協議的路由器稱為多播路由器。多播資料報的目的位址一定不能寫主機位址,因為多播組中可能有成千上萬個主機位址,所以自資料報的目的位址中寫入多播組的標示符,設法讓加入這個多播組的主機位址與標示符關聯起來。多播組的標示符就...
計算機網路04 網路層
路由器中的子網掩碼目的是告訴使用者網路是哪一部分。比如網路是10.0.0.0,其中子網掩碼是255.0.0.0,則子網掩碼中的255表示網路是10部分,同樣子網掩碼格式的網段必須相同。在客戶端和伺服器之間傳輸資料的模型 其中mac位址是決定方式 使用自己的子網掩碼,判斷自己在哪個網段,判斷目標位址在...