[ONOS-7654] Fix int.p4 to correctly specify src/sink
Change-Id: I298dee9eb7f85aa9467dae70c63c04c4b7bdd660
diff --git a/pipelines/basic/src/main/resources/include/int_source.p4 b/pipelines/basic/src/main/resources/include/int_source.p4
index 15a8b264..1f16ba8 100644
--- a/pipelines/basic/src/main/resources/include/int_source.p4
+++ b/pipelines/basic/src/main/resources/include/int_source.p4
@@ -87,7 +87,8 @@
inout local_metadata_t local_metadata,
inout standard_metadata_t standard_metadata) {
- direct_counter(CounterType.packets_and_bytes) counter_set_source_sink;
+ direct_counter(CounterType.packets_and_bytes) counter_set_source;
+ direct_counter(CounterType.packets_and_bytes) counter_set_sink;
action int_set_source () {
local_metadata.int_meta.source = 1;
@@ -97,23 +98,30 @@
local_metadata.int_meta.sink = 1;
}
- table tb_set_source_sink {
+ table tb_set_source {
key = {
- hdr.ipv4.src_addr: ternary;
- hdr.ipv4.dst_addr: ternary;
- local_metadata.l4_src_port: ternary;
- local_metadata.l4_dst_port: ternary;
+ standard_metadata.ingress_port: exact;
}
actions = {
int_set_source;
+ }
+ counters = counter_set_source;
+ size = 256;
+ }
+ table tb_set_sink {
+ key = {
+ standard_metadata.egress_port: exact;
+ }
+ actions = {
int_set_sink;
}
- counters = counter_set_source_sink;
- size = 1024;
+ counters = counter_set_sink;
+ size = 256;
}
apply {
- tb_set_source_sink.apply();
+ tb_set_source.apply();
+ tb_set_sink.apply();
}
}
#endif