OPSF判断LSA的新旧

在OSPF网络中,如何判断LSA的新旧?为什么要这样判断?这样判断的原因是什么?……有上述疑问的同学,请不要错过这篇文章。本文主要介绍了在OSPF网络中LSA更新的原则和原理。阅读本文,您需要对OSPF有基本的认识,如果您对此还有知识上的欠缺,可以看我博客里的其他文章,相信一定会对您有所帮助。

一、为什么要判断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消息新旧的第二个标准。关于OSPF中校验和算法,可以看我博客内的其他文章。
3、关于判断标准的第三点,这是因为如果一个路由器希望从网络中删除一条自己之前产生的LSA,那么就会生成老化时间为Max-Age的LSA实例。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

马立杰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值