免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1842 | 回复: 0
打印 上一主题 下一主题

routing loops环路问题及解决 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-01-15 16:42 |只看该作者 |倒序浏览

c(目的网络)----routerA------routerB
在正常情况下,对于目标网络,A路由器的metric值为1,B路由器的metric值为2。当目标网络与A路由器之间的链路发生故障而断掉以后:
c(目的网络)--||--routerA------routerB
A
路由器会将针对目标网络C的路由表项的metric值置为16,即标记为目标网络不可达,并准备在每30秒进行一次的路由表更新中发送出去,如果在这条信
息还未发出的时候,A路由器收到了来自B的路由更新报文,而B中包含着关于C的metric为2的路由信息,根据前面提到的路由更新方法,路由器A会错误
的认为有一条通过B路由器的路径可以到达目标网络C,从而更新其路由表,将对于目标网络C的路由表项的metric值由16改为3,而对于的端口变为与B
路由器相连接的端口。很明显,A会将该条信息发给B,B将无条件更新其路由表,将metric改为4;该条信息又从B发向A,A将metric改为5……
最后双发的路由表关于目标网络C的metric值都变为16,此时,才真正得到了正确的路由信息。这种现象称为“计数到无穷大”现象,虽然最终完成了收
敛,但是收敛速度很慢,而且浪费了网络资源来发送这些循环的分组。
一些解决方案:
在上面的“计数到无穷大”现象中,产生的原因是A、B之间互相传送了“欺骗信息”,那么针对这种情况,我们自然会想到如果能将这些“欺骗信息”去掉,那么不就可以在一定程度上避免“计数到无穷大”了吗。水平分割正是这样一种解决手段。
“普通的水平分割”是:如果一条路由信息是从X端口学习到的,那么从该端口发出的路由更新报文中将不再包含该条路由信息。
“带毒化逆转的水平分割”是:如果一条路由信息是从X端口学习到的,那么从该端口发出的路由更新报文中将继续包含该条路由信息,而且将这条信息的metric置为16。
“普通的水平分割”能避免欺骗信息的发送,而且减小了路由更新报文的大小,节约了网络带宽;“带毒化逆转的水平分割”能够更快的消除路由信息的环路,但是增加了路由更新的负担。这两种措施的选择可根据实际情况进行选择。
抑制定时器:当路由表中的某个条目所指网络消失时,路由器并不会立刻的删除该条目并学习新条目,而是严格按照我们前面所介绍的计时器时间现将条目设置为无效接着是挂起,在240秒时才删除该条目,这么做其实是为了尽可能的给于一个时间等待发生改变的网络恢复。
触发更新:因网络拓扑发生变化导致路由表发生改变时,路由器立刻产生更新通告直连邻居,不在需要等待30秒的更新周期,这样做是为了尽可能的将网络拓扑的改变通告给其他人。
something else for myself
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/109778/showart_2150095.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP