路由信息協議RIP
一、背景
路由信息協議(RIP)是以跳數作為metric的距離向量協議。RIP廣泛用于全球因特網的路由,是一種內部網關協議(interior gateway protocol),即在自治系統(tǒng)內部執(zhí)行路由功能。外部網關路由協議(exterior gateway protocol),如邊緣網關協議(BGP),在不同的自治系統(tǒng)間進行路由。RIP的前身是Xerox協議GWINFO,后來的版本routed(發(fā)音為/rutdi/)封裝在1982年伯克利標準發(fā)布Unix(即BSD中)。RIP本身發(fā)展成因特網路由協議,有些協議族使用了RIP的變種,例如:AppleTalk路由表維護協議(RTMP)和Banyan VINES路由表協議(RIP)就是基于IP版的RIP的。RIP最新的增強版是RIP2規(guī)范,它允許在RIP分組中包含更多的信息并提供了簡單的認證機制。
IP RIP在兩個文檔中正式定義:RFC 1058和1723。RFC 1058(1988)描述了RIP的第一版實現,RFC 1723(1994)是它的更新,允許RIP分組攜帶更多的信息和安全特性。
本文簡單介紹RIP的基本能力和特性,包括路由更新過程,RIP路由metric,路由穩(wěn)定性和計時器。
二、路由更新
RIP以規(guī)則的時間間隔及在網絡拓撲改變時發(fā)送路由更新信息。當路由器收到包含某表項的更新的路由更新信息時,就更新其路由表:該路徑的metric值加上1,發(fā)送者記為下一跳。RIP路由器只維護到目的的最佳路徑(具有最小metric值的路徑)。更新了自己的路由表后,路由器立刻發(fā)送路由更新把變化通知給其它路由器,這種更新是與周期性發(fā)送的更新信息無關的。
三、RIP路由metric
RIP使用單一路由metric(跳數)來衡量源網絡到目的網絡的距離。從源到目的的路徑中每一跳被賦以一個跳數值,此值通常為1。當路由器收到包含新的或改變的目的網絡表項的路由更新信息,就把其metric值加1然后存入路由表,發(fā)送者的IP地址就作為下一跳地址。
RIP通過對從源到目的的最大跳數加以限制來防止路由環(huán),最大值為15。如果路由器收到了含有新的或改變的表項的路由更新信息,且把metric值加1后成為無窮大(即16),就認為該目的網絡不可到達。
四、RIP的穩(wěn)定性
為了適應快速的網絡拓撲變化,RIP規(guī)定了一些與其它路由協議相同的穩(wěn)定特性。例如,RIP實現了split-horizon和hold-down機制來防止路由信息的錯誤傳播。此外,RIP的跳數限制也防止了無限增長而產生路由環(huán)。
五、RIP計時器
RIP使用了一些計時器以控制其性能,包括路由更新計時器、路由超時和路由清空的計時器。路由更新計時器記錄周期性更新的時間間隔,通常為30秒,每當該計時器重置時增加小的隨機秒數以防止沖突。每個路由表項都有相關的路由超時計時器,當路由超時計時器過期時,該路徑就標記為失效的,但仍保存在路由表中,直到路由清空計時器過期才被清掉。
六、RIP分組格式
下面描述IP RIP和IP RIP2的分組格式。
1、RIP分組格式
命令--表示該分組是請求還是響應。請求分組要求路由器發(fā)送其路由表的全部或部分。響應分組可以是主動提供的周期性路由更新或對請求的響應。大的路由表可以使用多個RIP分組來傳遞信息。
版本號--指明使用的RIP版本,此域可以通知不同版本的不兼容。
零--未使用。
地址族標志(AFI)--指明使用的地址族。RIP設計用于攜帶多種不同協議的路由信息。每個項都有地址族標志來表明使用的地址類型,IP的AFI是2。
地址--指明該項的IP地址。
metric--表示到目的的過程中經過了多少跳數(路由器數)。有效路徑的值在1和15之間,16表示不可達路徑。
注:在一個IP RIP分組中最多可有25個AFI、地址和metric域,即一個RIP分組中最多可含有25個地址項。
2、RIP2分組格式
RIP2規(guī)范(RFC1723)允許RIP分組包含更多的信息,并提供了簡單的認證機制,如下圖。
命令--表示該分組是請求還是響應。請求分組要求路由器發(fā)送其路由表的全部或部分。響應分組可以是主動提供的周期性路由更新或對請求的響應。大的路由表可以使用多個RIP分組來傳遞信息。
版本--指明使用的RIP版本,在實現RIP2或進行認證的RIP分組中,此值為2。
未使用--值為0。
地址族標志(AFI)--指明使用的地址族。RIP設計用于攜帶多種不同協議的路由信息。每個項都有地址族標志來表明使用的地址類型,IP的AFI是2。如果第一項的AFI為0xFFFF,該項剩下的部分就是認證信息。目前,唯一的認證類型就是簡單的口令。
路由標記--提供區(qū)分內部路由(由RIP學得)和外部路由(由其它協議學得)的方法。
IP地址--指明該項的IP地址。
子網掩碼--包含該項的子網掩碼。如果此域為0,則該項不指定子網掩碼。
下一跳--指明下一跳的IP地址。
metric--表示到目的的過程中經過了多少跳數(路由器數)。有效路徑的值在1和15之間,16表示不可達路徑。
注:在一個IP RIP分組中最多可有25個AFI、地址和metric域,即一個RIP分組中最多可含有25個地址項。如果AFI指明為認證信息,則只能有24個路由表項。