[tor-bugs] #9166 [Tor]: Write a UTP-based channel implementation
Tor Bug Tracker & Wiki
blackhole at torproject.org
Mon Jul 1 13:31:55 UTC 2013
#9166: Write a UTP-based channel implementation
---------------------------+------------------------------------------------
Reporter: nickm | Owner:
Type: defect | Status: new
Priority: normal | Milestone: Tor: unspecified
Component: Tor | Version:
Keywords: tor-relay utp | Parent: #9165
Points: | Actualpoints:
---------------------------+------------------------------------------------
Comment(by sjmurdoch):
Replying to [comment:2 nickm]:
> As I understand it, the branch today works by adding a UTP connection
"on the side" of every or_connection_t. Whenever an OR connection is
launched, so is a corresponding UTP connection. The branch seems to want
to use TLS for initial key setup, and does not appear to do encryption on
the UTP connections yet.
That's correct. Cells that are sent via channels go via uTP (and not TLS)
but versions, netinfo, certs and auth* get sent directly on a OR
connection rather than channel. I tried sending these via channels but
this failed (my reverted attempt was in
4b674b6ba1a665703c2fbc4244eff40ae5e3e673)
> * Aw geez. it's using the TLS master key as some kind of key material
for the UTP session. That's pretty darned kludgy. I'd really want a key
derivation function in there at least.
> * It doesn't appear anything uses the TLS master key though.
Indeed this is horrid, but only necessary because uTP and TCP connections
need to be linked to the same OR connection. Once all necessary cells are
sent over uTP there will be no need for any such mechanism.
Replying to [comment:3 nickm]:
> Looking at the issues above, the issues likeliest to affect performance
measurements (Assuming this actually works at all, which I haven't tested,
but I believe Steven says it does) is the lack of rate-limiting, and the
possibility of sending cells redundantly. (If I'm reading the code right,
data is actually sent on both the TCP *and* the UTP connection. Was that
fixed?)
I intended that cells except handshake cells should be sent over uTP and
handshake cells sent over TCP. The (badly described) commit of
fc63eca9ff26384b66707f3dfc15a4555c259a5d stops cells being sent on the OR
connection if a uTP connection is available.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/9166#comment:5>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list