mirror of
https://github.com/opnsense/src.git
synced 2026-06-09 00:32:25 -04:00
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
This commit is contained in:
parent
3696db923f
commit
d5fe384b4d
5 changed files with 5 additions and 0 deletions
|
|
@ -31,6 +31,7 @@ options VIMAGE # Subsystem virtualization, e.g. VNET
|
|||
options INET # InterNETworking
|
||||
options INET6 # IPv6 communications protocols
|
||||
options IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5
|
||||
options ROUTE_MPATH # Multipath routing support
|
||||
options TCP_OFFLOAD # TCP offload
|
||||
options TCP_BLACKBOX # Enhanced TCP event logging
|
||||
options TCP_HHOOK # hhook(9) framework for TCP
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@ options PREEMPTION # Enable kernel thread preemption
|
|||
options VIMAGE # Subsystem virtualization, e.g. VNET
|
||||
options INET # InterNETworking
|
||||
options INET6 # IPv6 communications protocols
|
||||
options ROUTE_MPATH # Multipath routing support
|
||||
options IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5
|
||||
options TCP_HHOOK # hhook(9) framework for TCP
|
||||
options TCP_OFFLOAD # TCP offload
|
||||
|
|
|
|||
|
|
@ -32,6 +32,7 @@ options VIMAGE # Subsystem virtualization, e.g. VNET
|
|||
options INET # InterNETworking
|
||||
options INET6 # IPv6 communications protocols
|
||||
options IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5
|
||||
options ROUTE_MPATH # Multipath routing support
|
||||
options TCP_HHOOK # hhook(9) framework for TCP
|
||||
options TCP_OFFLOAD # TCP offload
|
||||
options SCTP_SUPPORT # Allow kldload of SCTP
|
||||
|
|
|
|||
|
|
@ -42,6 +42,7 @@ options VIMAGE # Subsystem virtualization, e.g. VNET
|
|||
options INET #InterNETworking
|
||||
options INET6 #IPv6 communications protocols
|
||||
options IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5
|
||||
options ROUTE_MPATH # Multipath routing support
|
||||
options TCP_OFFLOAD # TCP offload
|
||||
options TCP_BLACKBOX # Enhanced TCP event logging
|
||||
options TCP_HHOOK # hhook(9) framework for TCP
|
||||
|
|
|
|||
|
|
@ -31,6 +31,7 @@ options INET # InterNETworking
|
|||
options INET6 # IPv6 communications protocols
|
||||
options TCP_HHOOK # hhook(9) framework for TCP
|
||||
options IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5
|
||||
options ROUTE_MPATH # Multipath routing support
|
||||
options TCP_OFFLOAD # TCP offload
|
||||
options SCTP_SUPPORT # Allow kldload of SCTP
|
||||
options FFS # Berkeley Fast Filesystem
|
||||
|
|
|
|||
Loading…
Reference in a new issue