• R
    [IPVS]: Synchronize closing of Connections · efac5276
    Rumen G. Bogdanovski 提交于
    This patch makes the master daemon to sync the connection when it is about
    to close.  This makes the connections on the backup to close or timeout
    according their state.  Before the sync was performed only if the
    connection is in ESTABLISHED state which always made the connections to
    timeout in the hard coded 3 minutes. However the Andy Gospodarek's patch
    ([IPVS]: use proper timeout instead of fixed value) effectively did nothing
    more than increasing this to 15 minutes (Established state timeout).  So
    this patch makes use of proper timeout since it syncs the connections on
    status changes to FIN_WAIT (2min timeout) and CLOSE (10sec timeout).
    However if the backup misses CLOSE hopefully it did not miss FIN_WAIT.
    Otherwise we will just have to wait for the ESTABLISHED state timeout. As
    it is without this patch.  This way the number of the hanging connections
    on the backup is kept to minimum. And very few of them will be left to
    timeout with a long timeout.
    
    This is important if we want to make use of the fix for the real server
    overcommit on master/backup fail-over.
    Signed-off-by: NRumen G. Bogdanovski <rumen@voicecho.com>
    Signed-off-by: NSimon Horman <horms@verge.net.au>
    Signed-off-by: NDavid S. Miller <davem@davemloft.net>
    efac5276
ip_vs_core.c 29.5 KB