Re: Hardware acceleration?
Matthew Toseland <toad-EI5O+8PHWbJeeLb3ft/[email protected]> Fri, 12 Dec 2008 13:30:11 +0000
| Newsgroups | gmane.network.freenet.technical |
|---|---|
| Message-ID | <[email protected]> |
On Friday 12 December 2008 10:46, Ancoron Luciferis wrote: > Matthew Toseland wrote: > > On Thursday 11 December 2008 23:32, Ancoron Luciferis wrote: > >> Matthew Toseland wrote: > >>>>> Short answer: No. =) > >>>>> > >>>>> Long answer: > >>>>> You need special JCE module (software) installed. > >>>>> (e.g. http://www.via.com.tw/en/initiatives/padlock/via-jcp.jsp ) > >>>>> > >>>>> However, > >>>>> the most-used crypto in freenet is Rijndael (original favour, not the > >> NIST > >>>> one), > >>>>> no module provide this acceleration. > >>>> AFAIK it's the same, but we generally use 256/256, whereas AES is > >> actually > >>>> 256/128. In any case there are export policy / key length issues until > >> 1.6, > >>>> and we don't require 1.6 yet. > >>> This also applies to DSA/RSA. We use our own implementations because > >> the JVM > >>> versions are restricted in key length until 1.6. > >>> > >>> It would be possible to switch between the different impls by a config > >> option, > >>> if it was deemed worth the effort... > >>>>> SHA-256, while do have some acceleration exist, are used sparsely. > >>>> We use SHA-256 in many places. We use the JVM implementation. So if > >> hardware > >>>> acceleration is enabled, and if the relevant java library is included > >>>> (manually, RTFM), SHA-256 will be accelerated. > >>> The accelerator card doesn't do SHA-256 apparently, only SHA-1 and md5. > >> We do > >>> use md5 in some cases (e.g. the spider), but it's not widely used as it is > >>> known to be broken. > >>>> The hardware RNG will also be useful. > >> OK. I think I've got it. > >> > >> Many things that freenet uses goes beyond the capabilities of those > >> accelerators. But some would get a benefit. Can someone give a hint > >> how much the security related things that would be supported by such > >> an accelerator (RNG, RSA/DSA) are used inside freenet? Or basically > >> which action of the node implies which security related method? > > > > DSA would be a significant gain for connection setup and routing SSKs. > > However, if you queue downloads, they will need to be FEC decoded. This can > > take 100% CPU for a longish period on slow hardware. > >> So is there a detection of the used JVM? I mean if I just would use > >> the 1.6 JVM does it imply that I'm able to choose the implementation > >> using JCE system properties? > > > > No, we implement our own Rijndael (unfortunately the 256 bit block size means > > it's not compatible anyway), and our own DSA (which would be compatible but > > we don't use because of crypto export issues). > >> If that is not the case could freenet be made configurable in such a way? > > > > It is possible yes. But it hasn't been done yet and I'm not sure it would be a > > big gain. We use SHA-256 a lot more than we use DSA. Profiling would be of > > interest; if a large proportion of the node's runtime is spent doing DSA, it > > would be more interesting to implement such a toggle. > >> I am purchasing such a board as I'm dealing with many parallel SSL > >> connections and until now I have a server doing that work. But the > >> power consumption of such a small Soekris box sounds really nice to > >> me. And running freenet on such a small device along with my other > >> things that have to run 24/7 would make my life much easier. So if > >> freenet doesn't benefit a lot of those hardware accelerators I have to > >> evaluate if it is using too much CPU for that box to not interfere my > >> other things. > >> > >> Thanx and greetz, > >> > >> AncoL > >> > >> ------------------------------------------------------------------------ You seem to have sent this message twice. > > OK. Thanks for that info so far. > > I just searched a bit for other hardware accelerators a bit and came > across the Sun UltraSparc T2 again. > > If SHA-256 and DSA are the most common tasks within freenet I think that > would be the processor of choice for hardware acceleration, although it > lacks a RNG or Rijndael of course. We also do a lot of Rijndael. Some hardware may be able to do Rijndael with a 256 bit block size, I dunno exactly what operations the hardware actually does. However, if you are actually queueing downloads, we also do a lot of FEC decoding and encoding. Which can't be hardware accelerated. > http://wikis.sun.com/display/CryptoPerf/Using+the+UltraSPARC+cryptographic+accelerators > > 1 crypto processor per core, 8 cores per socket... *dreaming of speed* > > Anyway... freenet runs fine on Solaris, doesn't it? > > The further I read the more I'm into replacing my server. If freenet > won't run on that little soekris box well I would need a server and if > the UltraSparc T2 is really that good I would use it for my VPNs too. So > no need for that extra board in the Soekris anymore. Niagara 2 is pretty awesome, I have to give them that. Especially as they've opened the source code for the cores! > > The good thing with Sun is that it is always concerning about Java. With > anything they develop. So you also get the appropriate JCE provider. And > as long as I have seen the Sun JVM is far more effective running under > Solaris than on any other platform. I don't know why this is but all > applications I have seen are always faster at the Java side when running > on a Solaris system. > > What do think of that? > > Regards, > > AncoL _______________________________________________ Tech mailing list [email protected] http://emu.freenetproject.org/cgi-bin/mailman/listinfo/tech
signature.asc
(application/pgp-signature, 827 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iQIVAwUASUJnY3svjZi+xPTDAQJvMRAAityFzCv12+gWKa4OONZVt9XBvAjLrsbm 3vSk9+Q/ceg1nglBerTU8V6DtG/PYSdJIytilBUNMoEjvjr8mpGgMD8TTHlEncd4 5GHNlz3wQSZW5864KIgPMFVqUx5iq7dtaZAG6evjsa53IzZMet+LfJD5yLq2TIrd Pc8uMro3XNL5mDFJi95LQA7WwRodYWVYegaFUvezjU0gvEgXhDi54pngoB2HDACo Dp8eOUXx0PjB0eHcGKp7vsT4wdFsfX16ap3yJjyunhgpBq9JSIcHufoTSq79Mz4d 2Sw3qLwWjsk5Sen3qb85r8Ct+Ii6ved9BYG20T+oM4u6WH57/avoh2+vkyDsPIxZ Vxo1RiQSVgvPwKcOi6ZvzmprcjPh7qLpl7v8DG3cdiMxqQK+cC8i1UGoeZ157wVp Dd7BwoYbF1fRKonBs/DMlPHIGKHjHyioFgiIkqut8wkRpL3pPEvenzOP2mKyvMBv J8jnQfHF8cYsyF+0i3CnqkIO0L6QJJfwGjwZnD6WAO8hVdc/GGwFRFl7Yh0ttSw1 EbdEu4VNSJdg2sV+78oeL/3zbq4AiQunxF8nprSXmqx2/Z6Rupq2mjyBtIfLf9cZ bwbXGtwQOeryEhKDoamI3borMWRG2NOUYUbfgVzQnDBV1kYj4KwnHWaSMTSQLfm2 XXUL/4Qr4vA= =4IqM -----END PGP SIGNATURE-----