08-05-2004 02:19 PM
All,
Have a client that is configured on one of my CS-100's. The services are pretty standard, http keepalive nothing special. The content groups though and the type of balance is where i have a question.
currently they have
content group1
vip address X.X.X.X
protocol tcp
port 80
add service www1
add service www2
add service www3
advanced-balance sticky-srcip
sticky-mask 255.255.240.0
active
With that said. We would like to have failover which I know works with just a regular balance, not an advanced-balance. The problem is the developer is saying the sessionas aren't sticking to the servers. He is also saying we are getting too much traffic to
1 server and the others aren't getting enough.
I personal think it is an app problem (java app) with the sessions, but they want the load more distributed, which I could give them with a balance leastconn yet the stickiness to each server isn't working without the advanced-balance sticky-srcip.
Why wouldn't a balance-srcip in the content group work with the same sticky-mask for sessions?
Any thoughts
Thanks
Mike
08-05-2004 10:45 PM
Hi Mike,
the APP might be an issue but you have two things to think about. From what you wrote, both thing could be explained.
not equaly loadbalnced requests -> caused by the sticky mask (see below)
not all traffic hitting the right server -> if the mask is cutting a megaproxies IP-Address range in two parts than you could get such issues. If the request of the Megaproxie comes from the first half of the IP-Range server1 will be hit and if a requests comes from the second half another server will get hit. This might break the application.
Explanations:
Your sticky mask places all conncections of a /20 network to one server. I guess this might be done to cover mega proxies as said above (compare with http://www.cisco.com/en/US/products/hw/contnetw/ps789/products_qanda_item09186a008009400c.shtml#q9). If this was not intended than you should use either the default sticky mask (/32; balancing per Client IP-Address) or think about another balancing method like inserting an arrowpoing cookie or somthing like that.
Cheers,
Joerg
08-06-2004 05:03 AM
Joerg,
Thanks for the reply. You bring up some interesting points to indeed think about. So let me try to break this out a bit.
Balancing- Would using a balance-srip have the same affect as the advancd-balance sticky-srcip?
If so,
stick-mask: this was done exactly for the reason of megaproxies, specifically aol users on dial up etc as in the FAQ that you posted.
so with that said would a
balance-srcip
sticky-mask 255.255.240.0 work in the same fashion in terms of sessions.
ultimately I wouldn't want any sessions to be handled by the load balancer, but by the app. Don't know if this is possible though.
Any thoughts?
08-08-2004 03:33 AM
what kind of failover are you talking about ?
Is it if one server goes down, traffic is rerouted to another one ?
This works with balance and advanced-balance.
And it is up to the client to detect a problem with the current connection, close it and reopen a new one which will bring it to a new server.
Regarding stickyness, the reason why you see a lot of traffic on one server comapre to the others, is your sticky mask and also mega proxies.
Currently, you link an entire subnet to the same server. If you reduce the mask to /32 you link address by address.
Finally, the srcip is a hash algorithm and it does not use the stickymask I believe.
One disadvantage of this system vs sticky srcip is if a server is down, the hash may select SERVER2 for connection from CLIENT1.
when the all servers are up, the hash might give a different result and a new connection from CLIENT1 may go to SERVER1.
With sticky srcip, a sticky entry is checked first before assigning a client to a server.
If the server is up, we use the sticky entry.
This guarantee the use of the same server, even if a server flapped.
Finally, what do you mean by you want
all sessions to be handled by the app ?
Regards,
Gilles.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide