udp transport PoC

Adam Langley agl at imperialviolet.org
Tue May 13 22:11:53 UTC 2008

On Tue, May 13, 2008 at 1:50 PM, Nick Mathewson <nickm at freehaven.net> wrote:
>  Spoiler: I prefer approach 1.  Here's why.

For what it's worth, I suggest that you're perfectly correct here, as
unfortunate as it may be from a code complexity point of view.

Now it would appear that you have two issues to content with. Firstly,
you have a flow control issue between nodes and secondly a packet-loss
issue for an individual circuit. I'm assuming that you want to split
the problem (TCP conflates them). Not splitting them might let you
pull in a userspace TCP stack wholesale. However, splitting them will
give you better fairness to other network users (esp other flows from
the node)[1]

Your flow control should probably be based on[2]. The description in
the TCP RFC now bares no relation to reality.

Your packet loss and windowing is pretty straight forward, so long as
it can signal packet loss events to the flow control. I don't have any
specific references here, common sense is as good as the state of
practice here.

Just hoping to provide some useful pointers,


[1] http://www.cs.ucl.ac.uk/staff/bbriscoe/pubs.html#rateFairDis
[2] http://netsrv.csc.ncsu.edu/twiki/bin/view/Main/BIC

Adam Langley agl at imperialviolet.org http://www.imperialviolet.org

More information about the tor-dev mailing list