[tor-commits] [tor/master] Raise MIN_DL_PER_REQUEST to 32
nickm at torproject.org
nickm at torproject.org
Fri Aug 11 18:09:21 UTC 2017
commit efbd4a33f4223bd3b7b3b0de307e9854e1d72e4e
Author: Nick Mathewson <nickm at torproject.org>
Date: Fri Aug 11 13:54:01 2017 -0400
Raise MIN_DL_PER_REQUEST to 32
This change should improve overhead for downloading small numbers of
descriptors and microdescriptors by improving compression
performance and lowering directory request overhead.
Closes ticket 23220.
---
changes/bug23220 | 7 +++++++
src/or/routerlist.c | 5 +++--
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/changes/bug23220 b/changes/bug23220
new file mode 100644
index 000000000..9c2efc959
--- /dev/null
+++ b/changes/bug23220
@@ -0,0 +1,7 @@
+ o Minor features (client directory bandwidth tuning):
+
+ - When downloading (micro)descriptors, don't split the list of
+ descriptors into multiple requests unless there are at least 32
+ descriptors that we want. Previously, we split at 4, not 32, which
+ could lead to significant overhead in HTTP request size and
+ degradation in compression performance. Closes ticket 23220.
diff --git a/src/or/routerlist.c b/src/or/routerlist.c
index 49caa875f..989401947 100644
--- a/src/or/routerlist.c
+++ b/src/or/routerlist.c
@@ -4971,8 +4971,9 @@ max_dl_per_request(const or_options_t *options, int purpose)
}
/** Don't split our requests so finely that we are requesting fewer than
- * this number per server. */
-#define MIN_DL_PER_REQUEST 4
+ * this number per server. (Grouping more than this at once leads to
+ * diminishing returns.) */
+#define MIN_DL_PER_REQUEST 32
/** To prevent a single screwy cache from confusing us by selective reply,
* try to split our requests into at least this many requests. */
#define MIN_REQUESTS 3
More information about the tor-commits
mailing list