路由信息協議,通常稱為Rip(RoutingInformationPRotocol),是使用最久的協議之一。RIP是一類基于距離-向量路由算法的協議,這種算法在ARPANET出現之前即存在。在1957~1962年之間人們對這種算法進行了理論上的研究。在整個60年代,這些算法被不同的公司廣泛實現并標以不同的名字。最終造成的結果是這些產品之間緊密相關,但同時由于被各公司進行功能強化而使它們不能提供完全的互操作能力。
本章深入討論當前開放標準RIP的細節、機制和使用情況。
1理解RFC1058
1988年6月,RFC1058發布,這個文檔描述了一個新的、真正開放的距離-向量形式的路由協議:開放式標準RIP。這個RIP,和其先代一樣,是一個簡單的距離-向量路由協議,它是專門為小型簡單網絡而設計的內部網關協議(IGP)。
使用RIP的每個設備至少要有一個網絡接口。假設這個網絡是一種局域網體系結構(如以太網、令牌環和FDDI),RIP只需為不與這個局域網直接相連的設備計算路由。依靠于所使用的應用程序,位于相同局域網上的設備可能只使用局域網機制進行通信。
1.1RIP報文格式
RIP使用非凡的報文來收集和共享至有關目的地的距離信息。圖1顯示了路由信息域中只帶一個目的地的RIP報文。

RIP報文中至多可以出現25個AFI、互聯網絡地址和度量域。這樣答應使用一個RIP報文來更新一個路由器中的多個路由表項。包含多個路由表項的RIP報文只是簡單地重復從AFI到度量域的結構,其中包括所有的零域。這個重復的結構附加在圖12-1結構的后面。具有兩個表項的RIP報文如圖2所示。

圖2具有兩個表項的RIP報文
地址域可以既包括發送者的地址也包括發送者路由表中的一系列IP地址。請求報文含有一個表項并包括請求者的地址。應答報文可以包括至多25個RIP路由表項。
整個的RIP報文大小限制是512B。因此,在更大的RIP網絡中,對整個路由表的更新請求需要傳送多個RIP報文。報文到達目的地時不提供順序化;一個路由表項不會分開在兩個RIP報文中。因此,任何RIP報文的內容都是完整的,即使它們可能僅僅是整個路由表的一個子集。當報文收到時接收節點可以任意處理更新,而不需對其進行順序化。
比如,一個RIP路由器的路由表中可以包括100項。與其他RIP路由器共享這些信息需要4個RIP報文,每個報文包括25項。假如一個接收節點(結點)首先收到了4號報文(包括從76至100的表項),它會首先簡單地更新路由表中的對應部分,這些報文之間沒有順序相關性。這樣使得RIP報文的轉發可以省去傳輸協議如TCP所特有的開銷。
1.命令域命令域指出RIP報文是一個請求報文還是對請求的應答報文。兩種情形均使用相同的幀結構:
•請求報文請求路由器發送整個或部分路由表。
•應答報文包括和網絡中其他RIP節點共享的路由表項。應答報文可以是對請求的應答,也可以是主動的更新。
2.版本號域
版本號域包括生成RIP報文時所使用的版本。RIP是一個開放標準的路由協議,它會隨時間而進行更新,這些更新反映在版本號中。雖然有許多像RIP一樣的路由協議出現,但RIP只有兩個版本:版本1和版本2。這一章對通常使用的版本1進行描述。
3.0域嵌入在RIP報文中的多個0域證實了在RFC1058出現之前存在許多如RIP一樣的協議。大多數0域為的是為了向后兼容舊的如RIP一樣的協議,0域說明不支持它們所有的私有特性。
比如,兩個舊的機制traceon和traceoff。這些機制被RFC1058拋棄了,然而開放式標準RIP需要和支持這些機制的協議向后兼容。因此,RFC1058在報文中為其保留了空間,但卻要求這些空間恒置為0。當收到的報文中這些域不是0時就會被簡單地丟棄。
不是所有的0域都是為了向后兼容。至少有一個0域是為將來的使用而保留的。
4.AFI域
地址家族標識(AddressFamilyIdentifier,AFI)域指出了互聯網絡地址域中所出現的地址家族。雖然RFC1058是由IETF創建的,因此適用于網際協議(IP),但它的設計提供了和以前版本的兼容性。這意味著它必須提供大量互聯網絡地址構成或家族的路由信息的傳輸。因此,開放式標準RIP需要一種機制來決定其報文中所攜帶地址的類型。
5.互聯網絡地址域
4字節的互聯網絡地址域包含一個互聯網絡地址。這個地址可以是主機、網絡,甚至是一個缺省網關的地址碼。這個域內容如何變化的兩個例子如下:
•在一個單表項請求報文中,這個域包括報文發送者的地址。
•在一個多表項應答報文中,這些域將包括報文發送者路由表中存儲的IP地址。
6.度量標準域
RIP報文中的最后一個域是度量標準域,這個域包含報文的度量計數。這個值在經過路由器時被遞增。數量標準有效的范圍是在1~15之間。度量標準實際上可以遞增至16,但是這個值和無效路由對應。因此,16是度量標準域中的錯誤值,不在有效范圍內。
1.2RIP路由表
如上一節所描述的,使用RIP報文中列出的項,RIP主機可以彼此之間交流路由信息。這些信息存儲在路由表中,路由表為每一個知道的、可達的目的地保留一項。每個目的地表項是到達那個目的地的最低開銷路由。
注重每個目的地的表項數可以隨路由生產商的不同而變化。生產商可能選擇遵守規范,
也可以對標準進行他們認為合適的“強化”。所以,用戶很可能會發現某個非凡商標的
路由器為每一個網絡中的目的地存儲至多4條相同費用的路由。
每個路由表項包括以下各域:
•目的IP地址域
•距離-向量度量域
•下一跳IP地址域
•路由變化標志域
•路由計時器域注重雖然RFC1058是一個開放式標準,能支持大量互連網絡地址結構,然而它是由
IETF設計用于Internet中自治系統內的協議。如此,使用這種形式RIP的自然是網絡互聯協議。
1.目的IP地址域
任何路由表中所包含的最重要信息是到所知目的地的IP地址。一旦一臺RIP路由器收到一個數據報文,就會查找路由表中的目的IP地址以決定從哪里轉發那個報文。
2.度量標準域
路由表中的度量域指出報文從起始點到特定目的地的總耗費。路由表中的度量是從路由器到特定目的地之間網絡鏈路的耗費總和。
3.下一跳IP地址域
下一跳IP地址域包括至目的地的網絡路徑上下一個路由器接口的IP地址。假如目的IP地址所在的網絡與路由器不直接相連時,路由器表中才出現此項。
4.路由變化標志域
路由變化標志域用于指出至目的IP地址的路由是否在最近發生了變化。這個域是重要的,因為RIP為每一個目的IP地址只記錄一條路由。
5.路由計時器域
有兩個計時器與每條路由相聯系,一個是超時計時器,一個是路由刷新計時器。這些計時器一同工作來維護路由表中存儲的每條路由的有效性。路由表維護過程在12.2.2節中具體描述。
新聞熱點
疑難解答