Eu gostaria de usar minha conexão de 100/100 Mbps para o Tor. Eu quero dar toda a minha capacidade ociosa, mas eu não quero que minha conexão seja retardada pelo Tor em 1% do tempo quando eu realmente preciso dos 100 Mbps.
Eu tenho o Tor em um servidor separado conectado à LAN.
[TOR-server] [Host2] [Host3] ... [Hostn]
| | | |
+----------+-------+-----------+
|
[Router1]
|
[Router2]
|
[Internet]
[Router1]
, [Router2]
e [Host2]
... [Hostn]
não pode ser alterado. O link limitante é normalmente entre [Router1]
e [Router2]
.
Idealmente, quero apenas reduzir a velocidade da rede para / do processo tor
em [TOR-server]
, mas é aceitável se a rede de / para todo o [TOR-server]
for limitada. Não consegui encontrar um qdisc
que analise o tempo de ida e volta para um host externo.
Como posso deixar o Tor usar toda a capacidade disponível, mas diminuir quando outros na rede precisam de largura de banda?
Existe uma ferramenta geral para isso? Talvez semelhante a nice
para uso da CPU?
Eu vejo que você provavelmente poderia construir assim:
# Find close router
$hop2 = hop 2 of traceroute to 8.8.8.8
# Ping the $hop2 to look for signs of congestion
ping $hop2 &
while(true) {
if(reply time < 2 * median(reply times)) {
# latency normal
sleep 1
} else {
suspend($bandwidth_using_program, 1 second)
}
}
Mas já existe uma ferramenta bem testada para isso?
Tags networking nice