SAI Metadata
Loading...
Searching...
No Matches
SAI - VLAN specific API definitions

Classes

struct  _sai_vlan_api_t
 VLAN methods table retrieved with sai_api_query() More...
 

Macros

#define SAI_VLAN_COUNTER_SET_DEFAULT   0
 

Typedefs

typedef enum _sai_vlan_tagging_mode_t sai_vlan_tagging_mode_t
 Attribute data for tagging_mode parameter.
 
typedef enum _sai_vlan_mcast_lookup_key_type_t sai_vlan_mcast_lookup_key_type_t
 Attribute data for multicast_lookup_key_type parameter.
 
typedef enum _sai_vlan_flood_control_type_t sai_vlan_flood_control_type_t
 Attribute data for unknown unicast, unknown multicast and broadcast flood controls.
 
typedef enum _sai_vlan_attr_t sai_vlan_attr_t
 Attribute Id in sai_set_vlan_attribute() and sai_get_vlan_attribute() calls.
 
typedef enum _sai_vlan_member_attr_t sai_vlan_member_attr_t
 List of VLAN Member Attributes.
 
typedef enum _sai_vlan_stat_t sai_vlan_stat_t
 VLAN counter IDs in sai_get_vlan_stats() call.
 
typedef sai_status_t(* sai_create_vlan_fn) (_Out_ sai_object_id_t *vlan_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create a VLAN.
 
typedef sai_status_t(* sai_remove_vlan_fn) (_In_ sai_object_id_t vlan_id)
 Remove VLAN.
 
typedef sai_status_t(* sai_set_vlan_attribute_fn) (_In_ sai_object_id_t vlan_id, _In_ const sai_attribute_t *attr)
 Set VLAN Attribute.
 
typedef sai_status_t(* sai_get_vlan_attribute_fn) (_In_ sai_object_id_t vlan_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get VLAN Attribute.
 
typedef sai_status_t(* sai_create_vlan_member_fn) (_Out_ sai_object_id_t *vlan_member_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create VLAN Member.
 
typedef sai_status_t(* sai_remove_vlan_member_fn) (_In_ sai_object_id_t vlan_member_id)
 Remove VLAN Member.
 
typedef sai_status_t(* sai_set_vlan_member_attribute_fn) (_In_ sai_object_id_t vlan_member_id, _In_ const sai_attribute_t *attr)
 Set VLAN Member Attribute.
 
typedef sai_status_t(* sai_get_vlan_member_attribute_fn) (_In_ sai_object_id_t vlan_member_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get VLAN Member Attribute.
 
typedef sai_status_t(* sai_get_vlan_stats_fn) (_In_ sai_object_id_t vlan_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters)
 Get vlan statistics counters. Deprecated for backward compatibility.
 
typedef sai_status_t(* sai_get_vlan_stats_ext_fn) (_In_ sai_object_id_t vlan_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 vlan statistics counters extended.
 
typedef sai_status_t(* sai_clear_vlan_stats_fn) (_In_ sai_object_id_t vlan_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids)
 Clear vlan statistics counters.
 
typedef struct _sai_vlan_api_t sai_vlan_api_t
 VLAN methods table retrieved with sai_api_query()
 

Enumerations

enum  _sai_vlan_tagging_mode_t { SAI_VLAN_TAGGING_MODE_UNTAGGED , SAI_VLAN_TAGGING_MODE_TAGGED , SAI_VLAN_TAGGING_MODE_PRIORITY_TAGGED }
 Attribute data for tagging_mode parameter. More...
 
enum  _sai_vlan_mcast_lookup_key_type_t { SAI_VLAN_MCAST_LOOKUP_KEY_TYPE_MAC_DA , SAI_VLAN_MCAST_LOOKUP_KEY_TYPE_XG , SAI_VLAN_MCAST_LOOKUP_KEY_TYPE_SG , SAI_VLAN_MCAST_LOOKUP_KEY_TYPE_XG_AND_SG }
 Attribute data for multicast_lookup_key_type parameter. More...
 
enum  _sai_vlan_flood_control_type_t { SAI_VLAN_FLOOD_CONTROL_TYPE_ALL , SAI_VLAN_FLOOD_CONTROL_TYPE_NONE , SAI_VLAN_FLOOD_CONTROL_TYPE_L2MC_GROUP , SAI_VLAN_FLOOD_CONTROL_TYPE_COMBINED }
 Attribute data for unknown unicast, unknown multicast and broadcast flood controls. More...
 
enum  _sai_vlan_attr_t {
  SAI_VLAN_ATTR_START , SAI_VLAN_ATTR_VLAN_ID = SAI_VLAN_ATTR_START , SAI_VLAN_ATTR_MEMBER_LIST , SAI_VLAN_ATTR_MAX_LEARNED_ADDRESSES ,
  SAI_VLAN_ATTR_STP_INSTANCE , SAI_VLAN_ATTR_LEARN_DISABLE , SAI_VLAN_ATTR_IPV4_MCAST_LOOKUP_KEY_TYPE , SAI_VLAN_ATTR_IPV6_MCAST_LOOKUP_KEY_TYPE ,
  SAI_VLAN_ATTR_UNKNOWN_NON_IP_MCAST_OUTPUT_GROUP_ID , SAI_VLAN_ATTR_UNKNOWN_IPV4_MCAST_OUTPUT_GROUP_ID , SAI_VLAN_ATTR_UNKNOWN_IPV6_MCAST_OUTPUT_GROUP_ID , SAI_VLAN_ATTR_UNKNOWN_LINKLOCAL_MCAST_OUTPUT_GROUP_ID ,
  SAI_VLAN_ATTR_INGRESS_ACL , SAI_VLAN_ATTR_EGRESS_ACL , SAI_VLAN_ATTR_META_DATA , SAI_VLAN_ATTR_UNKNOWN_UNICAST_FLOOD_CONTROL_TYPE ,
  SAI_VLAN_ATTR_UNKNOWN_UNICAST_FLOOD_GROUP , SAI_VLAN_ATTR_UNKNOWN_MULTICAST_FLOOD_CONTROL_TYPE , SAI_VLAN_ATTR_UNKNOWN_MULTICAST_FLOOD_GROUP , SAI_VLAN_ATTR_BROADCAST_FLOOD_CONTROL_TYPE ,
  SAI_VLAN_ATTR_BROADCAST_FLOOD_GROUP , SAI_VLAN_ATTR_CUSTOM_IGMP_SNOOPING_ENABLE , SAI_VLAN_ATTR_TAM_OBJECT , SAI_VLAN_ATTR_END ,
  SAI_VLAN_ATTR_CUSTOM_RANGE_START = 0x10000000 , SAI_VLAN_ATTR_CUSTOM_RANGE_END
}
 Attribute Id in sai_set_vlan_attribute() and sai_get_vlan_attribute() calls. More...
 
enum  _sai_vlan_member_attr_t {
  SAI_VLAN_MEMBER_ATTR_START , SAI_VLAN_MEMBER_ATTR_VLAN_ID = SAI_VLAN_MEMBER_ATTR_START , SAI_VLAN_MEMBER_ATTR_BRIDGE_PORT_ID , SAI_VLAN_MEMBER_ATTR_VLAN_TAGGING_MODE ,
  SAI_VLAN_MEMBER_ATTR_END , SAI_VLAN_MEMBER_ATTR_CUSTOM_RANGE_START = 0x10000000 , SAI_VLAN_MEMBER_ATTR_CUSTOM_RANGE_END
}
 List of VLAN Member Attributes. More...
 
enum  _sai_vlan_stat_t {
  SAI_VLAN_STAT_IN_OCTETS , SAI_VLAN_STAT_IN_PACKETS , SAI_VLAN_STAT_IN_UCAST_PKTS , SAI_VLAN_STAT_IN_NON_UCAST_PKTS ,
  SAI_VLAN_STAT_IN_DISCARDS , SAI_VLAN_STAT_IN_ERRORS , SAI_VLAN_STAT_IN_UNKNOWN_PROTOS , SAI_VLAN_STAT_OUT_OCTETS ,
  SAI_VLAN_STAT_OUT_PACKETS , SAI_VLAN_STAT_OUT_UCAST_PKTS , SAI_VLAN_STAT_OUT_NON_UCAST_PKTS , SAI_VLAN_STAT_OUT_DISCARDS ,
  SAI_VLAN_STAT_OUT_ERRORS , SAI_VLAN_STAT_OUT_QLEN
}
 VLAN counter IDs in sai_get_vlan_stats() call. More...
 

Detailed Description

Macro Definition Documentation

◆ SAI_VLAN_COUNTER_SET_DEFAULT

#define SAI_VLAN_COUNTER_SET_DEFAULT   0

Definition at line 39 of file saivlan.h.

Typedef Documentation

◆ sai_clear_vlan_stats_fn

typedef sai_status_t(* sai_clear_vlan_stats_fn) (_In_ sai_object_id_t vlan_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids)

Clear vlan statistics counters.

Parameters
[in]vlan_idVlan id
[in]number_of_countersNumber of counters in the array
[in]counter_idsSpecifies the array of counter ids
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 637 of file saivlan.h.

◆ sai_create_vlan_fn

typedef sai_status_t(* sai_create_vlan_fn) (_Out_ sai_object_id_t *vlan_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create a VLAN.

Parameters
[out]vlan_idVLAN ID
[in]switch_idSwitch id
[in]attr_countNumber of attributes
[in]attr_listArray of attributes
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 500 of file saivlan.h.

◆ sai_create_vlan_member_fn

typedef sai_status_t(* sai_create_vlan_member_fn) (_Out_ sai_object_id_t *vlan_member_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create VLAN Member.

Parameters
[out]vlan_member_idVLAN member ID
[in]switch_idSwitch id
[in]attr_countNumber of attributes
[in]attr_listArray of attributes
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 552 of file saivlan.h.

◆ sai_get_vlan_attribute_fn

typedef sai_status_t(* sai_get_vlan_attribute_fn) (_In_ sai_object_id_t vlan_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get VLAN Attribute.

Parameters
[in]vlan_idVLAN ID
[in]attr_countNumber of attributes
[in,out]attr_listList of attribute structures containing ID and value
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 537 of file saivlan.h.

◆ sai_get_vlan_member_attribute_fn

typedef sai_status_t(* sai_get_vlan_member_attribute_fn) (_In_ sai_object_id_t vlan_member_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get VLAN Member Attribute.

Parameters
[in]vlan_member_idVLAN member ID
[in]attr_countNumber of attributes
[in,out]attr_listList of attribute structures containing ID and value
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 589 of file saivlan.h.

◆ sai_get_vlan_stats_ext_fn

typedef sai_status_t(* sai_get_vlan_stats_ext_fn) (_In_ sai_object_id_t vlan_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 vlan statistics counters extended.

Parameters
[in]vlan_idVLAN id
[in]number_of_countersNumber of counters in the array
[in]counter_idsSpecifies the array of counter ids
[in]modeStatistics mode
[out]countersArray of resulting counter values.
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 621 of file saivlan.h.

◆ sai_get_vlan_stats_fn

typedef sai_status_t(* sai_get_vlan_stats_fn) (_In_ sai_object_id_t vlan_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters)

Get vlan statistics counters. Deprecated for backward compatibility.

Parameters
[in]vlan_idVLAN id
[in]number_of_countersNumber of counters in the array
[in]counter_idsSpecifies the array of counter ids
[out]countersArray of resulting counter values.
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 604 of file saivlan.h.

◆ sai_remove_vlan_fn

typedef sai_status_t(* sai_remove_vlan_fn) (_In_ sai_object_id_t vlan_id)

Remove VLAN.

Parameters
[in]vlan_idVLAN member ID
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 513 of file saivlan.h.

◆ sai_remove_vlan_member_fn

typedef sai_status_t(* sai_remove_vlan_member_fn) (_In_ sai_object_id_t vlan_member_id)

Remove VLAN Member.

Parameters
[in]vlan_member_idVLAN member ID
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 565 of file saivlan.h.

◆ sai_set_vlan_attribute_fn

typedef sai_status_t(* sai_set_vlan_attribute_fn) (_In_ sai_object_id_t vlan_id, _In_ const sai_attribute_t *attr)

Set VLAN Attribute.

Parameters
[in]vlan_idVLAN ID
[in]attrAttribute structure containing ID and value
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 524 of file saivlan.h.

◆ sai_set_vlan_member_attribute_fn

typedef sai_status_t(* sai_set_vlan_member_attribute_fn) (_In_ sai_object_id_t vlan_member_id, _In_ const sai_attribute_t *attr)

Set VLAN Member Attribute.

Parameters
[in]vlan_member_idVLAN member ID
[in]attrAttribute structure containing ID and value
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 576 of file saivlan.h.

Enumeration Type Documentation

◆ _sai_vlan_attr_t

Attribute Id in sai_set_vlan_attribute() and sai_get_vlan_attribute() calls.

Enumerator
SAI_VLAN_ATTR_START 

Start of attributes.

SAI_VLAN_ATTR_VLAN_ID 

Vlan Id.

Value Type:
sai_uint16_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY | KEY
IsVlan:
true
SAI_VLAN_ATTR_MEMBER_LIST 

List of vlan members in a VLAN.

Value Type:
sai_object_list_t
Flags:
READ_ONLY
Allowed object types
SAI_OBJECT_TYPE_VLAN_MEMBER
SAI_VLAN_ATTR_MAX_LEARNED_ADDRESSES 

Maximum number of learned MAC addresses.

Zero means learning limit is disabled.

Value Type:
sai_uint32_t
Flags:
CREATE_AND_SET
Default value:
0
SAI_VLAN_ATTR_STP_INSTANCE 

STP Instance that the VLAN is associated to.

Default to default STP instance id

Value Type:
sai_object_id_t
Flags:
CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_STP
Default value:
attrvalue SAI_SWITCH_ATTR_DEFAULT_STP_INST_ID
SAI_VLAN_ATTR_LEARN_DISABLE 

To disable learning on a VLAN.

This should override port learn settings. If this is set to true on a vlan, then the source MAC learning is disabled for this vlan on a member port even if learn is enable on the port (based on port learn attribute).

Value Type:
bool
Flags:
CREATE_AND_SET
Default value:
false
SAI_VLAN_ATTR_IPV4_MCAST_LOOKUP_KEY_TYPE 

To set IPv4 multicast lookup key on a VLAN.

Value Type:
sai_vlan_mcast_lookup_key_type_t
Flags:
CREATE_AND_SET
Default value:
SAI_VLAN_MCAST_LOOKUP_KEY_TYPE_MAC_DA
SAI_VLAN_ATTR_IPV6_MCAST_LOOKUP_KEY_TYPE 

To set IPv6 multicast lookup key on a VLAN.

Value Type:
sai_vlan_mcast_lookup_key_type_t
Flags:
CREATE_AND_SET
Default value:
SAI_VLAN_MCAST_LOOKUP_KEY_TYPE_MAC_DA
SAI_VLAN_ATTR_UNKNOWN_NON_IP_MCAST_OUTPUT_GROUP_ID 

L2MC Group ID that unknown non-IP mcast packets forwarded to.

Indicating the output ports/LAGs for unknown non-IP multicast packets. This attribute only takes effect when one of the following conditions is met: (1) non-IP multicast packet (2) IPv4 multicast packet && not linklocal && IPv4 mcast snooping disabled for vlan (3) IPv6 multicast packet && not linklocal && IPv6 mcast snooping disabled for vlan In case of SAI_NULL_OBJECT_ID, unknown multicast packets will be discarded. If the group has no member, unknown multicast packets will be discarded.

Value Type:
sai_object_id_t
Flags:
CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_L2MC_GROUP
Allows NULL object ID
true
Default value:
SAI_NULL_OBJECT_ID
SAI_VLAN_ATTR_UNKNOWN_IPV4_MCAST_OUTPUT_GROUP_ID 

L2MC Group ID that unknown IPv4 mcast packets forwarded to.

Indicating the output ports/LAGs for unknown IPv4 multicast packets. This attribute only takes effect when the following condition is met: (1) IPv4 multicast packet && not linklocal && IPv4 mcast snooping enabled for vlan In case of SAI_NULL_OBJECT_ID, unknown multicast packets will be discarded. If the group has no member, unknown multicast packets will be discarded.

Value Type:
sai_object_id_t
Flags:
CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_L2MC_GROUP
Allows NULL object ID
true
Default value:
SAI_NULL_OBJECT_ID
SAI_VLAN_ATTR_UNKNOWN_IPV6_MCAST_OUTPUT_GROUP_ID 

L2MC Group ID that unknown IPv6 mcast packets forwarded to.

Indicating the output ports/LAGs for unknown IPv6 multicast packets. This attribute only takes effect when the following condition is met: (1) IPv6 multicast packet && not linklocal && IPv6 mcast snooping enabled for vlan In case of SAI_NULL_OBJECT_ID, unknown multicast packets will be discarded. If the group has no member, unknown multicast packets will be discarded.

Value Type:
sai_object_id_t
Flags:
CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_L2MC_GROUP
Allows NULL object ID
true
Default value:
SAI_NULL_OBJECT_ID
SAI_VLAN_ATTR_UNKNOWN_LINKLOCAL_MCAST_OUTPUT_GROUP_ID 

L2MC Group ID that unknown linklocal mcast packets forwarded to.

Indicating the output ports/LAGs for unknown linklocal multicast packets. This attribute only takes effect when the following condition is met: (1) IPv4 multicast packet && linklocal address && IPv4 mcast snooping enabled for vlan (2) IPv6 multicast packet && linklocal address && IPv6 mcast snooping enabled for vlan In case of SAI_NULL_OBJECT_ID, unknown multicast packets will be discarded. If the group has no member, unknown multicast packets will be discarded.

Value Type:
sai_object_id_t
Flags:
CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_L2MC_GROUP
Allows NULL object ID
true
Default value:
SAI_NULL_OBJECT_ID
SAI_VLAN_ATTR_INGRESS_ACL 

VLAN bind point for ingress ACL object.

Bind (or unbind) an ingress ACL table or ACL group on a VLAN. Enable/Update ingress ACL table or ACL group filtering by assigning the list of valid object id. Disable ingress filtering by assigning SAI_NULL_OBJECT_ID in the attribute value.

Value Type:
sai_object_id_t
Flags:
CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_ACL_TABLE, SAI_OBJECT_TYPE_ACL_TABLE_GROUP
Allows NULL object ID
true
Default value:
SAI_NULL_OBJECT_ID
SAI_VLAN_ATTR_EGRESS_ACL 

VLAN bind point for egress ACL object.

Bind (or unbind) an egress ACL table or ACL group on a VLAN. Enable/Update egress ACL table or ACL group filtering by assigning the list of valid object id. Disable egress filtering by assigning SAI_NULL_OBJECT_ID in the attribute value.

Value Type:
sai_object_id_t
Flags:
CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_ACL_TABLE, SAI_OBJECT_TYPE_ACL_TABLE_GROUP
Allows NULL object ID
true
Default value:
SAI_NULL_OBJECT_ID
SAI_VLAN_ATTR_META_DATA 

User based Meta Data.

Value Range SAI_SWITCH_ATTR_VLAN_USER_META_DATA_RANGE

Value Type:
sai_uint32_t
Flags:
CREATE_AND_SET
Default value:
0
SAI_VLAN_ATTR_UNKNOWN_UNICAST_FLOOD_CONTROL_TYPE 

Unknown unicast flood control type.

Value Type:
sai_vlan_flood_control_type_t
Flags:
CREATE_AND_SET
Default value:
SAI_VLAN_FLOOD_CONTROL_TYPE_ALL
SAI_VLAN_ATTR_UNKNOWN_UNICAST_FLOOD_GROUP 

Unknown unicast flood group.

Provides control on the set of vlan members on which unknown unicast packets need to be flooded. This attribute would be used when the SAI_VLAN_ATTR_UNKNOWN_UNICAST_FLOOD_CONTROL_TYPE is set as SAI_VLAN_FLOOD_CONTROL_TYPE_L2MC_GROUP or SAI_VLAN_FLOOD_CONTROL_TYPE_COMBINED. When this attribute's value is SAI_NULL_OBJECT_ID, then flooding would be disabled.

Value Type:
sai_object_id_t
Flags:
CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_L2MC_GROUP
Allows NULL object ID
true
Default value:
SAI_NULL_OBJECT_ID
Valid only when:
SAI_VLAN_ATTR_UNKNOWN_UNICAST_FLOOD_CONTROL_TYPE == SAI_VLAN_FLOOD_CONTROL_TYPE_L2MC_GROUP or SAI_VLAN_ATTR_UNKNOWN_UNICAST_FLOOD_CONTROL_TYPE == SAI_VLAN_FLOOD_CONTROL_TYPE_COMBINED
SAI_VLAN_ATTR_UNKNOWN_MULTICAST_FLOOD_CONTROL_TYPE 

Unknown unicast flood control type.

Value Type:
sai_vlan_flood_control_type_t
Flags:
CREATE_AND_SET
Default value:
SAI_VLAN_FLOOD_CONTROL_TYPE_ALL
SAI_VLAN_ATTR_UNKNOWN_MULTICAST_FLOOD_GROUP 

Unknown multicast flood group.

Provides control on the set of vlan members on which unknown multicast packets need to be flooded. This attribute would be used when the SAI_VLAN_ATTR_UNKNOWN_MULTICAST_FLOOD_CONTROL_TYPE is set as SAI_VLAN_FLOOD_CONTROL_TYPE_L2MC_GROUP or SAI_VLAN_FLOOD_CONTROL_TYPE_COMBINED. When this attribute's value is SAI_NULL_OBJECT_ID, then flooding would be disabled.

Value Type:
sai_object_id_t
Flags:
CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_L2MC_GROUP
Allows NULL object ID
true
Default value:
SAI_NULL_OBJECT_ID
Valid only when:
SAI_VLAN_ATTR_UNKNOWN_MULTICAST_FLOOD_CONTROL_TYPE == SAI_VLAN_FLOOD_CONTROL_TYPE_L2MC_GROUP or SAI_VLAN_ATTR_UNKNOWN_MULTICAST_FLOOD_CONTROL_TYPE == SAI_VLAN_FLOOD_CONTROL_TYPE_COMBINED
SAI_VLAN_ATTR_BROADCAST_FLOOD_CONTROL_TYPE 

Broadcast flood control type.

Value Type:
sai_vlan_flood_control_type_t
Flags:
CREATE_AND_SET
Default value:
SAI_VLAN_FLOOD_CONTROL_TYPE_ALL
SAI_VLAN_ATTR_BROADCAST_FLOOD_GROUP 

Broadcast flood group.

Provides control on the set of vlan members on which broadcast packets need to be flooded. This attribute would be used when the SAI_VLAN_ATTR_BROADCAST_FLOOD_CONTROL_TYPE is set as SAI_VLAN_FLOOD_CONTROL_TYPE_L2MC_GROUP or SAI_VLAN_FLOOD_CONTROL_TYPE_COMBINED. When this attribute's value is SAI_NULL_OBJECT_ID, then flooding would be disabled.

Value Type:
sai_object_id_t
Flags:
CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_L2MC_GROUP
Allows NULL object ID
true
Default value:
SAI_NULL_OBJECT_ID
Valid only when:
SAI_VLAN_ATTR_BROADCAST_FLOOD_CONTROL_TYPE == SAI_VLAN_FLOOD_CONTROL_TYPE_L2MC_GROUP or SAI_VLAN_ATTR_BROADCAST_FLOOD_CONTROL_TYPE == SAI_VLAN_FLOOD_CONTROL_TYPE_COMBINED
SAI_VLAN_ATTR_CUSTOM_IGMP_SNOOPING_ENABLE 

IGMP Snooping enable or disable control for VLAN.

IGMP Snooping enable control for VLAN. Default is disabled

Value Type:
bool
Flags:
CREATE_AND_SET
Default value:
false
SAI_VLAN_ATTR_TAM_OBJECT 

Vlan bind point for TAM object.

Value Type:
sai_object_list_t
Flags:
CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_TAM
Default value:
empty
SAI_VLAN_ATTR_END 

End of attributes.

SAI_VLAN_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_VLAN_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 104 of file saivlan.h.

◆ _sai_vlan_flood_control_type_t

Attribute data for unknown unicast, unknown multicast and broadcast flood controls.

Enumerator
SAI_VLAN_FLOOD_CONTROL_TYPE_ALL 

Flood on all vlan members.

When setting all to broadcast or unknown multicast flood, it also includes flooding to the router. When setting all to unknown unicast flood, it does not include flooding to the router

SAI_VLAN_FLOOD_CONTROL_TYPE_NONE 

Disable flooding

SAI_VLAN_FLOOD_CONTROL_TYPE_L2MC_GROUP 

Flood on the L2MC group

SAI_VLAN_FLOOD_CONTROL_TYPE_COMBINED 

Flood on all vlan members and L2MC group.

Flood on all vlan members, without the router In addition, flood on the supplied L2MC group

Definition at line 73 of file saivlan.h.

◆ _sai_vlan_mcast_lookup_key_type_t

Attribute data for multicast_lookup_key_type parameter.

Definition at line 57 of file saivlan.h.

◆ _sai_vlan_member_attr_t

List of VLAN Member Attributes.

Enumerator
SAI_VLAN_MEMBER_ATTR_START 

Start of attributes.

SAI_VLAN_MEMBER_ATTR_VLAN_ID 

VLAN ID.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
Allowed object types
SAI_OBJECT_TYPE_VLAN
SAI_VLAN_MEMBER_ATTR_BRIDGE_PORT_ID 

Bridge port ID.

Valid only for .1Q bridge ports.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
Allowed object types
SAI_OBJECT_TYPE_BRIDGE_PORT
SAI_VLAN_MEMBER_ATTR_VLAN_TAGGING_MODE 

VLAN tagging mode.

Value Type:
sai_vlan_tagging_mode_t
Flags:
CREATE_AND_SET
Default value:
SAI_VLAN_TAGGING_MODE_UNTAGGED
SAI_VLAN_MEMBER_ATTR_END 

End of attributes.

SAI_VLAN_MEMBER_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_VLAN_MEMBER_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 419 of file saivlan.h.

◆ _sai_vlan_stat_t

VLAN counter IDs in sai_get_vlan_stats() call.

Definition at line 471 of file saivlan.h.

◆ _sai_vlan_tagging_mode_t

Attribute data for tagging_mode parameter.

Definition at line 44 of file saivlan.h.