Skip to content

Commit

Permalink
1. remove the use of DPAPP_CONNTRACK
Browse files Browse the repository at this point in the history
2. refactor dash_ingress
  • Loading branch information
jimmyzhai committed Aug 28, 2024
1 parent 4979ac6 commit 89999c8
Show file tree
Hide file tree
Showing 17 changed files with 272 additions and 226 deletions.
2 changes: 0 additions & 2 deletions dash-pipeline/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ ifeq ($(HAVE_DPAPP),y)
DPAPP_LINK = veth4
DPAPP_LINK_PEER = veth5
SWITCH_PORT_DPAPP = --interface 2@$(DPAPP_LINK)
D_DPAPP_CONNTRACK = -DDPAPP_CONNTRACK
endif

mkfile_path := $(abspath $(lastword $(MAKEFILE_LIST)))
Expand Down Expand Up @@ -130,7 +129,6 @@ $(P4_OUTDIR)/dash_pipeline_p4rt.txt: $(P4_SRC)
-w / \
$(DOCKER_P4C_BMV2_IMG) p4c-bm2-ss \
-DTARGET_BMV2_V1MODEL \
$(D_DPAPP_CONNTRACK) \
$(P4_MAIN) \
-o $(P4_OUTDIR)/dash_pipeline.json \
--p4runtime-files $(P4_OUTDIR)/dash_pipeline_p4rt.json,$(P4_OUTDIR)/dash_pipeline_p4rt.txt \
Expand Down
64 changes: 32 additions & 32 deletions dash-pipeline/SAI/specs/dash_acl.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,11 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 50200087
id: 37949057
actions:
default: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: default
id: 25655048
id: 21989040
attr_param_id: {}
- !!python/object:utils.sai_spec.sai_api.SaiApi
name: dash_acl_rule
Expand Down Expand Up @@ -194,116 +194,116 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 41950136
id: 43936368
actions:
SAI_DASH_ACL_RULE_ACTION_PERMIT: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_PERMIT
id: 32161567
id: 24892843
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE
id: 20706700
id: 26577723
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_DENY: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_DENY
id: 28146588
id: 31332881
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE
id: 31424218
id: 24146215
attr_param_id: {}
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 43016664
id: 48549629
actions:
SAI_DASH_ACL_RULE_ACTION_PERMIT: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_PERMIT
id: 32161567
id: 24892843
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE
id: 20706700
id: 26577723
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_DENY: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_DENY
id: 28146588
id: 31332881
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE
id: 31424218
id: 24146215
attr_param_id: {}
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 49695908
id: 40869404
actions:
SAI_DASH_ACL_RULE_ACTION_PERMIT: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_PERMIT
id: 32161567
id: 24892843
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE
id: 20706700
id: 26577723
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_DENY: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_DENY
id: 28146588
id: 31332881
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE
id: 31424218
id: 24146215
attr_param_id: {}
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 49209582
id: 49672642
actions:
SAI_DASH_ACL_RULE_ACTION_PERMIT: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_PERMIT
id: 18858683
id: 22622424
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE
id: 24263137
id: 27458076
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_DENY: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_DENY
id: 29962337
id: 27228779
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE
id: 26077229
id: 29275145
attr_param_id: {}
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 36478314
id: 37932124
actions:
SAI_DASH_ACL_RULE_ACTION_PERMIT: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_PERMIT
id: 18858683
id: 22622424
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE
id: 24263137
id: 27458076
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_DENY: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_DENY
id: 29962337
id: 27228779
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE
id: 26077229
id: 29275145
attr_param_id: {}
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 39012793
id: 46113118
actions:
SAI_DASH_ACL_RULE_ACTION_PERMIT: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_PERMIT
id: 18858683
id: 22622424
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE
id: 24263137
id: 27458076
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_DENY: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_DENY
id: 29962337
id: 27228779
attr_param_id: {}
SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE
id: 26077229
id: 29275145
attr_param_id: {}
4 changes: 2 additions & 2 deletions dash-pipeline/SAI/specs/dash_direction_lookup.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -64,10 +64,10 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 44703784
id: 49875338
actions:
SAI_DIRECTION_LOOKUP_ENTRY_ACTION_SET_OUTBOUND_DIRECTION: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_DIRECTION_LOOKUP_ENTRY_ACTION_SET_OUTBOUND_DIRECTION
id: 17408972
id: 32588257
attr_param_id:
SAI_DIRECTION_LOOKUP_ENTRY_ATTR_DASH_ENI_MAC_OVERRIDE_TYPE: 1
21 changes: 17 additions & 4 deletions dash-pipeline/SAI/specs/dash_eni.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -64,11 +64,11 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 36648123
id: 39883185
actions:
SAI_ENI_ETHER_ADDRESS_MAP_ENTRY_ACTION_SET_ENI: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_ENI_ETHER_ADDRESS_MAP_ENTRY_ACTION_SET_ENI
id: 24618133
id: 19019152
attr_param_id:
SAI_ENI_ETHER_ADDRESS_MAP_ENTRY_ATTR_ENI_ID: 1
- !!python/object:utils.sai_spec.sai_api.SaiApi
Expand Down Expand Up @@ -598,6 +598,19 @@ sai_apis:
valid_only: null
is_vlan: false
deprecated: false
- !!python/object:utils.sai_spec.sai_attribute.SaiAttribute
name: SAI_ENI_ATTR_FLOW_ENABLED
description: Action parameter flow enabled
type: bool
attr_value_field: booldata
default: 'false'
isresourcetype: false
flags: CREATE_AND_SET
object_name: null
allow_null: false
valid_only: null
is_vlan: false
deprecated: false
stats:
- !!python/object:utils.sai_spec.sai_attribute.SaiAttribute
name: SAI_ENI_STAT_RX_BYTES
Expand Down Expand Up @@ -1616,9 +1629,9 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 45859274
id: 38483381
actions:
default: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: default
id: 27167550
id: 30359009
attr_param_id: {}
10 changes: 5 additions & 5 deletions dash-pipeline/SAI/specs/dash_inbound_routing.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -141,26 +141,26 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 38920290
id: 46226512
actions:
SAI_INBOUND_ROUTING_ENTRY_ACTION_TUNNEL_DECAP: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_INBOUND_ROUTING_ENTRY_ACTION_TUNNEL_DECAP
id: 22253429
id: 19753110
attr_param_id:
SAI_INBOUND_ROUTING_ENTRY_ATTR_METER_CLASS_OR: 1
SAI_INBOUND_ROUTING_ENTRY_ATTR_METER_CLASS_AND: 2
SAI_INBOUND_ROUTING_ENTRY_ACTION_TUNNEL_DECAP_PA_VALIDATE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_INBOUND_ROUTING_ENTRY_ACTION_TUNNEL_DECAP_PA_VALIDATE
id: 27987616
id: 25922590
attr_param_id:
SAI_INBOUND_ROUTING_ENTRY_ATTR_SRC_VNET_ID: 1
SAI_INBOUND_ROUTING_ENTRY_ATTR_METER_CLASS_OR: 2
SAI_INBOUND_ROUTING_ENTRY_ATTR_METER_CLASS_AND: 3
SAI_INBOUND_ROUTING_ENTRY_ACTION_VXLAN_DECAP: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_INBOUND_ROUTING_ENTRY_ACTION_VXLAN_DECAP
id: 32581635
id: 29008246
attr_param_id: {}
SAI_INBOUND_ROUTING_ENTRY_ACTION_VXLAN_DECAP_PA_VALIDATE: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_INBOUND_ROUTING_ENTRY_ACTION_VXLAN_DECAP_PA_VALIDATE
id: 22711915
id: 21551298
attr_param_id: {}
2 changes: 1 addition & 1 deletion dash-pipeline/SAI/specs/dash_outbound_ca_to_pa.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -261,7 +261,7 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 43335456
id: 48765007
actions:
SAI_OUTBOUND_CA_TO_PA_ENTRY_ACTION_SET_TUNNEL_MAPPING: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_OUTBOUND_CA_TO_PA_ENTRY_ACTION_SET_TUNNEL_MAPPING
Expand Down
6 changes: 3 additions & 3 deletions dash-pipeline/SAI/specs/dash_outbound_routing.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -294,7 +294,7 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 44010720
id: 38546097
actions:
SAI_OUTBOUND_ROUTING_ENTRY_ACTION_ROUTE_VNET: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_OUTBOUND_ROUTING_ENTRY_ACTION_ROUTE_VNET
Expand Down Expand Up @@ -367,9 +367,9 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 34522254
id: 40572680
actions:
default: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: default
id: 20489967
id: 30077100
attr_param_id: {}
4 changes: 2 additions & 2 deletions dash-pipeline/SAI/specs/dash_pa_validation.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -70,9 +70,9 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 35526612
id: 43665660
actions:
SAI_PA_VALIDATION_ENTRY_ACTION_PERMIT: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_PA_VALIDATION_ENTRY_ACTION_PERMIT
id: 32591400
id: 19504487
attr_param_id: {}
4 changes: 2 additions & 2 deletions dash-pipeline/SAI/specs/dash_tunnel.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -53,9 +53,9 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 44400659
id: 34128771
actions:
default: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: default
id: 27891720
id: 18727423
attr_param_id: {}
4 changes: 2 additions & 2 deletions dash-pipeline/SAI/specs/dash_vip.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,9 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 45245089
id: 48212080
actions:
SAI_VIP_ENTRY_ACTION_ACCEPT: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: SAI_VIP_ENTRY_ACTION_ACCEPT
id: 26041632
id: 22859453
attr_param_id: {}
4 changes: 2 additions & 2 deletions dash-pipeline/SAI/specs/dash_vnet.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,9 @@ sai_apis:
p4_meta: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4Meta
tables:
- !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaTable
id: 49590243
id: 39583935
actions:
default: !!python/object:utils.sai_spec.sai_api_p4_meta.SaiApiP4MetaAction
name: default
id: 20510911
id: 28116018
attr_param_id: {}
5 changes: 0 additions & 5 deletions dash-pipeline/bmv2/dash_headers.p4
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,6 @@ header ipv6_t {
const bit<16> IPV6_HDR_SIZE=320/8;


#ifdef DPAPP_CONNTRACK
enum bit<16> dash_flow_enabled_key_t {
ENI_ADDR = (1 << 0),
VNI = (1 << 1),
Expand Down Expand Up @@ -235,10 +234,7 @@ const bit<16> PACKET_META_HDR_SIZE=(8+4+4+16)/8;
#define DASH_ETHTYPE 0x876d
#define DPAPP_MAC 0x02fe23f0e413

#endif // DPAPP_CONNTRACK

struct headers_t {
#ifdef DPAPP_CONNTRACK
/* packet metadata headers */
ethernet_t dp_ethernet;
dash_packet_meta_t packet_meta;
Expand All @@ -247,7 +243,6 @@ struct headers_t {
overlay_rewrite_data_t flow_overlay_data;
encap_data_t flow_encap_data;
encap_data_t flow_tunnel_data;
#endif // DPAPP_CONNTRACK

/* Underlay 1 headers */
ethernet_t u1_ethernet;
Expand Down
3 changes: 1 addition & 2 deletions dash-pipeline/bmv2/dash_metadata.p4
Original file line number Diff line number Diff line change
Expand Up @@ -182,13 +182,12 @@ struct metadata_t {

// Flow data
conntrack_data_t conntrack_data;
#ifdef DPAPP_CONNTRACK
flow_table_data_t flow_table;
dash_flow_state_t flow_state;
bit<16> bulk_get_session_id;
bit<16> bulk_get_session_filter_id;
bool flow_enabled;
bool to_dpapp;
#endif // DPAPP_CONNTRACK

// Stage transition control
dash_pipeline_stage_t target_stage;
Expand Down
Loading

0 comments on commit 89999c8

Please sign in to comment.