OSPF 路由计算
OSPF 协议通过构建网络图、计算最短路径树(SPF)和更新路由表三个步骤来实现路由计算。
1. 网络图构建:
-
路由器根据链路状态数据库(LSDB)中的链路状态通告(LSA)构建网络图。这个图包括所有网络中的 “点”(路由器、共享网段)和 “边”(链路)。
-
网络图的构建主要使用 LSA 类型 1(Point-to-Point)、LSA 类型 2(TransNet)和 LSA 类型 4(Vlink)来描述网络拓扑。
-
所有路由器的 LSDB 内容相同,因此构建的网络图也相同,但每台路由器都以自己为起点构建图。
2. 最短路径树(SPF)计算:
- 路由器以自己为树根,使用 Dijkstra 算法对图进行 SPF 计算,构建一棵从树根到图中每个节点的最短成本路径树。
- 这棵树确保从树根到任何其他节点的成本最小。
3. 路由表更新:
-
在 SPF 树的节点上添加网络信息,并计算从树根到这些网络的成本及下一跳。
-
树根到网络的路由成本计算为:树根到网络节点的距离 + 网络节点到叶子节点的成本。
-
叶子节点可以是 LSA 类型 1 中的 StubNet、LSA 类型 2 中的网络、LSA 类型 3 的网络、LSA 类型 5/7 的网络。
-
网络类型不同,叶子节点挂载的位置也不同:Stub 网络挂在路由器节点上,LSA2 中的网络挂在虚节点上,LSA3 的网络挂在 ABR 节点上,LSA7 挂在 ASBR 节点上,而 LSA5 可能挂在 ASBR 或 ABR 上。
OSPF 优化方法
为了提高效率和降低计算负荷,特别是在大型网络中,OSPF 采用了两种优化方法。
iSPF(增量 SPF 计算):
-
目的:iSPF 的目标是优化网络中的 SPF 计算过程,通