OSPF网络中如何判断LSA的新旧

数通
OSPF网络中如何判断LSA的新旧-下一朵云

一、为什么要判断LSA的新旧

关于OSPF网络中,LSA消息的新旧判断问题,在一定程度上是OSPF网络的核心。这是因为OSPF路由器时根据LSA报文来学习整个网络的拓扑信息,从而计算路由。因此,当网络拓扑发生变化时,感知到该变化的路由器必须向网络内其他路由器通告LSA信息,以达到网络内路由器对整体网络架构的认识上的一致。

在OSPF中,使用链路状态类型(Link-state Type)、链路状态ID(Link-state ID)和通告路由器(Advertised Router)来唯一表示一条LSA消息。当一个路由器在收到一条LSA消息后,如果他本地的LSDB中已经有该LSA消息,那么他就必须将收到的LSA消息与本地的LSA消息进行比较,选择保留更新的LSA消息。

因此,运行OSPF的路由器要在此时判断LSA消息的新旧。

二、判断标准

OSPF使用链路状态序列号老化时间校验和来进行决策,如下:

  1. 拥有更高链路状态序列号的LSA实例被认为最新
  2. 拥有更大校验和的LSA实例被认为最新
  3. 如果收到的LSA老化时间被设定为Max-Age(默认为1h),则该实例被认为最新
  4. 当本地LSA和新收到的LSA老化时间超过Max-Age-Diff(默认为15m)时,这两个LSA被认为是不同的实例,且老化时间越小的LSA被认为最新
  5. 如果上述4条无法判断,那么认为这两条LSA是相同的LSA实例

上述5条判断原则,按照从上到下的规则进行匹配,当匹配到某一条规则后,就不再继续进行匹配。

三、难点说明

  1. 之所以链路状态序列号作为LSA新旧判断的第一标准,因为每次路由器在刷新LSA的时候都会给序列号加1,因此,链路状态序列号越高,代表LSA消息越新。
  2. OSPF报文中的校验和并不是简单用来判断报文有没有出错的,该值的计算不仅仅需要LSA报文的信息,还需要上一次计算出的校验和,并且每次计算的校验和,都会比之前的校验和更大,因此校验和被认为是OSPF LSA消息新旧的第二个标准。
  3. 关于判断标准的第三点,这是因为如果一个路由器希望从网络中删除一条自己之前产生的LSA,那么就会生成老化时间为Max-Age的LSA实例。
版权声明:本文为下一朵云发布文章,转载请附上原文出处链接和本声明。
本文链接:https://www.orcy.net.cn/3169.html

​ 广告:HCIE-Security认证课程辅导资料(付费)

暂无评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注