OpenFlow Data Plane Abstraction (OF-DPA) API Guide and Reference Manual
|
Macros | |
#define | OFDPA_DROP_TABLE_STATUS_LOCK 0 |
Status Lock. | |
#define | OFDPA_DSCP_MAX_VALUE (OFDPA_DSCP_VALUE_MASK) |
DSCP max value. | |
#define | OFDPA_DSCP_VALUE_MASK 0x3fu |
DSCP value mask. | |
#define | OFDPA_ECN_MAX_VALUE (OFDPA_ECN_VALUE_MASK) |
ECN max value. | |
#define | OFDPA_ECN_VALUE_MASK 0x3u |
ECN value mask. | |
#define | OFDPA_ETHERTYPE_ALL_MASK 0x0u |
Ethertype All Mask. | |
#define | OFDPA_ETHERTYPE_EXACT_MASK 0xffffu |
Ethertype Exact Mask. | |
#define | OFDPA_FLOW_TABLE_ID_SA_LOOKUP 254 |
Source MAC Lookup Table. | |
#define | OFDPA_INPORT_EXACT_MASK 0xffffffffu |
Exact Mask. | |
#define | OFDPA_INPORT_FIELD_MASK 0x00000000u |
Field Mask. | |
#define | OFDPA_INPORT_INDEX_MASK 0x0000ffffu |
Number Mask. | |
#define | OFDPA_INPORT_TYPE_MASK 0xffff0000u |
Type Mask. | |
#define | OFDPA_IP_ADDR_LEN 4 |
IPv4 address length. | |
#define | OFDPA_IPV4_ADDR_EXACT_MASK 0xffffffffu |
IPv4 Address Exact Mask. | |
#define | OFDPA_IPV4_ADDR_FIELD_MASK 0x00000000u |
IPv4 Address Field Mask. | |
#define | OFDPA_L2_POLICER_METERID_MIN_VALUE 0xffff |
L2 policer meter id min value. | |
#define | OFDPA_LMEP_ID_EXACT_MASK 0xffffffffu |
LMEP ID Exact Mask. | |
#define | OFDPA_LTR_EGRESS_ID_SIZE 8 |
#define | OFDPA_MAC_ADDR_IS_ALL_ONES(mac) |
Check if MAC address is all ones. | |
#define | OFDPA_MAC_ADDR_IS_NULL(mac) |
Check if MAC address is NULL. | |
#define | OFDPA_MAC_ADDR_LEN 6 |
MAC address length. | |
#define | OFDPA_MDL_MAX_VALUE 7 |
OAM MDL max value. | |
#define | OFDPA_MEG_ID_LENGTH 48 |
#define | OFDPA_MPLS_ACH_CHANNEL_TYPE 0x8902 |
#define | OFDPA_MPLS_CHANNEL_TYPE_ALL_MASK 0x0 |
#define | OFDPA_MPLS_CHANNEL_TYPE_EXACT_MASK 0xffff |
#define | OFDPA_MPLS_DATA_FIRST_NIBBLE_ALL_MASK 0x0u |
#define | OFDPA_MPLS_DATA_FIRST_NIBBLE_EXACT_MASK 0xffu |
#define | OFDPA_MPLS_DATA_FIRST_NIBBLE_IPV4 4 |
#define | OFDPA_MPLS_DATA_FIRST_NIBBLE_IPV6 6 |
#define | OFDPA_MPLS_L2_PORT_EXACT_MASK 0xffffffffu |
Exact Mask. | |
#define | OFDPA_MPLS_L2_PORT_FIELD_MASK 0x00000000u |
Field Mask. | |
#define | OFDPA_MPLS_L2_PORT_INDEX_MASK 0x0000ffffu |
Number Mask. | |
#define | OFDPA_MPLS_L2_PORT_TYPE_MASK 0xffff0000u |
Type Mask. | |
#define | OFDPA_MPLS_LABEL_GAL 13 |
#define | OFDPA_MPLS_NEXT_LABEL_GAL_ALL_MASK 0x0u |
#define | OFDPA_MPLS_NEXT_LABEL_GAL_EXACT_MASK 0xffu |
#define | OFDPA_MPLS_TC_MAX_VALUE 7 |
MPLS TC (EXP) max value. | |
#define | OFDPA_MPLS_TTL_EXACT_MASK 0xffu |
#define | OFDPA_OAM_ICC_MIP_ID_LENGTH 14 |
number of octets needed to store ICC-based MIP ID | |
#define | OFDPA_OAM_PM_FRAME_LEN_MAX 9600 |
#define | OFDPA_OAM_PM_FRAME_LEN_MIN 64 |
#define | OFDPA_OAM_Y1731_MDL_ALL_MASK 0x0u |
#define | OFDPA_OAM_Y1731_MDL_EXACT_MASK 0x7u |
OAM Y1731 MDL Mask. | |
#define | OFDPA_OAM_Y1731_OPCODE_ALL_MASK 0x0u |
#define | OFDPA_OAM_Y1731_OPCODE_EXACT_MASK 0xffu |
OAM Y1731 Opcode Mask. | |
#define | OFDPA_ORG_SENDER_ID_TLV_SIZE 1500 |
#define | OFDPA_ORG_SPECIFIC_TLV_SIZE 1500 |
#define | OFDPA_PKT_LOOKUP 1 |
Flags field in ofdpaPktSend() | |
#define | OFDPA_PORT_CONTROLLER 0xfffffffdu |
Open Flow Controller port. | |
#define | OFDPA_PORT_LOCAL 0xfffffffeu |
Open Flow Controller port. | |
#define | OFDPA_PORT_NAME_STRING_SIZE 16 |
Port name maximum string length. | |
#define | OFDPA_TABLE_NAME_LEN 32 |
Table name maximum string length. | |
#define | OFDPA_TRAFFIC_CLASS_MAX_VALUE 15 |
Traffic Class max value. | |
#define | OFDPA_TUNNEL_ID_EXACT_MASK 0xffffffffu |
Exact Mask. | |
#define | OFDPA_TUNNEL_ID_FIELD_MASK 0x00000000u |
Field Mask. | |
#define | OFDPA_TUNNEL_ID_INDEX_MASK 0x0000ffffu |
Number Mask. | |
#define | OFDPA_TUNNEL_ID_TYPE_MASK 0xffff0000u |
Type Mask. | |
#define | OFDPA_VID_EXACT_MASK 0x0fff |
VLAN Id Exact Mask. | |
#define | OFDPA_VID_FIELD_MASK 0x0000 |
VLAN Id Field Mask. | |
#define | OFDPA_VID_NONE 0x0000 |
VLAN Id None. | |
#define | OFDPA_VID_PRESENT 0x1000 |
VLAN Id present. | |
#define | OFDPA_VLAN_DEI_MAX_VALUE (OFDPA_VLAN_DEI_VALUE_MASK) |
VLAN CFI max vlue. | |
#define | OFDPA_VLAN_DEI_VALUE_MASK 0x1u |
VLAN DEI value mask. | |
#define | OFDPA_VLAN_PCP_MAX_VALUE 7 |
VLAN PCP max value. | |
#define | OFDPA_VRF_VALUE_MASK 0xffffu |
VRF value mask. | |
#define | OFDPA_ZERO_MASK 0x0u |
zero mask | |
Typedefs | |
typedef struct mlpConfig_s | mlpConfig_t |
typedef struct ofdpaBridgingFlowEntry_s | ofdpaBridgingFlowEntry_t |
Bridging Flow Table Entry. | |
typedef struct ofdpaBridgingFlowMatch_s | ofdpaBridgingFlowMatch_t |
Bridging Flow Table Match. | |
typedef struct ofdpaColorActionsFlowEntry_s | ofdpaColorActionsFlowEntry_t |
Color Based Actions Flow Table Entry. | |
typedef struct ofdpaColorActionsFlowMatch_s | ofdpaColorActionsFlowMatch_t |
Color Based Actions Table Match. | |
typedef struct ofdpaDropStatusEntry_s | ofdpaDropStatusEntry_t |
Drop Status Entry. | |
typedef struct ofdpaDscpTrustFlowEntry_s | ofdpaDscpTrustFlowEntry_t |
DSCP Trust Table Entry. | |
typedef struct ofdpaDscpTrustFlowMatch_s | ofdpaDscpTrustFlowMatch_t |
DSCP Trust Table Match. | |
typedef struct ofdpaEgressDscpPcpRemarkFlowEntry_s | ofdpaEgressDscpPcpRemarkFlowEntry_t |
Egress DSCP PCP Remark Flow Table Entry. | |
typedef struct ofdpaEgressDscpPcpRemarkFlowMatch_s | ofdpaEgressDscpPcpRemarkFlowMatch_t |
Egress DSCP PCP Remark Table Match. | |
typedef struct ofdpaEgressMpFlowEntry_s | ofdpaEgressMpFlowEntry_t |
Egress Maintenance Point Flow Table Entry. | |
typedef struct ofdpaEgressMpFlowMatch_s | ofdpaEgressMpFlowMatch_t |
Egress Maintenance Point Flow Table Match. | |
typedef struct ofdpaEgressTpidFlowEntry_s | ofdpaEgressTpidFlowEntry_t |
Egress TPID Flow Table Entry Flow instructions for this table are fixed. | |
typedef struct ofdpaEgressTpidFlowMatch_s | ofdpaEgressTpidFlowMatch_t |
Egress TPID Flow Table Match. | |
typedef struct ofdpaEgressVlan1FlowEntry_s | ofdpaEgressVlan1FlowEntry_t |
Egress VLAN 1 Flow Table Entry. | |
typedef struct ofdpaEgressVlan1FlowMatch_s | ofdpaEgressVlan1FlowMatch_t |
Egress VLAN 1 Flow Table Match. | |
typedef struct ofdpaEgressVlanFlowEntry_s | ofdpaEgressVlanFlowEntry_t |
Egress VLAN Flow Table Entry. | |
typedef struct ofdpaEgressVlanFlowMatch_s | ofdpaEgressVlanFlowMatch_t |
Egress VLAN Flow Table Match. | |
typedef struct ofdpaFlowEntry_s | ofdpaFlowEntry_t |
This structure is used to add a new flow or modify an existing flow. | |
typedef struct ofdpaFlowEntryStats_s | ofdpaFlowEntryStats_t |
Flow Stats information. | |
typedef struct ofdpaFlowEvent_s | ofdpaFlowEvent_t |
Flow events. | |
typedef struct ofdpaFlowTableInfo_s | ofdpaFlowTableInfo_t |
Flow table information. | |
typedef struct ofdpaGroupBucketEntry_s | ofdpaGroupBucketEntry_t |
Group Bucket Table Entry. | |
typedef struct ofdpaGroupEntry_s | ofdpaGroupEntry_t |
The Group Table contains one entry for each Group. | |
typedef struct ofdpaGroupEntryStats_s | ofdpaGroupEntryStats_t |
Group Table Entry Statistics. | |
typedef struct ofdpaGroupTableInfo_s | ofdpaGroupTableInfo_t |
Group table information. | |
typedef struct ofdpaIngressPortFlowEntry_s | ofdpaIngressPortFlowEntry_t |
Ingress Port Flow Table Entry. | |
typedef struct ofdpaIngressPortFlowMatch_s | ofdpaIngressPortFlowMatch_t |
Ingress Port Flow Table Match. | |
typedef struct ofdpaInjectedOamFlowEntry_s | ofdpaInjectedOamFlowEntry_t |
Injected OAM Flow Table Entry. | |
typedef struct ofdpaInjectedOamFlowMatch_s | ofdpaInjectedOamFlowMatch_t |
Injected OAM Flow Table Match. | |
typedef struct ofdpaL2InterfaceGroupBucketData_s | ofdpaL2InterfaceGroupBucketData_t |
L2 Interface Group Bucket. | |
typedef struct ofdpaL2OverlayGroupBucketData_s | ofdpaL2OverlayGroupBucketData_t |
L2 Overlay Group Bucket. | |
typedef struct ofdpaL2PolicerActionsFlowEntry_s | ofdpaL2PolicerActionsFlowEntry_t |
L2 Policer Actions Flow Table Entry. | |
typedef struct ofdpaL2PolicerActionsFlowMatch_s | ofdpaL2PolicerActionsFlowMatch_t |
L2 Policer Actions Flow Table Match. | |
typedef struct ofdpaL2PolicerFlowEntry_s | ofdpaL2PolicerFlowEntry_t |
L2 Policer Flow Table Entry. | |
typedef struct ofdpaL2PolicerFlowMatch_s | ofdpaL2PolicerFlowMatch_t |
L2 Policer Flow Table Match. | |
typedef struct ofdpaL2RewriteGroupBucketData_s | ofdpaL2RewriteGroupBucketData_t |
L2 Rewrite Group Bucket. | |
typedef struct ofdpaL2UnfilteredInterfaceGroupBucketData_s | ofdpaL2UnfilteredInterfaceGroupBucketData_t |
L2 Unfiltered Interface Group Bucket. | |
typedef struct ofdpaL3InterfaceGroupBucketData_s | ofdpaL3InterfaceGroupBucketData_t |
L3 Interface Group Bucket. | |
typedef struct ofdpaL3UnicastGroupBucketData_s | ofdpaL3UnicastGroupBucketData_t |
L3 Unicast Group Bucket. | |
typedef struct ofdpaMacAddr_s | ofdpaMacAddr_t |
MAC address. | |
typedef struct ofdpaMeterEntry_s | ofdpaMeterEntry_t |
Meter Entry. | |
typedef struct ofdpaMeterEntryStats_s | ofdpaMeterEntryStats_t |
typedef struct ofdpaMeterParametersTcm_s | ofdpaMeterParametersTcm_t |
Parameters used to configure an Three-Color-Marking type meter. | |
typedef struct ofdpaMpFlowEntry_s | ofdpaMpFlowEntry_t |
Ingress Maintenance Point Flow Table Entry. | |
typedef struct ofdpaMpFlowMatch_s | ofdpaMpFlowMatch_t |
Ingress Maintenance Point Flow Table Match. | |
typedef struct ofdpaMPLSFastFailOverGroupBucketData_s | ofdpaMPLSFastFailOverGroupBucketData_t |
MPLS Fast Failover Group Bucket. | |
typedef struct ofdpaMplsFlowEntry_s | ofdpaMplsFlowEntry_t |
MPLS Flow Table Entry. | |
typedef struct ofdpaMplsFlowMatch_s | ofdpaMplsFlowMatch_t |
MPLS Flow Table Match. | |
typedef struct ofdpaMPLSInterfaceGroupBucketData_s | ofdpaMPLSInterfaceGroupBucketData_t |
MPLS Interface Group Bucket. | |
typedef struct ofdapMplsL2PortFlowEntry_s | ofdpaMplsL2PortFlowEntry_t |
MPLS L2 Port Flow Table Entry. | |
typedef struct ofdpaMplsL2PortFlowMatch_s | ofdpaMplsL2PortFlowMatch_t |
MPLS L2 Port Flow Table Match. | |
typedef struct ofdpaMPLSL2TagGroupBucketData_s | ofdpaMPLSL2TagGroupBucketData_t |
MPLS L2 Tag Group Bucket. | |
typedef struct ofdpaMPLSLabelGroupBucketData_s | ofdpaMPLSLabelGroupBucketData_t |
MPLS Label Group Bucket. | |
typedef struct ofdpaMplsMpFlowEntry_s | ofdpaMplsMpFlowEntry_t |
MPLS-TP Maintenance Point Flow Table Entry. | |
typedef struct ofdpaMplsMpFlowMatch_s | ofdpaMplsMpFlowMatch_t |
MPLS-TP Maintenance Point Flow Table Match. | |
typedef struct ofdpaMplsQosEntry_s | ofdpaMplsQosEntry_t |
typedef struct ofdpaMulticastRoutingFlowEntry_s | ofdpaMulticastRoutingFlowEntry_t |
Multicast Routing Flow Table Entry. | |
typedef struct ofdpaMulticastRoutingFlowMatch_s | ofdpaMulticastRoutingFlowMatch_t |
Multicast Routing Flow Table Match. | |
typedef struct ofdpaOamAisConfig_s | ofdpaOamAisConfig_t |
typedef struct ofdpaOamCcmDatabaseEntry_s | ofdpaOamCcmDatabaseEntry_t |
typedef struct ofdpaOamCsfConfig_s | ofdpaOamCsfConfig_t |
typedef struct ofdpaOamDataCounterIndex_s | ofdpaOamDataCounterIndex_t |
Data Plane Counter Index. | |
typedef struct ofdpaOamDataCounterStatus_s | ofdpaOamDataCounterStatus_t |
Data Plane Counter Status. | |
typedef struct ofdpaOamEvent_s | ofdpaOamEvent_t |
OAM events. | |
typedef struct ofdpaOamLbConfig_s | ofdpaOamLbConfig_t |
typedef struct ofdpaOamLbStatus_s | ofdpaOamLbStatus_t |
typedef struct ofdpaOamLckConfig_s | ofdpaOamLckConfig_t |
typedef struct ofdpaOamLtConfig_s | ofdpaOamLtConfig_t |
typedef struct ofdpaOamLtrEntry_s | ofdpaOamLtrEntry_t |
typedef struct ofdpaOamLtStatus_s | ofdpaOamLtStatus_t |
typedef struct ofdpaOamMegConfig_s | ofdpaOamMegConfig_t |
typedef struct ofdpaOamMegStatus_s | ofdpaOamMegStatus_t |
typedef struct ofdpaOamMepConfig_s | ofdpaOamMepConfig_t |
typedef struct ofdpaOamMepStatus_s | ofdpaOamMepStatus_t |
typedef struct ofdpaOamMipConfig_s | ofdpaOamMipConfig_t |
typedef struct ofdpaOamMipStatus_s | ofdpaOamMipStatus_t |
typedef struct ofdpaOamMLPGroupConfig_s | ofdpaOamMLPGroupConfig_t |
typedef struct ofdpaOamMLPGroupStatus_s | ofdpaOamMLPGroupStatus_t |
typedef struct ofdpaOamOdDmConfig_s | ofdpaOamOdDmConfig_t |
typedef struct ofdpaOamOdDmSnapshot_s | ofdpaOamOdDmSnapshot_t |
typedef struct ofdpaOamOdDmStatus_s | ofdpaOamOdDmStatus_t |
typedef struct ofdpaOamOdLmConfig_s | ofdpaOamOdLmConfig_t |
typedef struct ofdpaOamOdLmSnapshot_s | ofdpaOamOdLmSnapshot_t |
typedef struct ofdpaOamOdLmStatus_s | ofdpaOamOdLmStatus_t |
typedef struct ofdpaOamProDmConfig_s | ofdpaOamProDmConfig_t |
typedef struct ofdpaOamProDmCounterBin_s | ofdpaOamProDmCounterBin_t |
typedef struct ofdpaOamProDmCounters_s | ofdpaOamProDmCounters_t |
typedef struct ofdpaOamProDmStatus_s | ofdpaOamProDmStatus_t |
typedef struct ofdpaOamProLmConfig_s | ofdpaOamProLmConfig_t |
typedef struct ofdpaOamProLmCounterBin_s | ofdpaOamProLmCounterBin_t |
typedef struct ofdpaOamProLmCounters_s | ofdpaOamProLmCounters_t |
typedef struct ofdpaOamProLmStatus_s | ofdpaOamProLmStatus_t |
typedef struct ofdpaOamRemoteMpConfig_s | ofdpaOamRemoteMpConfig_t |
typedef struct ofdpaPacket_s | ofdpaPacket_t |
Packet. | |
typedef struct ofdpaPcpTrustFlowEntry_s | ofdpaPcpTrustFlowEntry_t |
PCP Trust Table Entry. | |
typedef struct ofdpaPcpTrustFlowMatch_s | ofdpaPcpTrustFlowMatch_t |
PCP Trust Table Match. | |
typedef struct ofdpaPolicyAclFlowEntry_s | ofdpaPolicyAclFlowEntry_t |
Policy ACL Flow Table Entry. | |
typedef struct ofdpaPolicyAclFlowMatch_s | ofdpaPolicyAclFlowMatch_t |
ACL Flow Table Match. | |
typedef struct ofdpaPortEvent_s | ofdpaPortEvent_t |
Port events. | |
typedef struct ofdpaPortFeature_s | ofdpaPortFeature_t |
Bitmaps of OFDPA_PORT_FEAT_* that describe features. | |
typedef struct ofdpaPortQueueStats_s | ofdpaPortQueueStats_t |
Queue Stats. | |
typedef struct ofdpaPortStats_s | ofdpaPortStats_t |
Port statistics API structure. | |
typedef struct ofdpaRemarkActionEntry_s | ofdpaRemarkActionEntry_t |
Remark Action Entry. | |
typedef struct ofdpaRemarkSetActions_s | ofdpaRemarkSetActions_t |
Remark set actions. | |
typedef struct ofdpaSrcMacLearnModeCfg_s | ofdpaSrcMacLearnModeCfg_t |
Source MAC Learning Mode. | |
typedef struct ofdpaTerminationMacFlowEntry_s | ofdpaTerminationMacFlowEntry_t |
Termination MAC Flow Table Entry. | |
typedef struct ofdpaTerminationMacFlowMatch_s | ofdpaTerminationMacFlowMatch_t |
Termination MAC Flow Table Match. | |
typedef struct ofdpaUnicastRoutingFlowEntry_s | ofdpaUnicastRoutingFlowEntry_t |
Unicast Routing Flow Table Entry. | |
typedef struct ofdpaUnicastRoutingFlowMatch_s | ofdpaUnicastRoutingFlowMatch_t |
Unicast Routing Flow Table Match. | |
typedef struct ofdpaVlan1FlowEntry_s | ofdpaVlan1FlowEntry_t |
VLAN Flow Table Entry. | |
typedef struct ofdpaVlan1FlowMatch_s | ofdpaVlan1FlowMatch_t |
VLAN 1 Flow Table Match. | |
typedef struct ofdpaVlanFlowEntry_s | ofdpaVlanFlowEntry_t |
VLAN Flow Table Entry. | |
typedef struct ofdpaVlanFlowMatch_s | ofdpaVlanFlowMatch_t |
VLAN Flow Table Match. | |
Enumerations | |
enum | OFDPA_ACTION_TABLE_TYPE_t { OFDPA_ACTION_TABLE_TYPE_MPLS_SET_QOS = 1, OFDPA_ACTION_TABLE_TYPE_OAM_DATAPLANE_COUNTER = 2, OFDPA_ACTION_TABLE_TYPE_DROP_STATUS = 3, OFDPA_ACTION_TABLE_TYPE_MPLS_VPN_LABEL_REMARK = 4, OFDPA_ACTION_TABLE_TYPE_MPLS_TUNNEL_LABEL_REMARK = 5 } |
Action Table Id enumerator. | |
enum | OFDPA_BOOL { OFDPA_FALSE = 0, OFDPA_TRUE } |
enum | OFDPA_CCM_INTERVAL_t { OFDPA_CCM_INTERVAL_Invalid = 0, OFDPA_CCM_INTERVAL_300Hz = 1, OFDPA_CCM_INTERVAL_10ms = 2, OFDPA_CCM_INTERVAL_100ms = 3, OFDPA_CCM_INTERVAL_1s = 4, OFDPA_CCM_INTERVAL_10s = 5, OFDPA_CCM_INTERVAL_1min = 6, OFDPA_CCM_INTERVAL_10min = 7 } |
enum | OFDPA_CONTROL_t { OFDPA_DISABLE = 0, OFDPA_ENABLE = 1 } |
enable or disable for config or status parameter. More... | |
enum | OFDPA_ERROR_t { OFDPA_E_NONE = 0, OFDPA_E_RPC = -20, OFDPA_E_INTERNAL = -21, OFDPA_E_PARAM = -22, OFDPA_E_ERROR = -23, OFDPA_E_FULL = -24, OFDPA_E_EXISTS = -25, OFDPA_E_TIMEOUT = -26, OFDPA_E_FAIL = -27, OFDPA_E_DISABLED = -28, OFDPA_E_UNAVAIL = -29, OFDPA_E_NOT_FOUND = -30, OFDPA_E_EMPTY = -31, OFDPA_E_REQUEST_DENIED = -32, OFDPA_NOT_IMPLEMENTED_YET = -33 } |
OFDPA uses these enumerators to indicate the error codes. More... | |
enum | OFDPA_FEATURE_t { OFDPA_FEATURE_INVALID = 0, OFDPA_FEATURE_VXLAN, OFDPA_FEATURE_ACLIPV6MAC, OFDPA_FEATURE_MPLSTHREELABELS, OFDPA_FEATURE_MPLSSUPPORTED, OFDPA_FEATURE_MPLSECMP, OFDPA_FEATURE_OAM, OFDPA_FEATURE_SERVICE_METER, OFDPA_DOT1AG_MPLS_TP_CCM_SUPPORT, OFDPA_DOT1AG_LTR_SORT_FEATURE_ID, OFDPA_FEATURE_MAX } |
enum | OFDPA_FLOW_EVENT_MASK_t { OFDPA_FLOW_EVENT_IDLE_TIMEOUT = 1 << 0, OFDPA_FLOW_EVENT_HARD_TIMEOUT = 1 << 1 } |
Flow event type. More... | |
enum | OFDPA_FLOW_TABLE_ID_t { OFDPA_FLOW_TABLE_ID_INGRESS_PORT = 0, OFDPA_FLOW_TABLE_ID_PORT_DSCP_TRUST = 5, OFDPA_FLOW_TABLE_ID_PORT_PCP_TRUST = 6, OFDPA_FLOW_TABLE_ID_TUNNEL_DSCP_TRUST = 7, OFDPA_FLOW_TABLE_ID_TUNNEL_PCP_TRUST = 8, OFDPA_FLOW_TABLE_ID_INJECTED_OAM = 9, OFDPA_FLOW_TABLE_ID_VLAN = 10, OFDPA_FLOW_TABLE_ID_VLAN_1 = 11, OFDPA_FLOW_TABLE_ID_MAINTENANCE_POINT = 12, OFDPA_FLOW_TABLE_ID_MPLS_L2_PORT = 13, OFDPA_FLOW_TABLE_ID_MPLS_DSCP_TRUST = 15, OFDPA_FLOW_TABLE_ID_MPLS_PCP_TRUST = 16, OFDPA_FLOW_TABLE_ID_L2_POLICER = 18, OFDPA_FLOW_TABLE_ID_L2_POLICER_ACTIONS = 19, OFDPA_FLOW_TABLE_ID_TERMINATION_MAC = 20, OFDPA_FLOW_TABLE_ID_L3_TYPE = 21, OFDPA_FLOW_TABLE_ID_MPLS_0 = 23, OFDPA_FLOW_TABLE_ID_MPLS_1 = 24, OFDPA_FLOW_TABLE_ID_MPLS_2 = 25, OFDPA_FLOW_TABLE_ID_MPLS_MAINTENANCE_POINT = 26, OFDPA_FLOW_TABLE_ID_MPLS_L3_TYPE = 27, OFDPA_FLOW_TABLE_ID_MPLS_TYPE = 29, OFDPA_FLOW_TABLE_ID_UNICAST_ROUTING = 30, OFDPA_FLOW_TABLE_ID_MULTICAST_ROUTING = 40, OFDPA_FLOW_TABLE_ID_BRIDGING = 50, OFDPA_FLOW_TABLE_ID_ACL_POLICY = 60, OFDPA_FLOW_TABLE_ID_COLOR_BASED_ACTIONS = 65, OFDPA_FLOW_TABLE_ID_EGRESS_VLAN = 210, OFDPA_FLOW_TABLE_ID_EGRESS_VLAN_1 = 211, OFDPA_FLOW_TABLE_ID_EGRESS_MAINTENANCE_POINT = 226, OFDPA_FLOW_TABLE_ID_EGRESS_DSCP_PCP_REMARK = 230, OFDPA_FLOW_TABLE_ID_EGRESS_TPID = 235 } |
Flow Table Id enumerator. More... | |
enum | OFDPA_GROUP_ENTRY_TYPE_t { OFDPA_GROUP_ENTRY_TYPE_L2_INTERFACE = 0, OFDPA_GROUP_ENTRY_TYPE_L2_REWRITE = 1, OFDPA_GROUP_ENTRY_TYPE_L3_UNICAST = 2, OFDPA_GROUP_ENTRY_TYPE_L2_MULTICAST = 3, OFDPA_GROUP_ENTRY_TYPE_L2_FLOOD = 4, OFDPA_GROUP_ENTRY_TYPE_L3_INTERFACE = 5, OFDPA_GROUP_ENTRY_TYPE_L3_MULTICAST = 6, OFDPA_GROUP_ENTRY_TYPE_L3_ECMP = 7, OFDPA_GROUP_ENTRY_TYPE_L2_OVERLAY = 8, OFDPA_GROUP_ENTRY_TYPE_MPLS_LABEL = 9, OFDPA_GROUP_ENTRY_TYPE_MPLS_FORWARDING = 10, OFDPA_GROUP_ENTRY_TYPE_L2_UNFILTERED_INTERFACE = 11, OFDPA_GROUP_ENTRY_TYPE_LAST } |
Group Type Enumerator. More... | |
enum | OFDPA_L2_OVERLAY_SUBTYPE_t { OFDPA_L2_OVERLAY_FLOOD_UNICAST_TUNNEL = 0, OFDPA_L2_OVERLAY_FLOOD_MULTICAST_TUNNEL = 1, OFDPA_L2_OVERLAY_MULTICAST_UNICAST_TUNNEL = 2, OFDPA_L2_OVERLAY_MULTICAST_MULTICAST_TUNNEL = 3 } |
L2 Overlay Group Sub-type Enumerator. More... | |
enum | OFDPA_METER_COLOR_MODE_t { OFDPA_METER_COLOR_BLIND = 0, OFDPA_METER_COLOR_AWARE = 1 } |
enum | OFDPA_METER_RATE_UNIT_t { OFDPA_METER_RATE_KBPS = 1, OFDPA_METER_RATE_PKTPS = 2 } |
enum | OFDPA_METER_TYPE_t { OFDPA_METER_TYPE_TCM = 3 } |
enum | OFDPA_MLP_ARCH_t { OFDPA_MLP_ARCH_1_TO_1 = 0, OFDPA_MLP_ARCH_1_PLUS_1 = 1 } |
enum | OFDPA_MLP_ROLE_t { OFDPA_MLP_ROLE_NONE = 0, OFDPA_MLP_ROLE_PRIMARY = 1, OFDPA_MLP_ROLE_BACKUP = 2 } |
enum | OFDPA_MP_DIRECTION_t { OFDPA_MP_DIRECTION_DOWN = 1, OFDPA_MP_DIRECTION_UP = 2 } |
enum | OFDPA_MPLS_FORWARDING_SUBTYPE_t { OFDPA_MPLS_L2_FLOOD = 0, OFDPA_MPLS_L2_MULTICAST = 1, OFDPA_MPLS_L2_LOCAL_FLOOD = 2, OFDPA_MPLS_L2_LOCAL_MULTICAST = 3, OFDPA_MPLS_L2_FLOOD_SPLIT_HORIZON = 4, OFDPA_MPLS_L2_MULTICAST_SPLIT_HORIZON = 5, OFDPA_MPLS_FAST_FAILOVER = 6, OFDPA_MPLS_1_1_HEAD_END_PROTECT = 7, OFDPA_MPLS_ECMP = 8, OFDPA_MPLS_L2_TAG = 10 } |
MPLS Forwarding Group Sub-type Enumerator. | |
enum | OFDPA_MPLS_L2_PORT_TYPE_t { OFDPA_MPLS_L2_PORT_TYPE_VPWS_LOCAL = 0x0, OFDPA_MPLS_L2_PORT_TYPE_VPLS_LOCAL = 0x1, OFDPA_MPLS_L2_PORT_TYPE_VPWS_NW = 0x2, OFDPA_MPLS_L2_PORT_TYPE_VPLS_NW = 0x3 } |
enum | OFDPA_MPLS_LABEL_SUBTYPE_t { OFDPA_MPLS_INTERFACE = 0, OFDPA_MPLS_L2_VPN_LABEL = 1, OFDPA_MPLS_L3_VPN_LABEL = 2, OFDPA_MPLS_TUNNEL_LABEL1 = 3, OFDPA_MPLS_TUNNEL_LABEL2 = 4, OFDPA_MPLS_SWAP_LABEL = 5 } |
MPLS Label Group Sub-type Enumerator. | |
enum | OFDPA_MPLS_TYPE_t { OFDPA_MPLS_TYPE_VPWS = 1, OFDPA_MPLS_TYPE_VPLS = 2, OFDPA_MPLS_TYPE_OAM = 4, OFDPA_MPLS_TYPE_L3_UNICAST = 8, OFDPA_MPLS_TYPE_L3_MULTICAST = 16, OFDPA_MPLS_TYPE_L3_PHP = 32 } |
enum | OFDPA_OAM_BIN_MODE_t { OFDPA_OAM_BIN_MODE_15M = 0, OFDPA_OAM_BIN_MODE_24H = 1, OFDPA_OAM_BIN_MODE_MAX = 2 } |
enum | OFDPA_OAM_DM_TYPE_t { OFDPA_OAM_DM_TYPE_PROACTIVE = 1, OFDPA_OAM_DM_TYPE_ONDEMAND = 2 } |
enum | OFDPA_OAM_EVENT_MASK_t { OFDPA_OAM_EVENT_ON_DEMAND_LM_SESSION_COMPLETED = 1 << 0, OFDPA_OAM_EVENT_ON_DEMAND_DM_SESSION_COMPLETED = 1 << 1 } |
OAM event type. | |
enum | OFDPA_OAM_LB_DISCOVERY_TYPE_t { OFDPA_OAM_LB_DISCOVERY_NONE = 0, OFDPA_OAM_LB_DISCOVERY_INGRESS, OFDPA_OAM_LB_DISCOVERY_EGRESS, OFDPA_OAM_LB_DISCOVERY_ICC_MEPID, OFDPA_OAM_LB_DISCOVERY_ICC_MIPID, OFDPA_OAM_LB_DISCOVERY_RESERVED } |
enum | OFDPA_OAM_LB_TEST_TLV_TYPE_t { OFDPA_OAM_LB_TEST_TLV_NULL = 0, OFDPA_OAM_LB_TEST_TLV_NULL_CRC32, OFDPA_OAM_LB_TEST_TLV_PRBS, OFDPA_OAM_LB_TEST_TLV_PRBS_CRC32 } |
enum | OFDPA_OAM_MEG_TYPE_t { OFDPA_OAM_MEG_TYPE_ETHERNET, OFDPA_OAM_MEG_TYPE_G8113_1 } |
enum | OFDPA_OAM_MP_TYPE_t { OFDPA_OAM_MP_TYPE_MEP = 0, OFDPA_OAM_MP_TYPE_MIP = 1 } |
enum | OFDPA_OAM_PM_ROLE_t { OFDPA_OAM_PM_ROLE_INITIATOR = 0, OFDPA_OAM_PM_ROLE_RESPONDER = 1, OFDPA_OAM_PM_ROLE_BOTH = 2 } |
enum | OFDPA_OAM_PM_STATE_t { OFDPA_OAM_PM_STATE_STOPPED = 0, OFDPA_OAM_PM_STATE_RUNNING = 1 } |
enum | OFDPA_OAM_PM_TOOL_TYPE_t { OFDPA_OAM_PM_TOOL_TYPE_CCM = 0, OFDPA_OAM_PM_TOOL_TYPE_LM = 1, OFDPA_OAM_PM_TOOL_TYPE_SLM = 2 } |
enum | OFDPA_OAM_RMEP_STATE_t { OFDPA_OAM_RMEP_STATE_IDLE = 1, OFDPA_OAM_RMEP_STATE_START = 2, OFDPA_OAM_RMEP_STATE_FAILED = 3, OFDPA_OAM_RMEP_STATE_OK = 4 } |
enum | OFDPA_PACKET_IN_REASON_t { OFDPA_PACKET_IN_REASON_NO_MATCH = 0, OFDPA_PACKET_IN_REASON_ACTION, OFDPA_PACKET_IN_REASON_INVALID_TTL, OFDPA_PACKET_IN_REASON_OAM } |
Packet In reason codes. More... | |
enum | OFDPA_PORT_CONFIG_t { OFDPA_PORT_CONFIG_DOWN = 1 << 0 } |
Flags to configure a port. More... | |
enum | OFDPA_PORT_EVENT_MASK_t { OFDPA_EVENT_PORT_CREATE = 1 << 0, OFDPA_EVENT_PORT_DELETE = 1 << 1, OFDPA_EVENT_PORT_STATE = 1 << 2 } |
Port event type. More... | |
enum | OFDPA_PORT_FEATURE_t { OFDPA_PORT_FEAT_10MB_HD = 1 << 0, OFDPA_PORT_FEAT_10MB_FD = 1 << 1, OFDPA_PORT_FEAT_100MB_HD = 1 << 2, OFDPA_PORT_FEAT_100MB_FD = 1 << 3, OFDPA_PORT_FEAT_1GB_HD = 1 << 4, OFDPA_PORT_FEAT_1GB_FD = 1 << 5, OFDPA_PORT_FEAT_10GB_FD = 1 << 6, OFDPA_PORT_FEAT_40GB_FD = 1 << 7, OFDPA_PORT_FEAT_100GB_FD = 1 << 8, OFDPA_PORT_FEAT_1TB_FD = 1 << 9, OFDPA_PORT_FEAT_OTHER = 1 << 10, OFDPA_PORT_FEAT_COPPER = 1 << 11, OFDPA_PORT_FEAT_FIBER = 1 << 12, OFDPA_PORT_FEAT_AUTONEG = 1 << 13, OFDPA_PORT_FEAT_PAUSE = 1 << 14, OFDPA_PORT_FEAT_PAUSE_ASYM = 1 << 15 } |
Features of ports available in a datapath. More... | |
enum | OFDPA_PORT_STATE_t { OFDPA_PORT_STATE_LINK_DOWN = 1 << 0, OFDPA_PORT_STATE_BLOCKED = 1 << 1, OFDPA_PORT_STATE_LIVE = 1 << 2 } |
Current state of the port. More... | |
enum | OFDPA_PORT_TYPE_t { OFDPA_PORT_TYPE_PHYSICAL = 0, OFDPA_PORT_TYPE_LOGICAL_TUNNEL = 1, OFDPA_PORT_TYPE_OAM_PROTECTION_LIVENESS_LOGICAL_PORT = 0xf000 } |
enum | OFDPA_PROTECTION_INDEX_t { ODFPA_PROTECTION_PATH = 0, ODFPA_WORKING_PATH = 1 } |
Indicates whether MPLS label is for the working (1) or protection path (0). More... | |
enum | OFDPA_PROTECTION_SWITCH_REQUEST_TYPE_t { OFDPA_PROTECTION_SWITCH_REQUEST_TYPE_CLEAR = 2, OFDPA_PROTECTION_SWITCH_REQUEST_TYPE_MANUAL_LOCK = 3, OFDPA_PROTECTION_SWITCH_REQUEST_TYPE_FORCE_SWITCH = 4, OFDPA_PROTECTION_SWITCH_REQUEST_TYPE_MANUAL_SWITCH_P = 5, OFDPA_PROTECTION_SWITCH_REQUEST_TYPE_MANUAL_SWITCH = 6 } |
enum | OFDPA_QOS_COLORS_t { OFDPA_QOS_GREEN = 0, OFDPA_QOS_YELLOW = 1, OFDPA_QOS_RED = 2, OFDPA_QOS_RESERVED = 3 } |
enum | OFDPA_TCM_METER_MODE_t { OFDPA_TCM_METER_MODE_TRTCM = 1, OFDPA_TCM_METER_MODE_SRTCM = 2, OFDPA_TCM_METER_MODE_MOD_TRTCM = 3 } |
enum | OFDPA_TUNNEL_PORT_TYPE_t { OFDPA_TUNNEL_PORT_TYPE_ENDPOINT = 1, OFDPA_TUNNEL_PORT_TYPE_ACCESS } |
enum | OFDPA_TUNNEL_PROTO_t { OFDPA_TUNNEL_PROTO_VXLAN = 1 } |
enum | OFDPA_TUNNELID_TYPE_t { OFDPA_TUNNELID_TYPE_DATA_CENTER_OVERLAY = 0, OFDPA_TUNNELID_TYPE_MPLS_TP = 1 } |
enum | ofdpaComponentIds_t { OFDPA_COMPONENT_FIRST = 1, OFDPA_COMPONENT_API = OFDPA_COMPONENT_FIRST, OFDPA_COMPONENT_MAPPING, OFDPA_COMPONENT_RPC, OFDPA_COMPONENT_OFDB, OFDPA_COMPONENT_DATAPATH, OFDPA_COMPONENT_G8131, OFDPA_COMPONENT_Y1731, OFDPA_COMPONENT_MAX } |
Component enumerator. More... | |
enum | ofdpaDebugLevels_t { OFDPA_DEBUG_ALWAYS = 0, OFDPA_DEBUG_BASIC, OFDPA_DEBUG_VERBOSE, OFDPA_DEBUG_VERY_VERBOSE, OFDPA_DEBUG_TOO_VERBOSE, OFDPA_DEBUG_MAX } |
Debug verbosity enumerator. More... | |
#define OFDPA_MAC_ADDR_IS_ALL_ONES | ( | mac | ) |
Check if MAC address is all ones.
Definition at line 112 of file ofdpa_datatypes.h.
#define OFDPA_MAC_ADDR_IS_NULL | ( | mac | ) |
Check if MAC address is NULL.
Definition at line 107 of file ofdpa_datatypes.h.
typedef struct ofdpaEgressTpidFlowEntry_s ofdpaEgressTpidFlowEntry_t |
Egress TPID Flow Table Entry Flow instructions for this table are fixed.
The caller specifies the new TPID value for the pushed VLAN tag, however the acceptable values for this parameter are constrained. Matched packets are handled by an Apply-Actions instruction with the following action set:
typedef struct ofdpaFlowEntryStats_s ofdpaFlowEntryStats_t |
Flow Stats information.
typedef struct ofdpaGroupEntry_s ofdpaGroupEntry_t |
The Group Table contains one entry for each Group.
The table is indexed by the groupId which identifies the group entry. Data is encoded into the groupId to specify the OF-DPA group entry type and information required by OF-DPA to configure the datapath.
The groupId encoding method is:
L2 Interface and L2 Unfiltered Interface type: (MSB to LSB) 4 bits encode the Group Table Entry type | 12 bits of VLAN ID | 16 bits of port identifier
L2 Multicast, L2 Flood and L3 Multicast types: (MSB to LSB) 4 bits encode the Group Table Entry type | 12 bits of VLAN ID | 16 bits of index
L2 Rewrite, L3 Unicast, L3 Interface and L3 ECMP types: (MSB to LSB) 4 bits encode the Group Table Entry type | 28 bits of index
L2 Overlay (MSB to LSB) 4 bits encode the Group Table Entry type | 16 bits of tunnel ID | 2 bits of sub-type | 10 bits of index
MPLS Group Sub-type L2 Flood and L2 Multicast (MSB to LSB) 4 bits encode the Group Table Entry type | 4 bits of MPLS Group Sub-type | 8 bits of index | 16 bits of tunnel ID
MPLS Group Sub-types MPLS Interface, MPLS Label, MPLS Fast Failover, MPLS Protection, MPLS ECMP types (MSB to LSB) 4 bits encode the Group Table Entry type | 4 bits of MPLS Group Sub-type | 24 bits of indexGroup Table Entry
typedef struct ofdpaMeterParametersTcm_s ofdpaMeterParametersTcm_t |
Parameters used to configure an Three-Color-Marking type meter.
typedef struct ofdpaPortFeature_s ofdpaPortFeature_t |
Bitmaps of OFDPA_PORT_FEAT_* that describe features.
All bits zeroed if unsupported or unavailable.
typedef struct ofdpaPortStats_s ofdpaPortStats_t |
Port statistics API structure.
Unsupported counters return the value 0xFFFFFFFFFFFFFFFF indicating the counter data is invalid.
enum OFDPA_CONTROL_t |
enable or disable for config or status parameter.
Definition at line 277 of file ofdpa_datatypes.h.
enum OFDPA_ERROR_t |
OFDPA uses these enumerators to indicate the error codes.
Definition at line 46 of file ofdpa_datatypes.h.
Flow event type.
OFDPA_FLOW_EVENT_IDLE_TIMEOUT |
Flow idle timeout event. |
OFDPA_FLOW_EVENT_HARD_TIMEOUT |
Flow hard timeout event. |
Definition at line 2397 of file ofdpa_datatypes.h.
Flow Table Id enumerator.
Definition at line 377 of file ofdpa_datatypes.h.
Group Type Enumerator.
Definition at line 1870 of file ofdpa_datatypes.h.
L2 Overlay Group Sub-type Enumerator.
Definition at line 1902 of file ofdpa_datatypes.h.
enum OFDPA_MLP_ARCH_t |
Definition at line 3057 of file ofdpa_datatypes.h.
enum OFDPA_MPLS_TYPE_t |
Definition at line 357 of file ofdpa_datatypes.h.
Packet In reason codes.
OFDPA_PACKET_IN_REASON_NO_MATCH |
No Match. |
OFDPA_PACKET_IN_REASON_ACTION |
Action. |
OFDPA_PACKET_IN_REASON_INVALID_TTL |
Invalid TTL. |
Definition at line 2338 of file ofdpa_datatypes.h.
enum OFDPA_PORT_CONFIG_t |
Flags to configure a port.
These flags are used in ofp_port to describe the current configuration. They are used in the ofp_port_mod message to configure the port's behavior.
Definition at line 2205 of file ofdpa_datatypes.h.
Port event type.
OFDPA_EVENT_PORT_CREATE |
Port created. |
OFDPA_EVENT_PORT_DELETE |
Port deleted. |
OFDPA_EVENT_PORT_STATE |
Port link state has changed. |
Definition at line 2370 of file ofdpa_datatypes.h.
enum OFDPA_PORT_FEATURE_t |
Features of ports available in a datapath.
Definition at line 2221 of file ofdpa_datatypes.h.
enum OFDPA_PORT_STATE_t |
Current state of the port.
These are read by the controller.
OFDPA_PORT_STATE_LINK_DOWN |
No physical link present. |
OFDPA_PORT_STATE_BLOCKED |
Port is blocked. |
OFDPA_PORT_STATE_LIVE |
Live for Fast Failover Group. |
Definition at line 2213 of file ofdpa_datatypes.h.
enum OFDPA_PORT_TYPE_t |
Definition at line 212 of file ofdpa_datatypes.h.
Indicates whether MPLS label is for the working (1) or protection path (0).
Definition at line 206 of file ofdpa_datatypes.h.
OFDPA_TUNNEL_PORT_TYPE_ENDPOINT |
Tunnel Port type Endpoint. |
OFDPA_TUNNEL_PORT_TYPE_ACCESS |
Tunnel Port type Access. |
Definition at line 2421 of file ofdpa_datatypes.h.
enum OFDPA_TUNNEL_PROTO_t |
Definition at line 2430 of file ofdpa_datatypes.h.
OFDPA_TUNNELID_TYPE_DATA_CENTER_OVERLAY |
Tunnel ID type Data Center Overlay. |
OFDPA_TUNNELID_TYPE_MPLS_TP |
Tunnel ID type MPLS-TP. |
Definition at line 338 of file ofdpa_datatypes.h.
enum ofdpaComponentIds_t |
Component enumerator.
Definition at line 289 of file ofdpa_datatypes.h.
enum ofdpaDebugLevels_t |
Debug verbosity enumerator.
Definition at line 312 of file ofdpa_datatypes.h.