Subject: [nfsv4] re: NFSERR_RESOURCE

From: [email-masked]
Date: Tue, 6 Jan 2004 11:37:09 -0500 (EST)

Currently my server only returns NFSERR_RESOURCE for one case, which is when
the server's recent request cache has exceeded "one hundred year" flood
level. It returns it on the very first Op of the compound in this case,
hopefully so clients can recover with minimal hassle (wait a while and
try the same compound op again?).

I am hoping that the TCP rcv window size will provide enough feedback
that clients will be throttled back before they completely kill the server,
due to heavy load. (A catch 22 here is that, in order to make better
use of long-fat network connections, there is going to be an urge to
increase the rcv window size. At least a small rcv window size would only
degrade performance of a heavy write load over a long-fat net connection.
Only?? Well you see the problem:-)

BSD uses mbufs for everything, so mbufs will be the resource that
becomes exhausted. I'm hoping that the server can be configured so
the rcv windows fill up before mbufs exhaust. (Since the server's recent
request cache is the only place the nfs server hangs onto mbufs, that's
where the flood level is set.) It does cache any compound reply that
has at least one non-idempotent Op in it, so a client that combines
big reads and non-idempotent Ops in the same compound RPC will not
be appreciated by my server, but it will try and tolerate them.

How well will all this work? I'm hoping to do some load testing using
a lab of 65 clients this summer to get some idea.

I'll see how it goes, rick

_______________________________________________
nfsv4 mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/nfsv4