LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: round robin and NOT!! persistent

To: "Thomas A. Morris" <morrist@xxxxxxxxxxxx>
Subject: Re: round robin and NOT!! persistent
Cc: ian <ian.martins@xxxxxxxxxxxx>, linuxvirtualserver <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
From: Wayne <wayne@xxxxxxxxxxxxxxx>
Date: Wed, 21 Jun 2000 11:35:10 -0700
I think this has something to do with the persistent is based on
<sip,sport; vip,vport; rip,rport>. Your TCP dump showed that
although your configuration is using port 0, but your
application actually using different ports.  I am not sure
how the persistent handle that situation when the port 0
is being used.

At 02:08 PM 6/21/00 -0400, Thomas A. Morris wrote:
>I am chasing a problem now where persistent mode seems not to work. I'm using
>firewall marks and NAT. consider the following snoop trace where 172.16.0.146
>is the client, and morrist-2 and morrist-3 are real servers. The initial
>transactions occur with morrist-3, but suddenly, the MOUNT request goes to
>morrist-2!:
>172.16.0.146 -> morrist-3.cae.crosstor.com TCP D=111 S=907     Ack=3651063116
>Seq=2479735819 Len=0 Win=32120 Options=<nop,nop,tstamp 8970796 2909399>
>172.16.0.146 -> morrist-3.cae.crosstor.com PORTMAP C DUMP
>morrist-3.cae.crosstor.com -> 172.16.0.146 TCP D=907 S=111     Ack=2479735863
>Seq=3651063116 Len=0 Win=10136 Options=<nop,nop,tstamp 2909399 8970796>
>morrist-3.cae.crosstor.com -> 172.16.0.146 PORTMAP R DUMP 18+ map(s) found
>172.16.0.146 -> morrist-3.cae.crosstor.com TCP D=111 S=907     Ack=3651063516
>Seq=2479735863 Len=0 Win=31856 Options=<nop,nop,tstamp 8970796 2909399>
>morrist-3.cae.crosstor.com -> 172.16.0.146 TCP D=907 S=111     Ack=2479735863
>Seq=3651063516 Len=96 Win=10136 Options=<nop,nop,tstamp 2909399 8970796>
>172.16.0.146 -> morrist-3.cae.crosstor.com TCP D=111 S=907 Fin Ack=3651063612
>Seq=2479735863 Len=0 Win=31856 Options=<nop,nop,tstamp 8970796 2909399>
>morrist-3.cae.crosstor.com -> 172.16.0.146 TCP D=907 S=111     Ack=2479735864
>Seq=3651063612 Len=0 Win=10136 Options=<nop,nop,tstamp 2909399 8970796>
>morrist-3.cae.crosstor.com -> 172.16.0.146 TCP D=907 S=111 Fin Ack=2479735864
>Seq=3651063612 Len=0 Win=10136 Options=<nop,nop,tstamp 2909399 8970796>
>morrist-2.cae.crosstor.com -> nat1.cae.crosstor.com ARP R 192.168.129.42,
>morrist-2.cae.crosstor.com is 0:90:27:e0:1d:f6
>The next line is WRONG!!!!!!  Should be going to morrist-3
>172.16.0.146 -> morrist-2.cae.crosstor.com MOUNT3 C Mount /Drive2
>172.16.0.146 -> morrist-3.cae.crosstor.com TCP D=111 S=907     Ack=3651063613
>Seq=2479735864 Len=0 Win=31856 Options=<nop,nop,tstamp 8970796 2909399>
>
>My ipvsadm output:
>IP Virtual Server version 0.9.13 (size=4096)
>Prot LocalAddress:Port Scheduler Flags
>   -> RemoteAddress:Port          Forward Weight ActiveConn InActConn
>FWM  1 rr
>   -> upquark.cae.crosstor.com:0  Masq    1      0          0
>   -> positron.cae.crosstor.com:0 Masq    1      0          0
>FWM  2 rr persistent 3600
>   -> morrist-3.cae.crosstor.com:0 Masq    1      0          0
>   -> morrist-2.cae.crosstor.com:0 Masq    1      0          0
>   -> morrist-1.cae.crosstor.com:0 Masq    1      0          0
>
>ipchains -L output
>
>Chain input (policy ACCEPT):
>target     prot opt     source                destination           ports
>-          all  ------  anywhere             test                  n/a
>-          all  ------  anywhere             morrist               n/a
>Chain forward (policy DENY):
>target     prot opt     source                destination           ports
>MASQ       all  ------  positron.cae.crosstor.com anywhere              n/a
>MASQ       all  ------  upquark.cae.crosstor.com anywhere              n/a
>MASQ       all  ------  morrist-1.cae.crosstor.com anywhere              n/a
>MASQ       all  ------  morrist-2.cae.crosstor.com anywhere              n/a
>MASQ       all  ------  morrist-3.cae.crosstor.com anywhere              n/a
>Chain output (policy ACCEPT):
>
>
>
>
>
>
>Any Ideas before I go and try to understand the ipvs scheduling code?
>
>
>Tom Morris
>
>
>Wayne wrote:
>
> > Persistent mode is sending all the requests to the same server, that is
> > the purpose.  If requests from same client being spread to few servers
> > that is not persistent any more.
> >
> > At 01:21 PM 6/21/00 -0400, ian wrote:
> > >I've found that when persistence is set (even if its set to just 1 second)
> > >all requests from a single host are routed to the same RealServer..
> > >Regardless of the time between requests. I expected that since it is set to
> > >round robin, if there is a delay between requests longer than the
> > >persistence value, the request would go to the next RealServer. Can someone
> > >please explain.
> > >



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