一、OSPF報文
OSPF 協議報文直接封裝為 IP 報文,協議號為 89。
1、Hello 報文:週期性發送,用來發現和維持 OSPF 鄰居關係,以及進行 DR(Designated
Router,指定路由器)/BDR(Backup Designated Router,備份指定路由器)的選舉。
2、DD(Database Description,數據庫描述)報文:描述了本地 LSDB(Link State DataBase,
鏈路狀態數據庫)中每一條 LSA(Link State Advertisement,鏈路狀態通告)的摘要信息,
用於兩臺路由器進行數據庫同步。
3、 LSR(Link State Request,鏈路狀態請求)報文:向對方請求所需的 LSA。兩臺路由器互相
交換 DD 報文之後,得知對端的路由器有哪些 LSA 是本地的 LSDB 所缺少的,這時需要發送
LSR 報文向對方請求所需的 LSA。
4、 LSU(Link State Update,鏈路狀態更新)報文:向對方發送其所需要的 LSA。
5、 LSAck(Link State Acknowledgment,鏈路狀態確認)報文:用來對收到的 LSA 進行確認。
二、LSA類型
OSPF 中對鏈路狀態信息的描述都是封裝在 LSA 中發佈出去,常用的 LSA 有以下幾種類型:
1、 Router LSA(Type-1):由每個路由器產生,描述路由器的鏈路狀態和開銷,在其始發的區域
內傳播。
2、 Network LSA(Type-2):由 DR 產生,描述本網段所有路由器的鏈路狀態,在其始發的區域
內傳播。
3、 Network Summary LSA(Type-3):由 ABR(Area Border Router,區域邊界路由器)產生,
描述區域內某個網段的路由,並通告給其他區域。
4、 ASBR Summary LSA(Type-4):由 ABR 產生,描述到 ASBR(Autonomous System
Boundary Router,自治系統邊界路由器)的路由,通告給相關區域。
5、AS External LSA(Type-5):由 ASBR 產生,描述到 AS(Autonomous System,自治系統)
外部的路由,通告到所有的區域(除了 Stub 區域和 NSSA 區域)。
6、 NSSA External LSA(Type-7):由 NSSA(Not-So-Stubby Area)區域內的 ASBR 產生,描
述到 AS 外部的路由,僅在 NSSA 區域內傳播。
7、 Opaque LSA:用於 OSPF 的擴展通用機制,目前有 Type-9、Type-10 和 Type-11 三種。其
中,Type-9 LSA 僅在本地鏈路範圍進行泛洪,用於支持 GR(Graceful Restart,平滑重啟)
的 Grace LSA 就是 Type-9 的一種類型;Type-10 LSA 僅在區域範圍進行泛洪,用於支持
MPLS TE 的 LSA 就是 Type-10 的一種類型;Type-11 LSA 可以在一個自治系統範圍進行泛
洪。
三、OSPF區域
1、區域的邊界是路由器,而不是鏈路。一個路由器可以屬於不同的區域,但是一個網段(鏈路)只能
屬於一個區域,或者說每個運行 OSPF 的接口必須指明屬於哪一個區域。劃分區域後,可以在區域
邊界路由器上進行路由聚合,以減少通告到其他區域的 LSA 數量,還可以將網絡拓撲變化帶來的影
響最小化。
2、骨幹區域與虛連接
1) 骨幹區域(Backbone Area)
OSPF 劃分區域之後,並非所有的區域都是平等的關係。其中有一個區域是與眾不同的,它的區域
號是 0,通常被稱為骨幹區域。骨幹區域負責區域之間的路由,非骨幹區域之間的路由信息必須通
過骨幹區域來轉發。對此,OSPF 有兩個規定:
所有非骨幹區域必須與骨幹區域保持連通;
骨幹區域自身也必須保持連通。
在實際應用中,可能會因為各方面條件的限制,無法滿足上面的要求。這時可以通過配置 OSPF 虛
連接予以解決。
2) 虛連接(Virtual Link)
虛連接是指在兩臺 ABR 之間通過一個非骨幹區域而建立的一條邏輯上的連接通道。它的兩端必須
是 ABR,而且必須在兩端同時配置方可生效。為虛連接兩端提供一條非骨幹區域內部路由的區域稱
為傳輸區(Transit Area)。
3、Stub區域和Totally Stub區域
Stub 區域是一些特定的區域,該區域的 ABR 會將區域間的路由信息傳遞到本區域,但不會引入自
治系統外部路由,區域中路由器的路由表規模以及 LSA 數量都會大大減少。為保證到自治系統外的
路由依舊可達,該區域的 ABR 將生成一條缺省路由 Type-3 LSA,發佈給本區域中的其他非 ABR
路由器。
為了進一步減少 Stub 區域中路由器的路由表規模以及 LSA 數量,可以將區域配置為 Totally Stub
(完全 Stub)區域,該區域的 ABR 不會將區域間的路由信息和自治系統外部路由信息傳遞到本區
域。為保證到本自治系統的其他區域和自治系統外的路由依舊可達,該區域的 ABR 將生成一條缺
省路由 Type-3 LSA,發佈給本區域中的其他非 ABR 路由器。
4. NSSA區域和Totally NSSA區域
NSSA(Not-So-Stubby Area)區域是 Stub 區域的變形,與 Stub 區域的區別在於 NSSA 區域允許
引入自治系統外部路由,由 ASBR 發佈 Type-7 LSA 通告給本區域。當 Type-7 LSA 到達 NSSA 的
ABR 時,由 ABR 將 Type-7 LSA 轉換成 Type-5 LSA,傳播到其他區域。
可以將區域配置為 Totally NSSA(完全 NSSA)區域,該區域的 ABR 不會將區域間的路由信息傳
遞到本區域。為保證到本自治系統的其他區域的路由依舊可達,該區域的 ABR 將生成一條缺省路
由 Type-3 LSA,發佈給本區域中的其他非 ABR 路由器。
閱讀更多 專注分享網絡技術 的文章