LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: Failover with a high persistent timeout

To: Roberto Nibali <ratz@xxxxxx>
Subject: Re: Failover with a high persistent timeout
Cc: lvs-users@xxxxxxxxxxxxxxxxxxxxxx, Matthias Krauss <MKrauss@xxxxxxxxxxxxxx>, Joseph Mack <mack.joseph@xxxxxxx>
From: Julian Anastasov <ja@xxxxxx>
Date: Fri, 13 Sep 2002 15:32:13 +0300 (EEST)
        Hello,

On Fri, 13 Sep 2002, Roberto Nibali wrote:

> Ahh, the sleeping beauty or the beautiful mind :). Well I'm sure that Joe can
> conduct some test cases and then report the results. This way it will also get
> properly documented. I mean reading this thread, he seems to have set up a 
> test
> case already with a hanging telnet ;). Hey Joe, if you're fed up with telnet,

        I've performed some tests with persistence long time ago
and don't remember for problems :)

> All this is of course steerable from user space. Currently via ioctl's and in 
> a
> very inefficient way, just like the insertion of new rules :)

        I know that Alexandre and Wensong are deeply into this
stuff but I'm somehow not convinced to play with it :)

> >     BTW, I have simple idea of moving IPVS to netlink
> > configuration, where we move the data in the var=value form, nothing
> > special. The FIB and tc are good examples. But some functions will
> > be needed to simplify these talks.
>
> The idea sounds good but I didn't know that you can change FIB related things
> from userspace?? Does a written architecture plan exist for this enhancement?
> Something like we (actually you!) did for the IPSec load balancing 
> enhancement?

        No, no docs yet :) May be this time I'll start with coding
because it is hard to explain :) But it will be not soon.
The only goal of this change can be to allow one user space program
to know basic list of parameters to edit destination, for example,
another program can know much more parameters (the thresholds :)),
which in such case are optional. The idea is a better platform for
changes in the user space structures/data, we don't like the idea
to recompile ipvsadm, etc. after each kernel change. So, instead of
providing structures with fields and size known at compile time, we
will provide var=value pairs, encoded somehow, with their own
type (U32, U16, U8, String), etc. This means we have to switch
to libnetlink or libipvsnetlink :)

        As for FIB, see how the ip rules and routes get their
parameters from user space. Check inet_rtm_newrule for example.
So, my idea is to implement a simple transport for var=values
that will not cost many C lines and that such transport will be
useful for other things.

> Best regards,
> Roberto Nibali, ratz

Regards

--
Julian Anastasov <ja@xxxxxx>



<Prev in Thread] Current Thread [Next in Thread>