Open jhsmt opened 1 year ago
After some code review - it seems that it is best we stick with "p4runtime". The alternative to switch to "tc filter add .. p4 .." has a strong coupling with network devices whereas table entries are not tied to network devices (rather to specific pipelines).
Currently we have the following 3 syntaxes for tc command line:
1) "tc p4template ..." for creating the program template 2) "tc filter add .. p4 .." for instantiating the created P4 program/pipeline 3) "tc p4runtime ...." for runtime table/action entry
Suggestion is to merge the last two since most TC users are already "trained" on the the "tc filter" syntax. Consequences - we will have to think through performance implications (locking etc) since we designed "tc p4runtime .." to be performant. Going the "tc filter add ..." avenue means we have to use the same codepath as the rest of the TC filters. Alternatively, we could provide the "tc filter add ..." syntax but continue to use the same netlink syntax we have in the current code.