4.6.2 路由信息协议RIP的基本工作原理.pdf

  • 路由信息协议RIP(Routing Information Protocol)是内部网关协议IGP中最先得到广泛使用的协议之一,其相关标准文档为RFC 1058。
  • RIP要求自治系统AS内的每- -个路由器都要维护从它自己到AS内其他每-一个网络的距离记录。这是一组距离,称为 “距离向量D-V(Distance-Vector)”
  • RIP使用 跳数(Hop Count)作为度量(Metric)来衡量到达目的网络的距离
    • 路由器到直连网络的距离定义为1。
    • 路由器到非直连网络的距离定义为所经过的路由器数加1。
    • 允许一条路径最多只能包含15个路由器。 “距离”等于16时相当于不可达。因此,RIP只适用于小型互联网。

image.png

  • RIP认为 好的路由 就是 “距离短” 的路由,也就是 所通过路由器数量最少的路由

image.png

  • 当到达同一目的网络有多条 “距离相等” 的路由时,可以进行 等价负载均衡。

RIP包含以下三个要点:

  • 和谁交换信息:仅和相邻路由器交换信息

image.png

  • 交换什么信息:自己的路由表
  • 何时交换信息:周期性交换(例如每30秒)

RIP的基本工作过程

  1. 路由器刚开始工作时,只知道自己到直连网络的距离为1。

image.png

  1. 每个路由器仅和相邻路由器周期性地交换并更新路由信息。

image.png

  1. 若干次交换和更新后,每个路由器都知道到达本AS内各网络的最短距离和下- -跳地址,称为收敛。

image.png

  • RIP的路由条目的更新规则

    在C要把路由表信息转发给D时。

    路由器C的表到达各目的网络的下一条都记为问号,可以理解为路由器D并不需要关心路由器C的这些内容

假设路由器C的RIP更新报文发送周期到了,则路由器C将自己路由表中的相关路由信息封装到RIP更新报文中发送给路由器D

image.png

  • 路由器根据接收到的路由更新报文进行什么操作,就是我们要学习的RIP协议路由条目更新规则。
  • 总体上来说,明确一个原则,为了更好的转发数据报,提升数据报转发的效率,才进行路由器表更新,否则不更新。

image.png

在D接收到C发送来的数据报后,首先会对C发送过来的路由表进行改造,改造主要是:

将路由表的所有下一跳改为C(因为是C发来的路由表,要走该路由表路径,下一条必须为C)

将所有距离+1,同上理由,要走该条路径,必须再走到C,而C是相邻路由器,距离要+1

  1. 当目的网络、下一跳相同时,新的数据替代旧的数据。(说明是下一条路径的最新数据,有利于数据正确转发,更新)

image.png

  1. 当出现了新的目的网络,添加一条新的数据。(能够到达新的目的网络有,有利于转发,更新)

image.png

  1. 当目的网络相同,下一跳不同,并且距离小于路由表已有数据时,更新数据。(能够到达的目的网络有了新的、更短的距离路径,有利于提高转发效率,更新)

image.pngimage.png

  1. 当目的网络相同,下一跳不同,并且距离等于路由表已有数据时,添加数据。(有利于进行等价均衡负载,提升效率,添加)

image.png

  1. 当目的网络相同,下一跳不同,并且距离大于路由表已有数据时,不进行更新。(不利于提高转发效率,不进行处理)

image.png

练习:

image.pngimage.png
image.png
RIP存在 “坏消息传播得慢” 的问题
image.png

由于N1出现故障,RI路由器将N1的距离设置为16(16距离就是认为的不可到达距离)。

此时R2根据以前RIP协议获得的路由器情况,发送更新请求给R1,而此时R1的更新情况,也就是N1的更新情况还没发给R2

image.png

此时R1的路由器表先收到R1的路由器表后会根据上面说的更新规则进行更新,将N1到R2的距离更新为3。此时数据就是被谣言误导的。

此后,两路由器之间会一直以被误导的数据进行循环更新路由数据,指导双方距离达到16(认为不可达)时,才会选择放弃传输。

image.png

在此过程中,就会出现路由环路,导致路由器间被占用长达数分钟的时间


“坏消息传播得慢” 又称为 路由环路或距离无穷计数问题,这是 距离向量算法的一个固有问题。
可以采取多种措施 减少 出现该问题的概率或减小该问题带来的危害。

  • 限制最大路径距离为15(16表示不可达)
  • 当路由表发生变化时就立即发送更新报文(即 “触发更新”),而不仅是周期性发送
  • 让路由器记录收到某特定路由信息的接口,而不让同一路由信息再通过此接口向反方向传送(即 “水平分割”
    • 但是,就算采取了上述措施,由于向量计算算法的本质决定,坏消息传得慢问题还是有可能会出现。

RIP协议小结:
image.png