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

Classes

struct  _sai_bridge_api_t
 Bridge methods table retrieved with sai_api_query() More...
 

Typedefs

typedef enum _sai_bridge_port_fdb_learning_mode_t sai_bridge_port_fdb_learning_mode_t
 Attribute data for SAI_BRIDGE_PORT_ATTR_FDB_LEARNING_MODE.
 
typedef enum _sai_bridge_port_type_t sai_bridge_port_type_t
 Attribute data for SAI_BRIDGE_PORT_ATTR_TYPE.
 
typedef enum _sai_bridge_port_tagging_mode_t sai_bridge_port_tagging_mode_t
 Attribute data for SAI_BRIDGE_PORT_ATTR_TAGGING_MODE.
 
typedef enum _sai_bridge_port_attr_t sai_bridge_port_attr_t
 SAI attributes for Bridge Port.
 
typedef enum _sai_bridge_port_stat_t sai_bridge_port_stat_t
 Bridge port counter IDs in sai_get_bridge_port_stats() call.
 
typedef sai_status_t(* sai_create_bridge_port_fn) (_Out_ sai_object_id_t *bridge_port_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create bridge port.
 
typedef sai_status_t(* sai_remove_bridge_port_fn) (_In_ sai_object_id_t bridge_port_id)
 Remove bridge port.
 
typedef sai_status_t(* sai_set_bridge_port_attribute_fn) (_In_ sai_object_id_t bridge_port_id, _In_ const sai_attribute_t *attr)
 Set attribute for bridge port.
 
typedef sai_status_t(* sai_get_bridge_port_attribute_fn) (_In_ sai_object_id_t bridge_port_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get attributes of bridge port.
 
typedef sai_status_t(* sai_get_bridge_port_stats_fn) (_In_ sai_object_id_t bridge_port_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters)
 Get bridge port statistics counters. Deprecated for backward compatibility.
 
typedef sai_status_t(* sai_get_bridge_port_stats_ext_fn) (_In_ sai_object_id_t bridge_port_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 bridge port statistics counters extended.
 
typedef sai_status_t(* sai_clear_bridge_port_stats_fn) (_In_ sai_object_id_t bridge_port_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids)
 Clear bridge port statistics counters.
 
typedef enum _sai_bridge_type_t sai_bridge_type_t
 Attribute data for SAI_BRIDGE_ATTR_TYPE.
 
typedef enum _sai_bridge_flood_control_type_t sai_bridge_flood_control_type_t
 Attribute data for unknown unicast, unknown multicast and broadcast flood controls.
 
typedef enum _sai_bridge_attr_t sai_bridge_attr_t
 SAI attributes for Bridge.
 
typedef enum _sai_bridge_stat_t sai_bridge_stat_t
 Bridge counter IDs in sai_get_bridge_stats() call.
 
typedef sai_status_t(* sai_create_bridge_fn) (_Out_ sai_object_id_t *bridge_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create bridge.
 
typedef sai_status_t(* sai_remove_bridge_fn) (_In_ sai_object_id_t bridge_id)
 Remove bridge.
 
typedef sai_status_t(* sai_set_bridge_attribute_fn) (_In_ sai_object_id_t bridge_id, _In_ const sai_attribute_t *attr)
 Set attribute for bridge.
 
typedef sai_status_t(* sai_get_bridge_attribute_fn) (_In_ sai_object_id_t bridge_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get attributes of bridge.
 
typedef sai_status_t(* sai_get_bridge_stats_fn) (_In_ sai_object_id_t bridge_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters)
 Get bridge statistics counters. Deprecated for backward compatibility.
 
typedef sai_status_t(* sai_get_bridge_stats_ext_fn) (_In_ sai_object_id_t bridge_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 bridge statistics counters extended.
 
typedef sai_status_t(* sai_clear_bridge_stats_fn) (_In_ sai_object_id_t bridge_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids)
 Clear bridge statistics counters.
 
typedef struct _sai_bridge_api_t sai_bridge_api_t
 Bridge methods table retrieved with sai_api_query()
 

Enumerations

enum  _sai_bridge_port_fdb_learning_mode_t {
  SAI_BRIDGE_PORT_FDB_LEARNING_MODE_DROP , SAI_BRIDGE_PORT_FDB_LEARNING_MODE_DISABLE , SAI_BRIDGE_PORT_FDB_LEARNING_MODE_HW , SAI_BRIDGE_PORT_FDB_LEARNING_MODE_CPU_TRAP ,
  SAI_BRIDGE_PORT_FDB_LEARNING_MODE_CPU_LOG , SAI_BRIDGE_PORT_FDB_LEARNING_MODE_FDB_NOTIFICATION
}
 Attribute data for SAI_BRIDGE_PORT_ATTR_FDB_LEARNING_MODE. More...
 
enum  _sai_bridge_port_type_t {
  SAI_BRIDGE_PORT_TYPE_PORT , SAI_BRIDGE_PORT_TYPE_SUB_PORT , SAI_BRIDGE_PORT_TYPE_1Q_ROUTER , SAI_BRIDGE_PORT_TYPE_1D_ROUTER ,
  SAI_BRIDGE_PORT_TYPE_TUNNEL
}
 Attribute data for SAI_BRIDGE_PORT_ATTR_TYPE. More...
 
enum  _sai_bridge_port_tagging_mode_t { SAI_BRIDGE_PORT_TAGGING_MODE_UNTAGGED , SAI_BRIDGE_PORT_TAGGING_MODE_TAGGED }
 Attribute data for SAI_BRIDGE_PORT_ATTR_TAGGING_MODE. More...
 
enum  _sai_bridge_port_attr_t {
  SAI_BRIDGE_PORT_ATTR_START , SAI_BRIDGE_PORT_ATTR_TYPE = SAI_BRIDGE_PORT_ATTR_START , SAI_BRIDGE_PORT_ATTR_PORT_ID , SAI_BRIDGE_PORT_ATTR_TAGGING_MODE ,
  SAI_BRIDGE_PORT_ATTR_VLAN_ID , SAI_BRIDGE_PORT_ATTR_RIF_ID , SAI_BRIDGE_PORT_ATTR_TUNNEL_ID , SAI_BRIDGE_PORT_ATTR_BRIDGE_ID ,
  SAI_BRIDGE_PORT_ATTR_FDB_LEARNING_MODE , SAI_BRIDGE_PORT_ATTR_MAX_LEARNED_ADDRESSES , SAI_BRIDGE_PORT_ATTR_FDB_LEARNING_LIMIT_VIOLATION_PACKET_ACTION , SAI_BRIDGE_PORT_ATTR_ADMIN_STATE ,
  SAI_BRIDGE_PORT_ATTR_INGRESS_FILTERING , SAI_BRIDGE_PORT_ATTR_EGRESS_FILTERING , SAI_BRIDGE_PORT_ATTR_ISOLATION_GROUP , SAI_BRIDGE_PORT_ATTR_END ,
  SAI_BRIDGE_PORT_ATTR_CUSTOM_RANGE_START = 0x10000000 , SAI_BRIDGE_PORT_ATTR_CUSTOM_RANGE_END
}
 SAI attributes for Bridge Port. More...
 
enum  _sai_bridge_port_stat_t { SAI_BRIDGE_PORT_STAT_IN_OCTETS , SAI_BRIDGE_PORT_STAT_IN_PACKETS , SAI_BRIDGE_PORT_STAT_OUT_OCTETS , SAI_BRIDGE_PORT_STAT_OUT_PACKETS }
 Bridge port counter IDs in sai_get_bridge_port_stats() call. More...
 
enum  _sai_bridge_type_t { SAI_BRIDGE_TYPE_1Q , SAI_BRIDGE_TYPE_1D }
 Attribute data for SAI_BRIDGE_ATTR_TYPE. More...
 
enum  _sai_bridge_flood_control_type_t { SAI_BRIDGE_FLOOD_CONTROL_TYPE_SUB_PORTS , SAI_BRIDGE_FLOOD_CONTROL_TYPE_NONE , SAI_BRIDGE_FLOOD_CONTROL_TYPE_L2MC_GROUP , SAI_BRIDGE_FLOOD_CONTROL_TYPE_COMBINED }
 Attribute data for unknown unicast, unknown multicast and broadcast flood controls. More...
 
enum  _sai_bridge_attr_t {
  SAI_BRIDGE_ATTR_START , SAI_BRIDGE_ATTR_TYPE = SAI_BRIDGE_ATTR_START , SAI_BRIDGE_ATTR_PORT_LIST , SAI_BRIDGE_ATTR_MAX_LEARNED_ADDRESSES ,
  SAI_BRIDGE_ATTR_LEARN_DISABLE , SAI_BRIDGE_ATTR_UNKNOWN_UNICAST_FLOOD_CONTROL_TYPE , SAI_BRIDGE_ATTR_UNKNOWN_UNICAST_FLOOD_GROUP , SAI_BRIDGE_ATTR_UNKNOWN_MULTICAST_FLOOD_CONTROL_TYPE ,
  SAI_BRIDGE_ATTR_UNKNOWN_MULTICAST_FLOOD_GROUP , SAI_BRIDGE_ATTR_BROADCAST_FLOOD_CONTROL_TYPE , SAI_BRIDGE_ATTR_BROADCAST_FLOOD_GROUP , SAI_BRIDGE_ATTR_END ,
  SAI_BRIDGE_ATTR_CUSTOM_RANGE_START = 0x10000000 , SAI_BRIDGE_ATTR_CUSTOM_RANGE_END
}
 SAI attributes for Bridge. More...
 
enum  _sai_bridge_stat_t { SAI_BRIDGE_STAT_IN_OCTETS , SAI_BRIDGE_STAT_IN_PACKETS , SAI_BRIDGE_STAT_OUT_OCTETS , SAI_BRIDGE_STAT_OUT_PACKETS }
 Bridge counter IDs in sai_get_bridge_stats() call. More...
 

Detailed Description

Typedef Documentation

◆ sai_clear_bridge_port_stats_fn

typedef sai_status_t(* sai_clear_bridge_port_stats_fn) (_In_ sai_object_id_t bridge_port_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids)

Clear bridge port statistics counters.

Parameters
[in]bridge_port_idBridge port 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 389 of file saibridge.h.

◆ sai_clear_bridge_stats_fn

typedef sai_status_t(* sai_clear_bridge_stats_fn) (_In_ sai_object_id_t bridge_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids)

Clear bridge statistics counters.

Parameters
[in]bridge_idBridge 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 693 of file saibridge.h.

◆ sai_create_bridge_fn

typedef sai_status_t(* sai_create_bridge_fn) (_Out_ sai_object_id_t *bridge_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create bridge.

Parameters
[out]bridge_idBridge ID
[in]switch_idSwitch object 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 608 of file saibridge.h.

◆ sai_create_bridge_port_fn

typedef sai_status_t(* sai_create_bridge_port_fn) (_Out_ sai_object_id_t *bridge_port_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create bridge port.

Parameters
[out]bridge_port_idBridge port ID
[in]switch_idSwitch object 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 304 of file saibridge.h.

◆ sai_get_bridge_attribute_fn

typedef sai_status_t(* sai_get_bridge_attribute_fn) (_In_ sai_object_id_t bridge_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get attributes of bridge.

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

Definition at line 645 of file saibridge.h.

◆ sai_get_bridge_port_attribute_fn

typedef sai_status_t(* sai_get_bridge_port_attribute_fn) (_In_ sai_object_id_t bridge_port_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get attributes of bridge port.

Parameters
[in]bridge_port_idBridge port ID
[in]attr_countNumber of attributes
[in,out]attr_listArray of attributes
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 341 of file saibridge.h.

◆ sai_get_bridge_port_stats_ext_fn

typedef sai_status_t(* sai_get_bridge_port_stats_ext_fn) (_In_ sai_object_id_t bridge_port_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 bridge port statistics counters extended.

Parameters
[in]bridge_port_idBridge port 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 373 of file saibridge.h.

◆ sai_get_bridge_port_stats_fn

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

Get bridge port statistics counters. Deprecated for backward compatibility.

Parameters
[in]bridge_port_idBridge port 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 356 of file saibridge.h.

◆ sai_get_bridge_stats_ext_fn

typedef sai_status_t(* sai_get_bridge_stats_ext_fn) (_In_ sai_object_id_t bridge_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 bridge statistics counters extended.

Parameters
[in]bridge_idBridge 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 677 of file saibridge.h.

◆ sai_get_bridge_stats_fn

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

Get bridge statistics counters. Deprecated for backward compatibility.

Parameters
[in]bridge_idBridge 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 660 of file saibridge.h.

◆ sai_remove_bridge_fn

typedef sai_status_t(* sai_remove_bridge_fn) (_In_ sai_object_id_t bridge_id)

Remove bridge.

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

Definition at line 621 of file saibridge.h.

◆ sai_remove_bridge_port_fn

typedef sai_status_t(* sai_remove_bridge_port_fn) (_In_ sai_object_id_t bridge_port_id)

Remove bridge port.

Parameters
[in]bridge_port_idBridge port ID
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 317 of file saibridge.h.

◆ sai_set_bridge_attribute_fn

typedef sai_status_t(* sai_set_bridge_attribute_fn) (_In_ sai_object_id_t bridge_id, _In_ const sai_attribute_t *attr)

Set attribute for bridge.

Parameters
[in]bridge_idBridge ID
[in]attrAttribute to set
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 632 of file saibridge.h.

◆ sai_set_bridge_port_attribute_fn

typedef sai_status_t(* sai_set_bridge_port_attribute_fn) (_In_ sai_object_id_t bridge_port_id, _In_ const sai_attribute_t *attr)

Set attribute for bridge port.

Parameters
[in]bridge_port_idBridge port ID
[in]attrAttribute to set
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 328 of file saibridge.h.

Enumeration Type Documentation

◆ _sai_bridge_attr_t

SAI attributes for Bridge.

Enumerator
SAI_BRIDGE_ATTR_START 

Start of attributes.

SAI_BRIDGE_ATTR_TYPE 

Bridge type.

Value Type:
sai_bridge_type_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
SAI_BRIDGE_ATTR_PORT_LIST 

List of bridge ports associated to this bridge.

Value Type:
sai_object_list_t
Flags:
READ_ONLY
Allowed object types
SAI_OBJECT_TYPE_BRIDGE_PORT
SAI_BRIDGE_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_BRIDGE_ATTR_LEARN_DISABLE 

To disable learning on a bridge.

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

Unknown unicast flood control type.

Value Type:
sai_bridge_flood_control_type_t
Flags:
CREATE_AND_SET
Default value:
SAI_BRIDGE_FLOOD_CONTROL_TYPE_SUB_PORTS
SAI_BRIDGE_ATTR_UNKNOWN_UNICAST_FLOOD_GROUP 

Unknown unicast flood group.

Provides control on the set of bridge ports on which unknown unicast packets need to be flooded. This attribute would be used only when the SAI_BRIDGE_ATTR_UNKNOWN_UNICAST_FLOOD_CONTROL_TYPE is set as SAI_BRIDGE_FLOOD_CONTROL_TYPE_L2MC_GROUP. 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_BRIDGE_ATTR_TYPE == SAI_BRIDGE_TYPE_1D and (SAI_BRIDGE_ATTR_UNKNOWN_UNICAST_FLOOD_CONTROL_TYPE == SAI_BRIDGE_FLOOD_CONTROL_TYPE_L2MC_GROUP or SAI_BRIDGE_ATTR_UNKNOWN_UNICAST_FLOOD_CONTROL_TYPE == SAI_BRIDGE_FLOOD_CONTROL_TYPE_COMBINED)
SAI_BRIDGE_ATTR_UNKNOWN_MULTICAST_FLOOD_CONTROL_TYPE 

Unknown unicast flood control type.

Value Type:
sai_bridge_flood_control_type_t
Flags:
CREATE_AND_SET
Default value:
SAI_BRIDGE_FLOOD_CONTROL_TYPE_SUB_PORTS
SAI_BRIDGE_ATTR_UNKNOWN_MULTICAST_FLOOD_GROUP 

Unknown multicast flood group.

Provides control on the set of bridge ports on which unknown multicast packets need to be flooded. This attribute would be used only when the SAI_BRIDGE_ATTR_UNKNOWN_MULTICAST_FLOOD_CONTROL_TYPE is set as SAI_BRIDGE_FLOOD_CONTROL_TYPE_L2MC_GROUP.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_BRIDGE_ATTR_TYPE == SAI_BRIDGE_TYPE_1D and (SAI_BRIDGE_ATTR_UNKNOWN_MULTICAST_FLOOD_CONTROL_TYPE == SAI_BRIDGE_FLOOD_CONTROL_TYPE_L2MC_GROUP or SAI_BRIDGE_ATTR_UNKNOWN_MULTICAST_FLOOD_CONTROL_TYPE == SAI_BRIDGE_FLOOD_CONTROL_TYPE_COMBINED)
SAI_BRIDGE_ATTR_BROADCAST_FLOOD_CONTROL_TYPE 

Broadcast flood control type.

Value Type:
sai_bridge_flood_control_type_t
Flags:
CREATE_AND_SET
Default value:
SAI_BRIDGE_FLOOD_CONTROL_TYPE_SUB_PORTS
SAI_BRIDGE_ATTR_BROADCAST_FLOOD_GROUP 

Broadcast flood group.

Provides control on the set of bridge ports on which broadcast packets need to be flooded. This attribute would be used only when the SAI_BRIDGE_ATTR_BROADCAST_FLOOD_CONTROL_TYPE is set as SAI_BRIDGE_FLOOD_CONTROL_TYPE_L2MC_GROUP.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_BRIDGE_ATTR_TYPE == SAI_BRIDGE_TYPE_1D and (SAI_BRIDGE_ATTR_BROADCAST_FLOOD_CONTROL_TYPE == SAI_BRIDGE_FLOOD_CONTROL_TYPE_L2MC_GROUP or SAI_BRIDGE_ATTR_BROADCAST_FLOOD_CONTROL_TYPE == SAI_BRIDGE_FLOOD_CONTROL_TYPE_COMBINED)
SAI_BRIDGE_ATTR_END 

End of attributes.

SAI_BRIDGE_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_BRIDGE_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 441 of file saibridge.h.

◆ _sai_bridge_flood_control_type_t

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

Enumerator
SAI_BRIDGE_FLOOD_CONTROL_TYPE_SUB_PORTS 

Flood on all sub-ports.

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

SAI_BRIDGE_FLOOD_CONTROL_TYPE_NONE 

Disable flooding

SAI_BRIDGE_FLOOD_CONTROL_TYPE_L2MC_GROUP 

Flood on the L2MC group

SAI_BRIDGE_FLOOD_CONTROL_TYPE_COMBINED 

Flood on all sub-ports and L2MC group.

Flood on all sub-ports, without the router In addition, flood on the supplied L2MC group

Definition at line 411 of file saibridge.h.

◆ _sai_bridge_port_attr_t

SAI attributes for Bridge Port.

Enumerator
SAI_BRIDGE_PORT_ATTR_START 

Start of attributes.

SAI_BRIDGE_PORT_ATTR_TYPE 

Bridge port type.

Value Type:
sai_bridge_port_type_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
SAI_BRIDGE_PORT_ATTR_PORT_ID 

Associated Port or LAG object id.

The CPU port is not a member of any bridge.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
Allowed object types
SAI_OBJECT_TYPE_PORT, SAI_OBJECT_TYPE_LAG, SAI_OBJECT_TYPE_SYSTEM_PORT
Condition:
SAI_BRIDGE_PORT_ATTR_TYPE == SAI_BRIDGE_PORT_TYPE_PORT or SAI_BRIDGE_PORT_ATTR_TYPE == SAI_BRIDGE_PORT_TYPE_SUB_PORT
SAI_BRIDGE_PORT_ATTR_TAGGING_MODE 

Tagging mode of the bridge port.

Specifies the tagging mode to be used during egress.

Value Type:
sai_bridge_port_tagging_mode_t
Flags:
CREATE_AND_SET
Default value:
SAI_BRIDGE_PORT_TAGGING_MODE_TAGGED
Valid only when:
SAI_BRIDGE_PORT_ATTR_TYPE == SAI_BRIDGE_PORT_TYPE_SUB_PORT
SAI_BRIDGE_PORT_ATTR_VLAN_ID 

Associated Vlan.

Value Type:
sai_uint16_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
IsVlan:
true
Condition:
SAI_BRIDGE_PORT_ATTR_TYPE == SAI_BRIDGE_PORT_TYPE_SUB_PORT
SAI_BRIDGE_PORT_ATTR_RIF_ID 

Associated router interface object id.

Please note that for SAI_BRIDGE_PORT_TYPE_1Q_ROUTER, all vlan interfaces are auto bounded for the bridge port.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
Allowed object types
SAI_OBJECT_TYPE_ROUTER_INTERFACE
Condition:
SAI_BRIDGE_PORT_ATTR_TYPE == SAI_BRIDGE_PORT_TYPE_1D_ROUTER
SAI_BRIDGE_PORT_ATTR_TUNNEL_ID 

Associated tunnel id.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
Allowed object types
SAI_OBJECT_TYPE_TUNNEL
Condition:
SAI_BRIDGE_PORT_ATTR_TYPE == SAI_BRIDGE_PORT_TYPE_TUNNEL
SAI_BRIDGE_PORT_ATTR_BRIDGE_ID 

Associated bridge id.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_BRIDGE
Condition:
SAI_BRIDGE_PORT_ATTR_TYPE == SAI_BRIDGE_PORT_TYPE_SUB_PORT or SAI_BRIDGE_PORT_ATTR_TYPE == SAI_BRIDGE_PORT_TYPE_1D_ROUTER or SAI_BRIDGE_PORT_ATTR_TYPE == SAI_BRIDGE_PORT_TYPE_TUNNEL
SAI_BRIDGE_PORT_ATTR_FDB_LEARNING_MODE 

FDB Learning mode.

Value Type:
sai_bridge_port_fdb_learning_mode_t
Flags:
CREATE_AND_SET
Default value:
SAI_BRIDGE_PORT_FDB_LEARNING_MODE_HW
SAI_BRIDGE_PORT_ATTR_MAX_LEARNED_ADDRESSES 

Maximum number of learned MAC addresses.

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

Action for packets with unknown source MAC address when FDB learning limit is reached.

Value Type:
sai_packet_action_t
Flags:
CREATE_AND_SET
Default value:
SAI_PACKET_ACTION_DROP
SAI_BRIDGE_PORT_ATTR_ADMIN_STATE 

Admin Mode.

Before removing a bridge port, need to disable it by setting admin mode to false, then flush the FDB entries, and then remove it.

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

Ingress filtering (drop frames with unknown VLANs)

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

Egress filtering (drop frames with unknown VLANs at egress)

Value Type:
bool
Flags:
CREATE_AND_SET
Default value:
false
Valid only when:
SAI_BRIDGE_PORT_ATTR_TYPE == SAI_BRIDGE_PORT_TYPE_PORT
SAI_BRIDGE_PORT_ATTR_ISOLATION_GROUP 

Isolation group id.

Packets ingressing on the bridge port should not be forwarded to the members present in the isolation group.The isolation group type should SAI_ISOLATION_GROUP_TYPE_BRIDGE_PORT.

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

End of attributes.

SAI_BRIDGE_PORT_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_BRIDGE_PORT_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 106 of file saibridge.h.

◆ _sai_bridge_port_fdb_learning_mode_t

Attribute data for SAI_BRIDGE_PORT_ATTR_FDB_LEARNING_MODE.

Enumerator
SAI_BRIDGE_PORT_FDB_LEARNING_MODE_DROP 

Drop packets with unknown source MAC. Do not learn. Do not forward

SAI_BRIDGE_PORT_FDB_LEARNING_MODE_DISABLE 

Do not learn unknown source MAC. Forward based on destination MAC

SAI_BRIDGE_PORT_FDB_LEARNING_MODE_HW 

Hardware learning. Learn source MAC. Forward based on destination MAC

SAI_BRIDGE_PORT_FDB_LEARNING_MODE_CPU_TRAP 

Trap packets with unknown source MAC to CPU. Do not learn. Do not forward

SAI_BRIDGE_PORT_FDB_LEARNING_MODE_CPU_LOG 

Trap packets with unknown source MAC to CPU. Do not learn. Forward based on destination MAC

SAI_BRIDGE_PORT_FDB_LEARNING_MODE_FDB_NOTIFICATION 

Notify unknown source MAC using FDB callback.

Do not learn in hardware. Do not forward. When a packet from unknown source MAC comes this mode will trigger a new learn notification via FDB callback for the MAC address. This mode will generate only one notification per unknown source MAC to FDB callback.

Definition at line 39 of file saibridge.h.

◆ _sai_bridge_port_stat_t

Bridge port counter IDs in sai_get_bridge_port_stats() call.

Enumerator
SAI_BRIDGE_PORT_STAT_IN_OCTETS 

Ingress byte stat count

SAI_BRIDGE_PORT_STAT_IN_PACKETS 

Ingress packet stat count

SAI_BRIDGE_PORT_STAT_OUT_OCTETS 

Egress byte stat count

SAI_BRIDGE_PORT_STAT_OUT_PACKETS 

Egress packet stat count

Definition at line 278 of file saibridge.h.

◆ _sai_bridge_port_tagging_mode_t

Attribute data for SAI_BRIDGE_PORT_ATTR_TAGGING_MODE.

Enumerator
SAI_BRIDGE_PORT_TAGGING_MODE_UNTAGGED 

Untagged mode

SAI_BRIDGE_PORT_TAGGING_MODE_TAGGED 

Tagged mode

Definition at line 93 of file saibridge.h.

◆ _sai_bridge_port_type_t

Attribute data for SAI_BRIDGE_PORT_ATTR_TYPE.

Enumerator
SAI_BRIDGE_PORT_TYPE_PORT 

Port or LAG or System Port

SAI_BRIDGE_PORT_TYPE_SUB_PORT 

Port or LAG.vlan

SAI_BRIDGE_PORT_TYPE_1Q_ROUTER 

Bridge router port

SAI_BRIDGE_PORT_TYPE_1D_ROUTER 

Bridge router port

SAI_BRIDGE_PORT_TYPE_TUNNEL 

Bridge tunnel port

Definition at line 71 of file saibridge.h.

◆ _sai_bridge_stat_t

Bridge counter IDs in sai_get_bridge_stats() call.

Enumerator
SAI_BRIDGE_STAT_IN_OCTETS 

Ingress byte stat count

SAI_BRIDGE_STAT_IN_PACKETS 

Ingress packet stat count

SAI_BRIDGE_STAT_OUT_OCTETS 

Egress byte stat count

SAI_BRIDGE_STAT_OUT_PACKETS 

Egress packet stat count

Definition at line 582 of file saibridge.h.

◆ _sai_bridge_type_t

Attribute data for SAI_BRIDGE_ATTR_TYPE.

Enumerator
SAI_BRIDGE_TYPE_1Q 

Vlan aware bridge

SAI_BRIDGE_TYPE_1D 

Non vlan aware bridge

Definition at line 397 of file saibridge.h.