Ca.J#sh start ! Written by 红头发 a.k.a Ca.J Description 转po请保留作者信息 Homepage http://www.show-tym.com/ May.15th.2004 !
EIGRP Features <
/P>
EIGRP是Cisco的私有路由协议,它综合了距离矢量和链路状态2者的优点,它的特点包括: 1.快速收敛:EIGRP使用Diffusing Update算法(DUAL)来实现快速收敛.路由器使用EIGRP来存储所有到达目的地的备份路由,以便进行快速切换.如果没有合适的或备份路由在本地路由表中的话.路由器向它的邻居进行查询来选择一条备份路由 2.减少带宽占用:EIGRP不作周期性的更新,它只在路由的路径和度发生变化以后做部分更新.当路径信息改变以后,DUAL只发送那条路由信息改变了的更新,而不是发送整个路由表.和更新传输到一个区域内的所有路由器上的链路状态路由协议相比,DUAL只发送更新给需要该更新信息的路由器 3.支持多种网络层协议:EIGRP通过使用protocol-dependent modules(PDMs),可以支持ApplleTalk,IP和Novell Netware等协议 4.无缝连接数据链路层协议和拓扑结构:EIGRP不要求对OSI参考模型的层2协议做特别是配置.不像OSPF,OSPF对不同的层2协议要做不同配置,比如以太网和帧中继总之,EIGRP能够有效的工作在LAN和WAN中,而且EIGRP保证网络不会产生环路(loop-free);而且配置起来很简单;支持VLSM;它使用多播和单播,不使用广播,这样做节约了带宽;它使用和IGRP一样的度的算法,但是是32位长的;它可以做非等价的路径的负载平衡
EIGRP Databases
运行了EIGRP的路由器维持3张表:neighbor table,topology table和routing table.其中neighbor table保存了和路由器建立了邻居关系的,直接相连的路由器;topology table包含路由器学习到的到达目的地的所有路由条目,其过程如下: 1.neighbor table中的每个邻居都转发1份IP路由表的拷贝给它们的邻居 2.然后每个邻居把从它们自己的邻居处得来的路由表存储在自己的EIGRP拓扑数据库中 3.EIGRP检查拓扑数据库,然后选择出一条到达目的地的最佳路由 4.EIGRP从拓扑数据库中选择到达目的地的最佳的successor routes,然后把它们放到路由表里.路由器为每种协议(比如IP,IPX)各自保持1张单独是路由表
Feasible Distance vs. Advertised Distance
为了决定到达目的地的最佳路由(successor)和备份路由(feasible successor),EIGRP使用下面2个参数: 1.advertised distance:EIGRP邻居到达目标网络的度 2.feasible distance:到达邻居路由器的度加上advertised distance(即邻居到达目标网络的度) 路由器比较所有的FD,然后选择FD值最低的放进IP路由表
来看一个例子,如下图: [img:73681a758d]http://www.show-tym.com/image/note/20045815543912304.jpg[/img:73681a758d] 如图显示的是C的EIGRP拓扑数据库,里面包含了邻居A和B的信息.A和B都知道如何到达网络10.1.1.0/24.从图中我们看见A到达目标网络的advertised distance是1000;B是1500.FD分别是2000和2500.C经过比较,将FD值低的,这里就是A的条目,作为到达网络10.1.1.0/24的最佳路径
EIGRP Metric Calculation
EIGRP选择一条主路由(最佳路由)和一条备份路由放在topology table(EIGRP到目的地支持最多6条链路).它支持几种路由类型:内部,外部(非EIGRP)和汇总路由.EIGRP使用混合度 EIGRP度的5个标准如下: 1.带宽:10的7次方除以源和目标之间最低的带宽乘以256 2.延迟(delay):接口的累积延迟乘以256,单位是微秒 以上是默认的2个,下面是可选的3个标准: 3.可靠性(reliability):根据keepalive而定的源和目的之间最不可靠的可靠度的值 4.负载(loading):根据包速率和接口配置带宽而定的源和目的之间最不差的负载的值 5.最大传输单元(MTU):路径中最小的MTU.MTU包含在EIGRP的路由更新里,但是一般不参与EIGRP度的运算
EIGRP使用DUAL来决定到达目的地的最佳路由(successor).当最佳路由出问题的时候,EIGRP不使用holddown timer而立即使用备份路由(feasible successor),这样就使得EIGRP可以进行快速收敛
看看EIGRP计算度的公式,K是常量,公式如下: metric=[K1*bandwidth+(K2*bandwidth)/(256–load)+K3*delay]*[K5/(reliability+K4)] 默认:K1=1,K2=0,K3=1,K4=0,K5=0 这样就得到默认的度的简化计算公式,如下: metric=bandwidth+delay 注意,不推荐修改K值.K值通过EIGRP的hello包运载.如果两个路由器的K值不匹配的话它们是不会形成邻居关系的
EIGRP Metrics Backward Compatible to IGRP
EIGRP的度和IGRP的度能够很好的进行兼容.IGRP的度是以24位的格式,而EIGRP是32位的格式.它们之间的关系是EIGRP的度是256倍于IGRP的度.也就是说假如IGRP的度为1000的话,换算成EIGRP的度为256000
来看一个EIGRP度的计算的例子,如下图: [img:73681a758d]http://www.show-tym.com/image/note/20045815544861352.jpg[/img:73681a758d] 注意图上各个路由器之间的链路带宽,先看看A经过B,C到达D之间的度的计算,AB之间,BC之间为T1线路,CD之间带宽为64kbps,计算如下: 带宽=10,000,000/64*256=40,000,000 累积延迟=(2000+2000+2000)*256=1,536,000 所以度=带宽+累积延迟=41,536,000
EIGRP Packets
EIGRP的5种包的类型,如下: 1.hello包:路由器使用hello包来发现邻居,采用多播的方式 2.update包:采用单播或多播的方式发送.更新发生在路由器启动,拓扑或度发生变化,和路由状态的迁移(主动到被动) 3.query包:当路由器开始进行路由计算和没有FD的时候,它就发送给邻居一个可靠的查询包来询问是否有到达目的地的FD.查询包通常以多播的方式发送 4.reply包:以单播的方式发回给发出查询包的路由起,作为应答 5.acknowledge(ACK)包:ACK包是采用单播的hello包,包含非0的确认数字.update包,query包和reply包均是可靠发送,所以它们都需要确认;而hello包和ACK包就不需要确认
EIGRP Hello Packets
当你在路由器的接口配置了EIGRP以后,路由器会周期性的以组多播的方式向外发送hello包.多播地址是224.0.0.10.当和它在1个AS里的其他运行了EIGRP的路由器接收到hello包以后,就会和它形成邻居关系.不在1个AS里,而且度的计算方式不一样(即K值不同),是不会形成邻居关系的
EIGRP Timers
hello包在不同的介质上发送间隔是不一样的,如下: 1.在以下介质中是以每5秒进行发送:广播型介质,比如以太网,令牌环(Token Ring)和分布式光纤接口(FDDI);在点到点类型的串行链路中比如PPP和HDLC,还有帧中继和ATM;带宽大于T1线路的多点线路,比如交换式多兆位数据服务(SMDS),帧中继,ATM和ISDN PRI 2.在以下类型中间隔时间是60秒:带宽小于T1线路的多点线路,比如ISDN BRI,帧中继,SMDS,ATM和X.25当配置EIGRP的时候,EIGRP进程动态发现和它直接相连的运行了EIGRP的路由器.每个路由器在它自己的neighbor table中都保持的有邻居的信息,包括到达邻居路由器的地址和接口.还保持的有hold time.hold time是3倍于hello time
EIGRP在低速链路上发送hello包的频率较低,因为hello包会占用额外的带宽.不过可以在接口配置模式对默认时间进行修改,使用ip hello-interval eigrp {AS-number} {seconds}命令;修改hold time的时间的命令也是在接口配置模式,使用ip hold-time eigrp {AS-number} {seconds}命令.当你修改了hello包的时间间隔以后,hold time是不会自动修改的(之前hold time=hello time*3)所以要人工进行修改
EIGRP Adjacency Establishment Conditions
即使两个路由器的hello time和hold time相互之间不匹配,它们仍然有可能成为邻居.hello包包含了hold time的信息和保持跟踪每个EIGRP邻居路由器的hold time如果EIGRP路由器在hold time超出之前没有收到EIGRP包,路由器就会察觉拓扑的变化.路由器删除邻居路由器的相关信息,包括从邻居那里认可的topology table条目.假如FD可用的话,EIGRP进程将进行重新收敛 |