FD.io VPP  v20.09-64-g4f7b92f0a
Vector Packet Processing
bfd_session_s Struct Reference
+ Collaboration diagram for bfd_session_s:

Data Fields

u32 bs_idx
 index in bfd_main.sessions pool More...
 
bfd_state_e local_state
 session state More...
 
bfd_state_e remote_state
 remote session state More...
 
bfd_hop_type_e hop_type
 BFD hop type. More...
 
bfd_diag_code_e local_diag
 local diagnostics More...
 
bfd_diag_code_e remote_diag
 remote diagnostics More...
 
u32 local_discr
 local discriminator More...
 
u32 remote_discr
 remote discriminator More...
 
u32 config_desired_min_tx_usec
 configured desired min tx interval (microseconds) More...
 
u64 config_desired_min_tx_nsec
 configured desired min tx interval (nsec) More...
 
u64 effective_desired_min_tx_nsec
 effective desired min tx interval (nsec) More...
 
u32 config_required_min_rx_usec
 configured required min rx interval (microseconds) More...
 
u64 config_required_min_rx_nsec
 configured required min rx interval (nsec) More...
 
u64 effective_required_min_rx_nsec
 effective required min rx interval (nsec) More...
 
u64 remote_min_rx_usec
 remote min rx interval (microseconds) More...
 
u64 remote_min_rx_nsec
 remote min rx interval (nsec) More...
 
u64 remote_min_echo_rx_usec
 remote min echo rx interval (microseconds) More...
 
u64 remote_min_echo_rx_nsec
 remote min echo rx interval (nsec) More...
 
u64 remote_desired_min_tx_nsec
 remote desired min tx interval (nsec) More...
 
u8 local_detect_mult
 configured detect multiplier More...
 
u8 remote_demand
 1 if remote system sets demand mode, 0 otherwise More...
 
u8 remote_detect_mult
 remote detect multiplier More...
 
u8 echo
 1 is echo function is active, 0 otherwise More...
 
u64 event_time_nsec
 next event time in nsec for this session (0 if no event) More...
 
u32 tw_id
 timing wheel internal id used to manipulate timer (if set) More...
 
u64 transmit_interval_nsec
 transmit interval More...
 
u64 tx_timeout_nsec
 next time at which to transmit a packet More...
 
u64 last_tx_nsec
 timestamp of last packet transmitted More...
 
u64 last_rx_nsec
 timestamp of last packet received More...
 
u64 echo_transmit_interval_nsec
 transmit interval for echo packets More...
 
u64 echo_tx_timeout_nsec
 next time at which to transmit echo packet More...
 
u64 echo_last_tx_nsec
 timestamp of last echo packet transmitted More...
 
u64 echo_last_rx_nsec
 timestamp of last echo packet received More...
 
u32 echo_secret
 secret used for calculating/checking checksum of echo packets More...
 
u64 detection_time_nsec
 detection time More...
 
bfd_poll_state_e poll_state
 state info regarding poll sequence More...
 
u64 poll_state_start_or_timeout_nsec
 helper for delayed poll sequence - marks either start of running poll sequence or timeout, after which we can start the next poll sequnce More...
 
struct {
   bfd_auth_key_t *   curr_key
 current key in use More...
 
   bfd_auth_key_t *   next_key
 set to next key to use if delayed switch is enabled - in that case the key is switched when first incoming packet is signed with next_key More...
 
   u32   local_seq_number
 sequence number incremented occasionally or always (if meticulous) More...
 
   u32   remote_seq_number
 remote sequence number More...
 
   u8   remote_seq_number_known
 set to 1 if remote sequence number is known More...
 
   u8   curr_bfd_key_id
 current key ID sent out in bfd packet More...
 
   u8   next_bfd_key_id
 key ID to use when switched to next_key More...
 
   u8   is_delayed
 set to 1 if delayed action is pending, which might be activation of authentication, change of key or deactivation More...
 
auth
 authentication information More...
 
bfd_transport_e transport
 transport type for this session More...
 
union {
   bfd_udp_session_t   udp
 
}; 
 union of transport-specific data More...
 

Detailed Description

Definition at line 85 of file bfd_main.h.

Field Documentation

◆ @156

union { ... }

union of transport-specific data

◆ auth

struct { ... } bfd_session_s::auth

authentication information

◆ bs_idx

u32 bfd_session_s::bs_idx

index in bfd_main.sessions pool

Definition at line 88 of file bfd_main.h.

◆ config_desired_min_tx_nsec

u64 bfd_session_s::config_desired_min_tx_nsec

configured desired min tx interval (nsec)

Definition at line 115 of file bfd_main.h.

◆ config_desired_min_tx_usec

u32 bfd_session_s::config_desired_min_tx_usec

configured desired min tx interval (microseconds)

Definition at line 112 of file bfd_main.h.

◆ config_required_min_rx_nsec

u64 bfd_session_s::config_required_min_rx_nsec

configured required min rx interval (nsec)

Definition at line 124 of file bfd_main.h.

◆ config_required_min_rx_usec

u32 bfd_session_s::config_required_min_rx_usec

configured required min rx interval (microseconds)

Definition at line 121 of file bfd_main.h.

◆ curr_bfd_key_id

u8 bfd_session_s::curr_bfd_key_id

current key ID sent out in bfd packet

Definition at line 223 of file bfd_main.h.

◆ curr_key

bfd_auth_key_t* bfd_session_s::curr_key

current key in use

Definition at line 205 of file bfd_main.h.

◆ detection_time_nsec

u64 bfd_session_s::detection_time_nsec

detection time

Definition at line 190 of file bfd_main.h.

◆ echo

u8 bfd_session_s::echo

1 is echo function is active, 0 otherwise

Definition at line 154 of file bfd_main.h.

◆ echo_last_rx_nsec

u64 bfd_session_s::echo_last_rx_nsec

timestamp of last echo packet received

Definition at line 184 of file bfd_main.h.

◆ echo_last_tx_nsec

u64 bfd_session_s::echo_last_tx_nsec

timestamp of last echo packet transmitted

Definition at line 181 of file bfd_main.h.

◆ echo_secret

u32 bfd_session_s::echo_secret

secret used for calculating/checking checksum of echo packets

Definition at line 187 of file bfd_main.h.

◆ echo_transmit_interval_nsec

u64 bfd_session_s::echo_transmit_interval_nsec

transmit interval for echo packets

Definition at line 175 of file bfd_main.h.

◆ echo_tx_timeout_nsec

u64 bfd_session_s::echo_tx_timeout_nsec

next time at which to transmit echo packet

Definition at line 178 of file bfd_main.h.

◆ effective_desired_min_tx_nsec

u64 bfd_session_s::effective_desired_min_tx_nsec

effective desired min tx interval (nsec)

Definition at line 118 of file bfd_main.h.

◆ effective_required_min_rx_nsec

u64 bfd_session_s::effective_required_min_rx_nsec

effective required min rx interval (nsec)

Definition at line 127 of file bfd_main.h.

◆ event_time_nsec

u64 bfd_session_s::event_time_nsec

next event time in nsec for this session (0 if no event)

Definition at line 157 of file bfd_main.h.

◆ hop_type

bfd_hop_type_e bfd_session_s::hop_type

BFD hop type.

Definition at line 97 of file bfd_main.h.

◆ is_delayed

u8 bfd_session_s::is_delayed

set to 1 if delayed action is pending, which might be activation of authentication, change of key or deactivation

Definition at line 232 of file bfd_main.h.

◆ last_rx_nsec

u64 bfd_session_s::last_rx_nsec

timestamp of last packet received

Definition at line 172 of file bfd_main.h.

◆ last_tx_nsec

u64 bfd_session_s::last_tx_nsec

timestamp of last packet transmitted

Definition at line 169 of file bfd_main.h.

◆ local_detect_mult

u8 bfd_session_s::local_detect_mult

configured detect multiplier

Definition at line 145 of file bfd_main.h.

◆ local_diag

bfd_diag_code_e bfd_session_s::local_diag

local diagnostics

Definition at line 100 of file bfd_main.h.

◆ local_discr

u32 bfd_session_s::local_discr

local discriminator

Definition at line 106 of file bfd_main.h.

◆ local_seq_number

u32 bfd_session_s::local_seq_number

sequence number incremented occasionally or always (if meticulous)

Definition at line 214 of file bfd_main.h.

◆ local_state

bfd_state_e bfd_session_s::local_state

session state

Definition at line 91 of file bfd_main.h.

◆ next_bfd_key_id

u8 bfd_session_s::next_bfd_key_id

key ID to use when switched to next_key

Definition at line 226 of file bfd_main.h.

◆ next_key

bfd_auth_key_t* bfd_session_s::next_key

set to next key to use if delayed switch is enabled - in that case the key is switched when first incoming packet is signed with next_key

Definition at line 211 of file bfd_main.h.

◆ poll_state

bfd_poll_state_e bfd_session_s::poll_state

state info regarding poll sequence

Definition at line 193 of file bfd_main.h.

◆ poll_state_start_or_timeout_nsec

u64 bfd_session_s::poll_state_start_or_timeout_nsec

helper for delayed poll sequence - marks either start of running poll sequence or timeout, after which we can start the next poll sequnce

Definition at line 199 of file bfd_main.h.

◆ remote_demand

u8 bfd_session_s::remote_demand

1 if remote system sets demand mode, 0 otherwise

Definition at line 148 of file bfd_main.h.

◆ remote_desired_min_tx_nsec

u64 bfd_session_s::remote_desired_min_tx_nsec

remote desired min tx interval (nsec)

Definition at line 142 of file bfd_main.h.

◆ remote_detect_mult

u8 bfd_session_s::remote_detect_mult

remote detect multiplier

Definition at line 151 of file bfd_main.h.

◆ remote_diag

bfd_diag_code_e bfd_session_s::remote_diag

remote diagnostics

Definition at line 103 of file bfd_main.h.

◆ remote_discr

u32 bfd_session_s::remote_discr

remote discriminator

Definition at line 109 of file bfd_main.h.

◆ remote_min_echo_rx_nsec

u64 bfd_session_s::remote_min_echo_rx_nsec

remote min echo rx interval (nsec)

Definition at line 139 of file bfd_main.h.

◆ remote_min_echo_rx_usec

u64 bfd_session_s::remote_min_echo_rx_usec

remote min echo rx interval (microseconds)

Definition at line 136 of file bfd_main.h.

◆ remote_min_rx_nsec

u64 bfd_session_s::remote_min_rx_nsec

remote min rx interval (nsec)

Definition at line 133 of file bfd_main.h.

◆ remote_min_rx_usec

u64 bfd_session_s::remote_min_rx_usec

remote min rx interval (microseconds)

Definition at line 130 of file bfd_main.h.

◆ remote_seq_number

u32 bfd_session_s::remote_seq_number

remote sequence number

Definition at line 217 of file bfd_main.h.

◆ remote_seq_number_known

u8 bfd_session_s::remote_seq_number_known

set to 1 if remote sequence number is known

Definition at line 220 of file bfd_main.h.

◆ remote_state

bfd_state_e bfd_session_s::remote_state

remote session state

Definition at line 94 of file bfd_main.h.

◆ transmit_interval_nsec

u64 bfd_session_s::transmit_interval_nsec

transmit interval

Definition at line 163 of file bfd_main.h.

◆ transport

bfd_transport_e bfd_session_s::transport

transport type for this session

Definition at line 236 of file bfd_main.h.

◆ tw_id

u32 bfd_session_s::tw_id

timing wheel internal id used to manipulate timer (if set)

Definition at line 160 of file bfd_main.h.

◆ tx_timeout_nsec

u64 bfd_session_s::tx_timeout_nsec

next time at which to transmit a packet

Definition at line 166 of file bfd_main.h.

◆ udp

bfd_udp_session_t bfd_session_s::udp

Definition at line 241 of file bfd_main.h.


The documentation for this struct was generated from the following file: