FD.io VPP  v17.10-9-gd594711
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_clocks
 configured desired min tx interval (clocks) More...
 
u64 effective_desired_min_tx_clocks
 effective desired min tx interval (clocks) More...
 
u32 config_required_min_rx_usec
 configured required min rx interval (microseconds) More...
 
u64 config_required_min_rx_clocks
 configured required min rx interval (clocks) More...
 
u64 effective_required_min_rx_clocks
 effective required min rx interval (clocks) More...
 
u64 remote_min_rx_usec
 remote min rx interval (microseconds) More...
 
u64 remote_min_rx_clocks
 remote min rx interval (clocks) More...
 
u64 remote_min_echo_rx_usec
 remote min echo rx interval (microseconds) More...
 
u64 remote_min_echo_rx_clocks
 remote min echo rx interval (clocks) More...
 
u64 remote_desired_min_tx_clocks
 remote desired min tx interval (clocks) 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 wheel_time_clocks
 set to value of timer in timing wheel, 0 if never set More...
 
u64 transmit_interval_clocks
 transmit interval More...
 
u64 tx_timeout_clocks
 next time at which to transmit a packet More...
 
u64 last_tx_clocks
 timestamp of last packet transmitted More...
 
u64 last_rx_clocks
 timestamp of last packet received More...
 
u64 echo_transmit_interval_clocks
 transmit interval for echo packets More...
 
u64 echo_tx_timeout_clocks
 next time at which to transmit echo packet More...
 
u64 echo_last_tx_clocks
 timestamp of last echo packet transmitted More...
 
u64 echo_last_rx_clocks
 timestamp of last echo packet received More...
 
u32 echo_secret
 secret used for calculating/checking checksum of echo packets More...
 
u64 detection_time_clocks
 detection time More...
 
bfd_poll_state_e poll_state
 state info regarding poll sequence More...
 
u64 poll_state_start_or_timeout_clocks
 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 83 of file bfd_main.h.

Field Documentation

union { ... }

union of transport-specific data

struct { ... } bfd_session_s::auth

authentication information

u32 bfd_session_s::bs_idx

index in bfd_main.sessions pool

Definition at line 86 of file bfd_main.h.

u64 bfd_session_s::config_desired_min_tx_clocks

configured desired min tx interval (clocks)

Definition at line 113 of file bfd_main.h.

u32 bfd_session_s::config_desired_min_tx_usec

configured desired min tx interval (microseconds)

Definition at line 110 of file bfd_main.h.

u64 bfd_session_s::config_required_min_rx_clocks

configured required min rx interval (clocks)

Definition at line 122 of file bfd_main.h.

u32 bfd_session_s::config_required_min_rx_usec

configured required min rx interval (microseconds)

Definition at line 119 of file bfd_main.h.

u8 bfd_session_s::curr_bfd_key_id

current key ID sent out in bfd packet

Definition at line 218 of file bfd_main.h.

bfd_auth_key_t* bfd_session_s::curr_key

current key in use

Definition at line 200 of file bfd_main.h.

u64 bfd_session_s::detection_time_clocks

detection time

Definition at line 185 of file bfd_main.h.

u8 bfd_session_s::echo

1 is echo function is active, 0 otherwise

Definition at line 152 of file bfd_main.h.

u64 bfd_session_s::echo_last_rx_clocks

timestamp of last echo packet received

Definition at line 179 of file bfd_main.h.

u64 bfd_session_s::echo_last_tx_clocks

timestamp of last echo packet transmitted

Definition at line 176 of file bfd_main.h.

u32 bfd_session_s::echo_secret

secret used for calculating/checking checksum of echo packets

Definition at line 182 of file bfd_main.h.

u64 bfd_session_s::echo_transmit_interval_clocks

transmit interval for echo packets

Definition at line 170 of file bfd_main.h.

u64 bfd_session_s::echo_tx_timeout_clocks

next time at which to transmit echo packet

Definition at line 173 of file bfd_main.h.

u64 bfd_session_s::effective_desired_min_tx_clocks

effective desired min tx interval (clocks)

Definition at line 116 of file bfd_main.h.

u64 bfd_session_s::effective_required_min_rx_clocks

effective required min rx interval (clocks)

Definition at line 125 of file bfd_main.h.

bfd_hop_type_e bfd_session_s::hop_type

BFD hop type.

Definition at line 95 of file bfd_main.h.

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 227 of file bfd_main.h.

u64 bfd_session_s::last_rx_clocks

timestamp of last packet received

Definition at line 167 of file bfd_main.h.

u64 bfd_session_s::last_tx_clocks

timestamp of last packet transmitted

Definition at line 164 of file bfd_main.h.

u8 bfd_session_s::local_detect_mult

configured detect multiplier

Definition at line 143 of file bfd_main.h.

bfd_diag_code_e bfd_session_s::local_diag

local diagnostics

Definition at line 98 of file bfd_main.h.

u32 bfd_session_s::local_discr

local discriminator

Definition at line 104 of file bfd_main.h.

u32 bfd_session_s::local_seq_number

sequence number incremented occasionally or always (if meticulous)

Definition at line 209 of file bfd_main.h.

bfd_state_e bfd_session_s::local_state

session state

Definition at line 89 of file bfd_main.h.

u8 bfd_session_s::next_bfd_key_id

key ID to use when switched to next_key

Definition at line 221 of file bfd_main.h.

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 206 of file bfd_main.h.

bfd_poll_state_e bfd_session_s::poll_state

state info regarding poll sequence

Definition at line 188 of file bfd_main.h.

u64 bfd_session_s::poll_state_start_or_timeout_clocks

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 194 of file bfd_main.h.

u8 bfd_session_s::remote_demand

1 if remote system sets demand mode, 0 otherwise

Definition at line 146 of file bfd_main.h.

u64 bfd_session_s::remote_desired_min_tx_clocks

remote desired min tx interval (clocks)

Definition at line 140 of file bfd_main.h.

u8 bfd_session_s::remote_detect_mult

remote detect multiplier

Definition at line 149 of file bfd_main.h.

bfd_diag_code_e bfd_session_s::remote_diag

remote diagnostics

Definition at line 101 of file bfd_main.h.

u32 bfd_session_s::remote_discr

remote discriminator

Definition at line 107 of file bfd_main.h.

u64 bfd_session_s::remote_min_echo_rx_clocks

remote min echo rx interval (clocks)

Definition at line 137 of file bfd_main.h.

u64 bfd_session_s::remote_min_echo_rx_usec

remote min echo rx interval (microseconds)

Definition at line 134 of file bfd_main.h.

u64 bfd_session_s::remote_min_rx_clocks

remote min rx interval (clocks)

Definition at line 131 of file bfd_main.h.

u64 bfd_session_s::remote_min_rx_usec

remote min rx interval (microseconds)

Definition at line 128 of file bfd_main.h.

u32 bfd_session_s::remote_seq_number

remote sequence number

Definition at line 212 of file bfd_main.h.

u8 bfd_session_s::remote_seq_number_known

set to 1 if remote sequence number is known

Definition at line 215 of file bfd_main.h.

bfd_state_e bfd_session_s::remote_state

remote session state

Definition at line 92 of file bfd_main.h.

u64 bfd_session_s::transmit_interval_clocks

transmit interval

Definition at line 158 of file bfd_main.h.

bfd_transport_e bfd_session_s::transport

transport type for this session

Definition at line 231 of file bfd_main.h.

u64 bfd_session_s::tx_timeout_clocks

next time at which to transmit a packet

Definition at line 161 of file bfd_main.h.

bfd_udp_session_t bfd_session_s::udp

Definition at line 236 of file bfd_main.h.

u64 bfd_session_s::wheel_time_clocks

set to value of timer in timing wheel, 0 if never set

Definition at line 155 of file bfd_main.h.


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