LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: Looking for ktcpvs but not quite

To: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: Re: Looking for ktcpvs but not quite
From: Erik Versaevel <erik@xxxxxxxxxxx>
Date: Mon, 17 Jan 2005 09:25:25 +0100
Wensong Zhang wrote:



Hello,

On Thu, 13 Jan 2005, Erik Versaevel wrote:


I'm currently trying to create a loadbalacing SIP (voip protocol) cluster, however for this to work I need SIP messages from the same call (identifiable by the sip callid field) to get to the same realserver over and over again. (so, I need persistence based on the contents of the SIP Call-ID field). This would call for ktcpvs as we need to process packets at layer 7, however that poses 2 new problems, the first is that SIP uses clear text UDP messages,
not tcp and the second is that there are no SIP modules for ktcpvs.


We cannot use ktcpvs, because ktcpvs supports TCP only, and there is no
SIP modules for TCP transport.

Another option would be to mark SIP packets with iptables/netfilter

based on

the callid, however i run into the same problem, there are no modules to
accomplish this.


The firewall marking doesn't solve the problem. However, we can write a special SIP UDP scheduling module for IPVS. It can detect the Call-Id from UDP packet and send it to the SIP server according to the recorded Call-Id table. We assume that there is no UDP fragments. Some NAT boxes (such as early IOS version of Cisco router) may drop UDP fragements except the first one.

Such a module would definitly solve the problem. A round robin with call-id persistence would be awsome. Currently a device which can do that costs around $ 10000 each (times 2 for HA).


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