EldoS | Feel safer!

Software components for data protection, secure storage and transfer

SSL Client Socket Performance

Also by EldoS: CallbackFilter
A component to monitor and control disk activity, track file and directory operations (create, read, write, rename etc.), alter file data, encrypt files, create virtual files.
#16390
Posted: 05/08/2011 11:42:02
by Gareth Brown (Priority Standard support level)
Joined: 05/08/2011
Posts: 2

Hi,

I am building an EPP Client to talk to Nominet and register domain names. The application needs to be really fast, every millisecond counts. Up until yesterday I have been using SslStream, but always felt it was slow. Due to the speed limitation with the SecureBlackbox evaluation license I took a gamble and bought it.

I have managed to migrate my app over to use ElClientSSLSocket and it has already shaved off 8ms. I happy with the results. But, is this the best socket class for job? Or is there another class more suitable for the job?

Thanks

Gareth
#16391
Posted: 05/08/2011 13:07:27
by Eugene Mayevski (EldoS Corp.)

You can try TElSimpleSSLClient class as well.

Also, SecureBlackbox 9 release will include additional improvements in speed of cryptography algorithms.

Finally, you can play with cipher suite settings (see CipherSuites property) to disable slow ones (DES, 3DES) and leave only the fastest one (RC4, AES). Note on AES: on some computers JIT compiler produces not optimal code. We get about 500% speed difference between most systems and some specific systems where performance degrades. We hope that our optimizations will solve this problem.


Sincerely yours
Eugene Mayevski
#16392
Posted: 05/08/2011 14:03:53
by Gareth Brown (Priority Standard support level)
Joined: 05/08/2011
Posts: 2

Thanks Eugene for the reply. I think, I quickly tried the TElSimpleSSLClient first but it was 20ms slower than my original code. 1ms can mean the difference between catching a domain name and not! I will have another look at it though. Does it use the .Net Socket or is it something you have developed?

Call me stupid! But the app is really simple, I send some XML via SSL, they send some back. I don't need to specify any local certificates and they don't mention what Ciphers to use. Debugging through the code the CipherSuites property is 4 SB_SUITE_RSA_RC4_SHA.

I haven't worked with SSL like this before, sorry if I sound a bit wet round the ears!

Cheers

Gareth
#16393
Posted: 05/08/2011 14:32:07
by Eugene Mayevski (EldoS Corp.)

Quote
Gareth Brown wrote:
Does it use the .Net Socket or is it something you have developed?


It uses .NET socket internally, but works with it a bit differently from the way you might use ElClientSSLSocket.

Quote
Gareth Brown wrote:
Debugging through the code the CipherSuites property is 4 SB_SUITE_RSA_RC4_SHA


That is ok for performance.


Sincerely yours
Eugene Mayevski

Reply

Statistics

Topic viewed 875 times

Number of guests: 1, registered members: 0, in total hidden: 0




|

Back to top

As of July 15, 2016 EldoS Corporation will operate as a division of /n software inc. For more information, please read the announcement.

Got it!