RIP防环机制简介

今天主要给大家介绍一下RIP的放环机制,作为一种动态路由协议,防止环路的产生是其在设计和实现时要着重考虑的内容。要看懂本文,您不需要太高的理论知识,但是要具备基本的计算机网络和路由相关知识,如果您对上述知识还不是特别了解,可以查阅我博客内其他文章,相信您一定会有收获。

一、RIP环路的产生

要解决RIP环路问题,首先要弄懂为什么RIP会产生环路。RIP协议产生环路原因如下:
在这里插入图片描述

如上图所示,假设R1和R2路由器运行了RIP协议,R1通过RIP协议将10.1.1.0路由传递给了R2。在这种情况下,在R1的路由表中,10.1.1.0网段的跳数为1,而在R2的路由表中,10.1.1.0 的跳数为2。现在假设R1的10.1.1.0网段连接断掉了,此时对于R1来说,就把10.1.1.0网段的路由设为不可达。但是如果没有放环机制,可能会出现以下问题。在R1没有把10.1.1.0网段的路由不可达消息传递给R2的时候,R2向R1传递了一条10.1.1.0的跳数为2的路由,这样一来,R1认为虽然自己可能无法到达10.1.1.0,但是通过R2可以到达10.1.1.0网段,因此R1会在自己的路由表中加入10.1.1.0网段的路由,并且其下一条是R2。这样子,路由环路就产生了,因为在这种情况下,R1把发往10.1.10网段的数据包发给了R2,而R2又把该数据包回传给R1,数据包在R1和R2之间来回传递。

二、RIP环路的解决

前面我们介绍了RIP协议环路产生的原因,下面我们来介绍一下如何避免产生RIP环路。
(一)定义最大跳数
在上述发生路由环路的情景下,假设R1和R2继续向对方通告10.1.1.0网段的路由,则每次收到对方的路由信息后,都会使得该路由跳数加1,因此该网段的路由跳数就会不断增加。
针对这一特性,RIP设计了以下原则:认为跳数为16的路由不可达,这样一来,当该网段路由跳数达到16时,就停止向对方传递路由。定义最大条数,在一定程度上,解决了路由环路问题。
(二)水平分割
然而,定义最大条数在解决路由环路问题上显得非常迟缓,除了定义最大条数之外,RIP协议还引入了水平分割机制,来防止路由环路。什么是水平分割呢?水平分割就是从一个路由器学习到的路由,不会再通告给该路由器。以上述情景举例,R2从R1处学习到了10.1.1.0网段的路由,因此R2不会传递给R1,当R1连接10.1.1.0网段出现故障后,就不会收到R2传来的10.1.1.0网段的路由了,因此可以避免路由环路。
(三)毒性逆转
除了水平分割机制,RIP还定义了毒性逆转机制,也可以防止路由环路。毒性逆转机制是指,当一个路由器从另一个路由器收到一个网段的路由后,会将该路由设置为条数为16,回送给对方。以上述情景距离,毒性逆转就是在R2收到R1的10.1.1.0网段的路由后,会发送给R1跳数为16的10.1.1.0网段的路由。
形象的说,水平分割就是如果我从你这里学到了路由,那么我就不应该把这台路由再告诉你。而毒性逆转是指如果我从你这里学到了路由,那么我就应该告诉你,这条路由从我这里走不通。
(四)触发更新
相比于水平分割和毒性逆转,触发更新是从另一个角度来解决路由环路问题。触发更新是指当一个路由器发现自身的路由出现变化时,立刻发送路由更新消息通知其他路由器。以上述情景举例,当R1发现10.1.1.0网断不可达时,就立即将该消息发送给R2,同时R2也会立即更新自己的路由表,这样就避免了再次回传该路由给R1,避免了路由环路。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200/article/details/118557006

  • 9
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远是少年啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值