今天我们聊聊OSPF的内容,这期我们先从LS和DV开始说起,什么是LS、什么又是DV呢,带着疑问我们继续往下看:
LS算法
LS算法全称为Link State算法,是一种基于链路状态的路由算法。在LS算法中,每个路由器都会向网络中的其他路由器发送链路状态信息,这些信息包括路由器的ID、链路的状态等。
DV算法
DV算法全称为Distance Vector算法,是一种基于距离向量的路由算法。在DV算法中,每个路由器都会向相邻的路由器发送自己的路由表,包括到达目的地的距离和下一跳路由器。每个路由器都会根据收到的路由表,更新自己的路由表,并将更新后的路由表发送给相邻的路由器。
项目比较 | 距离向量路由协议 | 链接状态路由协议 |
链路变化 | 更新的是“路由条目”!一条重要的链路如果发生变化,意味着需通告多条涉及到的路由条目! | 链路状态路由协议,更新的是“拓扑”! |
更新方式 | 周期性更新、完整路由表更新(periodic & full) | 非周期性的(nonperiodic),部分的(partial ),有边界的 |
最佳路径 | 仅仅使用跳数 | 使用带宽综合决定 |
信息交换 | 运行距离矢量路由协议的路由器,会将所有它知道的路由信息与邻居共享,但是只与直连邻居共享! | 运行链路状态路由协议的路由器,只将它所直连的链路状态与邻居共享,这个邻居是指一个域内(domain),或一个区域内(area)的所有路由器! |
算法选择 | 所有距离矢量路由协议均使用Bellman-Ford(Ford-Fulkerson)算法,容易产生路由环路(loop)和计数到无穷大(counting to infinity)的问题。因此它们必须结合一些防环机制: | 链路状态路由协议均使用了强健的SPF算法,如OSPF的dijkstra,不易产生路由环路,或是一些错误的路由信息。路由器在转发链路状态包时(描述链路状态、拓扑变化的包),没必要首先进行路由运算,再给邻居进行发送,从而加快了网络的收敛速度。 |
结论
LS算法和DV算法都是常见的路由算法,它们有各自的优点,用不同规模和复杂度的网络。在实际应用中,需要根据网络的实际情况和需求选择合适的路由算法,以保证网络的稳定性和可靠性。
联系作者
长按扫码关注微信公众号
往期推荐: