blob: 2b9bee8499683f7ac312e4bcc800206d6c6a89d6 [file] [log] [blame]
digraph {
rankdir=LR
//concentrate=true
nojustify="true"
Idle
Connect
Active
OpenSent
OpenConfirm
Established
Clearing
Idle -> Deleted
Configured -> Idle
Idle -> Connect [ label="BGP_Start\l/bgp_start\l" ]
Idle -> Idle [ label="BGP_Stop\l|TCP_connection_open\l|TCP_connection_closed\l|TCP_fatal_error\l/bgp_stop\l"]
Connect -> Connect [ label="ConnectRetry_timer_expired\l/bgp_reconnect\l" ]
Connect -> Idle [ label="BGP_Stop\l|TCP_connection_open\l|Receive_NOTIFICATION_message\l/bgp_stop\l" ]
Connect -> Idle [ label="TCP_fatal_error\l/bgp_connect_fail\l" ]
Connect -> Idle [ label="Hold_Timer_expired\l|KeepAlive_timer_expired\l|Receive_OPEN_message\l|Receive_KEEPALIVE_message\l|Receive_UPDATE_message\l|Clearing_Completed\l/bgp_ignore"]
Connect -> OpenSent [ label="TCP_connection_open\l/bgp_connect_success\l" ]
Connect -> Active [ label="TCP_connection_open_failed\l/bgp_connect_fail\l" ]
Active -> Idle [ label="BGP_Stop\l|TCP_connection_closed\l/bgp_stop\l" ]
Active -> Idle [ label="Receive_NOTIFICATION_message\l/bgp_stop_with_error\l" ]
Active -> Idle [ label="TCP_fatal_error\l|Hold_Timer_expired\l|KeepAlive_timer_expired\l|Receive_OPEN_message\l|Receive_KEEPALIVE_message\l|Receive_UPDATE_message\l|Clearing_Completed\l/bgp_ignore\l" ]
Active -> OpenSent [ label="TCP_connection_open\l/bgp_connect_success\l" ]
Active -> Connect [ label="ConnectRetry_timer_expiredl/bgp_start\l" ]
Accept -> Active [ label="Raise TCP_connection_open on Active" ]
OpenSent -> Idle [ label="BGP_Stop\l/bgp_stop\l" ]
OpenSent -> Idle [ label="ConnectRetry_timer_expired\l|Clearing_Completed\l|KeepAlive_timer_expired\l/bgp_ignore\l" ]
OpenSent -> Idle [ label="Hold_Timer_expired\l/bgp_fsm_holdtime_expire\l"]
OpenSent -> Idle [ label="Receive_KEEPALIVE_message\l|Receive_UPDATE_message\l/bgp_fsm_event_error" ]
OpenSent -> Idle [ label="Receive_NOTIFICATION_message\l/bgp_stop_with_error" ]
OpenSent -> Active [ label="TCP_connection_open\l|TCP_connection_closed\l|TCP_connection_open_failed\l|TCP_fatal_error\l/bgp_stop\l"]
OpenSent -> OpenConfirm [ label="Receive_OPEN_message\l/bgp_fsm_open" ]
OpenConfirm -> Idle [ label="BGP_Stop\l|TCP_connection_open\l|TCP_connection_closed\l|TCP_connection_open_failed\l|TCP_fatal_error\l/bgp_stop\l"]
OpenConfirm -> Idle [ label="Hold_Timer_expired\l/bgp_fsm_holdtime_expire" ]
OpenConfirm -> Idle [ label="ConnectRetry_timer_expired\l|Receive_OPEN_message\l|Receive_UPDATE_message\l|Clearing_Completed\l/bgp_ignore"]
OpenConfirm -> Idle [ label="Receive_NOTIFICATION_message\l/bgp_stop_with_error\l" ]
OpenConfirm -> Established [ label="Receive_KEEPALIVE_message\l/bgp_establish\l" ]
Established -> Clearing [ label="BGP_Stop\l|TCP_connection_open\l|TCP_connection_closed\l|TCP_connection_open_failed\l|TCP_fatal_error\l|ConnectRetry_timer_expired\l|Hold_Timer_expired\l|Receive_OPEN_message\l/bgp_stop\l"]
Established -> Idle [ label="Clearing_Completed\l/bgp_ignore" ]
Established -> Clearing [ label="Receive_NOTIFICATION_message\l/bgp_stop_with_error"]
Clearing -> Idle [ label="Clearing_Completed\l/bgp_clearing_completed" ]
subgraph cluster_pre_collision_detect {
label="Prior to collision detection"
bgcolor=lightgray
Connect Accept Active OpenSent OpenConfirm
}
}