距离矢量路由协议(3)

http://network.51cto.com  2007-08-15 12:17  徐原  网管员世界  我要评论(0)
  • 摘要:路由器工作在网络层,是网管员朋友工作必须打交道的设备之一。路由协议可分为静态路由协议和动态路由协议,而动态路由协议众多。从本期开始,我们将分五期为大家介绍常见的路由协议,包括距离矢量路由协议原理、RIP、IGP、EIGRP、OSPF、IS-IS、BGP、MPLS等。本期为您介绍距离矢量路由协议。
  • 标签:距离  矢量  路由  协议

如果网络11.4.0.0故障,就可能会在路由器之间产生路由环路,下面是产生路由环路的步骤:
1.在网络11.4.0.0发生故障之前,所有的路由器都具有正确一致的路由表,网络是收敛的。在本例中,路径开销用跳数来计算,所以每条链路的开销是1。路由器C与网络11.4.0.0直连,跳数为0;路由器B经过路由器C到达网络11.4.0.0,跳数为1;路由器A经过路由器B到达网络11.4.0.0,跳数为2。
2.当网络11.4.0.0发生故障,路由器C最先收到故障信息,路由器C把网络11.4.0.0设为不可达,并等待更新周期到来通告这一路由变化给相邻路由器。如果路由器B的路由更新周期在路由器C之前到来,那么路由器C就会从路由器B那里学习到去往11.4.0.0的新路由(实际上,这一路由已经是错误的路由了)。这样路由器C的路由表中就记录了一条错误路由(经过路由器B,可去往网络11.4.0.0,跳数增加到2)。
3.路由器C学习了一条错误信息后,它会把这样的路由信息再次通告给路由器B,根据通告原则,路由器B也会更新这样一条错误路由信息,认为可以通过路由器C去往网络11.4.0.0,跳数增加到3。
4.这样,路由器B认为可以通过路由器C去往网络11.4.0.0,路由器C认为可以通过路由器B去往网络11.4.0.0,就形成了环路。
环路的补救与避免
1.定义最大值
如上所述,发生路由环路时,路由器去往网络11.4.0.0的跳数会不断增大,网络无法收敛。为解决这个问题,我们给跳数定义一个最大值,在RIP路由协议中,允许跳数最大值为16,当跳数到达最大值时,网络11.4.0.0被认为是不可达的,路由器会在路由表中显示网络不可达信息,并不再更新到达网络11.4.0.0的路由。
通过定义最大值,距离矢量路由协议可以解决发生环路时路由权值无限增大的问题,同时也校正了错误的路由信息。但是,在最大权值到达之前,路由环路还是会存在。也就是说,这个方案只是补救措施,不能避免环路产生,只能减轻路由环路产生的危害。
2.水平分割
水平分割是在距离矢量路由协议中最常用的避免环路发生的解决方案之一。分析产生路由环路的原因,其中一条就是因为路由器将从某个邻居学到的路由信息又告诉了这个邻居。水平分割的思想就是在路由信息传送过程中,不再把路由信息发送给接收此路由信息的接口上。
3.路由中毒和抑制时间
路由中毒和抑制时间结合起来,也可以在一定程度上避免路由环路产生,同时也可以抑制因复位接口等原因引起的网络动荡。这种方法在网络故障或接口复位时,使相应路由中毒,同时启动抑制时间,控制路由器在抑制时间内不要轻易更新自己的路由表,从而避免环路产生、抑制网络动荡。

共5页: 上一页 [1] [2] 3 [4] [5] 下一页
【内容导航】
路由器产品导购
RIP路由协议专栏
中小企业安全路由器手册
华为路由器配置
SIP协议融合语音视频通信
 
 验证码: (点击刷新验证码)   匿名发表
  • Visual C++ 完全自学宝典

  • 作者:强锋科技,朱洪波
  • Visual C++ 6.0是微软公司为程序人员提供的Visual Studio 6.0工具套件中的重要组成部分。本书由浅入深地介绍使用Visual C++ 6.0..
Copyright©2005-2008 51CTO.COM 版权所有