Selaa lähdekoodia

Merge branch 'maint-0.2.5'

Roger Dingledine 11 vuotta sitten
vanhempi
commit
eb3e0e3da3
3 muutettua tiedostoa jossa 13 lisäystä ja 3 poistoa
  1. 9 0
      changes/ticket12690
  2. 1 1
      src/or/config.c
  3. 3 2
      src/or/dirserv.c

+ 9 - 0
changes/ticket12690

@@ -0,0 +1,9 @@
+  o Minor features:
+    - Authorities now assign the Guard flag to the fastest 25% of the
+      network (it used to be the fastest 50%). Also raise the consensus
+      weight that guarantees the Guard flag from 250 to 2000. For the
+      current network, this results in about 1100 guards, down from 2500.
+      This step paves the way for moving the number of entry guards
+      down to 1 (proposal 236) while still providing reasonable expected
+      performance for most users. Implements ticket 12690.
+

+ 1 - 1
src/or/config.c

@@ -147,7 +147,7 @@ static config_var_t option_vars_[] = {
   V(AuthDirInvalid,              LINELIST, NULL),
   V(AuthDirInvalidCCs,           CSV,      ""),
   V(AuthDirFastGuarantee,        MEMUNIT,  "100 KB"),
-  V(AuthDirGuardBWGuarantee,     MEMUNIT,  "250 KB"),
+  V(AuthDirGuardBWGuarantee,     MEMUNIT,  "2 MB"),
   V(AuthDirReject,               LINELIST, NULL),
   V(AuthDirRejectCCs,            CSV,      ""),
   V(AuthDirRejectUnlisted,       BOOL,     "0"),

+ 3 - 2
src/or/dirserv.c

@@ -1588,7 +1588,7 @@ dirserv_compute_performance_thresholds(routerlist_t *rl,
     /* (Now bandwidths is sorted.) */
     if (fast_bandwidth_kb < ROUTER_REQUIRED_MIN_BANDWIDTH/(2 * 1000))
       fast_bandwidth_kb = bandwidths_kb[n_active/4];
-    guard_bandwidth_including_exits_kb = bandwidths_kb[(n_active-1)/2];
+    guard_bandwidth_including_exits_kb = bandwidths_kb[n_active*3/4];
     guard_tk = find_nth_long(tks, n_active, n_active/8);
   }
 
@@ -1646,7 +1646,8 @@ dirserv_compute_performance_thresholds(routerlist_t *rl,
 
   if (n_active_nonexit) {
     guard_bandwidth_excluding_exits_kb =
-      median_uint32(bandwidths_excluding_exits_kb, n_active_nonexit);
+      find_nth_uint32(bandwidths_excluding_exits_kb,
+                      n_active_nonexit, n_active_nonexit*3/4);
   }
 
   log_info(LD_DIRSERV,