OSPF LSA 详解 1 / 10 LSA 详解 LSA 是LSDB 建立的基础。每条 LSA 都包含序列号,校验和以及老化时间。一台路由器始发一个 LSA,之后每产生一个该 LSA 的拷贝就在序列号上加 1,序列号从 0x 80000001 到 0x 7fffffff(不用考虑 8和 7 的大小),数值越大视为越新。 LSA 存放在 LSDB 中每 5mins 就会进行一次校验,以确保该 LSA 没有损坏。一条 LSA 的老化时间为 1h,始发路由器发出一条 LSA 时会将其时间设置为 0,每经过一台路由器就增加一个由InfTrans Delay 设定的秒数(Cis co 路由器上默认为 1),当 LSA 在 LSDB 中驻留时,老化时间也会逐渐增大。 当一条 LSA 在 LSDB 中一直没有被新的LSA 实例刷新直到老化计时器超时,就会从本地的LSDB 中清除,但是这个动作不会影响到别的路由器,在 OSPF 网络中只有始发路由器能够提前使该 LSA 老化,即有意识的清除该 LSA,具体动作是将该 LSA 的老化时间设为最大然后重新泛洪出去。 LSA 的刷新时间是30mins ,关于刷新机制是个值得关注的问题。如果每个 LSA 都关联一个独自的重刷新计时器,这样会使链路带宽的利用没有效率,如果统一为一个计时器,那么每隔30mins 都会产生一个流量和 CPU 利用率的高峰。 作为折衷的的解法 ,引 入 LSA 组 步 调 机制,即每一条 LSA 依 然保持 各 自的重刷新计时器,不过在超时的时候 ,会引 入 一个时延 (缺 省 为 240s )来 推 迟 这些 LSA 通 告 泛洪的时间,并 在这个时间段 内 将更 多 的LSA 通 告 编 为一组 ,使一个 LSU 可 以携 带更 多 的LSA 再 通 告 出去。 OSPF LSA 详解 2 / 10 如果LSDB 非常大,那么减小这个时延会比较好,而如果LSDB 较小的话,增大这个时延会更有效率,该组步调计时器的范围从10 到1800s。 每一个LSA 都必须要得到接收路由器的确认,确认分为显式确认和隐式确认两种,显示确认就是用LSAck 给予回应,LSAck 中只含有该LSA 的头部,因为这样就足够了;而隐式确认是发送包含该LSA拷贝的数据包给始发路由器,当邻居路由器收到该LSA,又刚好要向始发路由器发送自己的LSU 的时候,隐式确认就显得很方便。 在 OSPF 的Hello,DBD 和 LSA 中都有一个Option 字段,即可选字段。下面重点说一下 LSA 中的一些位: DN 位,用于基于 MPLS 的三层 VPN 技术。当一条路由通过 OSPF 从某个客...