Earlier quoted context omitted.
Transparent load balancers exist and don't have the issues you are talking about.
Hardware or software? There's some hacks with TPROXY/HAproxy I've seen that would do the transparent proxy but the setup seems like more trouble than it's worth.
SSL session caching in nginx
11–18 of 18 posts
Re: SSL session caching in nginx
#12Re: SSL session caching in nginx
#13Earlier quoted context omitted.
Transparent load balancers exist and don't have the issues you are talking about.
Hardware or software? There's some hacks with TPROXY/HAproxy I've seen that would do the transparent proxy but the setup seems like more trouble than it's worth.
Re: SSL session caching in nginx
#14Why does session affinity not solve the problem of session caching? The author says it's "a whole other world of pain and suffering" but doesn't explain why.
Re: SSL session caching in nginx
#15Why does session affinity not solve the problem of session caching? The author says it's "a whole other world of pain and suffering" but doesn't explain why.
Seconded. It would be great if the author could expand on this point.
The idea would be to make sure that a given client is always sent to the same SSL handler.
We could imagine having two layers of load balancers: - first layer would use source IP address and/or session data to determine to which server of the second layer the connection should be forwarded; - second layer would receive the connection and to the proper SSL handling.
I believe that this would work, but it seems that it would require a custom "half-implementation" of SSL on the first layer of load balancers. I don't know if there is any provision for that in OpenSSL or GNUTLS. Also, since there are already hooks to do session caching in most SSL-enabled servers, using those hooks to plug in a memcached backend seems to be less "disruptive" (read "easier to understand, implement and debug").
Re: SSL session caching in nginx
#16You'll usually run out of entropy before cpu usage becomes relevant with SSL processing, I've seen old versions of apache hang with little or no entropy to process SSL connections. I recommend some sort of RNG or a poor mans software version such as http://www.issihosts.com/haveged/
Re: SSL session caching in nginx
#17Earlier quoted context omitted.
Seconded. It would be great if the author could expand on this point.
I guess that it's not easy to implement session affinity on the SSL level. You cannot access information like cookies or other HTTP headers (since they are inside the SSL payload that you're trying to handle). So you have to use the little information you have: source IP address and port, and session data. The idea would be to make sure that a given client is always sent to the same SSL handler. We could imagine havi…
Sometimes though, you don't want affinity at all. If you don't care what backend server takes the request, you can balance the load more efficiently, and more easily rotate servers in and out of service.
Re: SSL session caching in nginx
#18Why does session affinity not solve the problem of session caching? The author says it's "a whole other world of pain and suffering" but doesn't explain why.
The latter point isn't that big a deal if the only reason for affinity is SSL session caching, because you could yank the server even if it has active sessions, and the clients would simply re-establish with the next backend.
I often load-balance ssl using session affinity, and would also like to know if this author has encountered other issues, or just hasn't looked at the capabilities of haproxy in a while.