`
weiyuhu
  • 浏览: 231334 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

CCNP BSCI ospf序列号问题

    博客分类:
  • OSPF
 
阅读更多
我看的书是CCNP BSCI第三版

里面OSPF 4.2.3 OSPF链路状态序列号章节



"序列号字段位于LSA报头中,长32位,其中最左边的一位被设置为1,因此,第一个合法的序列号为0X80000001,最后1个序列号为0X8FFFFFFF."

还有介绍到序列号用尽的处理情况.

不知道是书本错误还是OSPF版本不同.

查过RFC2328.发现合法序列号并不是书中所写的那样.

以下是RFC里面的内容:



"序号 -N(0x80000000)被保留未用。而 -N+1(0x80000001)表示最小(也就是最旧)的序号,这一序号被定义为常数InitialSequenceNumber。路由器在第一次生成任何LSA的时候使用InitialSequenceNumber。然后,当每次路由器生成新的LSA实例时,将LSA的序号加一。当试图增加最大序号N-1(0x7fffffff,也被定义为MaxSequenceNumber)时,必须先将当前LSA从路由域中废止。这通过将LSA提早老化(见第14.1节)并重新洪泛而实现。当从所有邻接的邻居收到确认后,生成以InitialSequenceNumber为序号的新实例。

当在洪泛过程中收到意外的LSA新实例时,路由器可能会强制提高其LSA序号。这应当绝少发生,这可能是路由器在上一次重启动前发出的旧LSA,仍存在于AS中。更多信息见第13.4节。"





实际上序列号是从-0X80000001开始.是-8开始的.一直增加直到0X00000000,再到0X7FFFFFFF为止.并不是书中所说的从0X80000001开始,最后1个序列号为0X8FFFFFFF.

如果序列号到了0X7FFFFFFF.当前路由器终止该LSA.然后把AGE为60min的LSA通告出去(提前老化),并且重置其序列号为-0X80000001.



以下是搜到的内容:

(负数的反码是将其原码除符号位之外的各位求反
[-3]反=[10000011]反=11111100
负数的补码是将其原码除符号位之外的各位求反之后在末位再加1。
[-3]补=[10000011]补=11111101
一个数和它的补码是可逆的_)

本文出自 51CTO.COM技术博客
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics