創建鏈路狀態狀態數據包
路由器一旦建立了相鄰關系,即可創建鏈路狀態數據包 (LSP),其中包含與該鏈路相關的鏈路狀態信息。(LSP包含鏈路類型、IP地址、子網掩碼、開銷)
將鏈路狀態數據包泛洪到鄰居:
每臺路由器將其鏈路狀態信息泛洪到路由區域內的其它所有鏈路狀態路由器。路由器一旦接收到來自相鄰路由器的 LSP,立即將該 LSP 從除接收該 LSP 的接口以外的所有接口發出。此過程在整個路由區域內的所有路由器上形成 LSP 的泛洪效應。
LSP 并不需要定期發送,而僅在下列情況下才需要發送:
l 在路由器初始啟動期間,或在該路由器上的路由協議進程啟動期間
l 每次拓撲發生更改時,包括鏈路接通或斷開,或是相鄰關系建立或破裂
除鏈路狀態信息外,LSP 中還包含其它信息(例如序列號和過期信息),以幫助管理泛洪過程。每臺路由器都采用這些信息來確定是否已從另一臺路由器接收過該 LSP 以及 LSP 是否帶有鏈路信息數據庫中沒有的更新信息。此過程使路由器可在其鏈路狀態數據庫中僅保留最新的信息。
構建鏈路狀態數據庫:
每臺路由器使用鏈路狀態泛洪過程將自身的 LSP 傳播出去后,每臺路由器都將擁有來自整個路由區域內所有路由器的 LSP。這些 LSP 存儲在鏈路狀態數據庫中。現在,路由區域內的每臺路由器都可以使用 SPF 算法來構建您之前了解過的 SPF 樹。有了完整的鏈路狀態數據庫后,現在即可使用該數據庫和 SPF(最短路徑優先)算法來計算通向每個網絡的首選路徑(即最短路徑)。
鏈路狀態路由協議的優點:
創建拓撲圖
鏈路狀態路由協議會創建網絡結構的拓撲圖(即 SPF 樹),鏈路狀態路由協議會交換鏈路狀態信息,所以 SPF 算法可以構建網絡的 SPF 樹。有了 SPF 樹,每臺路由器使可獨立確定通向每個網絡的最短路徑。
快速收斂
收到一個鏈路狀態數據包 (LSP) 后,鏈路狀態路由協議便立即將該 LSP 從除接收該 LSP 的接口以外的所有接口泛洪出去。
由事件驅動的更新
在初始 LSP 泛洪之后,鏈路狀態路由協議僅在拓撲發生改變時才發出 LSP。該 LSP 僅包含與受影響的鏈路相關的信息。鏈路狀態路由協議不會定期發送更新。(注:OSPF 路由器會 每隔 30 分鐘泛洪其自身的鏈路狀態。這稱為強制更新。)
層次式設計
鏈路狀態路由協議(如 OSPF 和 IS-IS )使用了區域的原理。. 多個區域形成了層次狀的網絡結構,這有利于路由聚合(總結),還便于將路由問題隔離在一個區域內。
鏈路狀態路由協議的要求
現代鏈路狀態路由協議設計旨在盡量降低對內存、CPU 和帶寬的影響。使用并配置多個區域可減小鏈路狀態數據庫。劃分多個區域還可限制在路由域內泛洪的鏈路狀態信息的數量,并可僅將 LSP 發送給所需的路由器。(也就是說算好了由ABR發送給其他路由器。)
內存要求
與距離矢量路由協議相比,鏈路狀態路由協議通常需要占用更多的內存、CPU 運算量和帶寬。對內存的要求源于使用了鏈路狀態數據庫和創建 SPF 樹的需要。
CPU 占用要求
與距離矢量路由協議相比,鏈路狀態路由協議可能還需要占用更多的 CPU 運算量。與 Bellman-Ford 等距離矢量算法相比,SPF 算法需要更多的 CPU 時間,因為鏈路狀態路由協議會創建完整的拓撲圖。
帶寬要求
鏈路狀態數據包泛洪會對網絡的可用帶寬產生負面影響。這只應該出現在路由器初始啟動過程中,但在不穩定的網絡中也可能導致問題。
