Cisco Support Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Announcements

Welcome to Cisco Support Community. We would love to have your feedback.

For an introduction to the new site, click here. If you'd prefer to explore, try our test area to get started. And see here for current known issues.

New Member

Session Peristence. Why does it improve the performance?

Hi all,

I would like to undersand why is used to say:

"even in case of backend database with session information, stickiness is very useful since it significantly improves performance".

Why it does improve the performance? Is there any drwaback to use persistence even in case of backened database?

Does the term backened database mean that there is a possibility to keep relation between "request and response" ?

Thank you.

F.M.

1 ACCEPTED SOLUTION

Accepted Solutions
Bronze

Session Peristence. Why does it improve the performance?

Fabio-

  If you were doing SSL loadbalancing, the client can utilize SSL Session ID's to keep the server from having to re-send SSL certificates and save bandwidth durring the handshake process.  So, it would be advantageous to keep a client stuck to the same server for an entire session. 

  With HTTP, servers sometimes use etags and expiration dates on content.  These values can be unique to a server, so keeping a client on a single server would mean it doesn't have to download objects constantly if they were re-used on multiple pages in a session.  (assuming the server uses etags, the client sends them, and a 304 not modified is sent.)

  Otherwise than that, other protocols could have the same type of caching and benefit from having a client stay stuck to it for a single session.

Performance wise, layer 4 sticky buffers and parses data for sticky information. L5 sticky requires terminating the HTTP session with the client, buffering the request, parsing it, opening a session on the backend and even possibly buffering/searching/recording server response information. 

L3 sticky is the least intensive sticky, but any type will slow down the connection a certain amount. (milliseconds, nothing too bad) L4 and L5 depend on how much data you tell ACE to parse and how complicated you make it. L4 can use regex and you can make very complicated search criteras over 65kb of data that take a few hundred ms per session.

Regards,

Chris Higgins

1 REPLY
Bronze

Session Peristence. Why does it improve the performance?

Fabio-

  If you were doing SSL loadbalancing, the client can utilize SSL Session ID's to keep the server from having to re-send SSL certificates and save bandwidth durring the handshake process.  So, it would be advantageous to keep a client stuck to the same server for an entire session. 

  With HTTP, servers sometimes use etags and expiration dates on content.  These values can be unique to a server, so keeping a client on a single server would mean it doesn't have to download objects constantly if they were re-used on multiple pages in a session.  (assuming the server uses etags, the client sends them, and a 304 not modified is sent.)

  Otherwise than that, other protocols could have the same type of caching and benefit from having a client stay stuck to it for a single session.

Performance wise, layer 4 sticky buffers and parses data for sticky information. L5 sticky requires terminating the HTTP session with the client, buffering the request, parsing it, opening a session on the backend and even possibly buffering/searching/recording server response information. 

L3 sticky is the least intensive sticky, but any type will slow down the connection a certain amount. (milliseconds, nothing too bad) L4 and L5 depend on how much data you tell ACE to parse and how complicated you make it. L4 can use regex and you can make very complicated search criteras over 65kb of data that take a few hundred ms per session.

Regards,

Chris Higgins

338
Views
0
Helpful
1
Replies