Why is NFSv4 so slow?

Rick C. Petty rick-freebsd2009 at kiwi-computer.com
Tue Jun 29 02:36:34 UTC 2010

On Mon, Jun 28, 2010 at 09:29:11AM -0700, Jeremy Chadwick wrote:
> # Increase send/receive buffer maximums from 256KB to 16MB.
> # FreeBSD 7.x and later will auto-tune the size, but only up to the max.
> net.inet.tcp.sendbuf_max=16777216
> net.inet.tcp.recvbuf_max=16777216
> # Double send/receive TCP datagram memory allocation.  This defines the
> # amount of memory taken up by default *per socket*.
> net.inet.tcp.sendspace=65536
> net.inet.tcp.recvspace=131072

I tried adjusting to these settings, on both the client and the server.
I still see the same jittery/stuttery video behavior.  Thanks for your
suggestions though, these are probably good settings to have around anyway
since I have 12 GB of RAM on the client and 8 GB of RAM on the server.

> make.conf WITHOUT_IPV6 would affect ports, src.conf WITHOUT_INET6 would
> affect the base system (thus rpcbind).  The src.conf entry is what's
> causing rpcbind to spit out the above "cannot get information" messages,
> even though IPv6 is available in your kernel (see below).
> However: your kernel configuration file must contain "options INET6" or
> else you wouldn't have IPv6 addresses on lo0.  So even though your
> kernel and world are synchronised, IPv6 capability-wise they probably
> aren't.  This may be your intended desire though, and if so, no biggie.

Oh forgot about that.  I'll have to add the "nooptions" since I like to
build as close to GENERIC as possible.  Mostly the WITHOUT_* stuff in
/etc/src.conf is to reduce my overall build times, since I don't need some
of those tools.

I'm okay with the messages though; I'll probably comment out WITHOUT_INET6.

Thanks again for your suggestions,

-- Rick C. Petty

More information about the freebsd-stable mailing list