DUAL概念(擴散更新算法)
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 的簡化版。