- Write a changes file.
- Change some logs to lesser severities.
--- /dev/null
+ o Major features:
+ - Introduce the Guardfraction feature which improves the load
+ balancing of path selection towards guard nodes. Specifically,
+ it aims to reduce the traffic gap that guard nodes experience
+ when they first get the Guard flag. This is a required step if
+ we want to increase the guard lifetime to 9 months or greater.
+ Resolves ticket 9321.
retval = 0;
- log_warn(LD_CONFIG,
+ log_info(LD_CONFIG,
"Successfully parsed guardfraction file with %d consensuses over "
"%d days. Parsed %d nodes and applied %d of them%s.",
total_consensuses, total_days, guards_read_n, guards_applied_n,
int guardfraction_bandwidth = 0;
if (!rs->has_bandwidth) {
- log_warn(LD_BUG, "Missing consensus bandwidth for router %s",
+ log_info(LD_BUG, "Missing consensus bandwidth for router %s",
rs->nickname);
return;
}
guardfraction_bw.guard_bw * weight +
guardfraction_bw.non_guard_bw * weight_without_guard_flag;
- log_warn(LD_GENERAL, "%s: Guardfraction weight %f instead of %f (%s)",
- node->rs->nickname, final_weight, weight*this_bw,
- bandwidth_weight_rule_to_string(rule));
+ log_debug(LD_GENERAL, "%s: Guardfraction weight %f instead of %f (%s)",
+ node->rs->nickname, final_weight, weight*this_bw,
+ bandwidth_weight_rule_to_string(rule));
} else { /* no guardfraction information. calculate the weight normally. */
final_weight = weight*this_bw;
}
return -1;
}
- log_warn(LD_GENERAL, "[*] Parsed %s guardfraction '%s' for '%s'.",
- is_consensus ? "consensus" : "vote",
- guardfraction_str, rs->nickname);
+ log_debug(LD_GENERAL, "[*] Parsed %s guardfraction '%s' for '%s'.",
+ is_consensus ? "consensus" : "vote",
+ guardfraction_str, rs->nickname);
if (!is_consensus) { /* We are parsing a vote */
vote_rs->status.guardfraction_percentage = guardfraction;