路由選擇協議基本要點
- 路由選擇協議的核心是路由算法。即需要一種算法來獲取路表中的各項,一個比較好的路由選擇算法應該有以下特點:
- 算法必須是正確和完整的。(正確的含義是沿着各路由表所指引的路由,分組一定能到達最終目的網絡和主機)
- 算法在計算上應該簡單。
- 算法能夠適應通信量和網絡拓撲的變化。(例如當某個或者某些結點鏈路發生故障的時候,算法能夠及時的改變路由,有時候稱這種適應性為穩健性)
- 算法應該具有穩定性
- 算法是公平的。
- 算法應該是最佳的。
- 內部網關協議RIP
- RIP(routing information protocol)是內部網關協議IGP中最先得到廣泛使用的協議【RFC1058】,也叫路由信息協議,RIP是一種分布式的基於距離向量的路由選擇協議。最大的優點就是簡單。
- RIP協議要求網絡中的每一個路由器都要維護從他自己到其他每一個目的網絡的距離記錄(因此這是一組距離),RIP將距離定義如下:從以路由器到直接連的網絡的距離為1,從路由器到非之間的網絡的距離定義為所經過的路由器書數+1,RIP協議的距離也稱之為跳數,但是一條跳數最多只能包含15個路由器,因此,當距離=16時,就相當於不可達。因此RIP只能適用於小型互聯網。
- RIP不能在兩個網絡之間同時使用多條路由。RIP選擇具有最少路由器的路由(最短路由),哪怕還存在另一條高速低延時的但是路由器較多的路由。
- RIP協議的特點
- 僅和相鄰路由器交換信息。如果兩個路由器之間的通信不需要經過另一個路由器,那么這兩個路由器就是相鄰的。RIP協議規定:不相鄰的路由器不交換信息。
- 路由器交換的信息是當前路由器所知道的全部信息,就是現在自己的路由表。也就是說,交換的信息是:我到本自治系統中所有網絡的最短距離,以及到每個網絡應該經過的下一跳路由器。
- 按照固定的時間間隔交換路由信息,例如每隔30秒。然后路由器接收到的路由信息更新路由表。
- 在路由器剛開始工作的時候,其內部路由表是空的。認識可以和直接相連的路由器的到距離1,接着嗎,每個路由器和與自己相連的路由器不斷交換路由表信息,最終就可以知道本自治系統中任何一個網絡地址和最短下一跳路由器的地址。
- 路由器最主要的信息是:到某個網路的距離(最短距離),以及下一跳的地址,路由表更新的原則是找出到每個網絡的最短距離,這種算法又稱之為距離向量算法:
- 對每一個相鄰的路由器發送過來的RIP報文,進行以下步驟:
- 對地址為X的相鄰路由器發來的RIP報文,先修改此報文中的所有項目,把下一跳字段都改為X,並把所有的距離的值+1。每一個都有三個關鍵數據:到目的網絡N,距離d,下一跳路由器是X。
- 對修改后的RIP報文中的每一個項目,進行以下步驟:
- 若原來的路由表沒有目的網絡N,則把該項目添加到路由表中。
- 否則(即在路由表中有目的網絡N,這時再查看下一跳的路由器地址)
- 若下一跳路由器地址是X,則把收到的項目替換為原路由表中的項目。
- 否則(即這個項目是:到目的網絡N,但下一跳路由器不是X)
- 若收到的項目中的距離d小於路由表中的距離,則進行更新。
- 否則什么也不做。
- 若3分鍾后還沒收到相鄰路由表中的更新路由,則把相鄰路由器記為不可達路由器,即把距離設置為16。(16代表的是不可達)
- 返回。
- 對每一個相鄰的路由器發送過來的RIP報文,進行以下步驟:
- 算法描述:其實就是求一個路由器到另一個路由器的最短距離。
- 例題:
- 一直路由器R1路表中的項目如圖所示:
- 現在收到了相鄰路由器R4發過來的路由表:
4. - 求路由器R6更新后的路由表
- 解:首先把R4發過來的路由表中的距離都+1:
- 把這個表和R6的路由表進行比較:
- 第一行Net1沒有,加到R6的路由表走中。
- 第二行Net2存在,但是大於R6的路由表,因此R6的路由表關於Net2這一行不變。
- 第三行Net3存在,但是Net3距離小於R6路由表Net3的距離,因此更新。
- 因此R6路由表更新后的表為:
- RIP協議讓每一個自治系統中的所有路由都和自己的相鄰路由器定期交換路由表信息,並不斷更新路由表,使得每從每一個路由器到每一個目的網絡的路由都是最短距離(也就是跳數最小)。
- RIP協議的報文格式
- 現在比較新的RIP協議報文格式是1998年提出的RIP2
- RIP協議使用運輸層的用戶數據報(UDP端口為520)進行傳輸。
- RIP報文由首部和路由部分組成
- 首部占4個字節
- 命令為1表示請求路由信息。
- 命令為2表示請求路由信息的相應或者更新報文。
- 版本就是RIP版本號
- 必為0表示4字節對齊
- 路由部分:
- 路有部分由若干個路由信息組成。每個路由信息需要用20字節。
- 地址族標識:用來標識所用的地址協議。如采用IP地址就為2
- 路由標記填入自治系統號ASN。
- 一個RIP報文最多包括25個路由,因而RIP報文的最大程度為4+20*25=504字節
- 首部占4個字節
- 總結:RIP協議的特點:
- 缺點:
- 當網絡出現故障的時候,要經過比較長的時間才能將此消息傳到所有的路由器,正所謂好消息傳播的快,壞消息傳播的慢。
- 限制了網絡規模,因為路由器最大的跳數是15跳,一般中大型網絡規模RIP協議就不適用了。
- 優點:實現簡單,開銷較小
- 缺點:
- 因此,基於RIP協議的缺點,我們又提出了OSPF協議(不過規模較小的網絡,使用RIP協議的仍占多數。)
- 內部網關協議OSPF(開放最短路徑優先)
- 出現的原因:為了克服RIP協議的缺點
- 開放表明OSPF協議不受任何廠家的限制。最短路徑優先是因為使用了最短路徑算法SPF