Skip to content

Rate-limiting and bandwidth accounting support

Rate-limiting and bandwidth accounting are mainly a matter for relays, but possibly some clients need them too?

This is likely to be a smaller ticket if we wind up doing a full set of token buckets for #88.

Current thinking is that this might not be necessary for onion service operators, only for relay operators. But I don't remember why.

I like the general design of the async_speed_limit crate, though we might find that there are tricky architectural issues. Namely:

  • Is that crate efficient enough for us?
  • Is it fair enough for us?
  • Where, in our architecture, does it make sense to hold on to a Limiter object?
Edited by Nick Mathewson