[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[or-cvs] r18777: {projects} add three more speed-up ideas (projects/performance)
Author: arma
Date: 2009-03-05 05:57:22 -0500 (Thu, 05 Mar 2009)
New Revision: 18777
Modified:
projects/performance/performance.tex
Log:
add three more speed-up ideas
Modified: projects/performance/performance.tex
===================================================================
--- projects/performance/performance.tex 2009-03-05 10:54:58 UTC (rev 18776)
+++ projects/performance/performance.tex 2009-03-05 10:57:22 UTC (rev 18777)
@@ -64,17 +64,21 @@
This document describes our current understanding of why Tor is slow,
and lays out our options for fixing it.
-The Tor network is slow right now for six main reasons, with the most
-severe listed first. For each reason, we explain our current intuition
-for how to fix it, how effective we think it would be, how much effort
-and risk is involved, and the recommended next steps.
+The Tor network is slow right now for six main reasons. We discuss each
+reason in its own section, starting with the most severe. For each reason,
+we explain our current intuition for how to fix it, how effective we
+think each fix would be, how much effort and risk is involved, and the
+recommended next steps.
\pagebreak
\tableofcontents
\pagebreak
-\section{Congestion control not good}
+\section{Our congestion control does not work well}
+Tor's most critical performance problem is in how it combines high-volume
+streams with low-volume streams. ...
+
\subsection{TCP backoff slows down all streams since we multiplex}
End-to-end congestion avoidance
@@ -172,6 +176,7 @@
Therefore, a different optimum may exist for networks with different
characteristics.
+\subsection{Priority for circuit control cells, e.g. circuit creation}
\section{Some users add way too much load}
@@ -426,9 +431,11 @@
\section{Better handling of high/variable latency and failures}
\subsection{The switch to Polipo: prefetching, pipelining, etc}
-\subsection{bad timeouts for giving up on circuits and trying a new one}
+\subsection{better timeouts for giving up on circuits and trying a new one}
+\subsection{when a circuit has too many streams on it, move to a new one}
\subsection{If extending a circuit fails, try extending a few other
places before abandoning the circuit.}
+\subsection{Bundle the first data cell with the begin cell}
\section{Network overhead too high for modem users}