[dpdk-dev] [PATCH RFC 0/2] TCP flow classification using 4-tuple and flags
Sowmini Varadhan
sowmini05 at gmail.com
Mon Jan 13 00:08:37 CET 2020
An interesting class of problems is TCP flow tracking
and classification based on TCP state, which requires
the ability to classify TCP flows on more packet properties
than just the 4-tuple
This patch-set investigates the set of changes needed in the
examples/flow_classify.c needed to achieve one instance of
this class of problems by adding hooks to filter/classify
on both the 4-tuple and tcp flags.
Patch 1 extends examples/flow_classify.c to allow constraints
on tcp flags. Patch 2 extends the ACL handling in
librte_flow_classify to include keys on the properties in
addition to the tcp 4-tuple.
Note that one particular part of this patch-set where feedback
is requested is in allocate_acl_ipv4_tcp_5tuple_rule():
we need to add a key for the 8 bit flags, but the multibit
trie lookup moves in steps of 4 bytes, so it took some hackery
to figure out what byte-ordering was expected, and there were
no documentation/examples to provide guidelines. Comments/suggestions
would be particularly helpful.
Sowmini Varadhan (2):
Hooks to allow the setting of filters on tcp flags
Allow the flow_classify example to add an ACL table for tcp.
examples/flow_classify/flow_classify.c | 113 ++++++++++++++++--
examples/flow_classify/ipv4_rules_file.txt | 22 ++--
lib/librte_flow_classify/rte_flow_classify.c | 84 +++++++++++++
lib/librte_flow_classify/rte_flow_classify.h | 19 +++
.../rte_flow_classify_parse.c | 8 +-
5 files changed, 221 insertions(+), 25 deletions(-)
--
2.20.1
More information about the dev
mailing list