From: Dean Hildebrand <seattleplus@gmail.com>
To: "J. Bruce Fields" <bfields@fieldses.org>
Cc: Chuck Lever <chuck.lever@oracle.com>, linux-nfs@vger.kernel.org
Subject: Re: [PATCH 0/1] SUNRPC: Add sysctl variables for server TCP snd/rcv buffer values
Date: Fri, 13 Jun 2008 16:58:04 -0700 [thread overview]
Message-ID: <4853098C.8070200@gmail.com> (raw)
In-Reply-To: <20080613205339.GM8501@fieldses.org>
J. Bruce Fields wrote:
> On Thu, Jun 12, 2008 at 02:03:20PM -0700, Dean Hildebrand wrote:
>
>> Another point is that setting the buffer size isn't always a
>> straightforward process. All papers I've read on the subject, and my
>> experience confirms this, is that setting tcp buffer sizes is more of an
>> art.
>>
>
> Aie. It's bad enough if we have a half-dozen or so sysctl's to set to
> get decent performance out of the nfs server. I don't like to hear
> that, on top of that, the choice of at least one of those variables is
> an art....
>
> We can leave some knobs in there for the people that like to read that
> sort of paper, but the rest of the world will need *some* sort of
> heuristics.
>
Yeah, who thought computers could be artistic?! More fun that way I
figure :)
The reason it is an art is that you don't know the hardware that exists
between the client and server. Talking about things like BDP is fine,
but in reality there are limited buffer sizes, flaky hardware,
fluctuations in traffic, etc etc. Using the BDP as a starting point
though seems like the best solution, but since the linux server doesn't
know anything about what the BDP is, it is tough to hard code any value
into the linux kernel. As you said, if we just give a reasonable
default value and then ensure people can play with the knobs. Most
people use NFS within a LAN, and to date there has been little if any
discussion on using NFS over the WAN (hence my interest), so I would
argue that the current values might not be all that bad with regards to
defaults (at least we know the behaviour isn't horrible for most people).
Networks are messy. Anyone who wants to work in the WAN is going to
have to read about such things, no way around it. A simple google
search for 'tcp wan' or 'tcp wan linux' gives loads of suggestions on
how to configure your network, so it really isn't a burden on sysadmins
to do such a search and then use the given knobs to adjust the tcp
buffer size appropriately. My patch gives sysadmins the ability to do
the google search and then have some knobs to turn.
Some sample tcp tuning guides that I like:
http://acs.lbl.gov/TCP-tuning/tcp-wan-perf.pdf
http://acs.lbl.gov/TCP-tuning/linux.html
http://gentoo-wiki.com/HOWTO_TCP_Tuning (especially relevant is the part
about the receive buffer)
http://www.linuxclustersinstitute.org/conferences/archive/2008/PDF/Hildebrand_98265.pdf
(our initial paper on pNFS tuning)
Dean
next prev parent reply other threads:[~2008-06-13 23:58 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-06-10 18:54 [PATCH 0/1] SUNRPC: Add sysctl variables for server TCP snd/rcv buffer values Dean Hildebrand
2008-06-11 19:48 ` Chuck Lever
2008-06-11 21:01 ` Talpey, Thomas
2008-06-12 21:03 ` Dean Hildebrand
2008-06-13 18:51 ` Chuck Lever
2008-06-13 20:56 ` J. Bruce Fields
2008-06-14 1:07 ` Dean Hildebrand
2008-06-16 18:59 ` Chuck Lever
2008-06-17 22:03 ` Dean Hildebrand
2008-06-18 21:32 ` Chuck Lever
2008-06-25 1:06 ` Dean Hildebrand
2008-06-13 20:53 ` J. Bruce Fields
2008-06-13 23:58 ` Dean Hildebrand [this message]
2008-06-16 17:59 ` J. Bruce Fields
2008-06-18 18:33 ` Dean Hildebrand
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=4853098C.8070200@gmail.com \
--to=seattleplus@gmail.com \
--cc=bfields@fieldses.org \
--cc=chuck.lever@oracle.com \
--cc=linux-nfs@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.