yphu wrote:
>
> Hi,
> I am a Linux Learner.
>
> I am learing the virtual server now.I have a question that I want ask.I
> hope I may receive your help.:)
> The question is :As we using Hash Table to record an established network
> connection,how do we know the data transmission by one conection is over
> and when should we delete it from the Hash Table? Can you talk about it
> in detail?
> Thanks a lot!
>
> Best regards
>
> ypHu
A little late but since noone replied I try and give a it shot:
It depends on the load balancing method you're using, eg VS-DR, VS-NAT.
Basically you have IMHO two events to consider: template timeout and
TCP state transition change of template. So, for the first, this is to
loose the entry for a template in case no connection have been established
for a certain time (#define IP_VS_TEMPLATE_TIMEOUT 6*60*HZ). The second
is tricky and I don't know if I understood it correctly myself. But simplyfied
it's some kind of connection tracking (see ip_masq.c) that decrements the
refcnt atomically in case of a FIN belonging to the initial template. The
state transitions had been redefined to serve the special TCP-state changes
for LVS-DR method. Have a look at ip_vs_set_state(struct ip_masq *ms, int
new_state)
in ip_vs.c. But maybe Wensong, Julian or Horms can help you further or even
tell the whole truth :)
HTH a little bit. Best regards,
Roberto Nibali, ratz
--
mailto: `echo NrOatSz@xxxxxxxxx | sed 's/[NOSPAM]//g'`
|