From owner-freebsd-net Fri Mar 5 23: 9:48 1999 Delivered-To: freebsd-net@freebsd.org Received: from labinfo.iet.unipi.it (labinfo.iet.unipi.it [131.114.9.5]) by hub.freebsd.org (Postfix) with SMTP id 7D59014FB6 for ; Fri, 5 Mar 1999 23:09:45 -0800 (PST) (envelope-from luigi@labinfo.iet.unipi.it) Received: from localhost (luigi@localhost) by labinfo.iet.unipi.it (8.6.5/8.6.5) id GAA13150; Sat, 6 Mar 1999 06:02:33 +0100 From: Luigi Rizzo Message-Id: <199903060502.GAA13150@labinfo.iet.unipi.it> Subject: Re: IP source address based load balancing To: cmsedore@maxwell.syr.edu (Christopher Sedore) Date: Sat, 6 Mar 1999 06:02:33 +0100 (MET) Cc: freebsd-net@FreeBSD.ORG In-Reply-To: <262C3DA9BE0CD211971700A0C9B413A1CBC7@exchange.maxwell.syr.edu> from "Christopher Sedore" at Mar 5, 99 07:52:14 pm X-Mailer: ELM [version 2.4 PL23] Content-Type: text Content-Length: 1684 Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > I've implemented a basic form of load balancing for IP based services. > It works by assigning the same IP address to multiple machines, having > all the machines receive the IP packets for that address but only pass > the ones from specific sources up to the stack. The notion is that you ... nice work, but as you probably note later, a true balancing mechanism should be able to handle failures and addition of more servers in a more flexible way. alsowith your setting i see a difficulty in accessing the various machines for management purposes (unless you set up an additional, different IP address for each one). a suggestion: apart from ARP handling (which is somewhat complex) why don't you use the ipfw rules to decide what addresses each machine should respond to ? This way you could use more sophisticated allocations, etc. and especially have most things outside the kernel. As for ARP handling, could you tell a bit more on how you solved the problem ? e.g. in the case of connections coming from the outside, your router will only have one entry for the IP address you use for your cluster, so it will not be able to talk to the individual machines unless you set all of them to use the same ethernet address (which is also a reasonable thing to do, probably). cheers luigi -----------------------------------+------------------------------------- Luigi RIZZO . EMAIL: luigi@iet.unipi.it . Dip. di Ing. dell'Informazione HTTP://www.iet.unipi.it/~luigi/ . Universita` di Pisa TEL/FAX: +39-050-568.533/522 . via Diotisalvi 2, 56126 PISA (Italy) -----------------------------------+------------------------------------- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message