📜  RIP协议|路由信息协议

📅  最后修改于: 2020-11-10 05:52:29             🧑  作者: Mango

RIP协议

RIP代表路由信息协议。 RIP是在自治系统中使用的域内路由协议。这里,域内意味着在定义的域中路由数据包,例如在机构区域内进行Web浏览。要了解RIP协议,我们的主要重点是了解数据包的结构,其包含多少个字段以及这些字段如何确定路由表。

在了解数据包的结构之前,我们先来看以下几点:

  • RIP基于基于距离矢量的策略,因此我们将整个结构视为一个图形,其中节点是路由器,链路是网络。
  • 在路由表中,第一列是目的地,或者我们可以说它是网络地址。
  • 成本指标是到达目的地的跳数。网络中可用的跃点数就是成本。跳数是到达目的地所需的网络数。
  • 在RIP中,无穷大定义为16,这意味着RIP对于较小的网络或小型自治系统很有用。 RIP可以包含的最大跳数为15跳,即,由于16是无穷大,因此它不能超过15跳。
  • 下一列包含要将数据包发送到目的地的路由器的地址。

如何确定跳数?

当路由器将数据包发送到网段时,它将被计为单跳。

在上图中,当路由器1将数据包转发到路由器2时,它将计为1跳数。类似地,当路由器2将数据包转发到路由器3时,它将计为2跳数,而当路由器3将数据包转发到路由器4时,它将计为3跳数。同样,RIP最多可以支持15个跃点,这意味着可以在RIP中配置16个路由器。

RIP消息格式

现在,我们看一下RIP消息格式的结构。消息格式用于在不同路由器之间共享信息。 RIP在消息中包含以下字段:

  • 命令:这是一个8位字段,用于请求或答复。请求的值为1,回复的值为2。
  • 版本:这里的版本表示我们正在使用的协议版本。假设我们使用的是版本1的协议,然后将1放在此字段中。
  • 保留:这是一个保留字段,因此用零填充。
  • 家庭:这是一个16位字段。由于我们使用的是TCP / IP系列,因此在此字段中输入2值。
  • 网络地址:定义为14个字节的字段。如果使用IPv4版本,则使用4个字节,其他10个字节全为零。
  • 距离:距离字段指定跳数,即到达目的地的跳数。

RIP如何工作?

如果网络中有8个路由器,路由器1希望将数据发送到路由器3。如果网络配置了RIP,它将选择跳数最少的路由。上面的网络中有3条路由,即路由1,路由2和路由3。路由2包含最少的跳数,即2,其中路由1包含3跳,路由3包含4跳,因此RIP将选择路线2。

让我们看另一个例子。

假设R1想要将数据发送到R4。有两种可能的路线将数据从r1发送到r2。由于两条路由包含相同的跳数,即3,因此RIP将同时将数据发送到两条路由。这样,它可以管理负载平衡,并且数据到达目的地的速度更快。

RIP的缺点

以下是RIP的缺点:

  • 在RIP中,基于跳数度量标准选择路由。如果有另一条带宽更好的路由可用,则不会选择该路由。让我们通过一个例子来了解这种情况。

我们可以观察到上图中选择了Route 2,因为它的跳数最少。路线1是免费的,可以更快地访问数据。取而代之的是,将数据发送到路由2,由于流量大,路由2变慢。这是RIP的最大缺点之一。

  • RIP是一种有类路由协议,因此它不支持VLSM(可变长度子网掩码)。有类路由协议是在路由更新中不包含子网掩码信息的协议。
  • 它将路由更新广播到整个网络,这会产生大量流量。在RIP中,路由表每30秒更新一次。每当更新发生时,它都会将更新的副本发送给所有邻居(导致更新的邻居除外)。向所有邻居发送更新会产生大量流量。此规则称为水平分割规则。
  • 它面临着收敛缓慢的问题。每当路由器或链路发生故障时,通常需要几分钟来稳定或采取替代路线;这个问题被称为慢收敛。
  • RIP最多支持15个跃点,这意味着RIP中最多可以配置16个跃点
  • 管理距离值为120(广告值)。如果Ad值较小,则该协议比具有更大Ad值的协议更可靠。
  • RIP协议具有最高的Ad值,因此它不如其他路由协议可靠。

RIP如何更新其路由表

以下计时器用于更新路由表:

  • RIP更新计时器:30秒

配置了RIP的路由器每30秒将其更新发送到所有相邻路由器。

  • RIP无效计时器:180秒

RIP无效计时器为180秒,这意味着如果路由器与网络断开连接或某些链路断开,则邻居路由器将等待180秒以进行更新。如果它在180秒内未收到更新,则它将标记该特定路由为不可达。

  • RIP冲洗计时器:240秒

RIP刷新计时器为240秒,几乎等于4分钟,这意味着如果路由器在240秒内未收到更新,则邻居路由将从路由表中删除该特定路由,这是一个非常缓慢的过程,因为4分钟为等待很长时间。

RIP的优点

以下是RIP协议的优点:

  • 易于配置
  • 它具有较少的复杂性
  • CPU利用率较低。