[tor-bugs] #34010 [Core Tor/Tor]: Use io_uring when available

Tor Bug Tracker & Wiki blackhole at torproject.org
Mon Apr 27 12:47:43 UTC 2020


#34010: Use io_uring when available
--------------------------+------------------------
 Reporter:  torry         |          Owner:  (none)
     Type:  enhancement   |         Status:  new
 Priority:  Medium        |      Milestone:
Component:  Core Tor/Tor  |        Version:
 Severity:  Normal        |     Resolution:
 Keywords:  io_uring      |  Actual Points:
Parent ID:                |         Points:
 Reviewer:                |        Sponsor:
--------------------------+------------------------

Comment (by dgoulet):

 Hi torry!

 We've indeed noticed `IO_uring` and it looks very promising! One of the
 issue with adopting a new I/O technology like this with tor is that it has
 to be used by `libevent` for us to utilize it. Tor I/O foundations is
 libevent.

 However, there are ideas floating around and potential funding proposal we
 are writing on getting progressively away from libevent for certain things
 and one of them is the relay I/O in order to move it to a more multicore
 architecture.

 And `IO_uring` is _definitely_ very juicy target imo instead of `epoll`.
 Tor still needs to keep compatibility with other platforms such as Windows
 and BSD so there is still a non straight forward path to use it since the
 non-Linux cases need to be figured out properly.

 As for:

 > In my own experience running a relay on a low end hardware for two years
 and the low end hardware was never able to fill the fiber connection. It
 seems to be quite a lot of internal overhead, perhaps io_uring could
 really help.

 This could be in part due to tor's performance but in reality most of it
 is due to bandwidth balancing in the network which in short means that Tor
 is not optimally distributing the traffic evenly through out the network.

 Thanks for pointing this out!

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/34010#comment:2>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list