Multiplay Labs

tech hits and tips from Multiplay

FreeBSD LACP balancing

without comments

When using FreeBSD’s lagg interface one of the protocol options is LACP which is useful when bonding with switches to provide redundancy as well as additional capacity.

When we tried this with 8.3-RELEASE the results weren’t what was expected with only one NIC in the LACP seeing real amounts traffic in either direction.

After digging around in the LAGG code it became apparent that the hashing algorithm being used was the most likely cause of the issue as in our case we had FLOWTABLE removed from our kernel.

Looking in the FreeBSD source tree we found r232629 which adds the ability to configure the hashing method to include layer 2 (mac), layer 3 (IP) and layer 4 (port) details. Applying this to 8.3 and then configuring for l3 hashing with lagghash l3 significantly improved the balancing across the NIC’s for our application, so if your using LACP and aren’t seeing good balancing across your physical interfaces this is well worth a shot.

Written by Dilbert

March 21st, 2013 at 3:59 pm

Posted in FreeBSD

Leave a Reply

You must be logged in to post a comment.