split-horizon产生的路由欺骗

split-horizon产生的路由欺骗

RIP协议中,无论是产生路由环路还是收敛慢都是我们不愿意看到的。当然它也有一些辅助的措施来补救,比如:

  1. Split-horizon(水平分割)
  2. Split-horizon with poisoned reverse(带毒性逆转的水平分割)
  3. Triggered update(触发更新)
  4. Holddown timer
  5. Define a maximum hop count(定义最大值)

split-horizon 用于应对两点之间的相互路由欺骗,潜台词的含义便是,超过2个及以上 的路由使用split-horizon仍会出现路由欺骗。

split-horizon简介

split-horizon和Split-horizon with poisoned reverse本质上是一回事,他的含义便是从一端收到的路由信息不会再重复传回去

(带毒性即是可以重复传回去,但此时会将重复路由的跳数设为16,也就是最大,这样对方即使收到也会抛弃这个条目,相当于没有收到。)

欺骗问题

但是这样并没有完全解决欺骗问题,路由仍有可能产生环路。
如下图:
仅有split-horizon

在路由器 A 与路由器 D 之间链路未故障时,到达路由器 A 的路由表

RouterNext Routercost
BC3
CD2
DA1

此时A与D之间链路发生故障

对于路由器D,D->A 的消耗为 16

由于split-horizon, C不会向D扩散路由表,B不会向 C 扩散路由表

但是B可以向D扩散路由表,此时D认为B->A的消耗为3,D->B 的消耗为 5,D 自认为可以到达 A,消耗为 8

此时B,C,D三者均认为自己可以到达A

RouterNext Routercost
BC3
CD2
DB8

三者继续广播,D 向 C 广播,D->A 的消耗为 8,

则 C 进行更新路由表

RouterNext Routercost
CD9

C 向 B 广播,C->A 的消耗为 9
则 B 进行更新路由表

则B 进行更新路由表

RouterNext Routercost
BC10

B 向 D 广播,B->A 的消耗为 10
则 D 进行更新路由表

则D 进行更新路由表

RouterNext Routercost
DB15

继续进行广播更新

C 更新路由表

RouterNext Routercost
CD16

可以看出,此时C才知道有链路损坏,跳数到了16

此前B,C,D之间形成了路由环路,导致了“坏消息”不能快速传递

避免split-horizon造成的这种路由欺骗,就要用到后面的Triggered update(触发更新)等规则了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值