设为首页 收藏本站
查看: 861|回复: 0

[经验分享] EIGRP选路和DUAL算法

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-6-10 09:23:28 | 显示全部楼层 |阅读模式
拓扑
路由器A和路由器B之间有3条链路(两条FastEthnet和一条Serial),两台路由器都启用EIGRP并在同一自治系统90内为了让中间3条线路不会挤成一堆,中间用了两台交换机来连接两条线路(不影响实验结果)。
wKioL1V2jT6hOMEzAAESM8bTjzM633.jpg
环境
GNS3

配置
接口IP配置(略)
EIGRP宣告
A#show running-config | section eigrp
router eigrp 90
network 172.16.0.0
network 192.168.1.0
auto-summary
eigrp router-id 1.1.1.1

B#show running-config | section eigrp
router eigrp 90
network 172.16.0.0
network 192.168.2.0
auto-summary
eigrp router-id 2.2.2.2


路由器B此时已经和A建立了3组邻居关系

B#show ip eigrp neighbors
IP-EIGRP neighbors for process 90
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
                                            (sec)         (ms)       Cnt Num
2   172.16.22.1             Se0/2             14 02:05:32   67   402  0  17
1   172.16.33.1             Fa3/0             14 02:05:35   70   420  0  19
0   172.16.11.1             Fa1/0             11 02:05:35   71   426  0  18


但是路由器B中填充进路由表的只有如下面高亮所示3条路径中的两条。这是为什么呢?这就涉及到了EIGRP中的选路问题了。

B#show ip route eigrp
     172.16.0.0/16 is variably subnetted, 4 subnets, 2 masks
D       172.16.0.0/16 is a summary, 02:06:17, Null0
D    192.168.1.0/24 [90/156160] via 172.16.33.1, 02:06:31, FastEthernet3/0
                    [90/156160] via 172.16.11.1, 02:06:31, FastEthernet1/0

EIGRP选路
首先EIGRP采用DUAL(弥散更新算法)来计算到达目标网络的最优无环路径。选路时会用到一些术语,下面简单介绍一下这些术语:
AD(Announce Distance):通告距离,也叫RD(Reoprt Distance)报告距离,AD是EIGRP邻居路由器到达目标网络的度量值,也就是下一跳路由器到达目标网络的最佳度量值。

FD(Feasible Distance):可行距离,是当前路由器前往目标网络的度量值,它是从EIGRP邻居获悉的AD和它自己到达邻居的度量值之和。
Successor:后继站,针对本地路由器而言,具有最低开销的下一跳。

FS(Feasible Successor):可行后继站,针对本路由器而言,具有次优开销的下一跳。(可以有多个FS)

FC(Feasible Condition):可行条件,AD<FD,即邻居告诉我到目的地的距离必须小于我自己到目的地的距离(举个例子,假如你(本地路由器)开车要去一个目的地(目的网络),你知道离目的地有多远该怎么走(FD),碰巧你原来的这条路遇到堵车(FD链路不可达)。你隔壁(村或者镇)的几个朋友(邻居路由)他们也都知道怎么去目的地(他们自己的FD),他们挨个他打电话告诉你(路由宣告),他们开车去这个地方要多久,你从朋友提供的信息中挑选去目的地最近的邻居走(FS),然后你就从邻居那里开车到目的地,如果有朋友提供的路径比你原来自己开车去目的地都要远的话(AD>FD),你就不会把它当成备用路线(Successo),下次再遇到堵车的时候你就直接从最近的朋友那里去目的地了)
我们针对本次的实验环境分析一下这几个术语:
A#show ip eigrp topology
IP-EIGRP Topology Table for AS(90)/ID(1.1.1.1)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status

P 192.168.1.0/24, 1 successors, FD is 128256
        via Connected, Loopback1
P 192.168.2.0/24, 2 successors, FD is 156160
        via 172.16.11.2 (156160/128256), FastEthernet1/0
        via 172.16.33.2 (156160/128256), FastEthernet3/0
        via 172.16.22.2 (2297856/128256), Serial0/2
P 172.16.33.0/30, 1 successors, FD is 28160
        via Connected, FastEthernet3/0
P 172.16.22.0/30, 1 successors, FD is 2169856
        via Connected, Serial0/2
P 172.16.11.0/30, 1 successors, FD is 28160
        via Connected, FastEthernet1/0
P 172.16.0.0/16, 1 successors, FD is 28160
        via Summary (28160/0), Null0

对于路由器A上面***高亮部分的192.168.2.0/24这条路由而言 172.16.11.2(F1/0)和172.16.33.2(F3/0)都是Successor(后继站),对于172.16.22.2(S0/2)其AD=128256,小于当前FD=156160所以满足FC可以作为FC(可行条件)。如果不满足的话将不会出现在show ip eigrp topology中但是会出现在show ip eigrp topology all-links中。
选出的所有successor将会被提交到路由表中,下面验证一下:
A#show ip route eigrp
     172.16.0.0/16 is variably subnetted, 4 subnets, 2 masks
D       172.16.0.0/16 is a summary, 03:26:57, Null0
D    192.168.2.0/24 [90/156160] via 172.16.33.2, 03:26:17, FastEthernet3/0
                    [90/156160] via 172.16.11.2, 03:26:17, FastEthernet1/0

再来看一个实例
wKioL1V241_jRRZdAACNOSeWC9g850.jpg
上图中路由器D把身后的路由条目传给路由器A有两条路径:
  • 路径1:D-->C-->A,FD=5+10+2=17
  • 路径2:D-->B-->A,FD=5+5+3=13

上面的两条路径中,最小的FD是13。
第一条路径的AD是C报告的AD=5+10=15,15>13。这条路径不满足FC(Feasible Condition),所以不能成为FS(Feasible Successor)。
第二条路径的AD是B报告的AD=5+5=10,10<13。这条路径满足FS(Feasible Condition),所以能成为FS(Feasible Successor)。
上面的15610/128256等参数是怎么算出来的呢?EIGRP通过一个复合开销来计算最优路由,计算时会用到5如下个参数:
  • Bandwidth(带宽)
  • Delay(延迟)
  • Reliability(可靠性)
  • Loading(负载)
  • MTU(最大传输单元)

计算时会用到开销权重(K值,K1,K2,K3,K4,K5)来决定在开销计算中哪些K值会被代入参与计算。这5个K值可以在查看路由协议的时候看到,如下:

A#show ip protocol
Routing Protocol is "eigrp 90"
  Outgoing update filter list for all interfaces is not set
  Incoming update filter list for all interfaces is not set
  Default networks flagged in outgoing updates
  Default networks accepted from incoming updates
  EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0

有人会问,上面提到的带宽,延迟,可靠性,负载,MTU5个参数是否就对应这5个K值啊?
答案是No!请看下面计算公式:
Metric=【K1*BW+{(K2*BW)/(256 - Load)}+(K3*Delay)】*256
由于默认情况下:K1=K3=1;K2=K4=K5=0。所以上面的公式就简化成如下:
Metric=(BW+Delay)*256,其中BW=10的7次方除以沿途最小带宽(kbps);Delay=沿途路由入向接口Delay(10us)之和。
上面公式中如果K5=1的话,则还有计算一步:
Metric=Metric*【K5/(Reliability+K4)】
你会发现公式中MTU并没有参与计算,这是因为设计之初本打算把它带入计算的,但是后来发现如果把MTU带入计算的话会带来不少问题,所以后来干脆就把它忽略计算了。
注意:在计算时,每个接口都有自己的带宽、时延等参数,一条链路两端的接口参数未必完全相同(一般情况下都是相同的)。在计算路径开销时,先找出需要计算的接口是哪些,规则是:路由传播方向的入向接口(数据包发送方向的出向接口)。下面用几个实例来加固一下理论:
wKiom1V2t6LDL5PZAABO34gLxG0202.jpg
如上图所示,R1要访问R4的话,则路由传播方向就是R4-R3-R2-R1,沿途经过的入向接口是上图用红色圈住部分。
沿途最小带宽=10Mbps=10000kbps
沿途时延之和=50ms+10ms+40ms=100ms=100000um=10000*(10us)
由于默认情况下的计算公式:Metric=(BW+Delay)*256
Metric=(107/10000+10000)*256=2816000

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-75718-1-1.html 上篇帖子: 网络聚合CIDR、OSPF、RIP路由重分发配置实例 下篇帖子: cisco [acl]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表