[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: Proposal: minimum advertised bandwidth guarantees fast/guard



On Wed, Jul 18, 2007 at 06:31:22AM -0400, Roger Dingledine wrote:
> B) I chose to assign guard status to all stable nodes that meet this
> cutoff -- even exit nodes. We could instead just make the exception for
> non-exit nodes, which would be better for load balancing when exits are
> rare. But having sufficient guards is useful too.
[snip]
> @@ -1709,9 +1713,10 @@
>    rs->is_valid = ri->is_valid;
>    rs->is_possible_guard = rs->is_fast && rs->is_stable &&
>      (!rs->is_exit || exits_can_be_guards) &&
> -    router_get_advertised_bandwidth(ri) >=
> -    (exits_can_be_guards ? guard_bandwidth_including_exits :
> -     guard_bandwidth_excluding_exits);
> +    (router_get_advertised_bandwidth(ri) >= BANDWIDTH_TO_GUARANTEE_GUARD ||
> +     router_get_advertised_bandwidth(ri) >=
> +     (exits_can_be_guards ? guard_bandwidth_including_exits :
> +      guard_bandwidth_excluding_exits));

Actually, issue B isn't as big a deal as I'd thought. The patch above
makes exits guards only if exits_can_be_guards. The only change is that
BANDWIDTH_TO_GUARANTEE_GUARD is sufficient to be a guard no matter what
the guard_bandwidth_including/excluding_exits values happen to be.

--Roger