Bandwidth throttling (was Re: Padding)

Roger Dingledine arma at mit.edu
Wed Jul 10 22:22:21 UTC 2002


On Wed, Jul 10, 2002 at 04:34:07PM -0400, Paul Syverson wrote:
>  But, I think we need to do some analysis
> before we go building any of this stuff into our OR code.  

Ok. I think you should start us off on this, Paul. :)

It would be nice to resolve link padding first, because for the most
part that's what I'd be implementing next. It comes in the form of:

a) Evenly spaced cells coming out of an onion router
b) Sending padding cells if you don't have something better to send
c) 'sendme' cells for congestion control
d) Token buckets on the receiver to enforce bandwidth throttling 

I can do (d) independently of the others, and it will do a pretty good
job by itself of enforcing bandwidth throttling.

I can do (c) in order to prevent DoS attacks where the adversary makes
a lot of circuits and has them all funnel into one poor node at some
point. But if we choose not to do (a), then doing (c) is much less
critical.

Doing (b) makes no sense if we don't do (a).


But adding any sort of scheduler is going to complicate the code, so
ideally I want to have a sense of what I'm going to use it for before
I build it. (I don't want to build it with lots of unused features and
feature hooks, because that's just asking for bugs. But at the same time
I don't want to have to throw it away to add an unexpected feature.)

>  but I think we
> need some analysis first in this area.

Feel free. :)

--Roger



More information about the tor-dev mailing list