]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Enable ROUTE_MPATH support in GENERIC kernels.
authormelifaro <melifaro@FreeBSD.org>
Mon, 14 Dec 2020 22:23:08 +0000 (22:23 +0000)
committermelifaro <melifaro@FreeBSD.org>
Mon, 14 Dec 2020 22:23:08 +0000 (22:23 +0000)
commit8b9ee45f93469c2d2fdbc3331fea8553ee4d169b
tree1644f1ddd7b1a9d0aeb4f22fb55c19754ae79b12
parentf4df1da0b9ef1f936ee762e96d06d0330990d1d6
Enable ROUTE_MPATH support in GENERIC kernels.

Ability to load-balance traffic over multiple path is a must-have thing for routers.
It may be used by the servers to balance outgoing traffic over multiple default gateways.

The previous implementation, RADIX_MPATH stayed in the shadow for too long.
It was not well maintained, which lead us to a vicious circle - people were using
 non-contiguous mask or firewalls to achieve similar goals. As a result, some routing
 daemons implementation still don't have multipath support enabled for FreeBSD.

Turning on ROUTE_MPATH by default would fix it. It will allow to reduce networking
 feature gap to other operating systems. Linux and OpenBSD enabled similar support
 at least 5 years ago.

ROUTE_MPATH does not consume memory unless actually used. It enables around ~1k LOC.

It does not bring any behaviour changes for userland.
Additionally, feature is (temporarily) turned off by the net.route.multipath sysctl
 defaulting to 0.

Differential Revision: https://reviews.freebsd.org/D27428
sys/amd64/conf/GENERIC
sys/arm64/conf/GENERIC
sys/i386/conf/GENERIC
sys/powerpc/conf/GENERIC64
sys/riscv/conf/GENERIC