OSPF 路由计算
1、区域内路由计算
1.1 LSA概述
LSA:链路状态通告,是OSPF进行路由计算的关键依据,各种类型的LSA拥有相同多的报文头部
LSDB:是指一大堆的LSA组成的
缺省的LSA更新时间是1800s
常见的LSA类型
1.2、Router-LSA
产生者:每台运行OSPF的路由器都会产生,
作用:描述该路由器直连接接口的信息
范围:只能在所属区域内泛洪
V(Virtual Link):配置为虚链路时,为1
E(External):产生此LSA的路由器是ASBR,则为1
B(border):如果产生此LSA的路由器是ABR,则为1
通过E和B,可以查看是否为ASBR/ABR
注意:
- 所有1类LSA的LS ID都是产生者的router id 当缺乏网络掩码信息时
- 在TransNet网络中,使用2类LSA完整描述网段信息
- 查看对应几类LSA的详细信息:display ospf lsdb network self-originate
1.3、Network - LSA(2类LSA)
产生者:由DR产生
作用:描述本网段的链路状态,记录该网段内所有DR建立邻接关系的OSPF路由器,同时携带了该网段的网络掩码。
区域:在所属的区域内进行传播
1.4 SPF计算过程
-
构建 SPF树:
路由器将自己作为最短路径树的树根,根据Router-LSA和Network-LSA中的拓扑信息,依次将Cost值最小的路由器添加到SPF树中。路由器以Router ID或者DR标识。
广播网络中DR和其他所连接的路由器的Cost值为0,SPF树中只有单向的最短路径,保证了OSPF区域内路由计算不会出现环路 -
计算最优路由。
将Router-LSA、Network-LSA中的路由信息以叶子节点形式附加在对应的OSPF路由器上,计算最优路由。已经出现的路由信息不会再添加到SPF树干上
注意:
在ospf路由表中的路由不一定会全部出现在全局路由表中。
LSDB中可能存在多个类型的LSA,但是他们的LSA报文头部相同
同一区域的OSPF路由器拥有完全一致的LSDB。在只有一个区域的情况下,
区域内部主要存在两种类型的LSA,即Router-LSA和Network-LSA
2、区域间路由计算
2.1 区域间路由计算过程
多区域优势:OSPF可以部署路由汇总,通过区域划分在一定程度上降低网络设备的内存及CPU的消耗
Network Summary LSA(3类LSA)
产生者:ABR
作用:用于向一个区域通告到达另一个区域的路由
区域:在区域间
2.2 区域间路由防环机制
- OSPF要求所有的非骨干区域必须与Area0直接相连,区域间路由需经由Area0中转。
- 区域间的路由传递不能发生在两个非骨干区域之间,ABR从非骨干区域收到的3类LSA不能用于区域间路由的计算
- OSPF要求ABR设备至少有一个接口属于骨干区域。
2.3 虚连接的作用及配置
-
作用:用虚连接使骨干区域在逻辑上连续。
-
要求:两个ABR都有端口连接到一个相同的非骨干区域。
-
注意:
Virtual Link应该始终作为一种临时的技术手段来解决非骨干区域没有与Area0直接相连的情况 -
使用场景:
1、 area 2的路由需要传递到area 0
2、左边area 0和右边area 0需要建立
3、在没有骨干区域的环境中,我们可以在区域1和区域2之间,建立一个区域0,然后使用虚连接连接区域3,实现路由互通
外部路由计算
路由引入场景:
- 路由器连接外部网络使用静态路由或者BGP协议;
- 服务器直连的链路未开启OSPF协议
AS-external LSA
产生者:ASBR产生
作用:描述到达AS外部的路由
区域:LSA会被通告到所有的区域(除了Stub区域和NSSA区域)
注意:在传递过程中,5类LSA的Link State ID 和Adverting Router 在传递过程中不会发生变化。
ASBR-Summary LSA(4类LSA)
产生者:由ABR产生
作用:描述到ASBR的路由,
区域:通告给除ASBR所在区域的其他相关区域
OSPF外部路由的2种度量值类型
注意:
路由优先级:
区域内路由 >区域间路由>第一类外部路由>第二类外部路由