LSDB 特性详解 | 三个参数 | OSPF 三张表

LSDB(Link State DataBase,链路状态数据库)

通过路由间的路由信息交换,自治系统内部可以达到信息同步,即 LSDB 描述的网络拓扑同步。

LSDB 唯一 ID 的三个参数

LSDB 中每份 LSA 都有唯一的身份证 ID, 由三个参数构成:

LSA 类型

链路状态 ID (Link State ID)

通告路由器的 RouterlD

例如:R1 产生的 LSA1,它的类型为 RouterLSA, LinkStatelD 为 1.1.1.1,通告路由器 1.1.1.1。

LSDB 中的每份 LSA 都靠这个 “身份证 ID” 来唯一标识。

・泛洪是可靠的、周期性(30min)或触发产生的 LSA 通告过程。

・泛洪是把 LSA 向区域中的每条链路复制并通告的过程。

・全区域的泛洪会致路由器收到多份相同的 LSA, LSDB 中仅保留最新的。

・路由器仅泛洪最新的 LSA, 相同 ID 的 “旧的” LSA 会被 “新的” LSA 所覆盖。

・一旦最新的 LSA 被所有路由器收到,泛洪就结束了。

・区域中会有周期产生的新的 LSA 所致的泛洪或触发产生的新的 LSA 导致的泛洪行为。

判断相同 ID 的 LSA “新的”条件次序

判断相同 ID 的 “新的” LSA 要依次比较以下内容:

・LSA 序列号 (Sequence Number)

・LSA 报文校验和 (Checksum)

・LSA 年龄 (LSA Age)

说明如下

・序列号:有符号 32 位整数,采用线性递增的序列号,初始序列号从 0x80000001 到最大值 0x7FFFFFFF, 序列号越大代表越新,LSA 会周期 (30min) 产生新的 LSA, 每次产生的 LSA 序列号都会增加 Io

・Checksum: 16 位数,对刚收到的 LSA 做计算,Age 字域不在计算内。即使 LSA 存放在 LSDB 中,路由器也会每 5 分钟重新计算一次。

・Age: 16 位无符号整数。LSA 的最大年龄是 3600s, LSA 在路由器间泛洪时每经过一跳年龄增加 1, 在 LSDB 中存放时年龄也增加 1。若 LSA 的年龄达到 3600s (即 MaxAge), 路由器会从 LSDB 中清除该 LSA。在拓扑稳定的场合下,每份存放在 LSDB 中的 LSA 间隔 30min 都会被周期产生的新 LSA 刷新。

泛洪机制把 LSA 向区域中的每条链路通告,不论 LSA 从哪条链路泛洪到当前路由器,在路由器的 LSDB 中仅保存一份最新的 LSA。若路由器收到多份相同 “ID” 的 LSA,则依次比较序列号、Checksum & LSA Age,来判定是否继续泛洪该 LSA,还是终止泛洪。

・如果收到的 LSA 本地数据库中没有,则接收该 LSA 并继续泛洪。

・如果收到的 LSA 本地有,但收到的 LSA 比自己当前已有的 LSA 要新,则更新 LSDB 并泛洪新的 LSA。

・如果收到的 LSA 比自己已有的 LSA 旧,则不接收该 LSA。

・如果收到的 LSA 和自己路由器的 LSA 一样新,则忽略,并终止泛洪。

・如果收到的 LSA 损坏,比如 Checksum 错误,则不接收该 LSA。

说明 1 :判断 LSA 新旧的规则。

(1) 序列号越大代表越新。

(2) 若序列号相同,则 Checksum 数值越大代表越新。

(3) 上述一致的情况下,继续比较 Age。

・若 LSA 的 Age 为 MaxAge, 即 3600s, 则该 LSA 被认定更 “新”。

・若 LSA 间 Age 差额超过 15min. 则 Age 小的 LSA 被认定更 “新”。

・若 LSA Age 差额在 15min 以内,则二者视为相同 “新” 的 LSA,只保留先收到的一份 LSA。

说明 2:LSDB 中 LSA 的超时机制。

LSDB 中 LSA 都有 Age, 最大是 3600s, 超过该值,则该 LSA 会从 LSDB 中被清除。LSDB 中 LSA 被清除的场景

(1) 超过 MaxAge 被路由器自动清除;

(2) LSA 起源路由器产生 MaxAge 的 LSA 并向区域中泛洪,收到的路由器用其更新自己 LSDB 中的 LSA。泛洪 MaxAge 的 LSA,其作用相当于 “毒化” 路由。

说明 3:可靠泛洪。

泛洪的过程是可靠的过程,每份 LSA 都要在 LSU 中通告给邻居。邻居要对收到的每份 LSA 做确认,如果没有收到用于确认的 LSAck, 则 LSU 要 5s 后重传。可靠泛洪的结果使整个 Area 中的每台路由器都有完全一样的 LSDB。


via: huawei


OSPF 的三张表、LSA、LSDB、SPF 与路由表之间的关联、OSPF 建立的 8 种必要条件

一、OSPF 的三张表(邻居表、链路状态数据库表、路由表)

1、邻居表

记录 ospf 路由器之间的邻居状态。

<AR4>display ospf peer brief 

	 OSPF Process 1 with Router ID 4.4.4.4
		  Peer Statistic Information
 ----------------------------------------------------------------------------
 Area Id          Interface                        Neighbor id      State    
 0.0.0.0          GigabitEthernet0/0/0             5.5.5.5          Full        
 ----------------------------------------------------------------------------

2、LSDB 表

存在着 OSPF 的 LSA 详细信息,通过命令 display ospf lsdb 查看时为首要信息,需要查看详细的 LSA 信息需要通过 display ospf lsdb router 或 network… 等进行查看。

同一个 OSPF 网络维护着一张 LSDB 表,所有同一网络的 OSPF 路由器,其 LSDB 表都是相同的。

<AR4>display ospf lsdb 

	 OSPF Process 1 with Router ID 4.4.4.4
		 Link State Database 

		         Area: 0.0.0.0
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    4.4.4.4         4.4.4.4            660  48    8000000C       1
 Router    5.5.5.5         5.5.5.5            660  48    8000000C       1
 Network   10.1.45.5       5.5.5.5            660  32    80000009       0

3、路由表

对于 OSPF 来说,存在于路由表中的 OSPF 路由,都是通过 SPF 算法计算出来的最优路由。

<AR4>display ip routing-table 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
         Destinations : 9        Routes : 9        

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        4.4.4.4/32  Direct  0    0           D   127.0.0.1       LoopBack0
        5.5.5.5/32  OSPF    10   1           D   10.1.45.5       GigabitEthernet0/0/0
      10.1.45.0/24  Direct  0    0           D   10.1.45.4       GigabitEthernet0/0/0
      10.1.45.4/32  Direct  0    0           D   127.0.0.1       GigabitEthernet0/0/0
    10.1.45.255/32  Direct  0    0           D   127.0.0.1       GigabitEthernet0/0/0
      127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0
      127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0
127.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0
255.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0

二、LSA、LSDB、SPF 与路由表的关联

相互交换自己的 LSA 从而组成 LSDB。【LSDB 的形成】

通过 SPF 算法对 LSDB 中的路径信息进行一个计算,得出最优的 OSPF 路由。【路由的产生】

最优的 OSPF 路由放置在路由表中。如果存在其它路由协议的最优路由与 OSPF 的最优路由相同,将进行比较路由优先级,优先级小的信任度更高,将成为最优路由放置在路由表中。

三、OSPF 邻居与邻接关系建立的必要条件

先从外部出发(协议上)

  1. Version 版本(OSPFv2、OSPFv3)
  2. 区域要一致(两端链路配置的区域不一致将无法建立邻居)
  3. Router-id 不能冲突

再到内部(链路上)

  1. 认证类型 auth type/Data 要相同
  2. Netmask 掩码要求一致(两端配置的接口地址掩码要一致)
  3. Hello 时间要一致
  4. Dead 时间要一致
  5. option 中(E、N)区域类型要一致(OSPF 的是否为特殊区域)
  6. 【非必要】对于华为设备来说,并不会在意链路的 MTU 值是否一致。

对第 6 条的补充
 
OSPF 在建立邻居关系后,在同步数据库时。若路由器停留在 ExStart 或 Exchange 或 Loading 状态,多是由于 MTU 不匹配而导致的。
 
华为使用 ospf mtu-enable 命令可开启接口填充及检查 MTU。
 
由于其他设备制造商可能会使用不同的 MTU 缺省设置,所以为了保证一致,可以设置接口发送 DD 报文时 MTU 值不填充及检查,为缺省值 0 (华为默认行为),但带来的风险是同步过程中可能会停留在某个状态。


via:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值