Re: [nfsv4] Review of draft-ietf-nfsv4-rfc5667bis-09

Tom Talpey <tom@talpey.com> Mon, 08 May 2017 12:36 UTC

Return-Path: <tom@talpey.com>
X-Original-To: nfsv4@ietfa.amsl.com
Delivered-To: nfsv4@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A7BEE129454 for <nfsv4@ietfa.amsl.com>; Mon, 8 May 2017 05:36:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.78
X-Spam-Level:
X-Spam-Status: No, score=0.78 tagged_above=-999 required=5 tests=[BAYES_50=0.8, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id wo-1zP3LdJkz for <nfsv4@ietfa.amsl.com>; Mon, 8 May 2017 05:36:10 -0700 (PDT)
Received: from p3plsmtpa06-09.prod.phx3.secureserver.net (p3plsmtpa06-09.prod.phx3.secureserver.net [173.201.192.110]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 63749127077 for <nfsv4@ietf.org>; Mon, 8 May 2017 05:36:10 -0700 (PDT)
Received: from [192.168.0.56] ([24.218.182.144]) by :SMTPAUTH: with SMTP id 7ht4d2fZjL6rx7ht4dLp7C; Mon, 08 May 2017 05:35:39 -0700
To: nfsv4@ietf.org
References: <CADaq8jdkGgL+H-yoO-+bTNbSYiE_1us9cN5SXY8QV0gfYfK0Ng@mail.gmail.com> <33468014-6695-a2da-1af8-f1f355fbe986@talpey.com> <CADaq8jcJJQ3TiVX6fFURg22YgNg=Cd7ezNQewjt6fgNK4LrPVg@mail.gmail.com> <F417EA11-D49F-420D-A64F-AE6A382B920C@oracle.com> <7213a956-6157-d0a6-432d-1da8d555d8e9@talpey.com> <A7BB8A22-53E3-4910-A6DE-C6103343D309@oracle.com> <6974E7E7-051B-4F28-A61A-DF6F841B248B@oracle.com> <af6ed8c5-6a7d-08ed-590b-1774f34e05f2@talpey.com> <F842F8E7-B576-4781-A845-F13317593F88@oracle.com> <1451a113-115b-5c43-5cfe-f0c5e21b59d6@talpey.com> <C91AC1D8-C884-490B-8738-7279DEC0F372@oracle.com> <CADaq8jc6X6y5WXuptVevhNopG9Nbfca8FUV6zYCBTADs5ohvag@mail.gmail.com> <F7941956-149D-4B4C-B793-444FC61A9517@oracle.com> <e7ff236f-29e4-06d8-86c9-486f95f9db14@oracle.com> <505CD860-4167-49FB-8162-B5FE6083E7AF@oracle.com> <BN6PR03MB2449B8D6FE! E4975D78858456A0160@BN6PR03MB2449.namprd03.prod.outlook.com> <263A2988-0B52-4706-B00F-41D121F7DA42@oracle.com>
From: Tom Talpey <tom@talpey.com>
Message-ID: <2e9d0b61-26f6-cecb-9f75-717ac48f3b88@talpey.com>
Date: Mon, 08 May 2017 08:35:37 -0400
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0
MIME-Version: 1.0
In-Reply-To: <263A2988-0B52-4706-B00F-41D121F7DA42@oracle.com>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 7bit
X-CMAE-Envelope: MS4wfLwOyn733JxFsW3llrKeH9fbSth8Rn7+kVaQFxX68f29Vq/YFsgr9CvsxFFpXZPYI+u3r7udVNZxRFJH6Dyws1/+9IvHS8v4IkN1lFm3jlNOhO2KnA0c WDtNQyepAHJtsrHKh691DjOPXqmHyqyl3pyZUnuEB66ObKu8m4glxQA4
Archived-At: <https://mailarchive.ietf.org/arch/msg/nfsv4/bxU7wYYIeiVAcCSRnUxlRn-MPVY>
Subject: Re: [nfsv4] Review of draft-ietf-nfsv4-rfc5667bis-09
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: NFSv4 Working Group <nfsv4.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/nfsv4/>
List-Post: <mailto:nfsv4@ietf.org>
List-Help: <mailto:nfsv4-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 08 May 2017 12:36:12 -0000

On 5/4/2017 11:00 AM, Chuck Lever wrote:
> I've tried to address your concerns, and I changed the segment count
> limit to document what we know about the current Solaris implementations.
> I liked the "be conservative in what you send" idea, but I couldn't find
> a way to work it in that was not awkward.
>
> If this text is OK, I'll submit a fresh I-D revision after WGLC ends on
> Friday.

Well that wasn't enough time for me to respond since I was traveling
from SambaXP in Germany, but the text does look better. The statement
below makes no requirement on the server.

> 5.4.2.  Chunk List Complexity
>...
>    To avoid encountering server chunk list complexity limits, NFS
>    version 4 clients SHOULD follow the below prescriptions when
>    constructing transport headers:
>
>    o  The Read list can contain either a Position-Zero Read chunk, one
>       Read chunk with a non-zero Position, or both.
>
>    o  The Write list can contain no more than one Write chunk.
>
>    o  Any chunk can contain up to sixteen RDMA segments.

I would suggest the following modifications to the above.

   "In accordance with chunk list processing limits of existing
    server implementations, NFS Version 4 clients SHOULD maximally
    follow the below prescriptions when constructing requests to
    be transported by RPC-over-RDMA. Additionally, NFS Version 4
    servers SHOULD minimally be prepared to accept and process such
    requests."

>    NFS version 4 clients wishing to send more complex chunk lists can
>    provide configuration interfaces to bound the complexity of NFS
>    version 4 COMPOUNDs, limit the number of elements in scatter-gather
>    operations, and avoid other sources of RPC-over-RDMA chunk overruns
>    at the receiving peer.
>
>    An NFS Version 4 server has some flexibility in how it indicates that
>    an RPC-over-RDMA Version One message received from an NFS Version 4
>    client is valid but cannot be processed.  Examples include:


Strongly suggest deleting the words "has some flexibility" and "Examples
include". We've already had this discussion, so I will just suggest the
following.

   "An NFS Version 4 server SHOULD return one of the following responses
    to a client which has sent a request containing RPC-over-RDMA chunks
    which cannot be processed due to exceeding server implementation
    limits"


Tom.


>    o  A problem is detected by the transport layer while parsing the
>       transport header in an RPC Call message.  The server responds with
>       an RDMA_ERROR message with the err field set to ERR_CHUNK.
>
>    o  A problem is detected during XDR decoding of the RPC Call message
>       while the RPC layer reassembles the call's XDR stream.  The server
>       responds with an RPC reply with its "reply_stat" field set to
>       MSG_ACCEPTED and its "accept_stat" field set to GARBAGE_ARGS.
>
>    After receiving one of these errors, an NFS version 4 client SHOULD
>    NOT retransmit the failing request, as the result would be the same
>    error.  It SHOULD immediately terminate the RPC transaction
>    associated with the XID in the reply.