From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
To: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Cc: Ye Xiaolong <xiaolong.ye@intel.com>, "users@dpdk.org" <users@dpdk.org>
Subject: Re: [dpdk-users] Why flow can not be created?
Date: Fri, 09 Aug 2019 15:05:58 +0900 [thread overview]
Message-ID: <20190809150558.D116.17218CA3@ntt-tx.co.jp_1> (raw)
In-Reply-To: <20190806091234.GJ4512@6wind.com>
Hello Adrien,
Thanks for your response.
> On Fri, Aug 02, 2019 at 03:06:19PM +0900, Hideyuki Yamashita wrote:
> > Helllo Experts,
>
> I think most of them are on vacation :)
[Hideyuki]
I agree.
How about you?
> > Q1. Are there any NICs which supports entag/detag VLAN?
> > I searched source DPDK source code with keyword "OF_POP_VLAN" or "OF_POP_VLAN"
> > and found some codes within mlx5_flow_tcf.c and cxgbe_flow.c.
>
> Indeed only those two seem to implement that. However depending on what
> you're trying to achieve, there could be a workaround as many drivers
> provide support for VLAN entag/detag outside rte_flow.
>
> For Rx, you can dedicate queues to perform VLAN stripping through
> rte_eth_dev_set_vlan_strip_on_queue(), and use rte_flow to redirect traffic
> of interest to these queues after matching specific VLANs and other
> properties for instance.
>
> If you don't care about specific VLANs or queues, you can request VLAN
> stripping globally using ETH_VLAN_STRIP_OFFLOAD with
> rte_eth_dev_set_vlan_offload(), then rely on mbuf->ol_flags & PKT_RX_VLAN to
> retrieve it from mbuf->vlan_tci.
>
> On the Tx side you simply have to request mbuf->ol_flags | PKT_TX_VLAN while
> doing Tx. As for Rx, make sure DEV_TX_OFFLOAD_VLAN_INSERT is among the Tx
> offloads requested during setup (rte_eth_conf->txmode.offloads).
[Hideyuki]
There are at least 3 alternatives for Entag/Detag VLAN tag in hardware.
Alt1: rte_flow only (mlx5, cxgbe supports?)
Alt2: rte_eth_dev_set_vlan_strip_on_queue() call combine with rte_flow
(route specific traffic to specific quueue) this is applicable for RX only
Alt3: rte_eth_dev_set_vlan_offload()
Q1. Why there are multiple way to achieve same purpose?
(Is it long story?)
> > Q2. Are there any plans in DPDK community to update document about
> > NIC to update support of rte_flow?
> > I have heard the situation about document form Adrien, and to be honest
> > I felt it is very hard to take try and error with testpmd for every NIC.
>
> This was discussed in the past, however so far no action was taken.
>
> I think we cannot summarize all supported combinations for each NIC while
> covering their specific quirks efficiently. For instance, two NICs may
> support a given pattern item, but not necessarily at the same position in
> the pattern. Likewise for pattern item fields, they may not support the same
> masks.
[Hideyuki]
Thanks for summerizing up the problem.
So many combinations to be sorted even for one NIC.
And it makes more difficult to sort out support status for all NICs,
right?
> The most sensible approach is perhaps to provide a list of popular flow
> rules tagged with the NICs supporting them.
Maybe it is a very good starting point.
I agree that if it is difficult to sort out "everything", to limit
number is the possible solution
- limit the number of NICs
or
- limit the flow rules (typical flows)
> Anyway since it's not a huge priority at the moment, you should start a
> discussion on that topic on the dev@dpdk.org mailing list. Without noise,
> nothing will happen :) As usual contributions are always welcome!
OK.
Thanks I will come back to dev-ml with "what we want from user
perspective".
Thanks for your guidance.
BR,
Hideyuki Yamashita
NTT TechnoCross
> --
> Adrien Mazarguil
> 6WIND
------------------------------------------------
NTTテクノクロス株式会社
フューチャーネットワーク事業部 第一事業ユニット
山下 英之(email: yamashita.hideyuki@po.ntt-tx.co.jp)
〒167-0043 東京都杉並区上荻1-2-1 荻窪インテグラルタワー13F
TEL 03-5347-8026 FAX 03-3392-6803
------------------------------------------------------
next prev parent reply other threads:[~2019-08-09 6:06 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-19 6:08 Hideyuki Yamashita
2019-07-22 12:48 ` Ye Xiaolong
2019-07-23 6:26 ` Hideyuki Yamashita
2019-07-30 10:37 ` Hideyuki Yamashita
2019-07-30 12:25 ` Adrien Mazarguil
2019-07-31 2:30 ` Hideyuki Yamashita
2019-08-02 6:06 ` Hideyuki Yamashita
2019-08-06 9:12 ` Adrien Mazarguil
2019-08-06 9:59 ` Moti Haimovsky
2019-08-09 6:05 ` Hideyuki Yamashita [this message]
2019-08-14 5:56 ` [dpdk-users] How L2 broadcast is handled under rte_flow? Hideyuki Yamashita
2019-08-29 3:11 ` Hideyuki Yamashita
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=20190809150558.D116.17218CA3@ntt-tx.co.jp_1 \
--to=yamashita.hideyuki@ntt-tx.co.jp \
--cc=adrien.mazarguil@6wind.com \
--cc=users@dpdk.org \
--cc=xiaolong.ye@intel.com \
/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).