All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ferruh Yigit <ferruh.yigit@intel.com>
To: Ori Kam <orika@mellanox.com>,
	wenzhuo.lu@intel.com, jingjing.wu@intel.com,
	bernard.iremonger@intel.com, arybchenko@solarflare.com,
	stephen@networkplumber.org, adrien.mazarguil@6wind.com
Cc: dev@dpdk.org, dekelp@mellanox.com, thomas@monjalon.net,
	nelio.laranjeiro@6wind.com, yskoh@mellanox.com,
	shahafs@mellanox.com
Subject: Re: [PATCH v6 2/3] app/testpmd: add MPLSoUDP encapsulation
Date: Tue, 23 Oct 2018 10:55:51 +0100	[thread overview]
Message-ID: <7c55fad8-f11d-a509-faeb-5f282aa43edf@intel.com> (raw)
In-Reply-To: <1540229891-112870-3-git-send-email-orika@mellanox.com>

On 10/22/2018 6:38 PM, Ori Kam wrote:
> MPLSoUDP is an example for L3 tunnel encapsulation.
> 
> L3 tunnel type is a tunnel that is missing the layer 2 header of the
> inner packet.
> 
> Example for MPLSoUDP tunnel:
> ETH / IPV4 / UDP / MPLS / IP / L4..L7
> 
> In order to encapsulate such a tunnel there is a need to remove L2 of
> the inner packet and encap the remaining tunnel, this is done by
> applying 2 rte flow commands l2_decap followed by mplsoudp_encap.
> Both commands must appear in the same flow, and from the point of the
> packet it both actions are applyed at the same time. (There is no part
> where a packet doesn't have L2 header).
> 
> Decapsulating such a tunnel works the other way, first we need to decap
> the outer tunnel header and then apply the new L2.
> So the commands will be mplsoudp_decap / l2_encap
> 
> Due to the complex encapsulation of MPLSoUDP and L2  flow actions and
> based on the fact testpmd does not allocate memory, this patch adds a new
> command in testpmd to initialise a global structurs containing the
> necessary information to make the outer layer of the packet.  This same
> global structures will then be used by the flow commands in testpmd when
> the action mplsoudp_encap, mplsoudp_decap, l2_encap, l2_decap, will be
> parsed, at this point, the conversion into such action becomes trivial.
> 
> The l2_encap and l2_decap actions can also be used for other L3 tunnel
> types.
> 
> Signed-off-by: Ori Kam <orika@mellanox.com>

Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>

  reply	other threads:[~2018-10-23  9:55 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-16 16:53 [PATCH 0/3] add generic L2/L3 tunnel encapsulation actions Ori Kam
2018-09-16 16:53 ` [PATCH 1/3] ethdev: " Ori Kam
2018-09-16 16:53 ` [PATCH 2/3] ethdev: convert testpmd encap commands to new API Ori Kam
2018-09-16 16:53 ` [PATCH 3/3] ethdev: remove vxlan and nvgre encapsulation commands Ori Kam
2018-09-26 21:00 ` [PATCH v2 0/3] ethdev: add generic L2/L3 tunnel encapsulation actions Ori Kam
2018-09-26 21:00   ` [PATCH v2 1/3] " Ori Kam
2018-09-26 21:00   ` [PATCH v2 2/3] app/testpmd: convert testpmd encap commands to new API Ori Kam
2018-09-26 21:00   ` [PATCH v2 3/3] ethdev: remove vxlan and nvgre encapsulation commands Ori Kam
2018-10-05 12:59     ` Ferruh Yigit
2018-10-05 13:26       ` Awal, Mohammad Abdul
2018-10-05 13:27     ` Mohammad Abdul Awal
2018-10-03 20:38   ` [PATCH v2 0/3] ethdev: add generic L2/L3 tunnel encapsulation actions Thomas Monjalon
2018-10-05 12:57   ` Ferruh Yigit
2018-10-05 14:00     ` Ori Kam
2018-10-07 12:57   ` [PATCH v3 " Ori Kam
2018-10-07 12:57     ` [PATCH v3 1/3] " Ori Kam
2018-10-07 12:57     ` [PATCH v3 2/3] app/testpmd: convert testpmd encap commands to new API Ori Kam
2018-10-07 12:57     ` [PATCH v3 3/3] ethdev: remove vxlan and nvgre encapsulation commands Ori Kam
2018-10-09 16:48     ` [PATCH v3 0/3] ethdev: add generic L2/L3 tunnel encapsulation actions Ferruh Yigit
2018-10-10  6:45       ` Andrew Rybchenko
2018-10-10  9:00         ` Ori Kam
2018-10-10  9:30           ` Andrew Rybchenko
2018-10-10  9:38             ` Thomas Monjalon
2018-10-10 12:02           ` Adrien Mazarguil
2018-10-10 13:17             ` Ori Kam
2018-10-10 16:10               ` Adrien Mazarguil
2018-10-11  8:48                 ` Ori Kam
2018-10-11 13:12                   ` Adrien Mazarguil
2018-10-11 13:55                     ` Ori Kam
2018-10-16 21:40     ` [PATCH v4 0/3] ethdev: add generic raw " Ori Kam
2018-10-16 21:41       ` [PATCH v4 1/3] ethdev: add raw encapsulation action Ori Kam
2018-10-17  7:56         ` Andrew Rybchenko
2018-10-17  8:43           ` Ori Kam
2018-10-22 13:06             ` Andrew Rybchenko
2018-10-22 13:19               ` Ori Kam
2018-10-22 13:27                 ` Andrew Rybchenko
2018-10-22 13:32                   ` Ori Kam
2018-10-16 21:41       ` [PATCH v4 2/3] app/testpmd: add MPLSoUDP encapsulation Ori Kam
2018-10-16 21:41       ` [PATCH v4 3/3] app/testpmd: add MPLSoGRE encapsulation Ori Kam
2018-10-17 17:07       ` [PATCH v5 0/3] ethdev: add generic raw tunnel encapsulation actions Ori Kam
2018-10-17 17:07         ` [PATCH v5 1/3] ethdev: add raw encapsulation action Ori Kam
2018-10-22 14:15           ` Andrew Rybchenko
2018-10-22 14:31             ` Ori Kam
2018-10-17 17:07         ` [PATCH v5 2/3] app/testpmd: add MPLSoUDP encapsulation Ori Kam
2018-10-17 17:07         ` [PATCH v5 3/3] app/testpmd: add MPLSoGRE encapsulation Ori Kam
2018-10-22 14:45         ` [PATCH v5 0/3] ethdev: add generic raw tunnel encapsulation actions Ferruh Yigit
2018-10-22 17:38         ` [PATCH v6 0/3] ethdev: add generic raw tunnel encapsulation Ori Kam
2018-10-22 17:38           ` [PATCH v6 1/3] ethdev: add raw encapsulation action Ori Kam
2018-10-22 17:38           ` [PATCH v6 2/3] app/testpmd: add MPLSoUDP encapsulation Ori Kam
2018-10-23  9:55             ` Ferruh Yigit [this message]
2018-10-22 17:38           ` [PATCH v6 3/3] app/testpmd: add MPLSoGRE encapsulation Ori Kam
2018-10-23  9:56             ` Ferruh Yigit
2018-10-23  9:56           ` [PATCH v6 0/3] ethdev: add generic raw tunnel encapsulation Ferruh Yigit

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=7c55fad8-f11d-a509-faeb-5f282aa43edf@intel.com \
    --to=ferruh.yigit@intel.com \
    --cc=adrien.mazarguil@6wind.com \
    --cc=arybchenko@solarflare.com \
    --cc=bernard.iremonger@intel.com \
    --cc=dekelp@mellanox.com \
    --cc=dev@dpdk.org \
    --cc=jingjing.wu@intel.com \
    --cc=nelio.laranjeiro@6wind.com \
    --cc=orika@mellanox.com \
    --cc=shahafs@mellanox.com \
    --cc=stephen@networkplumber.org \
    --cc=thomas@monjalon.net \
    --cc=wenzhuo.lu@intel.com \
    --cc=yskoh@mellanox.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 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.