On Sun, 2009-06-07 at 22:25 +0200, Alan DeKok wrote:
Karl Auer wrote:
DHCP failover and load-balancing are not simple *at all*.
As evidenced by the fact that the ISC fail-over protocol is horrible, and the implementation is almost as bad.
Oh, I'm 100% with you on that.
Oh, and the server is O(N^2) in the number of leases. Why? Well... they don't use fancy concepts like "dynamically resizable hash tables".
True, but that's ISC's implementation. I use Nominum's DCS, which starts in seconds regardless of the number of leases, largely because it has a database backend (but not distributed or HA - highspeed, local and dedicated) and which is completely dynamically configurable. Nothing short of upgrading the server requires it to be stopped. And with one major exception (which was a *bug*), failover as implemented by Nominum has never, ever let us down. Let's not confuse the protocol with the implementation.
It's really not that hard. Database books describe replication protocols. They look very different from the DHCP fail-over protocol.
Though to be fair, database replication is *not* solving the same problem as failover is. Failover allows independent entities to maintain the same view of the data, and a view with severe constraints. The real mistakes were made defining DHCP itself, but for the time they did an OK job.
And for most enterprise sites, you *don't* need a fail-over protocol. Really.
Well... if they have a HA arrangement for DHCP such as that described here recently, maybe not. Otherwise we'll have to disagree on that. Regards, K. -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Karl Auer (kauer@biplane.com.au) +61-2-64957160 (h) http://www.biplane.com.au/~kauer/ +61-428-957160 (mob) GPG fingerprint: 07F3 1DF9 9D45 8BCD 7DD5 00CE 4A44 6A03 F43A 7DEF