From: "Sexton, Rory" <rory.sexton@intel.com>
To: "Sexton, Rory" <rory.sexton@intel.com>,
Ori Kam <orika@mellanox.com>, "dev@dpdk.org" <dev@dpdk.org>
Cc: "Zhang, Qi Z" <qi.z.zhang@intel.com>,
"Xing, Beilei" <beilei.xing@intel.com>,
Adrien Mazarguil <adrien.mazarguil@6wind.com>,
"Jagus, DariuszX" <dariuszx.jagus@intel.com>
Subject: Re: [dpdk-dev] [PATCH] ethdev: add L2TPv3 header to flow API
Date: Thu, 12 Dec 2019 13:38:09 +0000 [thread overview]
Message-ID: <MN2PR11MB367831FD188032ABBD816748EC550@MN2PR11MB3678.namprd11.prod.outlook.com> (raw)
In-Reply-To: <BYAPR11MB36719A3007A83C26E474E949EC5A0@BYAPR11MB3671.namprd11.prod.outlook.com>
Hi Ori,
Let me rework the patch to make it clearer that this is supporting new flow type for l2tpv3 over IP, rather than l2tpv2/v3 over UDP which is how you interpreted it.
Will take into account all your feedback. Please review v2 once I submit.
Regards,
Rory
-----Original Message-----
From: dev <dev-bounces@dpdk.org> On Behalf Of Sexton, Rory
Sent: Wednesday, December 11, 2019 4:31 PM
To: Ori Kam <orika@mellanox.com>; dev@dpdk.org
Cc: Zhang, Qi Z <qi.z.zhang@intel.com>; Xing, Beilei <beilei.xing@intel.com>; Adrien Mazarguil <adrien.mazarguil@6wind.com>; Jagus, DariuszX <dariuszx.jagus@intel.com>
Subject: Re: [dpdk-dev] [PATCH] ethdev: add L2TPv3 header to flow API
Hi Ori,
See comments below.
Regards,
Rory
> > > > > > +/**
> > > > > > + * RTE_FLOW_ITEM_TYPE_L2TPV3.
> > > > > > + *
> > > > > > + * Matches a L2TPv3 header.
> > > > > > + */
> > > > > > +struct rte_flow_item_l2tpv3 {
> > > > > > + rte_be32_t session_id; /**< Session ID. */ };
> > > > >
> > > > >Does it make sense that in future we will want to match on the
> > > > >T / L / ver /
> > > > Ns / Nr?
> > > > >
> > > > >Please also consider that any change will be ABI / API
> > > > >breakage, which will be allowed only next year.
> > > > >
> > > >
> > > > I don't foresee us wanting to match on any of the other fields,
> > > > T / L / ver / Ns/ Nr.
> > > > The session id would typically be the only field of interest in
> > > > the
> > > > l2tpv3 header.
> > >
> > > I think that adding all fields to the structure will solve the
> > > possible issue
> > with adding matching later.
> > > Also and even more important you will be able to use it for
> > > creating the
> > raw_encap / raw_decap buffers.
> > >
> > >What do you think?
> >
> > Based on the differences between v2 and v3 the only field of
> > interest in
> > l2tpv3 over IP is the Session ID.
> > I agree it would make sense to add all fields if we were
> > implementing
> > l2tpv2 however v2 would require a different implementation to v3 due
> > to the differences between both Protocols.
>
> Even if we just support v3, I think that it is a good idea to add all fields of v3.
> This will allow the use of the raw_encap / raw_decap actions.
> Please also note that you didn't add the new item to cmd_set_raw_parsed function.
> this function is used in order to create raw_encap/ raw_decap encapsulations.
I think the confusion here is based on the fact that there are 2 separate types of l2tpv3.
- l2tpv3 over UDP, which is very similar to l2tpv2 with only change being 16 bit Tunnel ID
and 16 bit Session ID changing to 32 bit Session ID. All other fields remain (T/L/Ver/Ns/Nr).
- l2tpv3 over IP is another type of l2tpv3 that is carried over IP rather than UDP and as such
the message format is entirely different and consists of just a 32 bit Session ID. The other
fields mentioned above do not exist at all in this l2tpv3 header.
This patch was targeted at creating a flow to handle l2tpv3 over IP exclusively. This is why the Session ID is the only field in the flow item.
I can add the item to cmd_set_raw_parsed function.
prev parent reply other threads:[~2019-12-12 13:42 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-04 14:10 Rory Sexton
2019-12-04 14:10 ` [dpdk-dev] [PATCH] net/i40e: Add new customized pctype for l2tpv3 Rory Sexton
2019-12-11 22:51 ` Xing, Beilei
2019-12-13 11:17 ` Sexton, Rory
2019-12-13 17:33 ` Xing, Beilei
2019-12-16 10:13 ` Sexton, Rory
2019-12-10 10:16 ` [dpdk-dev] [PATCH] ethdev: add L2TPv3 header to flow API Ori Kam
2019-12-10 14:52 ` Sexton, Rory
2019-12-10 20:32 ` Ori Kam
2019-12-11 11:36 ` Sexton, Rory
2019-12-11 13:30 ` Ori Kam
2019-12-11 16:31 ` Sexton, Rory
2019-12-12 13:38 ` Sexton, Rory [this message]
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=MN2PR11MB367831FD188032ABBD816748EC550@MN2PR11MB3678.namprd11.prod.outlook.com \
--to=rory.sexton@intel.com \
--cc=adrien.mazarguil@6wind.com \
--cc=beilei.xing@intel.com \
--cc=dariuszx.jagus@intel.com \
--cc=dev@dpdk.org \
--cc=orika@mellanox.com \
--cc=qi.z.zhang@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).