LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: [lvs-users] LVS-NAT - Problem with round robin

To: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: Re: [lvs-users] LVS-NAT - Problem with round robin
From: Joseph Mack NA3T <jmack@xxxxxxxx>
Date: Fri, 14 Mar 2008 11:17:03 -0700 (PDT)
On Fri, 14 Mar 2008, pierrick grasland wrote:

> Hello Joseph,
>
> you will find some new test and some answer to your previous message :
>
>>> why is the client talking directly to the realserver? (It
> shouldn't be) ?
>
>
> Actually, the client can't talk directly to the realserver. No route
> between the 2, and no icmp_redirect. But, in the tcpdump, like you
> say, we saw sequence like the following :


> with CIP = 192.168.1.209, VIP = 192.168.1.231, DIP = 192.168.2.231 and
> RIP = 192.168.2.2

makes it easier for me.

>
> when I rewrite this, my sequence is :
>
> CIP.5064 > VIP.sip
> CIP.5064 > RIP.sip
> RIP.sip > CIP.5064
> VIP.sip > CIP.5064
>
> which seems coherent with the HOWTO (5.10 - How LVS-NAT works)

yes. I didn't know which machine/ethernet card was running 
the tcpdump, so your packets are OK, and I was wrong.

> Actually, what I'm trying to test is a round robin for an UDP
> datagram. I choose an OPTIONS in SIP.
>
> It's a very simple test, with the following call flow :
>
> client ----------------------------------------- Application Server
>
> OPTIONS ----------------------------->
> <-----------------------------------------------200 OK

OK. don't know it, but I'm following along.

> It's very similar to HTTP Options, with a message composed of an
> header and a body, in clear text. The response is also a clear text
> (and unique) message, with header and body (if needed).
>
> It work fine if the couple <IP><port> is different (2 options with
> different port will be correctly balanced between my server) :

I'm lost. "is different" from what? What makes it work/not 
work?

> 17:00:08.997286 IP 192.168.1.209.5064 > 192.168.1.231.sip: SIP, length: 436
> 17:00:08.997294 IP 192.168.1.209.5064 > 192.168.2.3.sip: SIP, length: 436
> 17:00:08.998105 IP 192.168.2.3.sip > 192.168.1.209.5064: SIP, length: 322
> 17:00:08.998113 IP 192.168.1.231.sip > 192.168.1.209.5064: SIP, length: 322
> 17:00:09.009066 IP 192.168.1.209.5065 > 192.168.1.231.sip: SIP, length: 436
> 17:00:09.009073 IP 192.168.1.209.5065 > 192.168.2.2.sip: SIP, length: 436
> 17:00:09.010425 IP 192.168.2.2.sip > 192.168.1.209.5065: SIP, length: 322
> 17:00:09.010434 IP 192.168.1.231.sip > 192.168.1.209.5065: SIP, length: 322
>
> but, if I use a load tester (SIPp), which will generated hundred of
> differents messages, the director will consider all messages from one
> source like one connection.

is this good/bad? Why?

> I know I will have to make some change, but I was (naively) hoping a
> system similar too http, with a balancing between the realservers.
>
> I will need to create something which will balance based on called-id so .

sip with all its ports is going to be difficult to 
loadbalance. You probably will need something like the 
ip_vs_ftp module.

Joe

-- 
Joseph Mack NA3T EME(B,D), FM05lw North Carolina
jmack (at) wm7d (dot) net - azimuthal equidistant map
generator at http://www.wm7d.net/azproj.shtml
Homepage http://www.austintek.com/ It's GNU/Linux!


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