[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1589854474-26854-1-git-send-email-roopa@cumulusnetworks.com>
Date: Mon, 18 May 2020 19:14:28 -0700
From: Roopa Prabhu <roopa@...ulusnetworks.com>
To: dsahern@...il.com, davem@...emloft.net
Cc: netdev@...r.kernel.org, nikolay@...ulusnetworks.com,
jiri@...lanox.com, idosch@...lanox.com, petrm@...lanox.com
Subject: [PATCH net-next 0/6] Support for fdb ECMP nexthop groups
From: Roopa Prabhu <roopa@...ulusnetworks.com>
This series introduces ecmp nexthops and nexthop groups
for mac fdb entries. In subsequent patches this is used
by the vxlan driver fdb entries. The use case is
E-VPN multihoming [1,2,3] which requires bridged vxlan traffic
to be load balanced to remote switches (vteps) belonging to
the same multi-homed ethernet segment (This is analogous to
a multi-homed LAG but over vxlan).
Changes include new nexthop flag NHA_FDB for nexthops
referenced by fdb entries. These nexthops only have ip.
The patches make sure that routes dont reference such nexthops.
example:
$ip nexthop add id 12 via 172.16.1.2 fdb
$ip nexthop add id 13 via 172.16.1.3 fdb
$ip nexthop add id 102 group 12/13 fdb
$bridge fdb add 02:02:00:00:00:13 dev vxlan1000 nhid 101 self
[1] E-VPN https://tools.ietf.org/html/rfc7432
[2] E-VPN VxLAN: https://tools.ietf.org/html/rfc8365
[3] LPC talk with mention of nexthop groups for L2 ecmp
http://vger.kernel.org/lpc_net2018_talks/scaling_bridge_fdb_database_slidesV3.pdf
Nikolay Aleksandrov (1):
nexthop: dereference nh only once in nexthop_select_path
Roopa Prabhu (5):
nexthop: support for fdb ecmp nexthops
vxlan: ecmp support for mac fdb entries
nexthop: add support for notifiers
vxlan: support for nexthop notifiers
selftests: net: add fdb nexthop tests
drivers/net/vxlan.c | 318 ++++++++++++++++++++++------
include/net/ip6_fib.h | 1 +
include/net/netns/nexthop.h | 1 +
include/net/nexthop.h | 44 ++++
include/net/vxlan.h | 24 +++
include/uapi/linux/neighbour.h | 1 +
include/uapi/linux/nexthop.h | 3 +
net/core/neighbour.c | 2 +
net/ipv4/nexthop.c | 170 ++++++++++++---
net/ipv6/route.c | 5 +
tools/testing/selftests/net/fib_nexthops.sh | 140 +++++++++++-
11 files changed, 617 insertions(+), 92 deletions(-)
--
2.1.4
Powered by blists - more mailing lists