Hi Sreenivasa, On Fri, Aug 20, 2010 at 02:37:45PM -0400, Turlapati, Sreenivasa wrote: > Hi, > > In TCP Mode, is it possible to apply the user-based stickiness?
It depends how you qualify a "user". If for you there is a 1:1 mapping between users and IP addresses, then you can for instance stick on the source IP. This generally works well on enterprise internal networks. Some protocols built on top of TCP define users, or provide ways to enable stickiness. That's the case for RDP for instance, where a user ID may be passed and where the server's ID is passed. In HTTP, which is also built on top of TCP, there are other ways to qualify a "user", most often there is a 1:1 mapping between a person and a browser so the browser session represented by a cookie can be assimilated to a "user". > Our client passes the user id as one of the parameter (As 3rd Parameter) > to our back-end server. There is no "parameter" in TCP. There are source IP address, source IP port, destination IP address, destination IP port, and two unidirectional, continuous and undelimited streams. So in your case, your client does not pass you the user id as one parameter of TCP but as one parameter of another protocol which uses TCP for its transport. Depending on the protocol, maybe it is already possible to do something because *that* protocol is already implemented (eg: RDP or HTTP as in examples above), or it's a different protocol that might require an analyser to be written to parse it. Then maybe it's possible to do something easily (eg: by reusing the existing stickiness infrastructure) or it might be harder but some tricks might be possible (eg: hashing). Or maybe that protocol can't be parsed at all in our case (eg: ciphered, or depends on specs available under NDA only, etc...). > So is it possible to read the user id from the incoming request and apply the > user id for stickiness. If it is possible could you explain us how can we > able accomplish. It depends on the protocol your application uses on top of TCP. Regards, Willy

