SAI Metadata
Loading...
Searching...
No Matches
saibfd.h
Go to the documentation of this file.
1
25#if !defined (__SAIBFD_H_)
26#define __SAIBFD_H_
27
28#include <saitypes.h>
29
40{
43
46
49
52
54
59{
62
65
68
70
75{
80
85
90
95
97
102{
105
108
111
114
116
121{
127 sai_object_id_t bfd_session_id;
128
131
133
138{
143
151
160
170
180
188
196
204
213
224
234
244
254
263
271
279
288
297
305
313
323
333
342
351
360
369
378
387
396
404
412
420
428
436
444
453
461
469
477
485
493
503
508
511
514
516
521{
524
527
530
532
544typedef sai_status_t (*sai_create_bfd_session_fn)(
545 _Out_ sai_object_id_t *bfd_session_id,
546 _In_ sai_object_id_t switch_id,
547 _In_ uint32_t attr_count,
548 _In_ const sai_attribute_t *attr_list);
549
558typedef sai_status_t (*sai_remove_bfd_session_fn)(
559 _In_ sai_object_id_t bfd_session_id);
560
570typedef sai_status_t (*sai_set_bfd_session_attribute_fn)(
571 _In_ sai_object_id_t bfd_session_id,
572 _In_ const sai_attribute_t *attr);
573
584typedef sai_status_t (*sai_get_bfd_session_attribute_fn)(
585 _In_ sai_object_id_t bfd_session_id,
586 _In_ uint32_t attr_count,
587 _Inout_ sai_attribute_t *attr_list);
588
599typedef sai_status_t (*sai_get_bfd_session_stats_fn)(
600 _In_ sai_object_id_t bfd_session_id,
601 _In_ uint32_t number_of_counters,
602 _In_ const sai_stat_id_t *counter_ids,
603 _Out_ uint64_t *counters);
604
616typedef sai_status_t (*sai_get_bfd_session_stats_ext_fn)(
617 _In_ sai_object_id_t bfd_session_id,
618 _In_ uint32_t number_of_counters,
619 _In_ const sai_stat_id_t *counter_ids,
620 _In_ sai_stats_mode_t mode,
621 _Out_ uint64_t *counters);
622
632typedef sai_status_t (*sai_clear_bfd_session_stats_fn)(
633 _In_ sai_object_id_t bfd_session_id,
634 _In_ uint32_t number_of_counters,
635 _In_ const sai_stat_id_t *counter_ids);
636
648 _In_ uint32_t count,
649 _In_ const sai_bfd_session_state_notification_t *data);
650
654typedef struct _sai_bfd_api_t
655{
656 sai_create_bfd_session_fn create_bfd_session;
657 sai_remove_bfd_session_fn remove_bfd_session;
658 sai_set_bfd_session_attribute_fn set_bfd_session_attribute;
659 sai_get_bfd_session_attribute_fn get_bfd_session_attribute;
660 sai_get_bfd_session_stats_fn get_bfd_session_stats;
661 sai_get_bfd_session_stats_ext_fn get_bfd_session_stats_ext;
662 sai_clear_bfd_session_stats_fn clear_bfd_session_stats;
663
665
669#endif
sai_status_t(* sai_get_bfd_session_stats_fn)(_In_ sai_object_id_t bfd_session_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters)
Get BFD session statistics counters. Deprecated for backward compatibility.
Definition saibfd.h:599
enum _sai_bfd_encapsulation_type_t sai_bfd_encapsulation_type_t
SAI type of encapsulation for BFD.
enum _sai_bfd_session_type_t sai_bfd_session_type_t
SAI session type of BFD.
enum _sai_bfd_session_attr_t sai_bfd_session_attr_t
SAI attributes for BFD session.
sai_status_t(* sai_create_bfd_session_fn)(_Out_ sai_object_id_t *bfd_session_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
Create BFD session.
Definition saibfd.h:544
struct _sai_bfd_session_state_notification_t sai_bfd_session_state_notification_t
Defines the operational status of the BFD session.
_sai_bfd_session_attr_t
SAI attributes for BFD session.
Definition saibfd.h:138
struct _sai_bfd_api_t sai_bfd_api_t
BFD method table retrieved with sai_api_query()
sai_status_t(* sai_remove_bfd_session_fn)(_In_ sai_object_id_t bfd_session_id)
Remove BFD session.
Definition saibfd.h:558
void(* sai_bfd_session_state_change_notification_fn)(_In_ uint32_t count, _In_ const sai_bfd_session_state_notification_t *data)
BFD session state change notification.
Definition saibfd.h:647
enum _sai_bfd_session_state_t sai_bfd_session_state_t
SAI BFD session state.
enum _sai_bfd_session_stat_t sai_bfd_session_stat_t
BFD Session counter IDs in sai_get_bfd_session_stats() call.
sai_status_t(* sai_get_bfd_session_attribute_fn)(_In_ sai_object_id_t bfd_session_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
Get BFD session attributes.
Definition saibfd.h:584
sai_status_t(* sai_get_bfd_session_stats_ext_fn)(_In_ sai_object_id_t bfd_session_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _In_ sai_stats_mode_t mode, _Out_ uint64_t *counters)
Get BFD session statistics counters extended.
Definition saibfd.h:616
sai_status_t(* sai_set_bfd_session_attribute_fn)(_In_ sai_object_id_t bfd_session_id, _In_ const sai_attribute_t *attr)
Set BFD session attributes.
Definition saibfd.h:570
_sai_bfd_session_type_t
SAI session type of BFD.
Definition saibfd.h:40
sai_status_t(* sai_clear_bfd_session_stats_fn)(_In_ sai_object_id_t bfd_session_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids)
Clear BFD session statistics counters.
Definition saibfd.h:632
_sai_bfd_session_stat_t
BFD Session counter IDs in sai_get_bfd_session_stats() call.
Definition saibfd.h:521
enum _sai_bfd_session_offload_type_t sai_bfd_session_offload_type_t
SAI offload type of BFD session.
_sai_bfd_session_state_t
SAI BFD session state.
Definition saibfd.h:102
_sai_bfd_encapsulation_type_t
SAI type of encapsulation for BFD.
Definition saibfd.h:75
_sai_bfd_session_offload_type_t
SAI offload type of BFD session.
Definition saibfd.h:59
@ SAI_BFD_SESSION_ATTR_SRV6_SIDLIST_ID
SID List with Endpoint for SRV6 Encap.
Definition saibfd.h:502
@ SAI_BFD_SESSION_ATTR_UDP_SRC_PORT
UDP Source port.
Definition saibfd.h:203
@ SAI_BFD_SESSION_ATTR_MIN_TX
Minimum Transmit interval in microseconds.
Definition saibfd.h:403
@ SAI_BFD_SESSION_ATTR_MULTIHOP
Multi hop BFD session.
Definition saibfd.h:386
@ SAI_BFD_SESSION_ATTR_TOS
IP header TOS.
Definition saibfd.h:287
@ SAI_BFD_SESSION_ATTR_OFFLOAD_TYPE
Offload type.
Definition saibfd.h:452
@ SAI_BFD_SESSION_ATTR_MULTIPLIER
Detect time Multiplier.
Definition saibfd.h:419
@ SAI_BFD_SESSION_ATTR_NEGOTIATED_TX
Negotiated Transmit interval in microseconds.
Definition saibfd.h:460
@ SAI_BFD_SESSION_ATTR_HW_LOOKUP_VALID
Hardware lookup valid.
Definition saibfd.h:159
@ SAI_BFD_SESSION_ATTR_TTL
IP header TTL.
Definition saibfd.h:296
@ SAI_BFD_SESSION_ATTR_VIRTUAL_ROUTER
Virtual Router.
Definition saibfd.h:169
@ SAI_BFD_SESSION_ATTR_TUNNEL_TOS
Tunnel IP header TOS.
Definition saibfd.h:322
@ SAI_BFD_SESSION_ATTR_TYPE
BFD Session type DEMAND/ASYNCHRONOUS.
Definition saibfd.h:150
@ SAI_BFD_SESSION_ATTR_VLAN_TPID
L2 header TPID.
Definition saibfd.h:223
@ SAI_BFD_SESSION_ATTR_VLAN_PRI
L2 header packet priority (3 bits).
Definition saibfd.h:243
@ SAI_BFD_SESSION_ATTR_DST_MAC_ADDRESS
L2 destination MAC address.
Definition saibfd.h:368
@ SAI_BFD_SESSION_ATTR_SRC_IP_ADDRESS
Source IP.
Definition saibfd.h:304
@ SAI_BFD_SESSION_ATTR_REMOTE_MIN_RX
Minimum Remote Receive interval in microseconds.
Definition saibfd.h:435
@ SAI_BFD_SESSION_ATTR_IPHDR_VERSION
IP header version.
Definition saibfd.h:278
@ SAI_BFD_SESSION_ATTR_LOCAL_DISCRIMINATOR
Local discriminator.
Definition saibfd.h:187
@ SAI_BFD_SESSION_ATTR_TUNNEL_TTL
Tunnel IP header TTL.
Definition saibfd.h:332
@ SAI_BFD_SESSION_ATTR_MIN_RX
Minimum Receive interval in microseconds.
Definition saibfd.h:411
@ SAI_BFD_SESSION_ATTR_ECHO_ENABLE
To enable echo function on BFD session.
Definition saibfd.h:377
@ SAI_BFD_SESSION_ATTR_BFD_ENCAPSULATION_TYPE
Encapsulation type.
Definition saibfd.h:270
@ SAI_BFD_SESSION_ATTR_DST_IP_ADDRESS
Destination IP.
Definition saibfd.h:312
@ SAI_BFD_SESSION_ATTR_REMOTE_MIN_TX
Minimum Remote Transmit interval in microseconds.
Definition saibfd.h:427
@ SAI_BFD_SESSION_ATTR_REMOTE_MULTIPLIER
Remote time Multiplier.
Definition saibfd.h:492
@ SAI_BFD_SESSION_ATTR_VLAN_ID
L2 header VLAN Id.
Definition saibfd.h:233
@ SAI_BFD_SESSION_ATTR_VLAN_HEADER_VALID
Vlan header valid.
Definition saibfd.h:262
@ SAI_BFD_SESSION_ATTR_TUNNEL_SRC_IP_ADDRESS
Tunnel source IP.
Definition saibfd.h:341
@ SAI_BFD_SESSION_ATTR_TUNNEL_DST_IP_ADDRESS
Tunnel destination IP.
Definition saibfd.h:350
@ SAI_BFD_SESSION_ATTR_REMOTE_DISCRIMINATOR
Remote discriminator.
Definition saibfd.h:195
@ SAI_BFD_SESSION_ATTR_VLAN_CFI
L2 header Vlan CFI (1 bit).
Definition saibfd.h:253
@ SAI_BFD_SESSION_ATTR_STATE
BFD Session state.
Definition saibfd.h:443
@ SAI_BFD_SESSION_ATTR_CUSTOM_RANGE_END
Definition saibfd.h:513
@ SAI_BFD_SESSION_ATTR_PORT
Destination Port.
Definition saibfd.h:179
@ SAI_BFD_SESSION_ATTR_NEGOTIATED_RX
Negotiated Receive interval in microseconds.
Definition saibfd.h:468
@ SAI_BFD_SESSION_ATTR_SRC_MAC_ADDRESS
L2 source MAC address.
Definition saibfd.h:359
@ SAI_BFD_SESSION_ATTR_LOCAL_DIAG
Local Diagnostic code field as specified by RFC.
Definition saibfd.h:476
@ SAI_BFD_SESSION_ATTR_START
Start of attributes.
Definition saibfd.h:142
@ SAI_BFD_SESSION_ATTR_CBIT
Control Plane Independent.
Definition saibfd.h:395
@ SAI_BFD_SESSION_ATTR_REMOTE_DIAG
Remote Diagnostic code field.
Definition saibfd.h:484
@ SAI_BFD_SESSION_ATTR_CUSTOM_RANGE_START
Definition saibfd.h:510
@ SAI_BFD_SESSION_ATTR_TC
Class-of-Service (Traffic Class)
Definition saibfd.h:212
@ SAI_BFD_SESSION_ATTR_END
End of attributes.
Definition saibfd.h:507
@ SAI_BFD_SESSION_TYPE_ASYNC_ACTIVE
Definition saibfd.h:48
@ SAI_BFD_SESSION_TYPE_ASYNC_PASSIVE
Definition saibfd.h:51
@ SAI_BFD_SESSION_TYPE_DEMAND_ACTIVE
Definition saibfd.h:42
@ SAI_BFD_SESSION_TYPE_DEMAND_PASSIVE
Definition saibfd.h:45
@ SAI_BFD_SESSION_STAT_IN_PACKETS
Definition saibfd.h:523
@ SAI_BFD_SESSION_STAT_DROP_PACKETS
Definition saibfd.h:529
@ SAI_BFD_SESSION_STAT_OUT_PACKETS
Definition saibfd.h:526
@ SAI_BFD_SESSION_STATE_INIT
Definition saibfd.h:110
@ SAI_BFD_SESSION_STATE_UP
Definition saibfd.h:113
@ SAI_BFD_SESSION_STATE_DOWN
Definition saibfd.h:107
@ SAI_BFD_SESSION_STATE_ADMIN_DOWN
Definition saibfd.h:104
@ SAI_BFD_ENCAPSULATION_TYPE_SRV6
SRV6 Tunnel Encapsulation | L2 Ethernet header | IPV6 Header | SRV6 Header | Inner IP header | Origin...
Definition saibfd.h:94
@ SAI_BFD_ENCAPSULATION_TYPE_L3_GRE_TUNNEL
L3 GRE Tunnel Encapsulation | L2 Ethernet header | IP header | GRE header | Original BFD packet.
Definition saibfd.h:84
@ SAI_BFD_ENCAPSULATION_TYPE_NONE
No Encapsulation.
Definition saibfd.h:89
@ SAI_BFD_ENCAPSULATION_TYPE_IP_IN_IP
IP in IP Encapsulation | L2 Ethernet header | IP header | Inner IP header | Original BFD packet.
Definition saibfd.h:79
@ SAI_BFD_SESSION_OFFLOAD_TYPE_SUSTENANCE
Definition saibfd.h:67
@ SAI_BFD_SESSION_OFFLOAD_TYPE_FULL
Definition saibfd.h:64
@ SAI_BFD_SESSION_OFFLOAD_TYPE_NONE
Definition saibfd.h:61
enum _sai_stats_mode_t sai_stats_mode_t
SAI statistics modes.
This module defines SAI portable types.
BFD method table retrieved with sai_api_query()
Definition saibfd.h:655
Defines the operational status of the BFD session.
Definition saibfd.h:121
sai_object_id_t bfd_session_id
BFD Session id.
Definition saibfd.h:127
sai_bfd_session_state_t session_state
Definition saibfd.h:130