Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Nov 2015 08:55:03 -0700
From:      Alan Somers <asomers@freebsd.org>
To:        Johan Hendriks <joh.hendriks@gmail.com>
Cc:        FreeBSD <freebsd-stable@freebsd.org>
Subject:   Re: LACP with 3 interfaces.
Message-ID:  <CAOtMX2gghJMabmYbPze8%2Bm4okPViixtgWCW0aR6CSON45f_05A@mail.gmail.com>
In-Reply-To: <564B4736.3000100@gmail.com>
References:  <564B4736.3000100@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Nov 17, 2015 at 8:26 AM, Johan Hendriks <joh.hendriks@gmail.com> wrote:

> Is there something we can do to make sure lagg0 uses all the interfaces.

Nope.  LACP doesn't actively load balance its interfaces.  Each flow
gets assigned to a single interface based on a hash of the source and
destination MACs, IP addresses, and TCP/UDP ports.  With many clients,
all interfaces will probably be used, but with few clients, there's a
lot of luck involved.  If you want more bandwidth, you can try
fiddling with IP addresses and port numbers to influence the hash
function, but even if you get it to distribute the way you want, all
your work may be undone by a reboot.  The best option is to buy a
10Gbps NIC for the server.  They aren't too expensive, anymore, though
the switches are still pricey.  A cheaper option, if you'll only ever
have 4 clients, is to discard the lagg and assign a separate IP
address to each igb port, then manually distribute those addresses
amongst your clients.  If you do this, you unfortunately won't gain
the reliability features of LACP.

-Alan



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAOtMX2gghJMabmYbPze8%2Bm4okPViixtgWCW0aR6CSON45f_05A>