LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

port unreachable after RS removal

To: lvs-users@xxxxxxxxxxxxxxxxxxxxxx
Subject: port unreachable after RS removal
From: Jan Kasprzak <kas@xxxxxxxxxx>
Date: Fri, 25 Mar 2005 15:02:32 +0100
        Hi all,

        I use IPVS with direct routing and wrr scheduler. The problem is
that for some configurations I get "icmp port unreachable" when one of the
real servers fails and is removed from the ip_vs tables. I have managed
to keep ldirectord out of the picture. The smallest case where I can
replicate the problem is the following:

ipvs# ipvsadm -A -t virtual.service:http -s wrr
ipvs# ipvsadm -a -t virtual.service:http -r realserver1:http -w 100
ipvs# ipvsadm -a -t virtual.service:http -r realserver2:http -w 1000

client$ wget -O - http://virtual.service/
[works as expected]

ipvs# ipvsadm -d -t virtual.service:http -r realserver2

client$ wget -O - http://virtual.service/
--14:46:29--  http://virtual.service/
           => `-'
Resolving virtual.service... 1.2.3.4
Connecting to virtual.service[1.2.3.4]:80... failed: Connection refused.

        I have verified by tcpdump that no traffic is sent to realserver2
after it is removed from the virtual.service pool. The ICMP "tcp port
unreachable" is sent by the ipvs host.

        This appears to be a problem in the wrr scheduler. With wlc or rr
it works as expected.

        The "ipvs" host is Fedora Core 3 with vanilla 2.6.11.3 kernel,
but I have been experiencing this for a longer time.

-Yenya

-- 
| Jan "Yenya" Kasprzak  <kas at {fi.muni.cz - work | yenya.net - private}> |
| GPG: ID 1024/D3498839      Fingerprint 0D99A7FB206605D7 8B35FCDE05B18A5E |
| http://www.fi.muni.cz/~kas/   Czech Linux Homepage: http://www.linux.cz/ |
> Whatever the Java applications and desktop dances may lead to, Unix will <
> still be pushing the packets around for a quite a while.      --Rob Pike <

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