Forum Discussion

wowchens's avatar
wowchens
Icon for Nimbostratus rankNimbostratus
Jun 22, 2009

Persistence Help

Hello:

 

 

I have a special requirement for setting up persistence using LTM but having difficulties achieving load balancing and persistence at the same time. Application is .Net Remoting which is a thick client app that runs on Citrix and makes http calls to backend application servers(IIS). Traffic is binary in nature and http is used only as a transport mechanism. I need to loadbalance the traffic and also stick clients to same pool member. I tried source address persistence but the app is hosted on Citrix so all the connections end up on only one server at all times and other servers are not used at all. I have looked at coming up a cookie hash based persistence but since the traffic is binary, there are no header parameters that are unique which can be used for maintaining stickyness.

 

 

Most of the options I tried works but I am able to achieve only one thing, either persistence or load balancing, not both.

 

 

I am not sure of any other option that I can use here. I don't know if this is even possible to achieve.

 

 

Any help is greatly appreciated.

 

 

Thanks--Chenna

4 Replies

  • Hi Chenna,

     

     

    If you were to inspect the HTTP request and response headers and payloads is there any specific place where you can identify a client? If so, you should be able to parse it and then use uie persistence (Click here). The first example in this Codeshare entry should help as well:

     

     

    http://devcentral.f5.com/Wiki/default.aspx/iRules/ASP_SessionID_Persistence.html (Click here)

     

     

    The trick is to identify that field. You could use a tcpdump to look for the value to persist on.

     

     

    Aaron
  • Hi Aaron: Thanks for the reply. I tried sniffing the traffic and looked for any string that I can use to identify the client but there are none. This application unfortunately doesn't use ASP sessions, all its sessions are within the app itself within the payload. I was thinking how a custom cookie insert would work but if the requests are all coming from the same server(Citrix), I am not sure how the client side identity will be unique, which might again force the traffic to go to only one node.

     

    I made a couple of request using the app and took a tcpdump(attached, rename to dmp). Couldn't find any layer7 stuff that I could use.
  • Can you recapture the trace with an unrestricted snap length: -s0. It would also help to see the responses.

     

     

    Thanks,

     

    Aaron
  • Hi Aaron: I ran tcpdump again and attached(rename to .bin) is the binary dump file. Please let me know if you need any additional information. Appreciate your help.