[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[or-cvs] r20569: {torflow} Ignore directory authorities in our bw votes. (torflow/trunk/NetworkScanners/BwAuthority)
Author: mikeperry
Date: 2009-09-14 21:31:42 -0400 (Mon, 14 Sep 2009)
New Revision: 20569
Modified:
torflow/trunk/NetworkScanners/BwAuthority/aggregate.py
Log:
Ignore directory authorities in our bw votes.
Modified: torflow/trunk/NetworkScanners/BwAuthority/aggregate.py
===================================================================
--- torflow/trunk/NetworkScanners/BwAuthority/aggregate.py 2009-09-15 01:26:36 UTC (rev 20568)
+++ torflow/trunk/NetworkScanners/BwAuthority/aggregate.py 2009-09-15 01:31:42 UTC (rev 20569)
@@ -71,6 +71,7 @@
class Node:
def __init__(self):
self.node_data = {}
+ self.ignore = False
self.idhex = None
self.nick = None
self.chosen_time = None
@@ -309,10 +310,14 @@
n.new_bw = use_bw*((ALPHA + n.ratio)/(ALPHA + 1.0))
n.change = n.new_bw - n.ns_bw[chosen_bw_idx]
- if n.idhex in prev_consensus and prev_consensus[n.idhex].bandwidth != None:
- prev_consensus[n.idhex].measured = True
- tot_net_bw += n.new_bw
-
+ if n.idhex in prev_consensus:
+ if prev_consensus[n.idhex].bandwidth != None:
+ prev_consensus[n.idhex].measured = True
+ tot_net_bw += n.new_bw
+ if "Authority" in prev_consensus[n.idhex].flags:
+ plog("INFO", "Skipping voting for authority "+n.nick)
+ n.ignore = True
+
# Go through the list and cap them to NODE_CAP
for n in nodes.itervalues():
if n.new_bw > tot_net_bw*NODE_CAP:
@@ -356,7 +361,8 @@
out = file(argv[-1], "w")
out.write(str(int(round(min(scanner_timestamps),0)))+"\n")
for n in n_print:
- out.write("node_id="+n.idhex+" bw="+str(base10_round(n.new_bw))+" diff="+str(int(round(n.change/1000.0,0)))+ " nick="+n.nick+ " measured_at="+str(int(n.chosen_time))+"\n")
+ if not n.ignore:
+ out.write("node_id="+n.idhex+" bw="+str(base10_round(n.new_bw))+" diff="+str(int(round(n.change/1000.0,0)))+ " nick="+n.nick+ " measured_at="+str(int(n.chosen_time))+"\n")
out.close()
if __name__ == "__main__":