aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2006-12-20 09:43:28 +0000
committerRoger Dingledine <arma@torproject.org>2006-12-20 09:43:28 +0000
commit00257212c7a9e0e7c2504b7ccdd36727d4fc362f (patch)
tree5ad7fe0881096f36be30630d093b5179e2d8a94a
parent858d7295e728ca07573cac9bc3ad241a2b50dba7 (diff)
downloadtor-00257212c7a9e0e7c2504b7ccdd36727d4fc362f.tar
tor-00257212c7a9e0e7c2504b7ccdd36727d4fc362f.tar.gz
Take out the '5 second' timeout from the connection retry
schedule. Now the first connect attempt will wait a full 10 seconds before switching to a new circuit. Perhaps this will help a lot. Based on observations from Mike Perry. svn:r9159
-rw-r--r--ChangeLog4
-rw-r--r--doc/TODO2
-rw-r--r--src/or/connection_edge.c8
3 files changed, 8 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 9d4b4d5e8..0d86c2ec3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -50,6 +50,10 @@ Changes in version 0.1.2.5-xxxx - 200?-??-??
give up on a nameserver the third time it timed out, and try it
10 seconds later... and to give up on it every time it timed out
after that. (May fix bug 326.)
+ - Take out the '5 second' timeout from the connection retry
+ schedule. Now the first connect attempt will wait a full 10
+ seconds before switching to a new circuit. Perhaps this will help
+ a lot. Based on observations from Mike Perry.
o Minor bugfixes:
- Fix a bug when a PF socket is first used. (Patch from Fabian Keil.)
diff --git a/doc/TODO b/doc/TODO
index 5e2c8359f..0b9fcdddf 100644
--- a/doc/TODO
+++ b/doc/TODO
@@ -124,7 +124,7 @@ d - Be a DNS proxy.
answer?
- warn if all of your nameservers go down and stay down for like
5 minutes.
-R - Take out the '5 second' timeout from the socks detach schedule.
+R o Take out the '5 second' timeout from the socks detach schedule.
- Performance improvements
diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c
index 19c38e90f..5b4b9a245 100644
--- a/src/or/connection_edge.c
+++ b/src/or/connection_edge.c
@@ -321,15 +321,13 @@ connection_edge_finished_connecting(edge_connection_t *edge_conn)
/** Define a schedule for how long to wait between retrying
* application connections. Rather than waiting a fixed amount of
- * time between each retry, we wait only 5 seconds for the first,
- * 10 seconds for the second, and 15 seconds for each retry after
+ * time between each retry, we wait 10 seconds each for the first
+ * two tries, and 15 seconds for each retry after
* that. Hopefully this will improve the expected user experience. */
static int
compute_socks_timeout(edge_connection_t *conn)
{
- if (conn->num_socks_retries == 0)
- return 5;
- if (conn->num_socks_retries == 1)
+ if (conn->num_socks_retries < 2) /* try 0 and try 1 */
return 10;
return 15;
}