Implement outbound bandwidth limiting for i2psnark

This commit is contained in:
zzz
2008-04-07 17:41:58 +00:00
parent d57356f807
commit edc02e5efa
7 changed files with 89 additions and 13 deletions

View File

@@ -776,4 +776,18 @@ public class Snark
// Snark.debug("Total uploaders: " + totalUploaders + " Limit: " + limit, Snark.DEBUG);
return totalUploaders > limit;
}
public static boolean overUpBWLimit() {
PeerCoordinatorSet coordinators = PeerCoordinatorSet.instance();
if (coordinators == null)
return false;
long total = 0;
for (Iterator iter = coordinators.iterator(); iter.hasNext(); ) {
PeerCoordinator c = (PeerCoordinator)iter.next();
if (!c.halted())
total += c.getUploadRate();
}
long limit = 1024l * I2PSnarkUtil.instance().getMaxUpBW();
return total > limit;
}
}