20
第20篇:eigrp拓扑
上一节我们学习了eigrp数据包,今天我们开始学习eigrp拓扑,跟着我一起往下看吧。
EIGRP拓朴
虽然EIGRP是距离矢量路由协议,但是当从邻居收到路由后,并不是不经过任何计算就直接放进路由表中使用,EIGRP会将从邻居收到的路由全部放入拓朴数据库(Topology Database)中,经过DUAL的无环算法计算之后,才将最优的路由放入路由表中;因为EIGRP可能有多个邻居,也可能从多个邻居收到相同的路由,所以需要从中选中最优路由放入路由表中使用,而不是最优的路由则放在拓朴数据库中备份,等路由表中的路由失效后,便从拓朴数据库中查找备用路由继续放入路由表中使用。
当EIGRP将从邻居收到的路由信息放入拓朴数据库之后,要经过DUAL算法选出最优路由,以下图为例介绍计算方法:
要了解EIGRP选路的具体计算过程,需要先了解以下几个术语:
Reported Distance(RD)
因为EIGRP拓朴数据库中的信息就是从邻居收到的路由表,目的地对于邻居来说肯定是可达的,Reported Distance是表示邻居到达目的地的Metric值是多少。在上图中,R1从R2和R3收到去往目标网络的路由后,R2去往目标网络的Metric值对于R1来说就是RD,同样,R3去往目标网络的Metric值对于R1来说也是RD。
Feasible distance(FD)
当从邻居收到路由信息后,RD只是邻居去往目的地的Metric,而自己去往目的地还得在RD的基础上,再加自己到邻居的这段距离,所以自己到目的地的真正Metric应该是自己到邻居这段距离的Metric加上RD,但是拓朴数据库中可能存在多条去往目的地的路径,而被放入路由表的最优的那条被称为Feasible distance(FD)。在上图中,如果R1选择从R2去往目的地,那么结果将如下图:
如果R1选择从R2去往目的地,那么R2到达目的地的metric(RD)加上R1到R2的Metric,就是R1到达目的地的FD,R1将R2的路径放入路由表中,这时,R2也称为Successor;默认情况下,拓朴数据库中有多条路径可到目的地时,被放入路由表的那条就是FD,FD就一定会被放入路由表。
Feasible Successor(FS)
因为拓朴数据库中可能存在多条路径可以到达目的地,但被选为FD的最优的那条被放入路由表中使用,而留在拓朴数据库中的备用路由称为Feasible Successor(FS),如下图:
R2被选为Successor,当R3继续存放于拓朴数据库时,R3就是FS。
Feasibility Condition (FC)
拓朴数据库中的FS最多可以有6条,如果一个EIGRP有8个邻居可以去往目的地,选出一条FD放入路由表之后,并不是其它7条全部都可以存放于拓朴数据库,拓朴数据库最多只能有6条(其中已经包含FD),也并不是一定会有6条被放入拓朴数据库,因为要存放于拓朴数据库,是必须达到一定条件的,称为Feasibility Condition (FC),就是邻居通告的RD必须小于FD,这个邻居的路径才能存在于拓朴数据库,计算FC的过程如下:
上图中,R1共有4个邻居,分别为R2、R3、R4、R5,当R1从每个邻居那里收到去往目标网络的路由后,结果如下:
R2 通告的RD为 8,
R3 通告的RD为 10,
R4 通告的RD为 25,
当R1要去目标网络时,必须加上自己到达邻居的Metric,计算结果为:
从R2到达目的地的Metric为 20 + 8 = 28,
从R3到达目的地的Metric为 10 +10 = 20,
从R4到达目的地的Metric为 5 + 25 = 30,
由此可见,R1从R3去往目的地的Metric值最小,因此R3的路径被选为FD并放入路由表,R3这时就是Successor,R1去往目的地的FD为20,其它邻居的路由要成为FS存放在拓朴数据库中,那么它们的RD必须小于FD,也就是必须小于20,等于也不行;下面继续计算FS,因为R2的RD为10,小于FD 20,所以R2就是FS并存放在拓朴数据库中备份,而R4的RD为28,大于FD,所以R4没有资格成为FS,不能放在拓朴数据库中,这是因为EIGRP要防止环路,虽然R4的路径并不是环路,但由于要防患于未然,所以R4被拒绝于拓朴数据库之外,理由如下:
因为R1也是R5的邻居,所以R1会将自己的路由表全部发给R5,由于R1到达目的地的Metric为20,R5到达R1的Metric值为3,所以最后R5到达目标网络的Metric值为20 + 3 = 23,R5在将自己的路由表通告给R1后,很明显,R5的Metric值23就是R1从R5到达目的地的RD,对于R1来说,因为R5要从自己去往目标网络,所以对方通告的RD才会比自己的FD还要大,以致于让EIGRP认为,所有邻居通告的RD比自己当前的FD大的话,都统一认为它们在自己后面,它们必须经过自己才能去往目的地,那么这就是一个环路,最终邻居通告的RD等于或大于FD的,都没有资格成为FS, 所以最后造成上图中R4通告了RD 为25而没有资格成为FS。
好了,今天这15分钟也完成了,建议线下动手做下实验,下一节我们将学习EIGRP负载均衡
领取专属 10元无门槛券
私享最新 技术干货