Hi,
I have been wondering about connection syncrhonisation again. Looking
at the code and examining the IPVS connection table, I can see that
connections are only syncrhonised in the established state. This makes a
lot of sense as we probably don't care to much about keeping the backup
Linux Directors up to date on connections in other states. After all,
the idea is to allow connections to continue after failover, and only
established connections are relevant to this cause.
However, I do wonder if there might be some unexpected side effects.
I wonder if not moving connections out of the established state, for
instance into the time_wait state may open some potential problems.
For example here is the output of ipvsadm -L -c -n on my
master and backup Linux Directors.
#Master
ipvsadm -L -c -n
IPVS connection entries
pro expire state source virtual destination
TCP 01:00 TIME_WAIT 172.16.4.222:34939 172.17.60.201:80 192.168.6.5:80
TCP 01:01 TIME_WAIT 172.16.4.222:34940 172.17.60.201:80 192.168.6.4:80
TCP 15:00 ESTABLISHED 172.16.4.222:34941 172.17.60.201:80 192.168.6.5:80
#Backup
ipvsadm -L -c -n
IPVS connection entries
pro expire state source virtual destination
TCP 01.20 ESTABLISHED 172.16.4.222:34939 172.17.60.201:80 192.168.6.5:80
TCP 01.23 ESTABLISHED 172.16.4.222:34940 172.17.60.201:80 192.168.6.4:80
TCP 08.99 ESTABLISHED 172.16.4.222:34941 172.17.60.201:80 192.168.6.5:80
To be honest, I don't think this is a problem. Persumably the
connections are in the TIME_WAIT state on the real servers anyway.
But I thought I would throw this out onto the list in case I have
missed something.
--
Horms
|