Layer 4 payload Stickiness viability

Unanswered Question
May 19th, 2010


I wonder if anyone could shed some light on a developement here.

We have  service that is currently being load balanced. Very basic -

1. VIP

2.  port 9081

3. two servers

4. one serverfarm

5.  stickines required (originally and currently on source IP)

Issue now is that the client connects  via Data Power servers, which first of all  proxies tha connections making source IP stickiness pointless (we are  not getting any load balancing) and the client connection via HTTP gets  modified by Data Power into SOAP/HTTP xmlns.

My question is could we use  Layer 4 payload stickiness? I have attached the data portion of the  first frame after the TCP setup (all traffic seem as TCP), have also  added port 9081 to Wireshark and only see two HTTP frames once all data  transaction has completed), no cookies.

What could we use from this, if  anything, for the stickiness on layer 4 payload? I was thinking of the FE_GEN_USER_ID  if it is unique for each user, so config something like:

sticky layer4-payload PAS-STICKY

layer4-payload FE_GEN_USER_ID

timeout 20

replicate  sticky

serverfarm SFARM-PAS

policy-map type loadbalance generic first-match  LB-POLICY

class class-default

sticky-serverfarm SFARM-PAS

Am a bit  stuck on this one. Many of the other existing servics that are currently  being load balanced will eventually migrate to be front-ended by the  Data Power devices, so I am sure we will run into this again.

Any  assitance would be greatly appreciated as always.

Thanks in  advance.


I have this problem too.
0 votes
  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
Gilles Dufour Thu, 05/20/2010 - 01:15

Your solution seems to be the only option.

The layer4-payload command should probably be something like :

layer4-payload begin-pattern "" end-pattern "<"

Capture more requests and see if the same user always uses the same user_id.

It actually does not really matter if this number is unique...Anyway you have only 2 servers, so more than one clients will be sent to each server.

But what is important is that the same client gets to the same server.  So the client must always use the same id.



This Discussion