Hello,
I don't exactly know what happens here right now, but the following
setup does not expire the persistent template anymore:
IP Virtual Server version 1.0.12 (size=4096)
Prot LocalAddress:Port Forward Weight Uthreshold Lthreshold
ActiveConn InActConn Flags
-> RemoteAddress:Port
TCP a.b.c.20:80 hprio persistent 150
-> a.b.c.14:80 Route 1 0 0 0
1 183
-> a.b.c.23:80 Route 5 10 7 0
0 183
-> a.b.c.22:80 Route 5 10 7 0
0 183
-> a.b.c.21:80 Route 5 10 7 0
0 183
TCP 01:26 NONE 172.27.235.5:0 a.b.c.20:65535 a.b.c.14:65535
lb-lb0-phys:~# grep . /proc/sys/net/ipv4/vs/*
/proc/sys/net/ipv4/vs/am_droprate:10
/proc/sys/net/ipv4/vs/amemthresh:2048
/proc/sys/net/ipv4/vs/cache_bypass:0
/proc/sys/net/ipv4/vs/debug_level:7
/proc/sys/net/ipv4/vs/drop_entry:0
/proc/sys/net/ipv4/vs/drop_packet:0
/proc/sys/net/ipv4/vs/expire_nodest_conn:1
/proc/sys/net/ipv4/vs/expire_quiescent_template:1
/proc/sys/net/ipv4/vs/nat_icmp_send:0
/proc/sys/net/ipv4/vs/secure_tcp:0
/proc/sys/net/ipv4/vs/sync_threshold:3
/proc/sys/net/ipv4/vs/timeout_close:10
/proc/sys/net/ipv4/vs/timeout_closewait:60
/proc/sys/net/ipv4/vs/timeout_established:480
/proc/sys/net/ipv4/vs/timeout_finwait:60
/proc/sys/net/ipv4/vs/timeout_icmp:60
/proc/sys/net/ipv4/vs/timeout_lastack:30
/proc/sys/net/ipv4/vs/timeout_listen:120
/proc/sys/net/ipv4/vs/timeout_synack:100
/proc/sys/net/ipv4/vs/timeout_synrecv:10
/proc/sys/net/ipv4/vs/timeout_synsent:60
/proc/sys/net/ipv4/vs/timeout_timewait:60
/proc/sys/net/ipv4/vs/timeout_udp:180
What happens is, that 15 seconds before the template timer expires,
ip_vs_conn_expire() is called and cp->n_control is 0 and we hit
ip_vs_conn_unhash() which seems to fail and we are bounced to
expire_later which then prints following line:
Aug 30 07:36:20 s_int@lb-lb0-phys IPVS: delayed: conn->refcnt-1=5
conn.n_control=0
15 seconds later, when the template timer is expiring, somehow it seems
like cp->n_control is 1 and thus we again are bounced to expire_later
which then prints following situation:
Aug 30 07:36:35 s_int@lb-lb0-phys IPVS: delayed: conn->refcnt-1=1
conn.n_control=1
This confuses me, do you guys have an explanation? Somehow I mucked up
the dest->refcnt stuff ...
Thanks,
Roberto Nibali, ratz
--
-------------------------------------------------------------
addr://Kasinostrasse 30, CH-5001 Aarau tel://++41 62 823 9355
http://www.terreactive.com fax://++41 62 823 9356
-------------------------------------------------------------
terreActive AG Wir sichern Ihren Erfolg
-------------------------------------------------------------
|