路由算法之距离矢量算法DV

2021/6/28 20:23:57

本文主要是介绍路由算法之距离矢量算法DV,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

我们在这里的距离讲的是节点数量(跳数)

路由表的格式 

image.png  image.png

距离向量 C

C[n]: 从当前节点到目标节点n的距离  向所有邻居通告我到其他节点的距离 

image.png

收到邻居通告时

对通告中的每一项,如果满足下列条件,就采用该项

  • 通告距离比路由表中到目标的距离短 发现了更好的路由
  • 路由表中的下一跳就是通告者 发现了更新的路由

否则,丢弃 

路由更新原则:更好,更新

问题

无穷计算问题 :好消息反应快 坏消息反应慢 :一个靠邻居“谣言”活着的路由协议

如何解决上述问题?(防环机制)

  • 最大跳数
  • 水平分割
    • 不把某邻居告诉我的事情再告诉给它
    • 如果两节点路由已经互相指向 不收敛,直到路由表项超时失效,路由项超时周期通常比通告周期长 
  • 毒性反转
    • 如果某邻居是我到某目的地的下一跳,则我总是告诉该邻居我不能到达相应的节点 
    • 配置毒性反转后,RouterB在接收到从RouterA发来的路由后,向RouterA发送一个这条路由不可达的消息(将该路由的开销设置为16),这样RouterA就不会再从RouterB学到这条可达路由,因此就可以避免路由环路的产生。
  • 触发更新
    • 不等更新时钟到来,一旦有变化就立马更新 缺点:鲁棒性差 

典型协议 RIP 

通告周期: 30s period + random jitter (避免同时通告)

路由项超时周期: route fails (set to 16), 180s  

优缺点

优点

实施和维护简单

资源要求低:低CPU /内存开销

缺点

容易出现路由环路

收敛时间慢:定时更新

可扩展性较差,不适用于大规模网络 



这篇关于路由算法之距离矢量算法DV的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程