SecureSession published to Cryptography repository

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

SecureSession published to Cryptography repository

Robert Withers
Good morning,

I managed to separate the SecureSession code out of Mushroom and I have published it into the SqueakSource Cryptography repository. Version 4 is this release, though I expect name refactoring to occur, so just take the latest. This requires the loading of Cryptography, though I did not set a package dependency in Monticello for SecureSession. Should I?

Note to Pharo: Please load version 37 of Cryptography.

WARNING: the Performance test will fail without the crypto plugins installed.


Resulting performance data, with and without crypto plugins...there is 275% increase in performance with crypto plugins.

With crypto plugins:
100 KB data chunks received: 10
send time: 272 ms, rate: 3.676 MB/sec.
receive time: 600 ms. rate: 1.667 MB/sec.
       
Without crypto plugins:
100 KB data chunks received: 1
send time: 8469 ms, rate: 0.012 MB/sec.
receive time: 17233 ms. rate: 0.006 MB/sec.
Regards,
Robert


Reply | Threaded
Open this post in threaded view
|

Re: SecureSession published to Cryptography repository

Robert Withers
Is that a 27,500% increase? I am a little confused.

On 12/08/2015 08:07 AM, Robert Withers wrote:
Good morning,

I managed to separate the SecureSession code out of Mushroom and I have published it into the SqueakSource Cryptography repository. Version 4 is this release, though I expect name refactoring to occur, so just take the latest. This requires the loading of Cryptography, though I did not set a package dependency in Monticello for SecureSession. Should I?

Note to Pharo: Please load version 37 of Cryptography.

WARNING: the Performance test will fail without the crypto plugins installed.


Resulting performance data, with and without crypto plugins...there is 275% increase in performance with crypto plugins.

With crypto plugins:
100 KB data chunks received: 10
send time: 272 ms, rate: 3.676 MB/sec.
receive time: 600 ms. rate: 1.667 MB/sec.
       
Without crypto plugins:
100 KB data chunks received: 1
send time: 8469 ms, rate: 0.012 MB/sec.
receive time: 17233 ms. rate: 0.006 MB/sec.
Regards,
Robert



Reply | Threaded
Open this post in threaded view
|

Re: SecureSession published to Cryptography repository

Robert Withers
Ok, less confused now - it IS 27500%!  That's with me single-core 900Mhz machine. An i5 or i7 will have much better throughput me thinks, at least the clocking...I would love to hear some numbers...it is 13 Mbs now, in loopback; can we reach 50 Mbs?

One known issue: when calling setsockopt: (squeak protocol is Socket>>#setOption:value:, one of the values fails. Here is the code where  Iam calling this...

ConnectionHandler>>#newListener
    | listener |

    self flag: #todo. "listener _ self socketClass newTCP."
    listener := Socket newTCP.
    listener setOption: 'SO_REUSEADDR' value: 1.
    listener setOption: 'SO_LINGER' value: 0.
    "backlog is how many simultaneous connections to accept at the same time"
    listener listenOn: portNumber backlogSize: 10.
    ^listener

The stdout/stderr output from this call is:

setsockopt: Invalid argument
setsockopt: Invalid argument

Note that I also refactored teh pipeline to eliminate a few calls, change the protocol and rename some classes. I updated the diagram at https://github.com/SqueakCryptographySquad/Mushroom/wiki.

There is now a version 5 of the SecureSession package in the repository.

Thanks,
Robert




On 12/08/2015 08:33 AM, Robert Withers wrote:
Is that a 27,500% increase? I am a little confused.

On 12/08/2015 08:07 AM, Robert Withers wrote:
Good morning,

I managed to separate the SecureSession code out of Mushroom and I have published it into the SqueakSource Cryptography repository. Version 4 is this release, though I expect name refactoring to occur, so just take the latest. This requires the loading of Cryptography, though I did not set a package dependency in Monticello for SecureSession. Should I?

Note to Pharo: Please load version 37 of Cryptography.

WARNING: the Performance test will fail without the crypto plugins installed.


Resulting performance data, with and without crypto plugins...there is 275% increase in performance with crypto plugins.

With crypto plugins:
100 KB data chunks received: 10
send time: 272 ms, rate: 3.676 MB/sec.
receive time: 600 ms. rate: 1.667 MB/sec.
       
Without crypto plugins:
100 KB data chunks received: 1
send time: 8469 ms, rate: 0.012 MB/sec.
receive time: 17233 ms. rate: 0.006 MB/sec.
Regards,
Robert