udp transport PoC

Camilo Viecco cviecco at anml.iu.edu
Mon Apr 7 19:06:17 UTC 2008

Hello Mail list

First introduction:
My name is Camilo Viecco, and I am PhD student at the CS department of
Indiana University.

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.

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.

The proof of concept code for this is available at:
(please use the latest code alway, now 0.0.3).

The network has been running since last week and seems to have no problems.
The code is linux only and one of the required libraries (libdnet)
requires a patch
since the library is broken (No response form the library developer yet).

Detailed instructions on building, installing and running can be found
in the distribution.

hope you have fun and dont hesitate to contact me if there are you have
and/or find

Camilo H. Viecco
 Key fingerprint = 0781 10A0 44CC C441 594F  E5A9 858A 173E 3EC5 EA42

More information about the tor-dev mailing list