udp transport PoC

Nick Mathewson nickm at freehaven.net
Wed Apr 9 01:06:59 UTC 2008

On Mon, Apr 07, 2008 at 03:06:17PM -0400, Camilo Viecco wrote:
> Hello Mail list
> First introduction:
> My name is Camilo Viecco, and I am PhD student at the CS department of
> Indiana University.

Hi, Camilo!  This is interesting stuff.  We definitely need to move to
a UDP transport at some point, and it's good to try out various
approaches before we can get them onto the main network.  

One question I got looking at your codebase for a few minutes: Do you
have a protocol specification for this anywhere (that is, something
like tor-spec.txt)?

> I really like tor but had became disillusioned by its network
> performance (or lack of). Thus,
> as part of my graduate work I have designed a modification of the
> transport mechanism in tor
> to use tunnel tcp connections over ucp. That is, socks aware
> applications open tcp streams
> to a socks server running at the tor exit node.> Tor does not transport
> tcp streams
> but transports the tcp packets (build by the os) in the form of
> encapsulated autonomous circuit cells over udp.

I really worry about TCP stack fingerprinting and linking with this
approach, especially if the exit nodes have freedom what they send
back to the clients.  I guess that it doesn't matter much for a proof
of concept of the routing algorithm, but it's a problem that will need
to be solved before a solution can get deployed in Tor.

> The objectives of the redesign are to:
> -Have a more fair allocation of network resources.
> -Use end to end congestion control and avoidance.
> -simplify the codebase.
> During testing I have seen that even in high-latency, low bandwidth
> circuits (US(abiline)-UK(home DSL)-US(abiline))
> the latency at the application circuit is almost constant even with 
> high load the  circuit (500ms  vs 10s on tor (average over 20 connections)).
> Also, bandwidth is spread evenly among multiple tcp streams.

That's pretty keen!  I had a talk with Roger today about development
directions for Tor, and I think we're pretty sure that we need to
support UDP transport within a year or two.  Work like this definitely
helps to make the case for it.


More information about the tor-dev mailing list