From: Bill Fink <billfink@mindspring.com>
To: David Miller <davem@davemloft.net>
Cc: davidsen@tmr.com, lists@wildgooses.com,
linux-kernel@vger.kernel.org, netdev@vger.kernel.org
Subject: Re: Raise initial congestion window size / speedup slow start?
Date: Wed, 14 Jul 2010 22:52:40 -0400 [thread overview]
Message-ID: <20100714225240.e1bf8679.billfink@mindspring.com> (raw)
In-Reply-To: <20100714.111553.104052157.davem@davemloft.net>
On Wed, 14 Jul 2010, David Miller wrote:
> From: Bill Davidsen <davidsen@tmr.com>
> Date: Wed, 14 Jul 2010 11:21:15 -0400
>
> > You may have to go into /proc/sys/net/core and crank up the
> > rmem_* settings, depending on your distribution.
>
> You should never, ever, have to touch the various networking sysctl
> values to get good performance in any normal setup. If you do, it's a
> bug, report it so we can fix it.
>
> I cringe every time someone says to do this, so please do me a favor
> and don't spread this further. :-)
>
> For one thing, TCP dynamically adjusts the socket buffer sizes based
> upon the behavior of traffic on the connection.
>
> And the TCP memory limit sysctls (not the core socket ones) are sized
> based upon available memory. They are there to protect you from
> situations such as having so much memory dedicated to socket buffers
> that there is none left to do other things effectively. It's a
> protective limit, rather than a setting meant to increase or improve
> performance. So like the others, leave these alone too.
What's normal? :-)
netem1% cat /proc/version
Linux version 2.6.30.10-105.2.23.fc11.x86_64 (mockbuild@x86-01.phx2.fedoraproject.org) (gcc version 4.4.1 20090725 (Red Hat 4.4.1-2) (GCC) ) #1 SMP Thu Feb 11 07:06:34 UTC 2010
Linux TCP autotuning across an 80 ms RTT cross country network path:
netem1% nuttcp -T10 -i1 192.168.1.18
14.1875 MB / 1.00 sec = 119.0115 Mbps 0 retrans
558.0000 MB / 1.00 sec = 4680.7169 Mbps 0 retrans
872.8750 MB / 1.00 sec = 7322.3527 Mbps 0 retrans
869.6875 MB / 1.00 sec = 7295.5478 Mbps 0 retrans
858.4375 MB / 1.00 sec = 7201.0165 Mbps 0 retrans
857.3750 MB / 1.00 sec = 7192.2116 Mbps 0 retrans
865.5625 MB / 1.00 sec = 7260.7193 Mbps 0 retrans
872.3750 MB / 1.00 sec = 7318.2095 Mbps 0 retrans
862.7500 MB / 1.00 sec = 7237.2571 Mbps 0 retrans
857.6250 MB / 1.00 sec = 7194.1864 Mbps 0 retrans
7504.2771 MB / 10.09 sec = 6236.5068 Mbps 11 %TX 25 %RX 0 retrans 80.59 msRTT
Manually specified 100 MB TCP socket buffer on the same path:
netem1% nuttcp -T10 -i1 -w100m 192.168.1.18
106.8125 MB / 1.00 sec = 895.9598 Mbps 0 retrans
1092.0625 MB / 1.00 sec = 9160.3254 Mbps 0 retrans
1111.2500 MB / 1.00 sec = 9322.6424 Mbps 0 retrans
1115.4375 MB / 1.00 sec = 9356.2569 Mbps 0 retrans
1116.4375 MB / 1.00 sec = 9365.6937 Mbps 0 retrans
1115.3125 MB / 1.00 sec = 9356.2749 Mbps 0 retrans
1121.2500 MB / 1.00 sec = 9405.6233 Mbps 0 retrans
1125.5625 MB / 1.00 sec = 9441.6949 Mbps 0 retrans
1130.0000 MB / 1.00 sec = 9478.7479 Mbps 0 retrans
1139.0625 MB / 1.00 sec = 9555.8559 Mbps 0 retrans
10258.5120 MB / 10.20 sec = 8440.3558 Mbps 15 %TX 40 %RX 0 retrans 80.59 msRTT
The manually selected TCP socket buffer size both ramps up
quicker and achieves a much higher steady state rate.
-Bill
next prev parent reply other threads:[~2010-07-15 2:52 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-14 10:43 Raise initial congestion window size / speedup slow start? Ed W
2010-07-14 11:58 ` Alan Cox
2010-07-14 15:21 ` Bill Davidsen
2010-07-14 18:15 ` David Miller
2010-07-14 18:48 ` Ed W
2010-07-14 19:10 ` Stephen Hemminger
2010-07-14 21:47 ` Mitchell Erblich
2010-07-14 20:17 ` Rick Jones
2010-07-14 20:39 ` Hagen Paul Pfeifer
2010-07-14 21:55 ` David Miller
2010-07-14 22:13 ` Hagen Paul Pfeifer
2010-07-14 22:19 ` Rick Jones
2010-07-14 22:40 ` Hagen Paul Pfeifer
2010-07-14 22:52 ` Ed W
2010-07-14 23:01 ` Hagen Paul Pfeifer
2010-07-14 23:05 ` Ed W
2010-07-15 3:49 ` Bill Fink
2010-07-15 5:29 ` H.K. Jerry Chu
2010-07-15 19:51 ` Rick Jones
2010-07-15 20:48 ` Stephen Hemminger
2010-07-16 0:23 ` H.K. Jerry Chu
2010-07-16 9:03 ` Hagen Paul Pfeifer
2010-07-16 9:03 ` Hagen Paul Pfeifer
2010-07-15 10:33 ` Alan Cox
2010-07-14 22:05 ` Ed W
2010-07-14 22:36 ` Hagen Paul Pfeifer
2010-07-14 23:01 ` Ed W
2010-07-15 4:12 ` Tom Herbert
2010-07-15 7:48 ` Ed W
2010-07-15 17:36 ` Jerry Chu
2010-07-15 5:09 ` H.K. Jerry Chu
2010-07-15 2:52 ` Bill Fink [this message]
2010-07-15 4:51 ` H.K. Jerry Chu
2010-07-16 17:01 ` Patrick McManus
2010-07-16 17:41 ` Ed W
2010-07-17 1:23 ` H.K. Jerry Chu
2010-07-17 0:36 ` H.K. Jerry Chu
2010-07-19 17:08 ` Rick Jones
2010-07-19 22:51 ` H.K. Jerry Chu
2010-07-19 23:42 ` Hagen Paul Pfeifer
2010-07-15 23:14 ` Bill Davidsen
2010-07-15 23:14 ` Bill Davidsen
2010-07-14 18:32 ` Ed W
2010-07-15 15:10 ` Bill Davidsen
2010-07-16 2:58 ` Henrique de Moraes Holschuh
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100714225240.e1bf8679.billfink@mindspring.com \
--to=billfink@mindspring.com \
--cc=davem@davemloft.net \
--cc=davidsen@tmr.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lists@wildgooses.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.