DUAL(扩散更新算法)是 EIGRP确定最佳无环路径和无环备用路径的方法。
DUAL 使用几个术语,本节将详细讨论这些术语:
l 后继路由器
l 可行距离 (FD)
l 可行后继路由器 (FS)
l 报告距离 (RD),或称通告距离 (AD)
l 可行条件,或称可行性条件 (FC)
后继路由器和可行距离
术语后继路由器 是指用于转发数据包的一台相邻路由器,该路由器是通向目的网络的开销最低的路由。后继路由器的 IP 地址显示在路由表条目中,紧随单词 via。
可行距离 (FD) 是计算出的通向目的网络的最低度量。FD 是路由表条目中所列的度量,就是括号内的第二个数字。与其它路由协议中的情况一样,它也称为路由度量。
可行后继路由器、可行性条件和报告距离
在拓扑变化时,DUAL 之所以收敛速度快,原因之一就在于它使用通向其它路由器的备用路径,这些路由器称为可行后继路由器 ,备用路径使得无需重新计算 DUAL。
可行后继路由器:可行后继路由器 (FS) 是指一个邻居,它有一条通向后继路由器所连通的同一个目的网络的无环备用路径,并且满足可行性条件。(要成为可行后继路由器,必须满足可行性条件(FC))
可行性条件:当邻居通向一个网络的报告距离 (RD) 比本地路由器通向同一个目的网络的可行距离短时,即符合了可行性条件 (FC)
报告距离:报告距离(或称通告距离)即为 EIGRP 邻居通向相同目的网络的可行距离。报告距离是路由器向邻居报告的、有关自身通向该网络的开销的度量。
拓扑表:后继路由器和可行后继路由器
拓扑表中列出了 DUAL 计算出的通向目的网络的所有后继路由器和可行后继路由器。
路由器将后继路由器、可行距离和所有可行后继路由器及其报告距离保存在其 EIGRP 拓扑表(即拓扑数据库)中。
使用 show ip eigrp topology 命令查看该拓扑表。
举个例子:
使用 show ip eigrp topology 的输出如下:
第一行显示:
l P — 该路由处于被动状态。当 DUAL 当前未执行扩散计算来确定通向一个网络的路径时,该路由将处于稳定模式,即被动状态。如果 DUAL 正在重新计算或搜索新路径时,该路径将处于主动状态。对于稳定的路由域来说,该拓扑表中的所有路由都应该处于被动状态。如果该路由“陷入主动状态”,DUAL 将显示一个 A 字符。
l 192.168.1.0/24 — 这是目的网络,这也可在路由表中找到。
l 1 successors — 这用于显示通向此网络的后继路由器数量。如果存在通向此网络的多条等价路径,则会有多台后继路由器。
l FD is 3014400 — 这是可行距离,即通向目的网络的 EIGRP 度量。
第一个条目显示了后继路由器:
l via 192.168.10.10 — 这是后继路由器的下一跳地址。此地址显示在路由表中。
l 3014400 — 这是通向 192.168.1.0/24 的可行距离,这是路由表中所示的度量。
l 28160 — 这是后继路由器通向此网络的报告距离,即后继路由器的开销。
l Serial0/0/1 — 这是通向此网络的出站接口,也显示在路由表中。
第二个条目显示了可行后继路由器(如果没有第二个条目,则说明没有可行后继路由器):
l via 172.16.3.1 — 这是可行后继路由器的下一跳地址。
l 41026560 — 如果成立新的后继路由器,这将是现在后继路由通向 192.168.1.0/24 的新的可行距离。
l 2172416 — 这是可行后继路由器通向该网络的报告距离,即可行后继路由的度量。此值 (RD) 必须比当前 FD (3014400) 小才能符合可行性条件。
l Serial0/0/0 — 这是通向可行后继路由器的出站接口。
(如果通向后继路由器的路径发生故障,又没有可行后继路由器,会发生什么情况呢? DUAL 会将网络置于主动 状态。DUAL 将会主动向邻居查询,看是否存在新的后继路由器。)
show ip eigrp topology all-links 命令会显示通向一个网络的所有可能路径。
DUAL 有限状态机 (FSM)
EIGRP 的核心就是 DUAL 以及 DUAL 的 EIGRP 路由计算引擎。此技术的确切名称为 DUAL 有限状态机 (FSM)。有限状态机包含用于在 EIGRP 网络中计算和比较路由的所有逻辑。 图示为 DUAL FSM 的简化版。