Load Balancing

Clement Laforet sheepkiller at cultdeadsheep.org
Fri May 16 12:40:06 PDT 2003


On Fri, 16 May 2003 15:52:39 +0100
Peter Gradwell <peter at gradwell.com> wrote:

> Hello
> 
> Has anyone come accross anything like the LinuxVirtualServer
> project for FreeBSD? (www.linuxvirtualserver.org) which provides
> a generic tcp load balancer in software?

As far as I know there's only only one "usable" load balancing solution
: loadd (www.bsdshell.net). But it seems that development is stopped,
but it can't be considered as a "FreeBSD Virtual Server".
I started to patch natd to provide load balancing algorithms but natd
is not the better way to do this, because of natd lives in userland and
listen to divert socket.
loadd (latest CVS version) uses netgraph to translate packets but, NAT
implementation is very poor and seems to be CPU intensive.

IMHO, as long as FreeBSD doesn't have in-kernel NAT capabilty, LVS
equivalent is not possible. 
Using KAME in-kernel NAT may be a good way to start the work. :)

Currently, FreeBSD can provide only round-robin load balancing.
You can use :
	* ipfilter round-robin capabilty
	* pf for FreeBSD

Don't use natd to do LSNAT, internal hash is based on aliased IP and
port, incoming redirections can't be store in a unique place in the
table, so look up takes a long long time under heavy load...

it was my 2 cents advices :)

clem


More information about the freebsd-isp mailing list