[tor-relays] dynamically adjusting bandwidth

starlight at binnacle.cx starlight at binnacle.cx
Tue Oct 15 20:18:20 UTC 2013


Hello,

I've recently established a full-time relay
running on a fast Linux router.  Working nice
with version 0.2.4.17-rc.

Have a daily offsite backup that was butting heads
with TOR traffic, so I wrote a 'tor_bwreduce' and
'tor_bwrestore' script like these:

nc 10.92.88.1 9151 <<EOF
AUTHENTICATE "xxx"
SETCONF RelayBandwidthRate=60000
SETCONF RelayBandwidthBurst=60000
QUIT
EOF
:

nc 10.92.88.1 9151 <<EOF
AUTHENTICATE "xxx"
SETCONF RelayBandwidthBurst=375000
SETCONF RelayBandwidthRate=250000
QUIT
EOF
:

and run them at the appropriate points in the
offsite backup script.  The backup is rate-limited
as well so the link now avoids going into significant
oversubscription or contention.

This works much better than I expected.  The Tor
network consensus bandwidth for the node was
taking a bad hit due to congestion delays when the
backup ran.  Now it seems unaffected and the
consensus for my node has shot up above the
'RelayBandwidthRate' value.

So that's all super.

The question is, should I put in an adjustment for
'MaxAdvertisedBandwidth' during the backup window
or make any other change to advise remote relays to
de-prioritize the node for the duration?

Ideally I'd like to put the node into temporary
hibernation, but it seems the only way to do that
is indirectly by fiddling with several Accounting*
parameters.

Thanks!

P.S.  BTW Vidalia could use some improvement
in the area of dealing with a Tor relay living
on a different box in the same network.
Nothing major, but it should

  1) not override the config and/or warn first
  2) import the config when a virgin TBB
     install connects to a non-local address
  3) not shut down the relay casually without
     an "are you sure?" pop-up



More information about the tor-relays mailing list