[nfsv4] Review of draft-haynes-nfsv4-delstid-00

Chuck Lever <chucklever@gmail.com> Thu, 05 July 2018 21:15 UTC

Return-Path: <chucklever@gmail.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 9A042130FB1 for <nfsv4@ietfa.amsl.com>; Thu, 5 Jul 2018 14:15:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 Acv9JtwvXSuw for <nfsv4@ietfa.amsl.com>; Thu, 5 Jul 2018 14:15:24 -0700 (PDT)
Received: from mail-io0-x234.google.com (mail-io0-x234.google.com [IPv6:2607:f8b0:4001:c06::234]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 51B37130FFE for <nfsv4@ietf.org>; Thu, 5 Jul 2018 14:15:19 -0700 (PDT)
Received: by mail-io0-x234.google.com with SMTP id q9-v6so9027424ioj.8 for <nfsv4@ietf.org>; Thu, 05 Jul 2018 14:15:19 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:content-transfer-encoding:mime-version:subject:message-id:date :to; bh=INUxeAfvk2puEfEyCcMQvGr4iW0hgSXpDDFlQLq4fmo=; b=o8LlgaYRYAA2bTJyHttXSGGIfCi62K1Tu+TWw6G84rMs6+Xa9Gd9SNmp0ZTpnTi2VJ hZIaTZ2ptqigFUCmBtFp3VWaJDpuAGK8wO/AiEEJBXcx02DYMP4lY8ldD9IZhG1HvTRS HcYHx/B36R+0RFikszGheEZtlSLTGmmjzF+unUHtoMEcrKhjut0AWzBeb9MXnRy4Onky BZiZk1erCnshL4eJxuJEGoTvlQteKpLTG1Vtst2bKO3bcX5RD9iaknBO63JewvkvN+T7 RGX+r9mU6zZIY4MyLxWvSA/pX23cCFQzaz9RY4rs3yuX//fmLHJRVFwQDKWuwXcUabci hobg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:content-transfer-encoding:mime-version :subject:message-id:date:to; bh=INUxeAfvk2puEfEyCcMQvGr4iW0hgSXpDDFlQLq4fmo=; b=NHQPU3tWEWeYHdMlFWD2fmHQ+yX9sWreqrxUrxq4cTYNQEJvgowF7aQS6kljOUuhyr D7HnNWXOO0qWA72YUmOeIyFRmX5QXPFWz9H9yQ+jzYjHmWTx4Ni73yjin7yit+owZU6w iHflIhwyf/OV89t4fdxjh4sfavtftGPudCvUNzF53ZtG9lvaaVHMFRF7Ux+tSjm+gASD +yEFcXKhjLRhZVJYBJLq/WHkvQPc2/aeUzmqIOOhfu23O3I+/zEEtOTNG+Qass6TtkTn UPmEQEAuuI8vjgigu1OnK39/JFGoNeRRxQ57ZGZBKplQTphXn1od4VwQXOFSTLdAErT6 b69Q==
X-Gm-Message-State: APt69E2DMAaeXCWVwDueXiEQlYYpmZaX2F6C//MZOks/bqLXRL0NSJ1d jzJxYetn/t+TCKu2siT3O1c4adlK
X-Google-Smtp-Source: AAOMgpc4K3wugRdDNd8qpGXjH4QIpqG29xaZSYmZ3GdwgSshiG+rxWNpOdqGS9xkoZyNYC1+AHBGiw==
X-Received: by 2002:a6b:b010:: with SMTP id z16-v6mr6332266ioe.206.1530825318462; Thu, 05 Jul 2018 14:15:18 -0700 (PDT)
Received: from anon-dhcp-171.1015granger.net (c-68-61-232-219.hsd1.mi.comcast.net. [68.61.232.219]) by smtp.gmail.com with ESMTPSA id l19-v6sm3352545ioh.27.2018.07.05.14.15.17 for <nfsv4@ietf.org> (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 05 Jul 2018 14:15:17 -0700 (PDT)
From: Chuck Lever <chucklever@gmail.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (Mac OS X Mail 11.4 \(3445.8.2\))
Message-Id: <AF8B9B3D-2DF6-4F7E-B10E-EEF508A4BD8C@gmail.com>
Date: Thu, 05 Jul 2018 17:15:16 -0400
To: NFSv4 <nfsv4@ietf.org>
X-Mailer: Apple Mail (2.3445.8.2)
Archived-At: <https://mailarchive.ietf.org/arch/msg/nfsv4/34p424AjW5gJadcpM87PEzG-6R0>
Subject: [nfsv4] Review of draft-haynes-nfsv4-delstid-00
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.26
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: Thu, 05 Jul 2018 21:15:35 -0000

Hi-

In the interest of preparing for our meeting at IETF 102, I've read
Tom's draft-haynes-nfsv4-delstid-00. Here are some brief thoughts
and review comments.


General comments:

I support all three ideas. I appreciate that the new protocol
elements have already been prototyped.

It appears to need further polish but I have no objection to allowing
this to move forward and eventually become a WG document.


Title:

I recommend "Extending the NFSv4.2 OPEN operation".


Abstract:

Consider shortening it to just the last sentence:

"This document presents several OPTIONAL refinements to the NFSv4.2
OPEN operation that improve the efficiency of managing open files."


Section 1:

I would like to see the Introduction include a problem statement and
short discussions of use cases for all three extensions. Some of
that language already appears at later points in the document, but
it is perhaps more in keeping with precedent to keep rationale here,
and leave protocol specification to subsequent sections.

It needs a more thorough discussion of how these extensions help.


Section 3:

Has there been any analysis of how well this feature will work on
multi-protocol storage targets that support the very similar Offline
attribute in the SMB protocol? In general these seem like the same
thing, but I wonder if there are subtleties that could bite us.


Section 4:

The use of RFC 2119 terms is sometimes strange in this section.

"it [the server] MUST be able to query the client via a CB_GETATTR"

I'm not sure what is required of the server here.


"it MUST accept those FATTR4_TIME_DELEG_ACCESS attribute and
FATTR4_TIME_DELEG_MODIFY attribute changes and derive the change
time or reject the changes with NFS4ERR_DELAY."

It's unusual (or perhaps not meaningful) to say "the server MUST
do this _or_ that." That makes the implementation requirement
unclear. Would this be better:

"it accepts those ... attribute changes and derives the change
time. If it cannot, it MUST respond with NFS4ERR_DELAY."

Do you expect cases where the server has to express a permanent
error (not just "wait and try again") ?

 
"If the time presented is in the future, the server can either clamp
the new time to the current time, or it may return NFS4ERR_DELAY to
the client, allowing it to retry."

This seems to allow other possible responses. Is that what you
want?


"A change in the access time MUST not advance the change time".
Should that be MUST NOT ?


Section 5:

The title of this section is "XDR Description of the Flexible File
Layout Type", perhaps a copy-and-paste oversight.

Recent RFCs that extend NFSv4.2 (such as RFC 8275) and include an
XDR definition do not appear to have a citation of "Legal Provisions
Relation to IETF Documents".

Do you need additional boilerplate in the derived .x file, for
example:

/// /*
///  * Copyright (c) 2018 IETF Trust and the person identified
///  * as author of the code.  All rights reserved.
///  *
///  * The author of the code is: T. Haynes
///  */


Appendix B:

This section appears to be unneeded.


--
Chuck Lever
chucklever@gmail.com