All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sowmini Varadhan <sowmini05@gmail.com>
To: sowmini05@gmail.com, dev@dpdk.org
Subject: [dpdk-dev] [PATCH RFC 0/2] TCP flow classification using 4-tuple and flags
Date: Sun, 12 Jan 2020 23:08:37 +0000	[thread overview]
Message-ID: <cover.1578787797.git.sowmini.varadhan@microsoft.com> (raw)

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


             reply	other threads:[~2020-01-12 23:08 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-12 23:08 Sowmini Varadhan [this message]
2020-01-12 23:08 ` [dpdk-dev] [PATCH RFC 1/2] Hooks to allow the setting of filters on tcp flags Sowmini Varadhan
2020-01-12 23:08 ` [dpdk-dev] [PATCH RFC 2/2] Allow the flow_classify example to add an ACL table for tcp Sowmini Varadhan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1578787797.git.sowmini.varadhan@microsoft.com \
    --to=sowmini05@gmail.com \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.