龙少一郎

艳花三月下春秋

  博客园  :: 首页  :: 新随笔  ::  ::  :: 管理

                                                                                                BGP当中的关于几种时间上的简单分析

在刚接触BGP时,出现了几种时间上的概念,对于这些时间上的概念,除了熟悉之外,也有一些疑惑,疑惑的是这些时间之间有没有什么联系?都是孤立存在的么?如果有联系的话,它们和BGP中的路由表、BGP邻居又有什么关系?带着这些疑惑,我们下面来仔细捋捋!

第一:在谈到BGP路由协议产生的主要进程时,有一个Scanner进程,它的基本释义为

主要是对BGP的内部管理,周期对BGP RIB进行扫描以确定是否删除该前缀和属性,以及是否该刷新路由映射或者过滤缓存,也可以扫描IP RIB以确保所有BGP的下一跳仍然有效,BGP衰减信息也会在每个周期内被更新,扫描周期默认为60S。

我的理解是“该进程主要是针对运行BGP路由协议的路由进行周期性的扫描,防止那些失效路由(故障路由、坏死路由)占用内存资源空间,进行定向定时的清除!前提是对于那些超时的路由条目,即是路由老化的路由条目,它和其他interval时间无关”

第二:在谈到BGP的有限状态机的时候,出现了一个idle状态,它是一个不正常的状态,但是是一个非常起眼的状态,它是TCP三次握手前查找路由的状态。它的基本释义为

在这个状态下,BGP路由器会查找路由,查看路由表中是否有我要建立邻居的管理地址(含直接地址或环回接口地址)的路由,如果有的话,就开始进行TCP三次握手,如果没有,则一直处于这种状态。

但是这个过程路由器有一个自我保护机制,为了防止某个差错导致路由器在idle和connect状态之间来回摆动,路由器会自动开启资源打开重试连接计时器(ConnetRetry),当路由器处于正常的BGP邻接状态时,首次转回到了idle状态,重试连接计时器第一次开启时间为60S,以后则是按指数的形式自动开启,第二次为2的一次方;第三次为2的2次方,依次类推。它也是独立的interval,和路由器扫描Scnaner进程无关,和后面的Advertisement Interval也无关。

第三:随着BGP的不断深入学习,后面又出现了一个叫做Advertisement interval的时间参数,这个参数叫路由通告时间,它主要是针对路由变化来说的。基本释义为

当网络上出现路由器接口(Up/Down)或路由flaping时,一个BGP宣告者,会等到最小的通告时间间隔之后,才会生成路由更新。在Cisco IOS软件中,这个时间对于EBGP邻居为30S,对IBGP邻居为5S。记住:对于BGP来说,路由第一次发生flaping时,它是触发更新,后续则为周期更新。这个Advertisement interval和前二个interval均无关。

综上所述:这三个时间参数均各自有自己的独立意义,第一个Scanner为路由器的路由器进行周期性的更新和维护,默念时间为60S,前提是BGP邻接正常;第二个idle状态为路由器的差错状态,它是路由器由正常的BGP邻接状态因某种原因进入到这种状态后而自我保护的一种方式,它也是一种周期性的循环,只是循环时间以指数的形式增加,初始时间为60S,前提是BGP由正常的邻接状态进入了不正常无路由的状态;而最后一个Advertisement interval则是BGP路由器路由更新通告时间,更多的是一种对更新路由的收纳。

                                                                                           

 

posted on 2023-09-19 10:34  艳花三月下春秋  阅读(202)  评论(0编辑  收藏  举报