Netdev List
 help / color / mirror / Atom feed
* [PATCH net-next v2 0/2] net: bridge: add support for backup port
@ 2018-07-22  8:17 Nikolay Aleksandrov
  2018-07-22  8:17 ` [PATCH net-next v2 1/2] net: bridge: add support for raw sysfs port options Nikolay Aleksandrov
  2018-07-22  8:17 ` [PATCH net-next v2 2/2] net: bridge: add support for backup port Nikolay Aleksandrov
  0 siblings, 2 replies; 3+ messages in thread
From: Nikolay Aleksandrov @ 2018-07-22  8:17 UTC (permalink / raw)
  To: netdev; +Cc: roopa, davem, anuradhak, wkok, stephen, bridge,
	Nikolay Aleksandrov

Hi,
This set introduces a new bridge port option that allows any port to have
any other port (in the same bridge of course) as its backup and traffic
will be forwarded to the backup port when the primary goes down. This is
mainly used in MLAG and EVPN setups where we have peerlink path which is
a backup of many (or even all) ports and is a participating bridge port
itself. There's more detailed information in patch 02. Patch 01 just
prepares the port sysfs code for options that take raw value. The main
issues that this set solves are scalability and fallback latency.

We have used similar code for over 6 months now to bring the fallback
latency of the backup peerlink down and avoid fdb notification storms.
Also due to the nature of master devices such setup is currently not
possible, and last but not least having tens of thousands of fdbs require
thousands of calls to switch.

I've also CCed our MLAG experts that have been using similar option.

v2: In patch 01 use kstrdup/kfree to avoid casting the const buf. In order
to avoid using GFP_ATOMIC or always allocating I kept the spinlock inside
each branch.

Thanks,
 Nik


Nikolay Aleksandrov (2):
  net: bridge: add support for raw sysfs port options
  net: bridge: add support for backup port

 include/uapi/linux/if_link.h |  1 +
 net/bridge/br_forward.c      | 16 +++++++-
 net/bridge/br_if.c           | 53 ++++++++++++++++++++++++++
 net/bridge/br_netlink.c      | 30 ++++++++++++++-
 net/bridge/br_private.h      |  3 ++
 net/bridge/br_sysfs_if.c     | 89 +++++++++++++++++++++++++++++++++++++-------
 6 files changed, 176 insertions(+), 16 deletions(-)

-- 
2.11.0

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

end of thread, other threads:[~2018-07-22  9:14 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-22  8:17 [PATCH net-next v2 0/2] net: bridge: add support for backup port Nikolay Aleksandrov
2018-07-22  8:17 ` [PATCH net-next v2 1/2] net: bridge: add support for raw sysfs port options Nikolay Aleksandrov
2018-07-22  8:17 ` [PATCH net-next v2 2/2] net: bridge: add support for backup port Nikolay Aleksandrov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox