Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Dec 2009 16:06:25 -0500
From:      Zaphod Beeblebrox <zbeeble@gmail.com>
To:        Matthew Dillon <dillon@apollo.backplane.com>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: scp more perfectly fills the pipe than NFS/TCP
Message-ID:  <5f67a8c40912211306k657b9a2aj7c037d3f08b8ab21@mail.gmail.com>
In-Reply-To: <200912212042.nBLKga0G021550@apollo.backplane.com>
References:  <5f67a8c40912182147t1adc158ew9fd3d94c4c4c955f@mail.gmail.com> <200912212042.nBLKga0G021550@apollo.backplane.com>

next in thread | previous in thread | raw e-mail | index | archive | help
I must say that I often deeply respect your position and your work,
but your recent willingness to jump into a conversation without
reading the whole of it ... simply to point out some point where your
pet is better than the subject of the list... is disappointing.  Case
in point...

On Mon, Dec 21, 2009 at 3:42 PM, Matthew Dillon
<dillon@apollo.backplane.com> wrote:
> =A0 =A0Play with the read-ahead mount options for NFS, but it might requi=
re
> =A0 =A0more work with that kind of latency. =A0You need to be able to hav=
e
> =A0 =A0a lot of RPC's in-flight to maintain the pipeline with higher late=
ncies.
> =A0 =A0At least 16 and possibly more.

I should almost label that ObContent.

> =A0 =A0It might be easier to investigate why the latency is so high and f=
ix
> =A0 =A0that first. =A010ms is way too high for a LAN.

Ref. my origional post.  The connection is DSL, but completely
managed.  10ms is fairly good for DSL

> =A0 =A0Make sure the NFS mount is TCP (It defaults to TCP in FreeBSD 8+).=
 =A0UDP
> =A0 =A0mounts will not perform well with any read-ahead greater then 3 or=
 4
> =A0 =A0RPCs because occassional seek latencies on the server will cause
> =A0 =A0random UDP RPCs to timeout and retry, which completely destroys
> =A0 =A0performance. =A0UDP mounts have no understanding of the RPC queue =
backlog
> =A0 =A0on the server and treat each RPC independently for timeout/retry
> =A0 =A0purposes. =A0So one minor stall can blow up every single pending R=
PC
> =A0 =A0backed up behind the one that stalled.

Again, from the original post, not only was -T specified, but (as you
say) it is the default for FreeBSD 8.

for a 4 megabit pipe, very few transactions need to be in flight to
fill it.  Does the TCP NFS use tech like selective ack?  Is it the
same stack as the one that scp is using?



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5f67a8c40912211306k657b9a2aj7c037d3f08b8ab21>