All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Horman <simon.horman@netronome.com>
To: dev@openvswitch.org, netdev@vger.kernel.org
Cc: Pravin Shelar <pshelar@nicira.com>,
	Jesse Gross <jesse@nicira.com>, Thomas Graf <tgraf@suug.ch>,
	Simon Horman <simon.horman@netronome.com>
Subject: [PATCH/RFC repost 0/8] Open vSwtich ODP Select Group Action
Date: Thu, 18 Sep 2014 10:55:03 +0900	[thread overview]
Message-ID: <1411005311-11752-1-git-send-email-simon.horman@netronome.com> (raw)

[repost with correct dev@openvswitch.org address]

Hi,

the purpose of this patch-set is to provide a prototype of a select group
action in the Open vSwitch datapath. And the motivation for that is to
allow offloading of selection either in the datapath or by any hooks
provided by the datapath for hardware offloads (a topic of quite some
discussion elsewhere).

This proposal is also designed to tie in with another proposal we have
made to allow the selection method of a select group to be configured using
Open Flow. As such the selection method included in this patchset is
not the focus of this work: any method may be implemented. Rather,
the focus is on the ability to do selection in the datapath.

There are several implementation limitations of this prototype:

* It does not address per-bucket statistics.
  - We believe that the datapath can track per-bucket statistics and;
  - Expose them to user-space using new netlink attributes
* It assumes the select group comes last as the resulting packet
  may vary depending on the bucket that is chosen. Some possibilities
  for handling this include:
  - Performing selection in userspace for such cases
  - Using recirculation
* It seems that if recirculation may occur in more than one bucket
  then separate recirculation ids would be required. This prototype
  does not implement that.

This series is based on the Open vSwitch and its datapath maintained at
https://github.com/openvswitch/ovs.git

It is based on commit 5545e7826896e861c ("lib/odp-util: Add tunnel tp_src,
tp_dst parsing and formatting") of that tree.

Simon Horman (8):
  odp: select group action attributes
  netlink: Allow suppression of warnings for duplicate attributes
  odp-util: formatting of datapath select group action
  datapath: execution of select group action
  datapath: Move last_action() helper to datapath.h
  datapath: validation of select group action
  ofproto: translate datapath select group action
  hack: ofproto: enable odp select action

 datapath/actions.c                                |  74 ++++++++++++++-
 datapath/datapath.h                               |   5 +
 datapath/flow_netlink.c                           | 102 ++++++++++++++++++++
 datapath/linux/compat/include/linux/openvswitch.h |  31 +++++++
 lib/dpif-netdev.c                                 |   1 +
 lib/dpif.c                                        |   1 +
 lib/netlink.c                                     |   2 +-
 lib/netlink.h                                     |   1 +
 lib/odp-execute.c                                 |   1 +
 lib/odp-util.c                                    |  69 ++++++++++++++
 ofproto/ofproto-dpif-xlate.c                      | 108 +++++++++++++++++++++-
 11 files changed, 388 insertions(+), 7 deletions(-)

-- 
2.0.1

             reply	other threads:[~2014-09-18  1:55 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-18  1:55 Simon Horman [this message]
2014-09-18  1:55 ` [PATCH/RFC repost 1/8] odp: select group action attributes Simon Horman
2014-09-18  1:55 ` [PATCH/RFC repost 2/8] netlink: Allow suppression of warnings for duplicate attributes Simon Horman
     [not found]   ` <1411005311-11752-3-git-send-email-simon.horman-wFxRvT7yatFl57MIdRCFDg@public.gmane.org>
2014-09-26 23:55     ` Ben Pfaff
2014-10-09  1:18       ` [ovs-dev] " Simon Horman
2014-10-10 15:31         ` Ben Pfaff
2014-09-18  1:55 ` [PATCH/RFC repost 3/8] odp-util: formatting of datapath select group action Simon Horman
     [not found]   ` <1411005311-11752-4-git-send-email-simon.horman-wFxRvT7yatFl57MIdRCFDg@public.gmane.org>
2014-09-19 13:44     ` Thomas Graf
2014-09-24  4:55       ` Simon Horman
2014-09-18  1:55 ` [PATCH/RFC repost 4/8] datapath: execution of " Simon Horman
     [not found]   ` <1411005311-11752-5-git-send-email-simon.horman-wFxRvT7yatFl57MIdRCFDg@public.gmane.org>
2014-09-19 14:05     ` Thomas Graf
2014-09-24  6:01       ` Simon Horman
2014-09-24  8:19         ` Thomas Graf
2014-09-25  4:43           ` Simon Horman
2014-09-18  1:55 ` [PATCH/RFC repost 5/8] datapath: Move last_action() helper to datapath.h Simon Horman
     [not found]   ` <1411005311-11752-6-git-send-email-simon.horman-wFxRvT7yatFl57MIdRCFDg@public.gmane.org>
2014-09-19 14:06     ` Thomas Graf
2014-09-24  6:00       ` Simon Horman
     [not found]         ` <20140924060013.GB13314-IxS8c3vjKQDk1uMJSBkQmQ@public.gmane.org>
2014-09-24  8:20           ` Thomas Graf
2014-09-25  4:42             ` Simon Horman
2014-09-18  1:55 ` [PATCH/RFC repost 6/8] datapath: validation of select group action Simon Horman
2014-09-18  1:55 ` [PATCH/RFC repost 7/8] ofproto: translate datapath " Simon Horman
     [not found]   ` <1411005311-11752-8-git-send-email-simon.horman-wFxRvT7yatFl57MIdRCFDg@public.gmane.org>
2014-09-26 23:57     ` Ben Pfaff
2014-10-09  1:14       ` [ovs-dev] " Simon Horman
2014-10-13 20:46         ` Ben Pfaff
2014-10-14  4:54           ` Simon Horman
2014-09-18  1:55 ` [PATCH/RFC repost 8/8] hack: ofproto: enable odp select action Simon Horman

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=1411005311-11752-1-git-send-email-simon.horman@netronome.com \
    --to=simon.horman@netronome.com \
    --cc=dev@openvswitch.org \
    --cc=jesse@nicira.com \
    --cc=netdev@vger.kernel.org \
    --cc=pshelar@nicira.com \
    --cc=tgraf@suug.ch \
    /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.