为什么 RIP 不可扩展?

网络工程 路由 ospf 撕裂
2021-07-25 17:26:56

大多数参考资料都说“RIP 不可扩展”,因此只能在较小的网络中使用。但没有人说“为什么?” RIP 中究竟是什么阻止了它扩展到更大的网络?以及 OSPF 如何克服 RIP 的缺点?

2个回答

大多数参考资料都说“RIP 不可扩展”,因此只能在较小的网络中使用。但没有人说“为什么?” RIP 中究竟是什么阻止了它扩展到更大的网络?以及 OSPF 如何克服 RIP 的缺点?

概括

  • RIPv1频繁(每 30 秒)洪路由,随着路由表大小的增加,这会引入大量 CPU 负载。RIP每次都会重新计算每条路由的度量标准,每次将路由从一个新接口溢出时(无论拓扑是否发生变化),这一事实使情况更加复杂随着路由数量的增加,这会阻止RIP以及其他协议的扩展。
  • RIPv1是有类的
  • OSPF很少对路由进行泛洪。如果网络拓扑发生变化,则只泛洪变化的LSA;指标是根据这些变化计算的。因此,按需路由计算,在不经常泛洪的LSA 上,可以使OSPF很好地扩展。
  • OSPF是一种无类协议,它支持CIDR,这也使其成为比RIPv1更具可扩展性的协议

RIPv1详细信息:

RIP是一种距离矢量协议所有距离向量协议都运行Bellman-Ford算法。在高层次上,这意味着:

  • 路由表中的所有路由都会通过所有接口定期发布。
  • RIP每 30 秒洪路由出每个RIP接口。由于RIP通过谣言路由,这意味着拓扑中的每个路由器必须每 30 秒与路由表的大小成正比工作。当您接近数以千计的路由(尤其是在没有硬件转发的基于 CPU 的路由器上)时,CPU 负载和流量抖动的影响变得可怕。
  • RIP协议本身具有15个跳固定的最大跳计数(如果需要做任何形式的路径权重的是小的)。
  • 基于Bellman-Ford算法的协议容易出现路由循环计数到无穷大的问题。

OSPF详细信息:

相比之下,OSPF运行Dijkstra 算法链路状态协议像这样:

  • 每个路由器仅在路由更新(称为LSA)中宣布其直接连接和重新分配的路由
  • 每个路由器默认每 30 分钟一次自己的LSA(因为路由刷新计时器是 3600 秒,或 1 小时)
  • 当路由表中的变化触发时,LSA也会泛洪
  • 路由器仅在必要时使用Dijkstra 算法来执行分布式LSA路径计算。

补充一下 Mike 已经解释过的内容,RIP 会重新计算其路由并每 30 秒公布一次。在具有数千个路由器和数万条路由的网络中,需要计算大量路由——路由器太忙而无法实际转发任何流量。

您可能已经了解到,RIP 的最大度量是 15 跳。这限制了网络的规模。

RIP 没有层次结构。想象一下一个全球网络,每当新加坡的一条链路上上下下时,冰岛的路由器都必须重新计算它的所有路由。没有办法将一个区域与另一个区域隔离开来。