netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [net-next RFC 00/14] Convert OVS tunnel vports to use regular net_devices
@ 2015-06-01 14:27 Thomas Graf
  2015-06-01 14:27 ` [net-next RFC 01/14] ip_tunnel: Make ovs_tunnel_info and ovs_key_ipv4_tunnel generic Thomas Graf
                   ` (14 more replies)
  0 siblings, 15 replies; 21+ messages in thread
From: Thomas Graf @ 2015-06-01 14:27 UTC (permalink / raw)
  To: netdev
  Cc: pshelar, jesse, davem, daniel, dev, tom, edumazet, jiri, hannes,
	marcelo.leitner, stephen, jpettit, kaber

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

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2015-06-03 22:07 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-01 14:27 [net-next RFC 00/14] Convert OVS tunnel vports to use regular net_devices Thomas Graf
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
     [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
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

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).