DPDK usage discussions
 help / color / mirror / Atom feed
From: Victor Huertas <vhuertas@gmail.com>
To: users@dpdk.org
Cc: Vikutoru <vhuertas@gmail.com>
Subject: [dpdk-users] Understanding the 'offset' field on 'struct rte_acl_field_def' when creating an acl table in a pipeline
Date: Fri, 16 Aug 2019 14:28:03 +0200	[thread overview]
Message-ID: <CAGxG5cgaCtSzDtNGazqNkMQPXMPW8MB2NqMKUuPho0FigrGMmQ@mail.gmail.com> (raw)

Hi all,

I am developing an application with DPDK (v17.11) using a concatenation of
pipelines.
Now I find myself on the definition of an ACL table and more precisely the
format of the ACL fields.

One of the parameters of this field format is the 'offset', which indicates
the number of bytes till the start of the field to check.
Now I have two questions:

- It is possible to specify an ACL field placed on the headroom (ad-hoc
fields defined by myself) or inside the rte_mbuf (like for example the VLAN
TCI when VLAN stripping is enabled at the NIC)? All the examples I have
seen so far assume that an offset value of 0 means the start of Ethernet
header and not the start of rte_mbuf struct. Is there a way to place the
offset start at the rte_mbuf struct?

- If the type of the ACL field is RTE_ACL_FIELD_TYPE_RANGE, it seems to me
that it can only be used if the length of the field is at least 1 byte and
it is aligned with the 1 byte granularity that imposes the 'offset' field.
Does the DPDK library allow me to define a RANGE of values of VLAN tag or
Priority field in the 802.1Q header? It is true that it may be solved if I
use RTE_ACL_FIELD_TYPE_BITMASK but this solution would obligue me to put N
flows, one for each VLAN tag I want to filter. This is not efficient as
depending on the range length it could translated it into hundreds of
entries. A simple range would simplify it a lot.

These to questions are important to me as it conditions the design of the
pipelines of my application. I would appreciate it if some expert could
help me clarify these two questions.

Thanks a lot for your attention.
-- 
Victor

                 reply	other threads:[~2019-08-16 12:28 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=CAGxG5cgaCtSzDtNGazqNkMQPXMPW8MB2NqMKUuPho0FigrGMmQ@mail.gmail.com \
    --to=vhuertas@gmail.com \
    --cc=users@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).