SAI Metadata
All Classes Files Functions Variables Typedefs Enumerations Enumerator Modules
saidebugcounter.h
Go to the documentation of this file.
1
29#if !defined (__SAIDEBUGCOUNTER_H_)
30#define __SAIDEBUGCOUNTER_H_
31
32#include <saitypes.h>
33
44{
47
50
58
66
68
73{
76
78
83{
86
87 /* L2 reasons */
88
91
94
97
100
108
111
114
117
120
123
126
127 /* L3 reasons */
128
131
134
137
140
151
154
161
164
172
180
188
195
203
212
215
218
221
224
227
230
233
236
239
242
245
248
251
254
261
262 /* Tunnel reasons */
263
270
271 /* ACL reasons */
272
275
278
281
284
287
290
293
296
299
302
305
306 /* Reasons added in 1.6 */
307
310
313
324
327
330
333
335
340{
343
344 /* L2 reasons */
345
348
351
352 /* L3 reasons */
353
356
363
364 /* Tunnel reasons */
365
370
373
376
379
381
387{
392
393 /* READ-ONLY */
394
403
404 /* READ-WRITE */
405
414
423
433
443
448
451
454
456
467typedef sai_status_t (*sai_create_debug_counter_fn)(
468 _Out_ sai_object_id_t *debug_counter_id,
469 _In_ sai_object_id_t switch_id,
470 _In_ uint32_t attr_count,
471 _In_ const sai_attribute_t *attr_list);
472
480typedef sai_status_t (*sai_remove_debug_counter_fn)(
481 _In_ sai_object_id_t debug_counter_id);
482
492 _In_ sai_object_id_t debug_counter_id,
493 _In_ const sai_attribute_t *attr);
494
505 _In_ sai_object_id_t debug_counter_id,
506 _In_ uint32_t attr_count,
507 _Inout_ sai_attribute_t *attr_list);
508
513{
514 sai_create_debug_counter_fn create_debug_counter;
515 sai_remove_debug_counter_fn remove_debug_counter;
516 sai_set_debug_counter_attribute_fn set_debug_counter_attribute;
517 sai_get_debug_counter_attribute_fn get_debug_counter_attribute;
518
520
524#endif
enum _sai_debug_counter_bind_method_t sai_debug_counter_bind_method_t
Debug counter bind method.
_sai_debug_counter_type_t
Debug counter type.
sai_status_t(* sai_get_debug_counter_attribute_fn)(_In_ sai_object_id_t debug_counter_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
Get debug counter attribute Value.
enum _sai_in_drop_reason_t sai_in_drop_reason_t
Attribute data for in drop reasons.
sai_status_t(* sai_remove_debug_counter_fn)(_In_ sai_object_id_t debug_counter_id)
Remove debug counter.
sai_status_t(* sai_set_debug_counter_attribute_fn)(_In_ sai_object_id_t debug_counter_id, _In_ const sai_attribute_t *attr)
Set debug counter attribute Value.
struct _sai_debug_counter_api_t sai_debug_counter_api_t
Counter methods table retrieved with sai_api_query()
_sai_out_drop_reason_t
Attribute data for out drop reasons.
enum _sai_debug_counter_type_t sai_debug_counter_type_t
Debug counter type.
enum _sai_out_drop_reason_t sai_out_drop_reason_t
Attribute data for out drop reasons.
enum _sai_debug_counter_attr_t sai_debug_counter_attr_t
Attribute Id in sai_set_counter_attribute() and sai_get_counter_attribute() calls.
_sai_debug_counter_attr_t
Attribute Id in sai_set_counter_attribute() and sai_get_counter_attribute() calls.
sai_status_t(* sai_create_debug_counter_fn)(_Out_ sai_object_id_t *debug_counter_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
Create debug counter.
_sai_debug_counter_bind_method_t
Debug counter bind method.
_sai_in_drop_reason_t
Attribute data for in drop reasons.
@ SAI_DEBUG_COUNTER_TYPE_SWITCH_OUT_DROP_REASONS
Switch out drop reasons.
@ SAI_DEBUG_COUNTER_TYPE_SWITCH_IN_DROP_REASONS
Switch in drop reasons.
@ SAI_DEBUG_COUNTER_TYPE_PORT_IN_DROP_REASONS
@ SAI_DEBUG_COUNTER_TYPE_PORT_OUT_DROP_REASONS
@ SAI_OUT_DROP_REASON_EGRESS_VLAN_FILTER
@ SAI_OUT_DROP_REASON_START
@ SAI_OUT_DROP_REASON_L3_EGRESS_LINK_DOWN
Packet is destined for neighboring device but neighbor device link is down.
@ SAI_OUT_DROP_REASON_CUSTOM_RANGE_BASE
@ SAI_OUT_DROP_REASON_TUNNEL_LOOPBACK_PACKET_DROP
Tunnel packets dropped if going back to the incoming tunnel.
@ SAI_OUT_DROP_REASON_END
@ SAI_OUT_DROP_REASON_L2_ANY
@ SAI_OUT_DROP_REASON_L3_ANY
@ SAI_OUT_DROP_REASON_CUSTOM_RANGE_END
@ SAI_DEBUG_COUNTER_ATTR_END
End of attributes.
@ SAI_DEBUG_COUNTER_ATTR_CUSTOM_RANGE_END
@ SAI_DEBUG_COUNTER_ATTR_INDEX
Object stat index Index is added to base start.
@ SAI_DEBUG_COUNTER_ATTR_CUSTOM_RANGE_START
@ SAI_DEBUG_COUNTER_ATTR_BIND_METHOD
Bind method to base object.
@ SAI_DEBUG_COUNTER_ATTR_TYPE
Debug counter type.
@ SAI_DEBUG_COUNTER_ATTR_OUT_DROP_REASON_LIST
List of out drop reasons that will be counted.
@ SAI_DEBUG_COUNTER_ATTR_IN_DROP_REASON_LIST
List of in drop reasons that will be counted.
@ SAI_DEBUG_COUNTER_ATTR_START
Start of attributes.
@ SAI_DEBUG_COUNTER_BIND_METHOD_AUTOMATIC
@ SAI_IN_DROP_REASON_ACL_EGRESS_VLAN
@ SAI_IN_DROP_REASON_SIP_UNSPECIFIED
Source IP unspecified.
@ SAI_IN_DROP_REASON_L2_LOOPBACK_FILTER
@ SAI_IN_DROP_REASON_FDB_AND_BLACKHOLE_DISCARDS
@ SAI_IN_DROP_REASON_ACL_EGRESS_SWITCH
@ SAI_IN_DROP_REASON_SIP_EQUALS_DIP
@ SAI_IN_DROP_REASON_FDB_UC_DISCARD
@ SAI_IN_DROP_REASON_VLAN_TAG_NOT_ALLOWED
VLAN tag not allowed.
@ SAI_IN_DROP_REASON_INGRESS_STP_FILTER
@ SAI_IN_DROP_REASON_L3_LOOPBACK_FILTER
@ SAI_IN_DROP_REASON_ACL_INGRESS_SWITCH
@ SAI_IN_DROP_REASON_ACL_INGRESS_LAG
@ SAI_IN_DROP_REASON_DECAP_ERROR
Packet decapsulation failed.
@ SAI_IN_DROP_REASON_UNRESOLVED_NEXT_HOP
@ SAI_IN_DROP_REASON_IP_HEADER_ERROR
IP Header error.
@ SAI_IN_DROP_REASON_TTL
@ SAI_IN_DROP_REASON_ACL_EGRESS_PORT
@ SAI_IN_DROP_REASON_EXCEEDS_L3_MTU
@ SAI_IN_DROP_REASON_ACL_EGRESS_RIF
@ SAI_IN_DROP_REASON_LPM6_MISS
@ SAI_IN_DROP_REASON_SIP_BC
@ SAI_IN_DROP_REASON_ACL_INGRESS_PORT
@ SAI_IN_DROP_REASON_MC_DMAC_MISMATCH
Destination IP is multicast but destination MAC isn't.
@ SAI_IN_DROP_REASON_LPM4_MISS
@ SAI_IN_DROP_REASON_EXCEEDS_L2_MTU
@ SAI_IN_DROP_REASON_SIP_MC
Source IP is multicast address.
@ SAI_IN_DROP_REASON_IPV6_MC_SCOPE0
@ SAI_IN_DROP_REASON_L2_ANY
@ SAI_IN_DROP_REASON_SIP_LOOPBACK
Source IP is loopback address.
@ SAI_IN_DROP_REASON_NO_L3_HEADER
@ SAI_IN_DROP_REASON_NON_ROUTABLE
Non routable packet.
@ SAI_IN_DROP_REASON_ACL_INGRESS_VLAN
@ SAI_IN_DROP_REASON_IRIF_DISABLED
@ SAI_IN_DROP_REASON_START
@ SAI_IN_DROP_REASON_DIP_LINK_LOCAL
@ SAI_IN_DROP_REASON_END
@ SAI_IN_DROP_REASON_ERIF_DISABLED
@ SAI_IN_DROP_REASON_FDB_MC_DISCARD
@ SAI_IN_DROP_REASON_ACL_INGRESS_RIF
@ SAI_IN_DROP_REASON_BLACKHOLE_ROUTE
@ SAI_IN_DROP_REASON_IPV6_MC_SCOPE1
@ SAI_IN_DROP_REASON_SIP_LINK_LOCAL
@ SAI_IN_DROP_REASON_SIP_CLASS_E
Source IP is in class E.
@ SAI_IN_DROP_REASON_MPLS_MISS
@ SAI_IN_DROP_REASON_L3_ANY
@ SAI_IN_DROP_REASON_BLACKHOLE_ARP
@ SAI_IN_DROP_REASON_SMAC_EQUALS_DMAC
@ SAI_IN_DROP_REASON_DMAC_RESERVED
@ SAI_IN_DROP_REASON_CUSTOM_RANGE_END
@ SAI_IN_DROP_REASON_DIP_LOOPBACK
Destination IP is loopback address.
@ SAI_IN_DROP_REASON_ACL_EGRESS_LAG
@ SAI_IN_DROP_REASON_SMAC_MULTICAST
@ SAI_IN_DROP_REASON_L3_EGRESS_LINK_DOWN
Packet is destined for neighboring device but neighbor device link is down.
@ SAI_IN_DROP_REASON_INGRESS_VLAN_FILTER
@ SAI_IN_DROP_REASON_UC_DIP_MC_DMAC
@ SAI_IN_DROP_REASON_CUSTOM_RANGE_BASE
@ SAI_IN_DROP_REASON_ACL_ANY
@ SAI_IN_DROP_REASON_SRV6_LOCAL_SID_DROP
SRV6 local SID drop.
@ SAI_IN_DROP_REASON_DIP_LOCAL
This module defines SAI portable types.
Counter methods table retrieved with sai_api_query()