Search
Lori MacVittie - Two Different Socks
You are here: DevCentral > Weblogs

posted on Wednesday, February 03, 2010 4:10 AM

The difference between these two performance metrics is significant so be sure you know which one you’re measuring, and which one you wanted to be measuring. 

image

It may be the case that you’ve decided that SSL is, in fact, a good idea for securing data in transit. Excellent. Now you’re trying to figure out how to implement support and you’re testing solutions or perhaps trying to peruse reports someone else generated from testing. Excellent. I’m a huge testing fan and it really is one of the best ways to size a solution specifically for your environment.

Some of the terminology used to describe specific performance metrics in application delivery, however, can be misleading. The difference between SSL TPS (Transactions per second) and HTTP TPS over SSL, for example, are significant and therefore should not be used interchangeably when comparing performance and capacity of any solution – that goes for software, hardware, or some yet-to-be-defined combination thereof.

The reasons why interpreting claims of SSL TPS are so difficult is due to the ambiguity that comes from SSL itself. SSL “transactions” are, by general industry agreement (unenforceable, of course) a single transaction that is “wrapped” in an SSL session. Generally speaking one SSL transaction is considered:

1. Session establishment (authentication, key exchange)

2. Exchange of data over SSL, often a 1KB file over HTTP

3. Session closure

Seems logical, but technically speaking a single SSL transaction could be interpreted as any single transaction conducted over an SSL encrypted session because the very act of transmitting data over the SSL session necessarily requires SSL-related operations. SSL session establishment requires a handshake and an exchange of keys, and the transfer of data within such a session requires the invocation of encryption and decryption operations (often referred to as bulk encryption).

Therefore it is technically accurate for SSL capacity/performance metrics to use the term “SSL TPS” and be referring to two completely different things.

This means it is important that whomever is interested in such data must do a little research to determine exactly what is meant by SSL TPS when presented with such data. Based on the definition the actual results mean different things. When used to refer to HTTP TPS over SSL the constraint is actually on the bulk encryption rate (related more to response time, latency, and throughput measurements), while SSL TPS measures the number of SSL sessions that can be created per second and is more related to capacity than response time metrics. It can be difficult to determine which method was utilized, but if you see the term “SSL ID re-use” anywhere, you can be relatively certain the test results refer to HTTP TPS over SSL rather than SSL TPS. When SSL session IDs are reused, the handshaking and key exchange steps are skipped, which reduces the number of computationally expensive RSA operations that must be performed and artificially increases the results.

As always, if you aren’t sure what a performance metric really means, ask. If you don’t get a straight answer, ask again, or take advantage of all that great social networking you’re doing and find someone you trust to help you determine what was really tested. Basing architectural decisions on misleading or misunderstood data can cause grief and be expensive later when you have to purchase additional licenses or solutions to bring your capacity up to what was originally expected.

WILS: Write It Like Seth. Seth Godin always gets his point across with brevity and wit. WILS is an ATTEMPT TO BE concise about application delivery TOPICS AND just get straight to the point. NO DILLY DALLYING AROUND.

Follow me on Twitter    View Lori's profile on SlideShare  friendfeed icon_facebook

AddThis Feed Button Bookmark and Share

Related blogs & articles:



Feedback

2/10/2010 6:54 AM
Gravatar Hi...
The author of this post has done really appreciating job. The steps are very easy and interesting to understand.
Thank you.

--------------------

ClickSSL>com
stuart johnson
2/3/2010 2:19 PM
Gravatar This post was mentioned on Twitter by devcentral: WILS: SSL TPS versus HTTP TPS over SSL http://bit.ly/aN2Zxi
uberVU - social comments
3/9/2010 5:34 AM
Gravatar does this means for a pure SSL VS. SSL TPS is equal to New Connection per Second?
James
4/7/2010 3:24 AM
Gravatar Nice explanation of flow. I've a question for you! Does TPS refer to ONLY the handshake? What happens if someone requests a secure web page with 50 references to images over HTTPS? Is that 1 plus 50 = 51 TPS? Thank you, Pam
wildcard ssl
4/7/2010 3:35 AM
Gravatar James - To count it as new conns per second you'd want to eliminate the data transfer.

Wildcard - TPS refers to an entire transaction, from handshake to data transfer, to closure. It would be 51 TPS, as you correctly surmise (assuming underlying protocol is HTTP 1.1) although what you end up testing is two things: bulk encryption/decryption rates (for objects received over a persistent connection) with a variable number of handshakes (depending on how many objects are allowed to be retrieved over a single connection).

SSL is very difficult to quantify because there are two different functions being used: handshaking exchanges keys and performs different RSA operations than the bulk encryption/decryption performed within that SSL session.

macvittie
5/20/2010 6:21 PM
Gravatar Hi,

Thanks for the article. When vendors quote TPS, which ciphers do they normally use?

thanks
PW
5/21/2010 3:30 AM
Gravatar @PW

I can't speak for others definitively, but the most commonly used cipher for web sites is still RC4-MD5. Folks are beginning to move to AES-based ciphers but the majority of sites using SSL today are still using RC4-MD5.

So when we test we test against both RC4-MD5 and AES256-SHA ciphers.

Lori
macvittie
5/21/2010 6:55 PM
Gravatar Thanks for the response Lori!

What about the key exchange? Judging from the o3 response article, F5 SSL TPS benchmarks are done using RSA1024?

PW
6/10/2010 5:54 AM
Gravatar Nice information, but I have one question, If I would like to redirect my URL from http://example.com to https://www.example.com is it possible? If Yes how in IIS7.
Jennifer Aniston
9/30/2010 7:35 AM
Gravatar The author done excellent work and well explained SSL TPS versus HTTP TPS over SSL. This is the first time I am reading such comprehensive material in a single post on this topic.
hp 350
10/25/2010 9:02 AM
Gravatar Such clarity on an ambiguous metric. Thanks for sharing. I think the best advice should be to always ask about explaining these measures of performance.
Wildcard SSL Certificate
11/30/2010 3:25 AM
Gravatar You are the guru buddy, the perfect information I was searching to explain one of my client on online chat, you make my sell, thanks.
ssl certificates
2/9/2011 2:52 AM
Gravatar Good site and some interesting articles - thanks. I have got a lot to learn.
Wildcard SSL
5/31/2011 11:47 PM
Gravatar The TPS communicate with the Business Security consumer over standard HTTP. It may be advantage to protected the TPS-client connections by with HTTP over SSL (HTTPS).
SSL Certificate
7/1/2011 1:11 AM
Gravatar I recommend to use SSL rather than using HTTP TPS because my customers can trust on my site based on that to share their personal information.
SSL Certificate
9/8/2011 1:31 PM
Gravatar Still not clear what F5 counts as SSL TPS for licensing. If (in the same 10 second window) there are 25 HTTP requests within one new SSL connection, does that increase the counter in the 10 second window for the SSL TPS calculation by 1 or 25?
DB
9/21/2011 6:10 AM
Gravatar @DB -

Enforcement happens when the flow is created and at completion of client-side handshakes. As long as the connection remains open, it will count as 1. However, renegotiations will count too.

Hope that is helpful!

Lori
macvittie

Let Me Know What You Think


Please use the form below if you have any comments, questions, or suggestions.

Title:
 
Name:
 
Email: (so we can show your gravatar)
Website:
Comment: Allowed tags: blockquote, a, strong, em, p, u, strike, super, sub, code
 
Please add 4 and 5 and type the answer here:

Blog Stats

Posts:979
Comments:1685
Stories:0
Trackbacks:583
  

Image Galleries

  

Application Delivery

  

Cloud Computing

  

Random

  

Security

  

Chat Catcher

82,243 Members in 102 Countries and Growing!

Join DevCentral Today!

About DevCentral

DevCentral has been a successful, thriving community for many years. We have always strived to bring you the best technical documentation, discussion forums, blogs, media and much more that we can.

So dive in, get familiar with DevCentral. We hope you like it, we hope it makes your job easier, and lets you get that much more power out of the community. To learn more, make sure to check out the Getting Started section. And if you have any problems, or think something could be easier to use, drop us a line to let us know.

Got It !

We've received your comment and transmitted it directly to DevCentral HQ.

Thanks for taking time to let us know what's on your mind. At DevCentral | Community Matters!

Get In Touch With Us

Have questions, suggestions or just want to get something off your chest?

Use our handy form below to Direct Connect with DevCentral Mission Control.

Send Us Feedback       or