路由协议,距离向量与链路状态


8

我试图找出两种路由协议方法之间的差异(优点/缺点),对于任何帮助,建议和解释,我将不胜枚举。到目前为止,我可以说距离矢量似乎更静态并且基于本地路由,因为它不知道网络状态,而链路状态更了解当前状态,因此在距离矢量上使用它似乎更自然,但是我感觉自己缺少一些东西。我很高兴在这里介绍更多方面以及在选择其中之一时必须考虑的不同问题。

Answers:


9

距离矢量

纯距离矢量协议很少见;RIP是唯一真正可用于各种用途的工具。EIGRP,Cisco专有协议,从技术上讲也是距离矢量,但是它利用了多种优化方法,可以克服距离矢量协议的传统缺点。距离矢量协议不分发任何拓扑信息。他们只是简单地宣告下一跳到一条路线,以及一条成本。

优点:

  • 所需的配置最少。
  • 低CPU /内存开销。

缺点:

  • 容易出现路由环路(不适用于EIGRP)。
  • 收敛时间慢。
  • 对于网络的“状态”,不同的路由器可能会有不同的理解。

链接状态

链路状态协议通过将每个路由器的连接接口发布到路由域中的每个其他设备来起作用。实际上,每个设备都会建立完整网络拓扑的数据库,并使用该数据库来确定通往每个目标网络的最佳路径。

所使用的两个主要链路状态协议是OSPFIS-IS。两者都基于Dijkstra算法的实现。OSPF是两者中比较知名的一种。IS-IS倾向于在服务提供商网络中找到更多。

优点:

  • 网络中的所有路由器都具有一致的视野。
  • 在链路状态网络中,环路基本上是不可能的。
  • 快速收敛。

缺点:

  • 需要更高的CPU /内存占用空间。
  • 由于链接状态算法依赖于整个AS具有一致的世界观,因此难以过滤发布到特定路由器的路由。

协议选择

关于应使用哪种协议类型,取决于您的要求。通常,除非供应商强迫您这样做,否则不应使用RIP。如果您正在运行全Cisco网络,则只需很少的手动配置即可启动EIGRP。如果要求供应商之间具有互操作性,则OSPF可能是更好的选择。如另一个答案中所述,如果您要与第三方交换路由,则BGP是首选协议。

最后一点:动态路由协议仅在拓扑冗余且需要自动故障转移时才有用。如果您有一个支持所有LAN环境和ISP电路的路由器,那么到ISP的默认路由就足够了。


8

我个人会选择您的路由协议而不是它的工作方式。如今,正确的答案实际上始终是OSPF(如果它是内部网络)。如果它是外部网络,则答案可能是BGP(但在这种情况下您不会问)。链接状态协议具有快速收敛性。

OSPF是一种链接状态协议,一种开放标准。

RIP仍可以在小型网络上使用,或将路由从简单设备重新分布到更复杂的设备(或注入默认路由)


1
外部BGP +1,内部OSPF。如果您的设备不支持IP网络,则只想使用其他任何功能。
David Pashley 09年

我可以看到人们为什么要在仅Cisco商店中运行eigrp的原因。我选择路由协议的依据是设备支持和协议行为,而不是基于协议的颜色或基础算法。
克里斯,2009年

1

我不是专家,但是...我似乎想起了这种旧公式:

(increasing stabilty) x (decreasing latency) = (weighted score for a route)

只差几分.02钱。希望它对您的考虑有所帮助。


1

我100%同意詹姆斯-根据路由要求而不是基于技术使用路由协议。

首先-您为什么要考虑路由协议?您是否在多路由器环境中重新分配路由?您是否正在寻找在各种路由环境中更快的收敛时间?

如果您需要复杂的流量工程,并且您的网络复杂且路由不同且链路速度也非常不同,并且在100%的cisco环境中,则可能需要考虑使用eigrp。否则,如果您拥有复杂的网络和多样化的路由,并且想要合理的收敛时间,那么实际上只能选择OSPF。我想如果您想要工作安全,可以考虑ISIS ...

如果您只想在一堆路由器之间重新分配一堆直接连接的路由,rip可能没问题。有很多仅支持RIP的路由设备,例如许多无线AP和Cheapo路由交换机。

用于确定路线或防止回路的实际算法绝不会真正进入画面。


-1

从此页面

链接状态算法与距离矢量算法的比较

我们知道,当数据包到达路由器时,路由器会为转发表建立索引,并确定将数据包传递到的链接接口。路由算法在网络路由器中运行,交换并计算用于配置这些转发表的信息。路由算法的目的是在一组路由器中找到从源路由器到目标路由器的良好路径。通常,一条好的路径是成本最低的路径,也是一条最短的路径。

有一些类型的路由算法,例如链路状态或距离矢量路由算法。链接状态算法是一种使用全局信息的算法,而距离矢量算法是迭代,异步和分布式的。对于DV算法,每个节点仅与其直接连接的邻居对话,但向其邻居提供从其自身到所有节点的最少成本估算。对于LS算法,每个节点都与所有其他节点通信,但仅告诉它们其代价是直接比较它们的某些属性。我们可以从某些方面比较这两种算法

消息复杂度:在链路状态下,每个节点必须保留有关网络内每个链路成本的信息。并且每一次,如果任何成本发生变化,所有节点。使用距离矢量算法,可以在直接相互连接的两个主机之间交换消息。并且,如果链路中的成本变化属于节点之一的最小成本路径,则DV算法将更新新值。但是,如果更改不属于2台主机之间花费最少的部分,则不会进行更新

收敛速度: LS的实现是一个O(| N | 2),它需要O(| N || E |)消息。但是,使用DV算法时,它收敛速度较慢,并且在算法收敛时具有路由环路。此外,DV算法还存在计数到无穷大的问题。

健壮性:对于LS,当路由器出现故障时,它可能会为最近的路由器广播错误的开销。而且,节点可能破坏或丢弃作为LS广播一部分而收到的数据包。但是,LS节点正在为其自己的转发表进行计算,而其他节点则为自己进行计算。因此,它使计算在LS内以某种方式分离,从而提供了鲁棒性。对于DV,错误的最低成本路径可能会传递给多个节点或整个节点,因此在整个网络中将处理错误的计算。DV的问题比LS算法严重得多。

从此页面

距离矢量协议的优点

良好的支持

诸如RIP之类的协议已经存在了很长时间,并且大多数(如果不是全部)执行路由的设备都能理解RIP。


1
helium.com/items/…复制/粘贴。
petrus
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.