SAI Metadata
|
Classes | |
struct | _sai_tunnel_api_t |
Tunnel methods table retrieved with sai_api_query() More... | |
Typedefs | |
typedef enum _sai_tunnel_map_type_t | sai_tunnel_map_type_t |
Enum defining tunnel map types. | |
typedef enum _sai_tunnel_map_entry_attr_t | sai_tunnel_map_entry_attr_t |
typedef enum _sai_tunnel_map_attr_t | sai_tunnel_map_attr_t |
Defines tunnel map attributes. | |
typedef sai_status_t(* | sai_create_tunnel_map_fn) (_Out_ sai_object_id_t *tunnel_map_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list) |
Create tunnel Map. | |
typedef sai_status_t(* | sai_remove_tunnel_map_fn) (_In_ sai_object_id_t tunnel_map_id) |
Remove tunnel Map. | |
typedef sai_status_t(* | sai_set_tunnel_map_attribute_fn) (_In_ sai_object_id_t tunnel_map_id, _In_ const sai_attribute_t *attr) |
Set attributes for tunnel map. | |
typedef sai_status_t(* | sai_get_tunnel_map_attribute_fn) (_In_ sai_object_id_t tunnel_map_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list) |
Get attributes of tunnel map. | |
typedef enum _sai_tunnel_ttl_mode_t | sai_tunnel_ttl_mode_t |
Defines tunnel TTL mode. | |
typedef enum _sai_tunnel_dscp_mode_t | sai_tunnel_dscp_mode_t |
Defines tunnel DSCP mode. | |
typedef enum _sai_tunnel_peer_mode_t | sai_tunnel_peer_mode_t |
Defines tunnel peer mode. | |
typedef enum _sai_tunnel_attr_t | sai_tunnel_attr_t |
Defines tunnel attributes. | |
typedef enum _sai_tunnel_stat_t | sai_tunnel_stat_t |
Tunnel counter IDs in sai_get_tunnel_stats() call. | |
typedef sai_status_t(* | sai_create_tunnel_fn) (_Out_ sai_object_id_t *tunnel_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list) |
Create tunnel. | |
typedef sai_status_t(* | sai_remove_tunnel_fn) (_In_ sai_object_id_t tunnel_id) |
Remove tunnel. | |
typedef sai_status_t(* | sai_set_tunnel_attribute_fn) (_In_ sai_object_id_t tunnel_id, _In_ const sai_attribute_t *attr) |
Set tunnel attribute. | |
typedef sai_status_t(* | sai_get_tunnel_attribute_fn) (_In_ sai_object_id_t tunnel_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list) |
Get tunnel attributes. | |
typedef sai_status_t(* | sai_get_tunnel_stats_fn) (_In_ sai_object_id_t tunnel_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters) |
Get tunnel statistics counters. Deprecated for backward compatibility. | |
typedef sai_status_t(* | sai_get_tunnel_stats_ext_fn) (_In_ sai_object_id_t tunnel_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 tunnel statistics counters extended. | |
typedef sai_status_t(* | sai_clear_tunnel_stats_fn) (_In_ sai_object_id_t tunnel_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids) |
Clear tunnel statistics counters. | |
typedef enum _sai_tunnel_term_table_entry_type_t | sai_tunnel_term_table_entry_type_t |
Defines tunnel termination table entry type. | |
typedef enum _sai_tunnel_term_table_entry_attr_t | sai_tunnel_term_table_entry_attr_t |
Defines tunnel termination table entry attributes. | |
typedef sai_status_t(* | sai_create_tunnel_term_table_entry_fn) (_Out_ sai_object_id_t *tunnel_term_table_entry_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list) |
Create tunnel termination table entry. | |
typedef sai_status_t(* | sai_remove_tunnel_term_table_entry_fn) (_In_ sai_object_id_t tunnel_term_table_entry_id) |
Remove tunnel termination table entry. | |
typedef sai_status_t(* | sai_set_tunnel_term_table_entry_attribute_fn) (_In_ sai_object_id_t tunnel_term_table_entry_id, _In_ const sai_attribute_t *attr) |
Set tunnel termination table entry attribute. | |
typedef sai_status_t(* | sai_get_tunnel_term_table_entry_attribute_fn) (_In_ sai_object_id_t tunnel_term_table_entry_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list) |
Get tunnel termination table entry attributes. | |
typedef sai_status_t(* | sai_create_tunnel_map_entry_fn) (_Out_ sai_object_id_t *tunnel_map_entry_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list) |
Create tunnel map item. | |
typedef sai_status_t(* | sai_remove_tunnel_map_entry_fn) (_In_ sai_object_id_t tunnel_map_entry_id) |
Remove tunnel map item. | |
typedef sai_status_t(* | sai_set_tunnel_map_entry_attribute_fn) (_In_ sai_object_id_t tunnel_map_entry_id, _In_ const sai_attribute_t *attr) |
Set tunnel map item attribute. | |
typedef sai_status_t(* | sai_get_tunnel_map_entry_attribute_fn) (_In_ sai_object_id_t tunnel_map_entry_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list) |
Get tunnel map item attributes. | |
typedef struct _sai_tunnel_api_t | sai_tunnel_api_t |
Tunnel methods table retrieved with sai_api_query() | |
typedef sai_status_t(* sai_clear_tunnel_stats_fn) (_In_ sai_object_id_t tunnel_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids) |
Clear tunnel statistics counters.
[in] | tunnel_id | Tunnel id |
[in] | number_of_counters | Number of counters in the array |
[in] | counter_ids | Specifies the array of counter ids |
Definition at line 904 of file saitunnel.h.
typedef sai_status_t(* sai_create_tunnel_fn) (_Out_ sai_object_id_t *tunnel_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list) |
Create tunnel.
[out] | tunnel_id | Tunnel id |
[in] | switch_id | Switch Id |
[in] | attr_count | Number of attributes |
[in] | attr_list | Array of attributes |
Definition at line 819 of file saitunnel.h.
typedef sai_status_t(* sai_create_tunnel_map_entry_fn) (_Out_ sai_object_id_t *tunnel_map_entry_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list) |
Create tunnel map item.
[out] | tunnel_map_entry_id | Tunnel map item id |
[in] | switch_id | Switch Id |
[in] | attr_count | Number of attributes |
[in] | attr_list | Array of attributes |
Definition at line 1124 of file saitunnel.h.
typedef sai_status_t(* sai_create_tunnel_map_fn) (_Out_ sai_object_id_t *tunnel_map_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list) |
Create tunnel Map.
[out] | tunnel_map_id | Tunnel Map Id |
[in] | switch_id | Switch Id |
[in] | attr_count | Number of attributes |
[in] | attr_list | Array of attributes |
Definition at line 325 of file saitunnel.h.
typedef sai_status_t(* sai_create_tunnel_term_table_entry_fn) (_Out_ sai_object_id_t *tunnel_term_table_entry_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list) |
Create tunnel termination table entry.
[out] | tunnel_term_table_entry_id | Tunnel termination table entry id |
[in] | switch_id | Switch Id |
[in] | attr_count | Number of attributes |
[in] | attr_list | Array of attributes |
Definition at line 1072 of file saitunnel.h.
typedef sai_status_t(* sai_get_tunnel_attribute_fn) (_In_ sai_object_id_t tunnel_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list) |
Get tunnel attributes.
[in] | tunnel_id | Tunnel id |
[in] | attr_count | Number of attributes |
[in,out] | attr_list | Array of attributes |
Definition at line 856 of file saitunnel.h.
typedef sai_status_t(* sai_get_tunnel_map_attribute_fn) (_In_ sai_object_id_t tunnel_map_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list) |
Get attributes of tunnel map.
[in] | tunnel_map_id | Tunnel map id |
[in] | attr_count | Number of attributes |
[in,out] | attr_list | Array of attributes |
Definition at line 362 of file saitunnel.h.
typedef sai_status_t(* sai_get_tunnel_map_entry_attribute_fn) (_In_ sai_object_id_t tunnel_map_entry_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list) |
Get tunnel map item attributes.
[in] | tunnel_map_entry_id | Tunnel map item id |
[in] | attr_count | Number of attributes |
[in,out] | attr_list | Array of attributes |
Definition at line 1161 of file saitunnel.h.
typedef sai_status_t(* sai_get_tunnel_stats_ext_fn) (_In_ sai_object_id_t tunnel_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 tunnel statistics counters extended.
[in] | tunnel_id | Tunnel 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. |
Definition at line 888 of file saitunnel.h.
typedef sai_status_t(* sai_get_tunnel_stats_fn) (_In_ sai_object_id_t tunnel_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters) |
Get tunnel statistics counters. Deprecated for backward compatibility.
[in] | tunnel_id | Tunnel 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. |
Definition at line 871 of file saitunnel.h.
typedef sai_status_t(* sai_get_tunnel_term_table_entry_attribute_fn) (_In_ sai_object_id_t tunnel_term_table_entry_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list) |
Get tunnel termination table entry attributes.
[in] | tunnel_term_table_entry_id | Tunnel termination table entry id |
[in] | attr_count | Number of attributes |
[in,out] | attr_list | Array of attributes |
Definition at line 1109 of file saitunnel.h.
typedef sai_status_t(* sai_remove_tunnel_fn) (_In_ sai_object_id_t tunnel_id) |
Remove tunnel.
[in] | tunnel_id | Tunnel id |
Definition at line 832 of file saitunnel.h.
typedef sai_status_t(* sai_remove_tunnel_map_entry_fn) (_In_ sai_object_id_t tunnel_map_entry_id) |
Remove tunnel map item.
[in] | tunnel_map_entry_id | Tunnel map item id |
Definition at line 1137 of file saitunnel.h.
typedef sai_status_t(* sai_remove_tunnel_map_fn) (_In_ sai_object_id_t tunnel_map_id) |
Remove tunnel Map.
[in] | tunnel_map_id | Tunnel Map id to be removed |
Definition at line 338 of file saitunnel.h.
typedef sai_status_t(* sai_remove_tunnel_term_table_entry_fn) (_In_ sai_object_id_t tunnel_term_table_entry_id) |
Remove tunnel termination table entry.
[in] | tunnel_term_table_entry_id | Tunnel termination table entry id |
Definition at line 1085 of file saitunnel.h.
typedef sai_status_t(* sai_set_tunnel_attribute_fn) (_In_ sai_object_id_t tunnel_id, _In_ const sai_attribute_t *attr) |
Set tunnel attribute.
[in] | tunnel_id | Tunnel id |
[in] | attr | Attribute |
Definition at line 843 of file saitunnel.h.
typedef sai_status_t(* sai_set_tunnel_map_attribute_fn) (_In_ sai_object_id_t tunnel_map_id, _In_ const sai_attribute_t *attr) |
Set attributes for tunnel map.
[in] | tunnel_map_id | Tunnel Map Id |
[in] | attr | Attribute to set |
Definition at line 349 of file saitunnel.h.
typedef sai_status_t(* sai_set_tunnel_map_entry_attribute_fn) (_In_ sai_object_id_t tunnel_map_entry_id, _In_ const sai_attribute_t *attr) |
Set tunnel map item attribute.
[in] | tunnel_map_entry_id | Tunnel map item id |
[in] | attr | Attribute |
Definition at line 1148 of file saitunnel.h.
typedef sai_status_t(* sai_set_tunnel_term_table_entry_attribute_fn) (_In_ sai_object_id_t tunnel_term_table_entry_id, _In_ const sai_attribute_t *attr) |
Set tunnel termination table entry attribute.
[in] | tunnel_term_table_entry_id | Tunnel termination table entry id |
[in] | attr | Attribute |
Definition at line 1096 of file saitunnel.h.
enum _sai_tunnel_attr_t |
Defines tunnel attributes.
Enumerator | |
---|---|
SAI_TUNNEL_ATTR_START | Start of attributes. |
SAI_TUNNEL_ATTR_TYPE | Tunnel type.
|
SAI_TUNNEL_ATTR_UNDERLAY_INTERFACE | Tunnel underlay interface. Underlay interface is router interface when conditions are met.
|
SAI_TUNNEL_ATTR_OVERLAY_INTERFACE | Tunnel overlay interface. Overlay interface is router interface when conditions are met.
|
SAI_TUNNEL_ATTR_PEER_MODE | Tunnel Peer Mode.
|
SAI_TUNNEL_ATTR_ENCAP_SRC_IP | Tunnel src IP.
|
SAI_TUNNEL_ATTR_ENCAP_DST_IP | Tunnel Destination IP.
|
SAI_TUNNEL_ATTR_ENCAP_TTL_MODE | Tunnel TTL mode (pipe or uniform model)
|
SAI_TUNNEL_ATTR_ENCAP_TTL_VAL | Tunnel TTL value.
|
SAI_TUNNEL_ATTR_ENCAP_DSCP_MODE | Tunnel DSCP mode (pipe or uniform model)
|
SAI_TUNNEL_ATTR_ENCAP_DSCP_VAL | Tunnel DSCP value (6 bits)
|
SAI_TUNNEL_ATTR_ENCAP_GRE_KEY_VALID | Tunnel GRE key valid.
|
SAI_TUNNEL_ATTR_ENCAP_GRE_KEY | Tunnel GRE key.
|
SAI_TUNNEL_ATTR_ENCAP_ECN_MODE | Tunnel encap ECN mode.
|
SAI_TUNNEL_ATTR_ENCAP_MAPPERS | Tunnel encap mappers.
|
SAI_TUNNEL_ATTR_DECAP_ECN_MODE | Tunnel decap ECN mode.
|
SAI_TUNNEL_ATTR_DECAP_MAPPERS | Tunnel decap mappers.
|
SAI_TUNNEL_ATTR_DECAP_TTL_MODE | Tunnel TTL mode (pipe or uniform model)
|
SAI_TUNNEL_ATTR_DECAP_DSCP_MODE | Tunnel DSCP mode (pipe or uniform model)
|
SAI_TUNNEL_ATTR_TERM_TABLE_ENTRY_LIST | Tunnel term table entries associated with this tunnel.
|
SAI_TUNNEL_ATTR_LOOPBACK_PACKET_ACTION | Packet action when a packet ingress and gets routed back to same tunnel.
|
SAI_TUNNEL_ATTR_VXLAN_UDP_SPORT_MODE | Tunnel VXLAN UDP source port mode.
|
SAI_TUNNEL_ATTR_VXLAN_UDP_SPORT | Tunnel UDP source port.
|
SAI_TUNNEL_ATTR_VXLAN_UDP_SPORT_MASK | Tunnel UDP source port mask. Sport mask defining the number of least significant bits reserved for the calculated hash value. 0 means a fixed value.
|
SAI_TUNNEL_ATTR_SA_INDEX | IPsec encryption SA index. Index to bind an egress IPsec SA to a tunnel.
|
SAI_TUNNEL_ATTR_IPSEC_SA_PORT_LIST | List of ports that are programmed with SAs for this IPsec tunnel. Useful only when IPsec is implemented in a PHY Chip (different sai_switch object). For IPsec hardware in the Switch ASIC, the per-tunnel port list can be derived from the union of SAI_IPSEC_SA_ATTR_IPSEC_PORT_LIST for all sai_ipsec_sa objects for that tunnel.
|
SAI_TUNNEL_ATTR_ENCAP_QOS_TC_AND_COLOR_TO_DSCP_MAP | Enable TC AND COLOR -> DSCP MAP on tunnel at encapsulation (access-to-network) node to remark the DSCP in tunnel header.
|
SAI_TUNNEL_ATTR_ENCAP_QOS_TC_TO_QUEUE_MAP | Enable TC -> Queue MAP on tunnel encap. Map id = SAI_NULL_OBJECT_ID to disable map on tunnel. Default no map, i.e. packets are queued with static mapping.
|
SAI_TUNNEL_ATTR_DECAP_QOS_DSCP_TO_TC_MAP | Enable DSCP -> TC MAP on tunnel at termination (Network-to-access) node. This map if configured overrides the port MAP.
|
SAI_TUNNEL_ATTR_DECAP_QOS_TC_TO_PRIORITY_GROUP_MAP | Enable TC -> Priority Group MAP. TC is derived from the tunnel MAP. Map id = SAI_NULL_OBJECT_ID to disable map on port. Default no map
|
SAI_TUNNEL_ATTR_VXLAN_UDP_SPORT_SECURITY | Drop tunnel packets with not allowed UDP source port. Upon enabling this feature, if the tunnel packet ingresses with UDP source port outside of range defined for this tunnel, it will be dropped.
|
SAI_TUNNEL_ATTR_END | End of attributes. |
SAI_TUNNEL_ATTR_CUSTOM_RANGE_START | Custom range base value |
SAI_TUNNEL_ATTR_CUSTOM_RANGE_END | End of custom range base |
Definition at line 447 of file saitunnel.h.
Defines tunnel DSCP mode.
Definition at line 400 of file saitunnel.h.
Defines tunnel map attributes.
Definition at line 278 of file saitunnel.h.
Definition at line 88 of file saitunnel.h.
Enum defining tunnel map types.
Definition at line 39 of file saitunnel.h.
Defines tunnel peer mode.
Enumerator | |
---|---|
SAI_TUNNEL_PEER_MODE_P2P | P2P Tunnel. |
SAI_TUNNEL_PEER_MODE_P2MP | P2MP Tunnel. |
Definition at line 430 of file saitunnel.h.
enum _sai_tunnel_stat_t |
Tunnel counter IDs in sai_get_tunnel_stats() call.
Definition at line 793 of file saitunnel.h.
Defines tunnel termination table entry attributes.
Enumerator | |
---|---|
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_START | Start of attributes. |
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_VR_ID | Tunnel virtual router id.
|
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_TYPE | Tunnel entry type.
|
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_DST_IP | Tunnel termination IP address.
|
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_DST_IP_MASK | Tunnel termination IP address mask.
|
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_SRC_IP | Tunnel source IP address.
|
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_SRC_IP_MASK | Tunnel source IP address mask.
|
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_TUNNEL_TYPE | Tunnel type.
|
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_ACTION_TUNNEL_ID | Tunnel id to be use for decap.
|
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_IP_ADDR_FAMILY | Tunnel term table entry IP address family. READ-ONLY
|
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_IPSEC_VERIFIED | IPsec packet verified by hardware Security Engine. Valid only for tunnel type SAI_TUNNEL_TYPE_IPINIP_ESP, SAI_TUNNEL_TYPE_IPINIP_UDP_ESP or SAI_TUNNEL_TYPE_VXLAN_UDP_ESP.
|
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_PRIORITY | Priority. Value must be in the range defined in [SAI_SWITCH_ATTR_TUNNEL_TERM_TABLE_ENTRY_MINIMUM_PRIORITY, SAI_SWITCH_ATTR_TUNNEL_TERM_TABLE_ENTRY_MAXIMUM_PRIORITY] (default = SAI_SWITCH_ATTR_TUNNEL_TERM_TABLE_ENTRY_MINIMUM_PRIORITY) higher value in priority equals higher priority
|
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_END | End of attributes. |
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_CUSTOM_RANGE_START | Custom range base value |
SAI_TUNNEL_TERM_TABLE_ENTRY_ATTR_CUSTOM_RANGE_END | Enc of custom range base |
Definition at line 931 of file saitunnel.h.
Defines tunnel termination table entry type.
Definition at line 912 of file saitunnel.h.
Defines tunnel TTL mode.
Definition at line 370 of file saitunnel.h.