解决EIGRP Query报文重复扩散问题

EIGRP是Cisco公司的私有路由协议,被称为带有链路状态的距离矢量型路由协议(也叫混合路由协议)。

EIGRP没有区域的概念,而OSPF在大规模网络的情况下,可以通过划分区域来规划和限制网络规模。所以EIGRP适用于网络规模相对较小的网络,这也是矢量-距离路由算法(RIP协议就是使用这种算法)的局限所在。

特别一提的是,EIGRP的无环路计算和收敛速度是基于分布式的DUAL算法的,这种算法实际上是将不确定的路由信息散播(向邻居发query报文),得到所有邻居的确认后(reply报文)再收敛的过程,邻居在不确定该路由信息可靠性的情况下又会重复这种散播,因此某些情况下可能会出现该路由信息一直处于活动状态(SIA),并且,如果在活动路由的这次DUAL计算过程中,出现到该路由的后继(successor)的测量发生变化的情况,就会进入多重计算,这些都会影响DUAL算法的收敛速度。

 实际应用当中,如果某个网络出现故障后,则可能会引起整个网络产生大量的查询和回复包,这些包都会占用大量的带宽,严重的可能造成网络堵塞。所以应该尽量避免这样的情况出现,方法有三种:

 

方法1:配置汇总路由

我们知道汇总路由往往不会是一条具体 的网络,而是某一主类网络,因此当一台路由器向直连路由器发起某一具体的网络的查询时,该路由器只有一条汇总路由,并没有该具体的网络 ,故对查询回复“不可达”,而不进一步传播查询。但是仍然会针对汇总路由发起查询,也就是没有完全限制了查询。

方法2:将远程路由器配置成末节EIGRP路由器

在中央-分支网络拓扑中常用,远程路由器将所有非本地数据流转发给中央路由器,中央路由器只需将一条默认路由通告给远程路由器,当远程路由器使用EIGRP末节特性时,使得中央节点对查询做出回答,而不会向stub标识的路由器发查询。

方法3:

路由过滤和接口分组过滤。比方说,如果将发送给路由器的某些路由选择更新过滤掉,则给路由器收到针对这些被过滤掉(阻断)的网络的查询时,它将指出网络不可达,而不会进一步传播查询。

综上所述,路由汇总和stub区域不仅可以避免SIA出现,同时还解决EIGRP路由收敛问题。

 当然,EIGRP协议的优点也很多,比如收敛速度快、路由聚合、支持不等价负载分担、MD5认证等。这些都是用户选择EIGRP的重要因素。

This entry was posted in 路由交换. Bookmark the permalink.

发表评论