quagga源码学习--BGP协议对等体的状态机

Posted 丹西

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了quagga源码学习--BGP协议对等体的状态机相关的知识,希望对你有一定的参考价值。

创建完bgp peer之后,就要bgp start了,不然费那么大劲创建出来不做事情就销毁了,就很尴尬了。

那么对等体一旦start起来,就会进入各自的状态,在不同的状态下处理各自的事件消息。

下面列举一些状态和事件的集合:

 1 /* BGP finite state machine status.  */
 2 #define Idle                                     1
 3 #define Connect                                  2
 4 #define Active                                   3
 5 #define OpenSent                                 4
 6 #define OpenConfirm                              5
 7 #define Established                              6
 8 #define Clearing                                 7
 9 #define Deleted                                  8
10 #define BGP_STATUS_MAX                           9
11 
12 /* BGP finite state machine events.  */
13 #define BGP_Start                                1
14 #define BGP_Stop                                 2
15 #define TCP_connection_open                      3
16 #define TCP_connection_closed                    4
17 #define TCP_connection_open_failed               5
18 #define TCP_fatal_error                          6
19 #define ConnectRetry_timer_expired               7
20 #define Hold_Timer_expired                       8
21 #define KeepAlive_timer_expired                  9
22 #define Receive_OPEN_message                    10
23 #define Receive_KEEPALIVE_message               11
24 #define Receive_UPDATE_message                  12
25 #define Receive_NOTIFICATION_message            13
26 #define Clearing_Completed                      14
27 #define BGP_EVENTS_MAX                          15

 

以上是关于quagga源码学习--BGP协议对等体的状态机的主要内容,如果未能解决你的问题,请参考以下文章

quagga源码学习--BGP协议路由更新

怎么在Quagga BGP路由器中设置IPv6的BGP对等体和过滤

想玩 BGP 路由器么?用 CentOS 做一个

大型数据中心内部路由选择:为何选择BGP而不是OSPF

Quagga代码学习之BGP4

数通面试私房菜之BGP专题第二期:BGP状态机详解