From: Joe Stringer <joestringer-l0M0P4e3n4LQT0dZR+AlfA@public.gmane.org>
To: netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: dev-yBygre7rU0TnMu66kgdUjQ@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: [PATCH net-next v12 0/5] openvswitch: Introduce 128-bit unique flow identifiers.
Date: Thu, 15 Jan 2015 13:48:22 -0800 [thread overview]
Message-ID: <1421358507-5992-1-git-send-email-joestringer@nicira.com> (raw)
This series extends the openvswitch datapath interface for flow commands to use
128-bit unique identifiers as an alternative to the netlink-formatted flow key.
This significantly reduces the cost of assembling messages between the kernel
and userspace, in particular improving Open vSwitch revalidation performance by
40% or more.
v12:
- Userspace patches fully merged into Open vSwitch master
- New minor refactor patches (2,3,4)
- Merge unmasked_key, ufid representation of flow identifier in sw_flow
- Improve memory allocation sizes when serializing ufid
- Handle corner case where a flow_new is requested with a flow that has an
identical ufid as an existing flow, but a different flow key
- Limit UFID to between 1-16 octets inclusive.
- Add various helper functions to improve readibility
v11:
- Pushed most of the prerequisite patches for this series to OVS master.
- Split out openvswitch.h interface changes from datapath implementation
- Datapath implementation to be reviewed on net-next, separately
v10:
- New patch allowing datapath to serialize masked keys
- Simplify datapath interface by accepting UFID or flow_key, but not both
- Flows set up with UFID must be queried/deleted using UFID
- Reduce sw_flow memory usage for UFID
- Don't periodically rehash UFID table in linux datapath
- Remove kernel_only UFID in linux datapath
v9:
- No kernel changes
v8:
- Rename UID -> UFID
- Fix null dereference in datapath when paired with older userspace
- All patches are reviewed/acked except datapath changes.
v7:
- Remove OVS_DP_F_INDEX_BY_UID
- Rework datapath UID serialization for variable length UIDs
v6:
- Reduce netlink conversions for all datapaths
- Various bugfixes
v5:
- Various bugfixes
- Improve logging
v4:
- Datapath memory leak fixes
- Enable UID-based terse dumping and deleting by default
- Various fixes
RFCv3:
- Add datapath implementation
Joe Stringer (5):
openvswitch: Refactor ovs_nla_fill_match().
openvswitch: Refactor ovs_flow_tbl_insert().
openvswitch: Use sw_flow_key_range for key ranges.
genetlink: Add genlmsg_parse() helper function.
openvswitch: Add support for unique flow IDs.
Documentation/networking/openvswitch.txt | 13 ++
include/net/genetlink.h | 17 +++
include/uapi/linux/openvswitch.h | 20 +++
net/openvswitch/datapath.c | 240 ++++++++++++++++++++----------
net/openvswitch/flow.h | 28 +++-
net/openvswitch/flow_netlink.c | 101 ++++++++++++-
net/openvswitch/flow_netlink.h | 14 +-
net/openvswitch/flow_table.c | 226 +++++++++++++++++++++-------
net/openvswitch/flow_table.h | 8 +-
9 files changed, 532 insertions(+), 135 deletions(-)
--
1.7.10.4
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev
next reply other threads:[~2015-01-15 21:48 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-15 21:48 Joe Stringer [this message]
[not found] ` <1421358507-5992-1-git-send-email-joestringer-l0M0P4e3n4LQT0dZR+AlfA@public.gmane.org>
2015-01-15 21:48 ` [PATCH net-next v12 1/5] openvswitch: Refactor ovs_nla_fill_match() Joe Stringer
2015-01-15 21:48 ` [PATCH net-next v12 2/5] openvswitch: Refactor ovs_flow_tbl_insert() Joe Stringer
2015-01-15 21:48 ` [PATCH net-next v12 3/5] openvswitch: Use sw_flow_key_range for key ranges Joe Stringer
2015-01-15 21:48 ` [PATCH net-next v12 4/5] genetlink: Add genlmsg_parse() helper function Joe Stringer
2015-01-15 21:48 ` [PATCH net-next v12 5/5] openvswitch: Add support for unique flow IDs Joe Stringer
2015-01-16 8:07 ` Pravin Shelar
[not found] ` <CALnjE+o5kXhDK+uaE4ajF2MAWwgG21rhYNgpD70rWLQc9AQqHg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-01-16 20:46 ` Joe Stringer
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=1421358507-5992-1-git-send-email-joestringer@nicira.com \
--to=joestringer-l0m0p4e3n4lqt0dzr+alfa@public.gmane.org \
--cc=dev-yBygre7rU0TnMu66kgdUjQ@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.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