1.1. 直观理解:

  • 是一种距离矢量路由协议
    • 该协议只选择路由跳数最少的那条路径
      • 对动态路由网, 到一个路由有多条路径

1.2. 适用范围:

  1. 中小规模的网络拓扑结构
  2. 最大跳数为 15 的网络
  3. 不能防止环路
  4. 旧版本 (v1 版本) 不支持 VSLM (可变长度子网掩码), 只有新版 (v1 版本) 支持

过程:

当路由器收到相邻路由器(其地址为X)的一个RIP报文:

  • 先修改此RIP报文中的所有项目:把“下一跳”字段中的地址都改为X,并把所有的“距离”字段的值加1。
  • 对修改后的RIP报文中的每一个项目,重复以下步骤:
  • 若项目中的目的网络不在路由表中,则把该项目加到路由表中。
  • 否则,若下一跳字段给出的路由器地址是同样的,则把收到的项目替换原路由表中的项目。
    • 否则,若收到项目中的距离小于路由表中的距离,则进行更新
      • 否则,什么也不做。
  • 若3分钟还没有收到相邻路由器的更新路由表,则把此相邻路由器记为不可达路由器,即将距离置为16(表示不可达)。
    • 当4分钟还没有收到, 则将该网络地址的路由条目删除

例题

1. 题目:

假定网络中的路由器B的路由表有如下的项目(这三列分别表示“目的网络”,“距离”,“下一跳路由器”):

  • N1 7 A
  • N2 2 C
  • N6 8 F
  • N8 4 E
  • N9 4 F 现在B收到从C发来的路由信息(这两列分别表示“目的网络”和“距离”):
  • N2 4
  • N3 8
  • N6 4
  • N8 3
  • N9 5 试求出路由器B更新后的路由表(详细说明每一个步骤)。

2. 答:

  • 先把收到的路由信息中的“距离”加1: N2 5 N3 9 N6 5 N8 4 N9 6
  • 路由器B更新后的路由表如下:
  • N1 7 A
    • 无新信息,不改变。
  • N2 5 C
    • 相同的下一跳,更新。
  • N3 9 C
    • 新的项目,添加进来。
  • N6 5 C
    • 不同的下一跳,距离更短,更新。
  • N8 4 E
    • 不同的下一跳,距离一样,不改变。
  • N9 4 F
    • 不同的下一跳,距离更大,不改变。