[tor-relays] Does Tor work with Intel QAT acceleration

Andreas Bollhalder bolle at geodb.org
Tue Apr 12 15:52:25 UTC 2022


Hello Stefan

Wow, that's very good researched. I still didn't get that deep into this.

So it really seems, there is no special hardware which helps with Tor beside AES-NI, high CPU clock and a good NIC with good drivers.

Yes, I have two instances running. Would be great, to have IPv6 only Tor instances. But I know that it's currently not supported...

Greetings
Andreas

On Tuesday, April 12, 2022 16:23 CEST, Bauruine <torcontact at tuxli.ch> wrote:
   Hi Andreas

According to [0] QAT supports:
 * RSA with 2048, 3072, and 4096 bit keys * ECDH for the Montgomery Curve X25519 and NIST Prime Curves P-256 and P-384 * ECDSA for the NIST Prime Curves P-256 and P-384 * AES-GCM with 128, 192, and 256 bit keys
The tor-spec [1] shows that Tor only uses RSA with 1024 Bit Keys and the ciphersuits only contain AES CBC and no AES GCM ones. I'm not an expert but it looks like it's not that useful for Tor.
Tor doesn't scale well with multiple CPU cores but you can run 2 relays per IP to better use your hardware. On Debian / Ubuntu you can use tor-instance-create <name> to create multiple relays on the same host. [0]: https://www.intel.com/content/www/us/en/developer/articles/guide/building-software-acceleration-features-in-the-intel-qat-engine-for-openssl.html
[1]: https://gitweb.torproject.org/torspec.git/tree/tor-spec.txt
  Regards
Stefan
 On 11.04.22 21:13, Andreas Bollhalder wrote:Hello Kevin

Thanks a lot for your response.

1) Regarding the speedtest, my firewall is limiting the speed to around 6.5Gbit/s. It's a fanless device and not capable to let me use the full 10Gbit/s. I host my hardware in my living room and can't install more powerfull, beacuse it would be too noisy and too big... My wife and kids will kill me :-)

2) For the NIC currently in use: it's an Intel I219-LM (rev 10). Maybe the are better models around. But I don't believe, they would lower the CPU usage by magnitude(s). But I let me educate if I'm wrong.

3) The CPU in use has the AES-NI flag set in "/proc/cpuinfo". So a litte acceleration is already in use.

In the old days when using pfSense on a PC Engines Alix, I was using a mini PCI crypto accelerator card. And it could double or tripple the OpenVPN speed. So it seemed to me, that QAT could do the same for Tor.

Andreas

On Monday, April 11, 2022 15:58 CEST, Thoughts <thoughts at kevinsthoughts.com> wrote:
 Two suggestions:

1)  Run speedtest (https://www.speedtest.net) from behind your firewall
and verify your actual bandwidth (or at least get a good approximation
<smile>).

2)  Check the brand of NIC in your current machine.  Intel NICs are
reportedly much more efficient than RealTek for handling large number of
packets - which is why they are recommended for most firewall machines. 
Suspect that logic would apply for a Tor Relay as well.

Suspect you also want a CPU with AES-NI support.  Check the specs on the
web, AES-NI should be called out.  "cat /proc/cpuinfo | grep aes" will
also tell you if your running some flavor of linux.

Kevin

ps. Dig around on the web for firewall hardware recommendations. I know
I've seen some tables on throughput for pfsense, shouldn't be too hard
to find and might throw some light on the situation.

pps.  Very jealous of your connectivity!

On 4/10/2022 2:32 PM, Andreas Bollhalder wrote:
> Hi all
>
> I have my first Tor relay up und running. It's currently installed on
> a little desktop computer with an Intel i5 9500T CPU. My Internet
> connection is 10Gb/s symetric. From this bandwidth, I would be able to
> spend a good part for supporting the Tor network.
>
> With that little machine, it seems that it would max out at somewhere
> at ~30 MBytes/s. For my definitive Tor relay hardware, I'm currently
> researching some options, which would be capable of handling Tor
> traffic at the rate of 200 to 300MBytes. Even it would be used
> nowadays, but who knows whats coming in the future and I hope this
> relay would last 5 years ore so.
>
> It looks to me, that with a normal CPU, it's impossible to reach my
> goal. But then I encountered, that Intel has the Quick Assist
> Technoloy (QAT) integrated in some of their products (ie. Atom C3xx8).
> This QAT can be used with OpenSSL as a hardware accelerator for
> encryption. There also exist dedicated PCIe cards with QAT (ie.
> Netgate CPIC-8955).
>
> Searching the Internet, I couldn't find any information if QAT would
> be helpful with Tor. But Tor uses the OpenSSL library and this can use
> the QAT acceleration. Is there anyone who has tried this und can share
> his expirience?
>
> Thanks in advance
> Andreas
>
> _______________________________________________
> tor-relays mailing list
> tor-relays at lists.torproject.org
> https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-relays
_______________________________________________
tor-relays mailing list
tor-relays at lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-relays

  _______________________________________________
tor-relays mailing list
tor-relays at lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-relays


 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.torproject.org/pipermail/tor-relays/attachments/20220412/9bce69d7/attachment-0001.htm>


More information about the tor-relays mailing list