SAI Metadata
Loading...
Searching...
No Matches
saimirror.h
Go to the documentation of this file.
1
25#if !defined (__SAIMIRROR_H_)
26#define __SAIMIRROR_H_
27
28#include <saitypes.h>
29
40{
43
46
49
52
54
59{
64
66
71{
74
77
79
84{
89
97
107
119
131
140
149
162
175
187
199
200 /*
201 * All attributes below are valid only for ERSPAN
202 * SAI_MIRROR_SESSION_TYPE_ENHANCED_REMOTE.
203 */
204
214
223
232
241
250
259
268
277
286
296
305
315
326
337
348
364
369
372
375
377
389typedef sai_status_t (*sai_create_mirror_session_fn)(
390 _Out_ sai_object_id_t *mirror_session_id,
391 _In_ sai_object_id_t switch_id,
392 _In_ uint32_t attr_count,
393 _In_ const sai_attribute_t *attr_list);
394
403typedef sai_status_t (*sai_remove_mirror_session_fn)(
404 _In_ sai_object_id_t mirror_session_id);
405
416 _In_ sai_object_id_t mirror_session_id,
417 _In_ const sai_attribute_t *attr);
418
430 _In_ sai_object_id_t mirror_session_id,
431 _In_ uint32_t attr_count,
432 _Inout_ sai_attribute_t *attr_list);
433
437typedef struct _sai_mirror_api_t
438{
439 sai_create_mirror_session_fn create_mirror_session;
440 sai_remove_mirror_session_fn remove_mirror_session;
441 sai_set_mirror_session_attribute_fn set_mirror_session_attribute;
442 sai_get_mirror_session_attribute_fn get_mirror_session_attribute;
443
445
449#endif
enum _sai_mirror_session_congestion_mode_t sai_mirror_session_congestion_mode_t
Mirror session congestion mode.
sai_status_t(* sai_create_mirror_session_fn)(_Out_ sai_object_id_t *mirror_session_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
Create mirror session.
Definition saimirror.h:389
_sai_mirror_session_attr_t
SAI attributes for mirror session.
Definition saimirror.h:84
sai_status_t(* sai_get_mirror_session_attribute_fn)(_In_ sai_object_id_t mirror_session_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
Get mirror session attributes.
Definition saimirror.h:429
sai_status_t(* sai_set_mirror_session_attribute_fn)(_In_ sai_object_id_t mirror_session_id, _In_ const sai_attribute_t *attr)
Set mirror session attributes.
Definition saimirror.h:415
enum _sai_mirror_session_attr_t sai_mirror_session_attr_t
SAI attributes for mirror session.
_sai_mirror_session_congestion_mode_t
Mirror session congestion mode.
Definition saimirror.h:71
_sai_erspan_encapsulation_type_t
SAI type of encapsulation for RSPAN and ERSPAN.
Definition saimirror.h:59
sai_status_t(* sai_remove_mirror_session_fn)(_In_ sai_object_id_t mirror_session_id)
Remove mirror session.
Definition saimirror.h:403
enum _sai_mirror_session_type_t sai_mirror_session_type_t
SAI type of mirroring.
struct _sai_mirror_api_t sai_mirror_api_t
MIRROR method table retrieved with sai_api_query()
_sai_mirror_session_type_t
SAI type of mirroring.
Definition saimirror.h:40
enum _sai_erspan_encapsulation_type_t sai_erspan_encapsulation_type_t
SAI type of encapsulation for RSPAN and ERSPAN.
@ SAI_MIRROR_SESSION_ATTR_GRE_PROTOCOL_TYPE
Valid for ERSPAN, GRE protocol Id.
Definition saimirror.h:295
@ SAI_MIRROR_SESSION_ATTR_VLAN_CFI
L2 header Vlan CFI (1 bit).
Definition saimirror.h:198
@ SAI_MIRROR_SESSION_ATTR_CUSTOM_RANGE_END
Definition saimirror.h:374
@ SAI_MIRROR_SESSION_ATTR_START
Start of attributes.
Definition saimirror.h:88
@ SAI_MIRROR_SESSION_ATTR_TOS
Tunnel header TOS.
Definition saimirror.h:240
@ SAI_MIRROR_SESSION_ATTR_CONGESTION_MODE
Controls whether mirroring traffic can cause back pressure and packet drop of the original traffic.
Definition saimirror.h:139
@ SAI_MIRROR_SESSION_ATTR_MONITOR_PORT
Destination/Analyzer/Monitor Port.
Definition saimirror.h:106
@ SAI_MIRROR_SESSION_ATTR_VLAN_ID
L2 header VLAN Id.
Definition saimirror.h:174
@ SAI_MIRROR_SESSION_ATTR_VLAN_HEADER_VALID
Vlan header valid.
Definition saimirror.h:213
@ SAI_MIRROR_SESSION_ATTR_TYPE
Mirror type SPAN/RSPAN/ERSPAN.
Definition saimirror.h:96
@ SAI_MIRROR_SESSION_ATTR_COUNTER_ID
Attach a counter.
Definition saimirror.h:363
@ SAI_MIRROR_SESSION_ATTR_UDP_SRC_PORT
UDP source port. UDP source port to encapsulate SFLOW packets.
Definition saimirror.h:336
@ SAI_MIRROR_SESSION_ATTR_UDP_DST_PORT
UDP destination port. UDP destination port to encapsulate SFLOW packets.
Definition saimirror.h:347
@ SAI_MIRROR_SESSION_ATTR_TTL
Tunnel header TTL.
Definition saimirror.h:249
@ SAI_MIRROR_SESSION_ATTR_ERSPAN_ENCAPSULATION_TYPE
Encapsulation type.
Definition saimirror.h:222
@ SAI_MIRROR_SESSION_ATTR_DST_IP_ADDRESS
Tunnel destination IP.
Definition saimirror.h:267
@ SAI_MIRROR_SESSION_ATTR_MONITOR_PORTLIST
Destination/Analyzer/Monitor Port List.
Definition saimirror.h:314
@ SAI_MIRROR_SESSION_ATTR_SAMPLE_RATE
Mirror sample rate. Every 1/sample_rate the packets will be mirrored.
Definition saimirror.h:130
@ SAI_MIRROR_SESSION_ATTR_POLICER
Mirror session policer object ID.
Definition saimirror.h:325
@ SAI_MIRROR_SESSION_ATTR_VLAN_TPID
L2 header TPID.
Definition saimirror.h:161
@ SAI_MIRROR_SESSION_ATTR_VLAN_PRI
L2 header packet priority (3 bits).
Definition saimirror.h:186
@ SAI_MIRROR_SESSION_ATTR_SRC_IP_ADDRESS
Tunnel source IP.
Definition saimirror.h:258
@ SAI_MIRROR_SESSION_ATTR_CUSTOM_RANGE_START
Definition saimirror.h:371
@ SAI_MIRROR_SESSION_ATTR_END
End of attributes.
Definition saimirror.h:368
@ SAI_MIRROR_SESSION_ATTR_TC
Class-of-Service (Traffic Class)
Definition saimirror.h:148
@ SAI_MIRROR_SESSION_ATTR_MONITOR_PORTLIST_VALID
Monitor port list is valid.
Definition saimirror.h:304
@ SAI_MIRROR_SESSION_ATTR_TRUNCATE_SIZE
Truncate size. Truncate mirrored packets to this size to reduce SPAN traffic bandwidth.
Definition saimirror.h:118
@ SAI_MIRROR_SESSION_ATTR_SRC_MAC_ADDRESS
L2 source MAC address.
Definition saimirror.h:276
@ SAI_MIRROR_SESSION_ATTR_IPHDR_VERSION
Tunnel IP header version.
Definition saimirror.h:231
@ SAI_MIRROR_SESSION_ATTR_DST_MAC_ADDRESS
L2 destination MAC address.
Definition saimirror.h:285
@ SAI_MIRROR_SESSION_CONGESTION_MODE_CORRELATED
Definition saimirror.h:76
@ SAI_MIRROR_SESSION_CONGESTION_MODE_INDEPENDENT
Definition saimirror.h:73
@ SAI_ERSPAN_ENCAPSULATION_TYPE_MIRROR_L3_GRE_TUNNEL
L3 GRE Tunnel Encapsulation | L2 Ethernet header | IP header | GRE header | Original mirrored packet.
Definition saimirror.h:63
@ SAI_MIRROR_SESSION_TYPE_ENHANCED_REMOTE
Definition saimirror.h:48
@ SAI_MIRROR_SESSION_TYPE_LOCAL
Definition saimirror.h:42
@ SAI_MIRROR_SESSION_TYPE_SFLOW
Definition saimirror.h:51
@ SAI_MIRROR_SESSION_TYPE_REMOTE
Definition saimirror.h:45
This module defines SAI portable types.
MIRROR method table retrieved with sai_api_query()
Definition saimirror.h:438