【干货】关于OSPF里的区域间路由计算

区域间路由计算过程

大型网络中,单区域OSPF存在的问题

  • 一系列连续的OSPF路由器构成的网络称为OSPF域(Domain)。

  • OSPF要求网络内的路由器同步LSDB,实现对于网络的一致认知。

  • 当网络规模越来越大时,LSDB将变得非常臃肿,设备基于该LSDB进行路由计算,其负担也极大地增加了,此外路由器的路由表规模也变大了,这些无疑都将加大路由器的性能损耗。

  • 当网络拓扑发生变更时,这些变更需要被扩散到整个网络,并可能引发整网的路由重计算。

  • 单区域的设计,使得OSPF无法部署路由汇总。

区域划分

  • Router LSA和Network LSA只在区域内泛洪,因此通过区域划分在一定程度上降低网络设备的内存及CPU的消耗。

  • 划分区域后,路由器可以分为两种角色:

    区域内部路由器(Internal Router):该类设备的所有接口都属于同一个OSPF区域。如R1、R4、R5。

    区域边界路由器(Area Border Router):该类设备接口分别连接两个及两个以上的不同区域。如R2、R3。

区域间路由信息传递

  • OSPF区域间路由信息传递是通过ABR产生的Network Summary LSA(3类LSA)实现的。 

  • 以192.168.1.0/24路由信息为例:

    ▫R2依据Area 1内所泛洪的Router LSA及Network LSA计算得出192.168.1.0/24路由(区域内路由),并将该路由通过Network Summary LSA通告到Area 0。R3根据该LSA可计算出到达192.168.1.0/24的区域间路由。

    ▫R3重新生成一份Network Summary LSA通告到Area 2中,至此所有OSPF区域都能学习到去往192.168.1.0/24的路由。

Network Summary LSA详解

Network Summary LSA(3类LSA)由ABR产生,用于向一个区域通告到达另一个区域的路由。

  • 重要字段解释 

▫LS Type:取值3,代表Network Summary LSA。

▫Link State ID:路由的目的网络地址。▫Advertising Router:生成LSA的Router ID。▫Network Mask:路由的网络掩码。

▫metric:到目的地址的路由开销。

Network Summary LSA示例

R1和R3的路由计算

  1. 通过区域内SPF的计算,R1到达R2的Cost值为1,R3到达R2的Cost值为2。

  2. R1和R3根据收到的Network Summary LSA进行路由计算:

    ▫R1将到达R2和Cost值和Network Summary LSA所携带的Cost值相加,因此R1到达192.168.1.0/24的Cost值为2。

    ▫R3将到达R2和Cost值和Network Summary LSA所携带的Cost值相加,因此R3到达192.168.1.0/24的Cost值为3。

R2自己到192.168.1.0/24的Cost为1,因此它向Area0所通告的192.168.1.0/24路由的Cost为1。

R5的路由计算

  1. R3作为ABR,它通过Area 0内泛洪的Network Summary LSA计算出到达192.168.1.0/24的路由,然后重新向Area 2注入到达该网段的Network Summary LSA,其中包含自己到达该网段的Cost(值为3)。

  2. 2.R5在SPF中计算得知到达R3的Cost为1,因此R5到达192.168.1.0/24的Cost为4。

R3自己到192.168.1.0/24的Cost为3,因此它向Area2所通告的192.168.1.0/24路由的Cost为3。

区域间路由计算结果验证

区域间路由防环机制

域间路由环路的产生

  • OSPF区域间路由的传播过程与距离矢量路由协议的路由传播过程非常相似。

  • 对于区域间路由的传递,OSPF也需要一定的防环机制。

区域间路由的防环机制

  • OSPF要求所有的非骨干区域必须与Area0直接相连,区域间路由需经由Area0中转。

  • 区域间的路由传递不能发生在两个非骨干区域之间,这使得OSPF的区域架构在逻辑上形成了一个类似星型的拓扑

  • 注意:OSPF要求ABR设备至少有一个接口属于骨干区域。

ABR不会将描述到达某个区域内网段路由的3类LSA再注入回该区域。

ABR从非骨干区域收到的3类LSA不能用于区域间路由的计算。

R1和R2、R3和R4之间的链路中断导致骨干区域不连续。

  • R4将10.0.2.2/32路由以3类LSA的形式发送到Area 1。

  • R5和R6可以根据上述3类LSA计算出10.0.2.2/32路由。

  • R3从非骨干区域收到3类LSA,不进行路由计算,也不会将此3类LSA发送到其他区域。

  • 此时,R1和R3都无法和10.0.2.2/32通信。

如何解决骨干区域不连续的问题?

虚连接的作用及配置

虚连接的作用及配置

  • OSPF要求骨干区域必须是连续的,但是并不要求物理上连续,可以使用虚连接使骨干区域在逻辑上连续。

  • 虚连接可以在任意两个ABR上建立,但是要求这两个ABR都有端口连接到一个相同的非骨干区域。

  • 注意:虚连接的创建使OSPF协议可以通过非骨干区域通信,违背了OSPF区域间的防环规则,在某些场景下会导致路由环路的产生,因此不建议部署OSPF虚连接。

思考题

01

(判断题)一条Network Summary LSA只能描述一条路由信息。

点击空白处查看答案

02

(简答题)OSPF如何避免区域间的路由环路?

点击空白处查看答案

OSPF划分了骨干区域和非骨干区域,所有非骨干区域均直接和骨干区域相连,且骨干区域只有一个;非骨干区域之间的通信都要通过骨干区域中转;并规定从骨干区域传来的三类LSA不再传回骨干区域。

  1. OSPF引入了多区域的概念,使得该协议能够支持更大规模的组网。

  2. OSPF使用3类LSA来描述区域间的路由信息。

  3. 为了避免出现区域间路由环路,OSPF设计了多个规则。

  4. OSPF Virtual Link是一种虚拟的、逻辑的链路,被部署在两台OSPF路由器之间,它穿越某个非骨干区域,用于实现另一个非骨干区域与Area0的连接。Virtual Link应该始终作为一种临时的技术手段来解决非骨干区域没有与Area0直接相连的情况。

  如果你也想做一名华为网络工程师,

(0)

相关推荐