From e4884bfcd7e202784d8fa5e5b62ef7946d70b1ae Mon Sep 17 00:00:00 2001 From: Arvid Norberg Date: Sat, 29 Jan 2011 10:17:17 +0000 Subject: [PATCH] mention mixed mode in tuning guide --- docs/tuning.rst | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/docs/tuning.rst b/docs/tuning.rst index 14dd00d78..4936befae 100644 --- a/docs/tuning.rst +++ b/docs/tuning.rst @@ -283,6 +283,24 @@ the same pieces, and on the other hand assume that they won't request the same p and drop them when the first peer requests it. To enable volatile read cache, set ``session_settings::volatile_read_cache`` to true. +uTP-TCP mixed mode +------------------ + +libtorrent supports uTP_, which has a delay based congestion controller. In order to +avoid having a single TCP bittorrent connection completely starve out any uTP connection, +there is a mixed mode algorithm. This attempts to detect congestion on the uTP peers and +throttle TCP to avoid it taking over all bandwidth. This balances the bandwidth resources +between the two protocols. When running on a network where the bandwidth is in such an +abundance that it's virtually infinite, this algorithm is no longer necessary, and might +even be harmful to throughput. It is adviced to experiment with the +``session_setting::mixed_mode_algorithm``, setting it to ``session_settings::prefer_tcp``. +This setting entirely disables the balancing and unthrottles all connections. On a typical +home connection, this would mean that none of the benefits of uTP would be preserved +(the modem's send buffer would be full at all times) and uTP connections would for the most +part be squashed by the TCP traffic. + +.. _`uTP`: utp.html + send buffer low watermark -------------------------