路由協議之RIP協議簡介

RIP定義

RIP :(Routing information Protocol)即路由信息協議,是應用較早、使用較普遍的內部網關協議(Interior Gateway Protocol,IGP),適用於小型同類網路的一個自治系統(AS)內的路由信息的傳遞。

RIP協議是基於距離矢量演算法(Distance Vector Algorithms,DVA)的。它使用"跳數",即Hop 來衡量到達目標地址的路由距離。

"道聽途說"的距離矢量演算法

說到RIP,首先要說的是距離矢量演算法。

距離矢量路由演算法(Distance Vector Routing,DV)是ARPANET網路上最早使用的路由演算法,也稱Bellman-Ford路由演算法和Ford-Fulkerson演算法,主要在RIP(Route Information Protocol)協議中使用。

Advertisements

距離矢量演算法是一種迭代的、非同步的、分散式的演算法

  • DV演算法是迭代的:因為這個過程一直要持續到鄰居之間沒有更多信息需要交換為止。

  • DV演算法是非同步的,因為不需要所有路由器同步一致地進行操作。

  • DV演算法是分散式的,因為每個結點都要從它的鄰居接受信息,同時也要發送信息給它的鄰居。並且每個結點需要知道的只是它的鄰居的信息,而不需要了解整個網路的拓撲等信息。

"距離矢量路由演算法"的基本思想

每個路由器維護一個距離矢量(通常是以延時是作變數的)表,然後通過相鄰路由器之間的距離矢量通告進行距離矢量表的更新。這個有點"道聽途說"的感覺,因為每個路由器維護的距離矢量是臨近路由器告訴它的,打個比方:距離矢量就是傳言路由,比如說你要去某個地,你一路不停的問路人,你的決策信息就是路人提供的信息,但這一切都建立在人們都是善良的基礎上。優點就是不需要經過大腦計算,聽著就好,效率比較高,但容易出環路、收斂等問題。

Advertisements

RIP協議的跳數

RFC 1058作為RIP的標準文檔之一,文檔是這麼描述跳數的:

"Hop count refers to the number of routers being traversed. For example, a hop count of 2 means that the destination is two routers away."

所謂跳數,是指數據包從源(網路)發送至目的(網路)所途經的路由器台數。試舉一例,跳數為2,意謂數據包的目的網路與源網路之間有兩台路由器。

RIP規定,一個路由器到其直接向量的網路的距離為1,距離為16表示目的不可達,16被定義為無窮大,也就是說RIP規定,一跳路徑最多包含15個路由器。

RIP中每個路由表的表項包含三個內容:目的網路,跳數(度量單位),下一跳路由器。

RIP協議僅和相鄰路由器按照固定的時間間隔交換路由信息

RIP協議的工作原理

RIP協議是動態路由協議最簡單的一種,我們來看下RIP是怎麼動態的自動更新路由表的。

在路由實現時,RIP作為一個系統長駐進程(daemon)而存在於路由器中,負責從網路系統的其它路由器接收路由信息,從而對本地IP層路由表作動態的維護,保證IP層發送報文時選擇正確的路由。同時負責廣播本路由器的路由信息,通知相鄰路由器作相應的修改。RIP協議處於UDP協議的上層,RIP所接收的路由信息都封裝在UDP協議的數據報中,RIP在520號UDP埠上接收來自遠程路由器的路由修改信息,並對本地的路由表做相應的修改,同時通知其它路由器。通過這種方式,達到全局路由的有效。

Advertisements

你可能會喜歡