信息協定,歷史,運作原理,版本,RIPv1,RIPv2,RIPng,相似協定,縮寫,分層,RIP,適用,套用,RIP概述,防環機制,版本,信息類型,局限性,相同,不同,不足之處,常見問題,工作原理,
信息協定 路由信息協定(Routing Information Protocol,縮寫:
RIP )是一種使用最廣泛的
內部網關協定 (IGP)。(IGP)是在內部網路上使用的
路由協定 (在少數情形下,也可以用於連線到
網際網路 的網路),它可以通過不斷的交換信息讓
路由器 動態的適應網路連線的變化,這些信息包括每個路由器可以到達哪些網路,這些網路有多遠等。 IGP是套用層協定,並使用
UDP 作為傳輸協定。
雖然RIP仍然經常被使用,但大多數人認為它將會而且正在被諸如
OSPF 和
IS-IS 這樣的路由協定所取代。當然,我們也看到
EIGRP ,一種和RIP屬於同一基本協定類(
距離矢量路由協定 ,Distance Vector Routing Protocol)但更具適應性的路由協定,也得到了一些使用。
歷史 Xerox公司在20世紀70年代開發的,是IP所使用的第一個路由協定,RIP已經成為從UNIX系統到各種路由器的必備路由協定。RIP協定有以下特點: (1)RIP是自治系統內部使用的協定即內部網關協定,使用的是距離矢量算法。 (2)RIP使用UDP的520連線埠進行RIP進程之間的通信。 (3)RIP主要有兩個版本:RIPv1和RIPv2。RIPv1協定的具體描述在RFC1058中,RIPv2是對RIPv1協定的 改進,其協定的具體描述在RFC2453中。 (4)RIP協定以跳數作為網路度量值。
(5)RIP協定採用廣播或組播進行路由更新,其中RIPv1使用廣播,而RIPv2使用組播(224.0.0.9)。 (6)RIP協定支持主機被動模式,即RIP協定允許主機只接收和更新路由信息而不傳送信息。 (7)RIP協定支持默認路由傳播。 (8)RIP協定的網路直徑不超過15跳,適合於中小型網路。16跳時認為網路不可達。 (9)RIPv1是有類路由協定,RIPv2是無類路由協定,即RIPv2的報文中含有掩碼信息。
RIP是由“網關信息協定”(
Xerox Parc 的用於網際網路工作的PARC通用數據包協定簇的一部分)發展過來的,可以說網關信息協定是RIP的最早的版本。後來的一個版本才被命名為“路由信息協定”,是Xerox網路服務協定簇的一部分。
運作原理 同一自治系統(A.S.)中的路由器每 30秒會與相鄰的路由器 交換子訊息,以動態的建立
路由表 。
RIP 允許最大的hop數(跳數)為15 多於15跳不可達。
版本 RIP共有三個版本,RIPv1, RIPv2, RIPng
其中RIPV1和RIPV2是用在IPV4的網路環境裡,RIPng是用在IPV6的網路環境裡。
RIPv1 RIPv1使用分類路由,定義在[RFC 1058]中。在它的路由更新(Routing Updates)中並不帶有
子網 的資訊,因此它無法支持
可變長度子網掩碼 。這個限制造成在RIPv1的網路中,同級網路無法使用不同的子網掩碼。換句話說,在同一個網路中所有的子網路數目都是相同的。另外,它也不支持對路由過程的認證,使得RIPv1有一些輕微的弱點,有被攻擊的可能。
RIPv2 因為RIPv1的缺陷,RIPv2在1994年被提出,將子網路的資訊包含在內,透過這樣的方式提供
無類別域間路由 ,不過對於最大節點數15的這個限制仍然被保留著。另外針對安全性的問題,RIPv2也提供一套方法,透過加密來達到認證的效果。而之後[RFC 2082]也定義了利用MD5來達到認證的方法。 RIPv2的相關規定在[RFC 2453] orSTD56。
現今的IPv4網路中使用的大多是RIPv2,RIPv2是在RIPv1基礎上的改進, RIPv2和RIPv1相比主要有以下區別。
RIP2與RIP1的對比 RIPng RIPng(Routing Information Protocol next generation)則被定義在[RFC 2080],主要是針對IPv6做一些延伸的規範。與RIPv2相比下其最主要的差異是:
RIPv2 支持RIP更新認證, RIPng 則沒有 (IPv6 routers were, at the time, supposed to use IPsec for authentication);
RIPv2 容許附上arbitrary 的標籤, RIPng 則不容許;
RIPv2 encodes the next-hop into each route entries, RIPng requires specific encoding of the nexthop for a set of route entries.
RIPv2 UDP的Port number 為 520,RIPng UDP的Port number 為 521
相似協定 一隻比RIP更強大,且同樣基於距離矢量路由協定的協定,是
思科 專有的
IGRP 。思科在其現時發行的軟體中已再沒有對IGRP提供支援,而且由
EIGRP ──一隻徹底地重新設計的路由通訊協定所取代。 不過它與IGRP的關係就只有命名上的相似,亦純粹是因為EIGRP依然是基於距離矢量路由協定的緣故。
縮寫 Router Information protocol 路由信息協定
也寫作R.I.P.,rip
分層 TCP/IP參考模型分為四層:套用層(Application Layer)、主機到主機層、網路層(Internet Layer)、網路接入層
TCP/IP分層 OSI 分層 套用層
DNS
5、6、7
主機到主機層
4
網路層
3
網路接入層
TokenBus
Token Ring
2
Coaxial cable
fibre-optical
1
RIP (RIP/RIP2/RIPng:Routing Information Protocol)
RIP作為IGP(
內部網關協定 )中最先得到廣泛使用的一種協定,主要套用於 AS 系統,即
自治系統 (Autonomous System)。連線 AS 系統有專門的協定,其中最早的這樣的協定是“EGP”(
外部網關協定 ),仍然套用於網際網路,這樣的協定通常被視為內部 AS
路由選擇協定 。RIP 主要設計來利用同類技術與大小適度的網路一起工作。因此通過速度變化不大的接線連線,RIP 比較適用於簡單的校園網和區域網,但並不適用於複雜網路的情況。
RIP是一種分散式的基於
距離向量 的路由選擇協定,是網際網路的標準協定,其最大的優點就是簡單。RIP協定要求網路中每一個
路由器 都要維護從它自己到其他每一個目的網路的距離記錄。RIP協定將“距離”定義為:從一路由器到直接連線的網路的距離定義為1。從一路由器到非直接連線的網路的距離定義為每經過一個路由器則距離加1。“距離”也稱為“跳數”。RIP允許一條路徑最多只能包含15個路由器,因此,距離等於16時即為不可達。可見RIP協定只適用於小型網際網路。
RIP 2 由 RIP 而來,屬於 RIP 協定的補充協定,主要用於擴大裝載的有用信息的數量,同時增加其安全性能。RIPv1和RIPv2 都是基於 UDP 的協定。在 RIP2 下,每台主機或
路由器 通過路由選擇進程傳送和接受來自 UDP 連線埠520的數據包。RIP協定默認的路由更新周期是30S。
RIP的特點
(1) 僅和相鄰的路由器交換信息。如果兩個路由器之間的通信不經過另外一個路由器,那么這兩個路由器是相鄰的。RIP協定規定,不相鄰的路由器之間不交換信息。
(2) 路由器交換的信息是當前本路由器所知道的全部信息。即自己的路由表。
(3) 按固定時間交換路由信息,如,每隔30秒,然後路由器根據收到的路由信息更新路由表。(也可進行相應配置使其觸發更新)
適用 RIP 和 RIP 2 主要適用於 IPv4網路,而 RIPng 主要適用於 IPv6 網路。本文主要闡述 RIP 及 RIP 2。
RIPng:路由選擇信息協定下一代(套用於IPv6)
(RIPng:RIP for IPv6)RIPng與RIP 1和 RIP 2 兩個版本不兼容。
RIP協定的“距離”其實就是“跳數”(hop count),因為每經過一個
路由器 ,跳數就加1。RIP認為好的路由就是它通過的路由器的數目少,即“距離短”。
RIP與其它動態路由協定如OSPF、ISIS相比起來,在收斂時間和擴展性方面,RIP不如OSPF和ISIS,使用的網路規模也比OSPF和ISIS小;但是RIP配置和管理起來容易,所占用的頻寬小。
套用 RIP(Routing information Protocol)是套用較早、使用較普遍的
內部網關協定 (Interior Gateway Protocol,簡稱IGP),適用於小型同類網路,是典型的
距離向量 (distance-vector)協定。文檔見RFC1058、RFC1723。
RIP通過廣播UDP
報文 來交換路由信息,每30秒傳送一次路由信息更新。RIP提供跳躍計數(hop count)作為尺度來衡量路由距離,跳躍計數是一個包到達目標所必須經過的
路由器 的數目。如果到相同目標有二個不等速或不同
頻寬 的路由器,但跳躍計數相同,則RIP認為兩個路由是等距離的。RIP最多支持的跳數為15,即在源和目的網間所要經過的最多路由器的數目為15,跳數16表示不可達。
RIP概述 -RFC 1058
-RIP採用貝爾曼—福德(Bellman-Ford)算法
-RIP有兩個版本RIPv1和RIPv2。
-RIP有以下一些主要特性:
-RIP屬於典型的距離矢量路由選擇協定。
-RIP訊息通過廣播地址255.255.255.255進行傳送,RIPv2使用組播地址224.0.0.9傳送訊息,兩者都使用UDP 協定的520連線埠。
-RIP以到目的網路的最小跳數作為路由選擇度量標準,而不是在鏈路的
頻寬 和延遲的基礎上進行選擇。
-RIP是為小型網路設計的。它的跳數計數限制為15跳,16跳為不可到達。
-RIP-1是一種有類路由協定,不支持不連續
子網 設計。RIP-2支持CIDR及VLSM
可變長子網掩碼 ,使其支持不連續子網設計。
-RIP周期性進行完全路由更新,將
路由表 廣播給鄰居
路由器 ,廣播周期預設為30秒。
RIP是
路由信息協定 (Routing Information Protocol)的縮寫,採用
距離矢量算法 。在默認情況下,RIP使用一種非常簡單的度量制度:距離就是通往目的站點所需經過的鏈路數,取值為1~15,數值16表示無窮大。RIP進程使用UDP的520連線埠來傳送和接收RIP分組。RIP分組每隔30s以廣播的形式傳送一次,為了防止出現“
廣播風暴 ”,其後續的的分組將做隨機延時後傳送。在RIP中,如果一個路由在180s內未被刷,則相應的距離就被設定成無窮大,並從
路由表 中刪除該表項。RIP分組分為兩種:請求分組和回響分組。
RIP-1被提出較早,其中有許多缺陷。為了改善RIP-1的不足,在RFC1388中提出了改進的RIP-2,並在RFC 1723和RFC 2453中進行了修訂。RIP-2定義了一套有效的改進方案,新的RIP-2支持
子網 路由選擇,支持CIDR,支持
組播 ,並提供了驗證機制。
RIP-2的特性:
RIP-2 是一種無類別
路由協定 (Classless Routing Protocol)。
RIP-2支持以組播方式傳送路由更新報文,
組播地址 為224.0.0.9,減少網路與系統資源消耗。
RIP-2支持對協定報文進行驗證,並提供明文驗證和MD5驗證兩種方式,增強安全性。
RIP-2能夠支持VLSM
隨著OSPF和IS-IS的出現,許多人認為RIP已經過時了。但事實上RIP也有它自己的優點。對於小型網路,RIP就所占
頻寬 而言開銷小,易於配置、管理和實現,並且RIP還在大量使用中。但RIP也有明顯的不足,即當有多個網路時會出現環路問題。為了解決環路問題,IETF提出了
水平分割 法,在這個接口收到的路由信息不會再從該接口出去(split-Horizon)。分割範圍解決了兩個
路由器 之間的路由環路問題,但不能防止因網路規模較大、主要由延遲因素產生的環路。觸發更新要求路由器在鏈路發生變化時立即傳輸它的路由表。這加速了網路的聚合,但容易產生廣播泛濫。總之,環路問題的解決需要消耗一定的時間和頻寬。若採用RIP協定,其網路內部所經過的鏈路數不能超過15,這使得RIP協定不適於大型網路。
防環機制 1-記數最大值(maximum hop count):定義最大跳數(最大為15跳),當跳數為16跳時,目標為不可達。
2-
水平分割 (split horizon):從一個接口學習到的路由不會再廣播回該接口。cisco可以對每個接口關閉水平分割功能。
3-路由毒化(route posion):當拓撲變化時,路由器會將失效的路由標記為possibly down狀態,並分配一個不可達的度量值。
4-毒性逆轉(poison reverse):從一個接口學習的路由會傳送回該接口,但是已經被毒化,跳數設定為16跳,不可達。
5-觸發更新(trigger update):一旦檢測到路由崩潰,立即廣播路由刷新
報文 ,而不等到下一刷新周期。
6-
抑制計時器 (holddown timer):防止路由表頻繁翻動,增加了網路的穩定性。
RIP(Routing Information Protocol)是基於D-V算法的內部
動態路由協定 。它是第一個為所有主要廠商支持的標準IP選路協定,網路。對於更複雜的環境,一般不應使用RIP。
RIP1作為距離
矢量路由協定 ,具有與D-V算法有關的所有限制,如慢收斂和易於產生
路由環路 和廣播更新占用頻寬過多等;RIP1作為一個有類別路由協定,更新訊息中是不攜帶
子網掩碼 ,這意味著它在主網邊界上自動聚合,不支持VLSM和CIDR;同樣,RIP1作為一個古老協定,不提供認證功能,這可能會產生潛在的危險性。總之,簡單性是RIP1廣泛使用的原因之一,但簡單性帶來的一些問題,也是RIP故障處理中必須關注的。
版本 RIP在不斷地發展完善過程中,又出現了第二個版本:RIP2。與RIP1最大的不同是RIP2為一個無類別
路由協定 ,其更新訊息中攜帶
子網掩碼 ,它支持VLSM、CIDR、認證和多播。這兩個版本都在套用,兩者之間的差別導致的問題在RIP故障處理時需要特別注意。
信息類型 請求信息(可以是請求一條路由的信息),應答信息(一定是全部的路由)。
RIP是最常使用的
內部網關協定 之一,是一種典型的基於
距離矢量算法 的
動態路由協定 。在不同的網路系統如Internet、AppleTalk、NOVELL等協定都實現了RIP。他們都採用相同的算法,只是在一些細節上做了小改動,適應不同網路系統的需要。
RIP有RIP-1和RIP-2兩個版本,需要注意的是,RIP-2不是RIP-1的替代,而是RIP-1功能的擴展。比如RIP-2更好地利用原來RIP-1分組種必須為零的域來增加功能,不僅支持
可變長子網掩碼 ,也支持路由對象標誌。此外,RIP-2還支持明文認證和MD5密文認證,確保路由信息的正確。
RIP通過
用戶數據報協定 (UDP)報文交換路由信息,使用跳數來衡量到達目的地的距離。由於在RIP中大於15的跳數被定義為無窮大,所以RIP一般用於採用同類技術的中等規模網路,如校園網及一個地區範圍內的網路,RIP並非為複雜、大型的網路而設計。但由於RIP使用簡單,配置靈活,使得他在今天的
網路設備 和網際網路中被廣泛使用。
局限性 另外,RIP也有他的局限性。比如RIP支持站點的數量有限,這使得RIP只適用於較小的
自治系統 ,不能支持超過15跳數的路由。再如,路由表更新信息將占用較大的
網路頻寬 ,因為RIP每隔一定時間就向外廣播傳送路由更新信息,在有許多
節點 的網路中,這將會消耗相當大的網路頻寬。此外,RIP的收斂速度慢,因為一個更新要等30s,而宣布一條路由無效必須等180s,而且這還只是收鏈一條路由所需的時間,有可能要花好幾個更新才能完全收斂於新拓撲,RIP的這些局限性顯然削弱了網路的性能。
RIPV1與RIPV2的相同與不同。不同版本 RIPV1 RIPV2
1 有類路由 無類路由
2 不支持VLSM 支持VLSM
3 廣播更新(255.255.255.255)
組播 更新(224.0.0.9)
4 自動匯總,不支持手動匯總 自動匯總且可以手動關閉該特性,支持手動匯總
5 不支持驗證 支持驗證
6 產生CIDR 不產生CIDR
相同 3 防環機制
5 使用UDP的520連線埠
7 預設每隔30秒更新一次路由表
RIP的下一跳與METRIC的關係
不同 大寫進資料庫中,等180秒後再寫進路由表中 寫進資料庫中
小寫進路由表中 替換原有的路由
默認情況下,配置相應版本的RIP只能接收和傳送相應版本的RIP訊息。可以配置設備接口限制收發RIP信息的類型。
不足之處 (1)過於簡單,以跳數為依據計算
度量值 ,經常得出非最優路由。例如:2跳64K專線,和3跳1000M光纖,顯然多跳一下沒什麼不好。
(2)度量值以16為限,不適合大的網路。解決
路由環路 問題,16跳在rip中被認為是無窮大,rip是一種域內
路由算法 自治路由算法,多用於園區網和
企業網 。
(3)安全性差,接受來自任何設備的路由更新。無密碼驗證機制,默認接受任何地方任何設備的路由更新。不能防止惡意的rip欺騙。
(4)不支持無類ip地址和VLSM<ripv1>。
(5)收斂性差,時間經常大於5分鐘。
(6)消耗
頻寬 很大。完整的複製路由表,把自己的路由表複製給所有鄰居,尤其在低速廣域網鏈路上更以顯式的全量更新。
常見問題 1)什麼是RIP
RIP是一種距離
矢量路由協定 (Distance Vector Routing Protocol)。基本上,距離矢量路由協定基於距離矢量算法根據目的地的遠近(遠近=經過
路由器 的數量)來決定最好的路徑。
2)RIP的作用是什麼
RIP讓路由器之間互相傳遞路由信息。路由器通過RIP,能自動知道遠程目的地,而不需要
網路管理員 給每台路由器添加
靜態路由 信息。
3)傳遞路由信息
RIP把自己所有的路由信息,通過Response包
泛洪 給鄰居。
4)計算Metric
RIP用“跳數”來計算cost(metric),每經過一台
路由器 ,“跳數”就增加1。RIP會通過“跳數”最小的路徑傳輸
數據包 。框架控制項
工作原理 1 、初始化——RIP初始化時,會從每個參與工作的接口上傳送請求
數據包 。該請求數據包會向所有的RIP
路由器 請求一份完整的
路由表 。該請求通過LAN上的廣播形式傳送LAN或者在點到點鏈路傳送到
下一跳 地址來完成。這是一個特殊的請求,向相鄰設備請求完整的路由更新。
2 、接收請求——RIP有兩種類型的訊息,回響和接收訊息。請求數據包中的每個路由條目都會被處理,從而為路由建立度量以及路徑。RIP採用跳數度量,值為1的意為著一個直連的網路,16,為網路不可達。路由器會把整個路由表作為接收訊息的應答返回。
3、接收到回響——路由器接收並處理回響,它會通過對
路由表 項進行添加,刪除或者修改作出更新。
4、 常規路由更新和定時——
路由器 以30秒一次地將整個路由表以
應答訊息 地形式傳送到鄰居路由器。路由器收到新路由或者現有路由地更新信息時,會設定一個180秒地逾時時間。如果180秒沒有任何更新信息,路由的跳數設為16。路由器以
度量值 16宣告該路由,直到
刷新計時器 從路由表中刪除該路由。刷新計時器的時間設為240秒,或者比過期計時器時間多60秒。Cisco還用了第三個計時器,稱為
抑制計時器 。接收到一個度量更高的路由之後的180秒時間就是抑制計時器的時間,在此期間,路由器不會用它接收到的新信息對路由表進行更新,這樣能夠為網路的收斂提供一段額外的時間。
5、 觸發路由更新——當某個路由度量發生改變時,
路由器 只傳送與改變有關的路由,並不傳送完整的路由表。