From: Thomas Graf <tgraf@suug.ch>
To: netdev@vger.kernel.org
Cc: pshelar@nicira.com, jesse@nicira.com, davem@davemloft.net,
daniel@iogearbox.net, dev@openvswitch.org, tom@herbertland.com,
edumazet@google.com, jiri@resnulli.us,
hannes@stressinduktion.org, marcelo.leitner@gmail.com,
stephen@networkplumber.org, jpettit@nicira.com, kaber@trash.net
Subject: [net-next RFC 00/14] Convert OVS tunnel vports to use regular net_devices
Date: Mon, 1 Jun 2015 16:27:24 +0200 [thread overview]
Message-ID: <cover.1433167295.git.tgraf@suug.ch> (raw)
This is the first series in a greater effort to bring the scalability
and programmability advantages of OVS to the rest of the network
stack and to get rid of as much OVS specific code as possible.
This first series focuses on getting rid of OVS tunnel vports and use
regular tunnel net_devices instead. As part of this effort, the
routing subsystem is extended with support for flow based tunneling.
In this new tunneling mode, the route is able to match on tunnel
information as well as set tunnel encapsulation parameters per route.
This allows to perform L3 forwarding for a large number of tunnel
endpoints and virtual networks using a single tunnel net_device.
TODO:
- Geneve support
- IPv6 support
- Benchmarks
Pravin Shelar (1):
openvswitch: Use regular GRE net_device instead of vport
Thomas Graf (13):
ip_tunnel: Make ovs_tunnel_info and ovs_key_ipv4_tunnel generic
ip_tunnel: support per packet tunnel metadata
vxlan: Flow based tunneling
route: Extend flow representation with tunnel key
route: Per route tunnel metadata with RTA_TUNNEL
fib: Add fib rule match on tunnel id
vxlan: Factor out device configuration
openvswitch: Allocate & attach ip_tunnel_info for tunnel set action
openvswitch: Move dev pointer into vport itself
openvswitch: Abstract vport name through ovs_vport_name()
openvswitch: Use regular VXLAN net_device device
vxlan: remove indirect call to vxlan_rcv() and vni member
arp: Associate ARP requests with tunnel info
drivers/net/vxlan.c | 663 ++++++++++++++++++++---------------
include/linux/skbuff.h | 2 +
include/net/fib_rules.h | 1 +
include/net/flow.h | 7 +
include/net/ip_fib.h | 3 +
include/net/ip_tunnels.h | 127 ++++++-
include/net/route.h | 18 +
include/net/vxlan.h | 82 ++++-
include/uapi/linux/fib_rules.h | 2 +-
include/uapi/linux/if_link.h | 1 +
include/uapi/linux/openvswitch.h | 2 +-
include/uapi/linux/rtnetlink.h | 16 +
net/core/dev.c | 5 +-
net/core/fib_rules.c | 17 +-
net/core/skbuff.c | 8 +
net/ipv4/arp.c | 8 +
net/ipv4/fib_frontend.c | 57 +++
net/ipv4/fib_semantics.c | 45 +++
net/ipv4/ip_gre.c | 161 ++++++++-
net/ipv4/ip_tunnel_core.c | 15 +
net/ipv4/route.c | 32 +-
net/openvswitch/Kconfig | 12 -
net/openvswitch/Makefile | 2 -
net/openvswitch/actions.c | 10 +-
net/openvswitch/datapath.c | 19 +-
net/openvswitch/datapath.h | 5 +-
net/openvswitch/dp_notify.c | 5 +-
net/openvswitch/flow.c | 4 +-
net/openvswitch/flow.h | 77 +---
net/openvswitch/flow_netlink.c | 78 ++++-
net/openvswitch/flow_netlink.h | 3 +-
net/openvswitch/vport-geneve.c | 17 +-
net/openvswitch/vport-gre.c | 313 -----------------
net/openvswitch/vport-internal_dev.c | 38 +-
net/openvswitch/vport-netdev.c | 271 +++++++++++---
net/openvswitch/vport-netdev.h | 13 -
net/openvswitch/vport-vxlan.c | 322 -----------------
net/openvswitch/vport.c | 34 +-
net/openvswitch/vport.h | 21 +-
39 files changed, 1334 insertions(+), 1182 deletions(-)
delete mode 100644 net/openvswitch/vport-gre.c
delete mode 100644 net/openvswitch/vport-vxlan.c
--
2.3.5
next reply other threads:[~2015-06-01 14:27 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-01 14:27 Thomas Graf [this message]
2015-06-01 14:27 ` [net-next RFC 01/14] ip_tunnel: Make ovs_tunnel_info and ovs_key_ipv4_tunnel generic Thomas Graf
2015-06-01 14:27 ` [net-next RFC 02/14] ip_tunnel: support per packet tunnel metadata Thomas Graf
2015-06-01 14:27 ` [net-next RFC 03/14] vxlan: Flow based tunneling Thomas Graf
2015-06-01 14:27 ` [net-next RFC 04/14] route: Extend flow representation with tunnel key Thomas Graf
2015-06-01 14:27 ` [net-next RFC 05/14] route: Per route tunnel metadata with RTA_TUNNEL Thomas Graf
2015-06-01 16:51 ` Robert Shearman
[not found] ` <556C8D95.7030008-43mecJUBy8ZBDgjK7y7TUQ@public.gmane.org>
2015-06-01 23:26 ` Thomas Graf
2015-06-01 14:27 ` [net-next RFC 06/14] fib: Add fib rule match on tunnel id Thomas Graf
2015-06-01 14:27 ` [net-next RFC 07/14] vxlan: Factor out device configuration Thomas Graf
2015-06-01 14:27 ` [net-next RFC 08/14] openvswitch: Allocate & attach ip_tunnel_info for tunnel set action Thomas Graf
2015-06-03 15:29 ` Jiri Benc
2015-06-03 22:07 ` Thomas Graf
2015-06-01 14:27 ` [net-next RFC 09/14] openvswitch: Move dev pointer into vport itself Thomas Graf
2015-06-01 14:27 ` [net-next RFC 11/14] openvswitch: Use regular VXLAN net_device device Thomas Graf
2015-06-01 14:27 ` [net-next RFC 12/14] vxlan: remove indirect call to vxlan_rcv() and vni member Thomas Graf
2015-06-01 14:27 ` [net-next RFC 13/14] openvswitch: Use regular GRE net_device instead of vport Thomas Graf
2015-06-01 14:27 ` [net-next RFC 14/14] arp: Associate ARP requests with tunnel info Thomas Graf
2015-06-02 17:52 ` [ovs-dev] [net-next RFC 00/14] Convert OVS tunnel vports to use regular net_devices Flavio Leitner
[not found] ` <cover.1433167295.git.tgraf-G/eBtMaohhA@public.gmane.org>
2015-06-01 14:27 ` [net-next RFC 10/14] openvswitch: Abstract vport name through ovs_vport_name() Thomas Graf
2015-06-02 19:02 ` [net-next RFC 00/14] Convert OVS tunnel vports to use regular net_devices Eric W. Biederman
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=cover.1433167295.git.tgraf@suug.ch \
--to=tgraf@suug.ch \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=dev@openvswitch.org \
--cc=edumazet@google.com \
--cc=hannes@stressinduktion.org \
--cc=jesse@nicira.com \
--cc=jiri@resnulli.us \
--cc=jpettit@nicira.com \
--cc=kaber@trash.net \
--cc=marcelo.leitner@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=pshelar@nicira.com \
--cc=stephen@networkplumber.org \
--cc=tom@herbertland.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).