SAI Metadata
|
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() | |
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.
[in] | vlan_id | Vlan id |
[in] | number_of_counters | Number of counters in the array |
[in] | counter_ids | Specifies the array of counter ids |
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.
[out] | vlan_id | VLAN ID |
[in] | switch_id | Switch id |
[in] | attr_count | Number of attributes |
[in] | attr_list | Array of attributes |
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.
[out] | vlan_member_id | VLAN member ID |
[in] | switch_id | Switch id |
[in] | attr_count | Number of attributes |
[in] | attr_list | Array of attributes |
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.
[in] | vlan_id | VLAN ID |
[in] | attr_count | Number of attributes |
[in,out] | attr_list | List of attribute structures containing ID and value |
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.
[in] | vlan_member_id | VLAN member ID |
[in] | attr_count | Number of attributes |
[in,out] | attr_list | List of attribute structures containing ID and value |
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.
[in] | vlan_id | VLAN id |
[in] | number_of_counters | Number of counters in the array |
[in] | counter_ids | Specifies the array of counter ids |
[in] | mode | Statistics mode |
[out] | counters | Array of resulting counter values. |
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.
[in] | vlan_id | VLAN id |
[in] | number_of_counters | Number of counters in the array |
[in] | counter_ids | Specifies the array of counter ids |
[out] | counters | Array of resulting counter values. |
typedef sai_status_t(* sai_remove_vlan_fn) (_In_ sai_object_id_t vlan_id) |
Remove VLAN.
[in] | vlan_id | VLAN member ID |
typedef sai_status_t(* sai_remove_vlan_member_fn) (_In_ sai_object_id_t vlan_member_id) |
Remove VLAN Member.
[in] | vlan_member_id | VLAN member ID |
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.
[in] | vlan_id | VLAN ID |
[in] | attr | Attribute structure containing ID and value |
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.
[in] | vlan_member_id | VLAN member ID |
[in] | attr | Attribute structure containing ID and value |
enum _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.
|
SAI_VLAN_ATTR_MEMBER_LIST | List of vlan members in a VLAN.
|
SAI_VLAN_ATTR_MAX_LEARNED_ADDRESSES | Maximum number of learned MAC addresses. Zero means learning limit is disabled.
|
SAI_VLAN_ATTR_STP_INSTANCE | STP Instance that the VLAN is associated to. Default to default STP instance 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).
|
SAI_VLAN_ATTR_IPV4_MCAST_LOOKUP_KEY_TYPE | To set IPv4 multicast lookup key on a VLAN.
|
SAI_VLAN_ATTR_IPV6_MCAST_LOOKUP_KEY_TYPE | To set IPv6 multicast lookup key on a VLAN.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
SAI_VLAN_ATTR_META_DATA | User based Meta Data. Value Range SAI_SWITCH_ATTR_VLAN_USER_META_DATA_RANGE
|
SAI_VLAN_ATTR_UNKNOWN_UNICAST_FLOOD_CONTROL_TYPE | Unknown unicast flood control type.
|
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.
|
SAI_VLAN_ATTR_UNKNOWN_MULTICAST_FLOOD_CONTROL_TYPE | Unknown unicast flood control type.
|
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.
|
SAI_VLAN_ATTR_BROADCAST_FLOOD_CONTROL_TYPE | Broadcast flood control type.
|
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.
|
SAI_VLAN_ATTR_CUSTOM_IGMP_SNOOPING_ENABLE | IGMP Snooping enable or disable control for VLAN. IGMP Snooping enable control for VLAN. Default is disabled
|
SAI_VLAN_ATTR_TAM_OBJECT | Vlan bind point for TAM object.
|
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 |
Attribute data for unknown unicast, unknown multicast and broadcast flood controls.
List of VLAN Member Attributes.
enum _sai_vlan_stat_t |