[nfsv4] AD review: draft-ietf-nfsv4-delstid-03

Zaheduzzaman Sarker <zahed.sarker.ietf@gmail.com> Thu, 05 October 2023 10:43 UTC

Return-Path: <zahed.sarker.ietf@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 1E772C1519AB; Thu, 5 Oct 2023 03:43:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.104
X-Spam-Level:
X-Spam-Status: No, score=-7.104 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=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 ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id aPpv3hKr0EJp; Thu, 5 Oct 2023 03:43:46 -0700 (PDT)
Received: from mail-ot1-x32d.google.com (mail-ot1-x32d.google.com [IPv6:2607:f8b0:4864:20::32d]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CDD6EC15198B; Thu, 5 Oct 2023 03:43:46 -0700 (PDT)
Received: by mail-ot1-x32d.google.com with SMTP id 46e09a7af769-6c4f1f0774dso548038a34.2; Thu, 05 Oct 2023 03:43:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1696502624; x=1697107424; darn=ietf.org; h=cc:to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=4YpYzGZteZapT4ehjoqCjhMhlyQeNKfhQdNeVIazlOE=; b=VCjMQoTOODCM52Yu+vgACrJiAQFTVzM06fxGBqEsGTWBcN2cAUVKNtBL8raGuuZiJ3 opQijF8+RoxzJYXUVxqFJgDjXnDwOi+I2rrjx2h998CvwjzOWK1XNh7xv+aX9iLb+b3p QbVffGFvC0fy6IsOauzMErPjhfPVi7Aw+x812z1rEA6xrqIdpp+8qwxYuAsNdgucbNg9 80wANP+ckSyR6+y0mxPNRd+yUbhbeYi79K3ZsvR3UrzHdPjA2ovMH8EdmdQJu5VG31S2 duB/0XrW/yT1FHW9cOaGsTOmky/aRECuYkQK+SXAQM/1XaXgUKEq7x865JN7CCvzEtiw jvqg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696502624; x=1697107424; h=cc:to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=4YpYzGZteZapT4ehjoqCjhMhlyQeNKfhQdNeVIazlOE=; b=Rv14w9SoYvRz2ewV7aie7/S1waWN9puk9oN8FzmLcTtqJl6mGDS5+IC8qgV815HwSh Vp/T3Hbow0aeXNxhEhaoEGRnfNlUN8e7uSW1/3saGVM2Th8NQK+f6X7J5e7kDwR7wcFh fByUp/Nh1rPjZUpCAaw5pKhlLHJRwahFqQQUEQnF06GTfw9z1+ejw6eUHaFy9kbBCpL6 DWdBWXC7aJ6V8k/vv7m1b/THxSHJ9g806ToAGNDSyeEiK5uXrTa+zhWdqvzRlEKIDEgA 9ep3gew13cr53MlheDjZfuMBy+tzLkS5tQhnPW+lq/VIF2EflfrPDyh4FcU75uJt92QE JmqQ==
X-Gm-Message-State: AOJu0YznWVcMNKdTSVtzzPvYK9HAXVEXcPvs8bwtAYMxTsw63XMTrp1a kcXQ8u2dKbBebbRZC7OU2D7cw2xh1Ep5uOhSa0QDaKvXlnE=
X-Google-Smtp-Source: AGHT+IFi1bwDyCAxLUDoBPCKP9VLwk7euqsvg1/dAYb8Dt6O5oFmO8TUCwBaEKrJs905koR66nAWF7P1M1z7T57p9pU=
X-Received: by 2002:a05:6358:8a0:b0:143:27e:d3cf with SMTP id m32-20020a05635808a000b00143027ed3cfmr5408014rwj.4.1696502623795; Thu, 05 Oct 2023 03:43:43 -0700 (PDT)
MIME-Version: 1.0
From: Zaheduzzaman Sarker <zahed.sarker.ietf@gmail.com>
Date: Thu, 05 Oct 2023 12:43:33 +0200
Message-ID: <CAEh=tcf3D5WbmtdzLNW-vrvrcAcMtOT26mwsYOfugt7y05irsg@mail.gmail.com>
To: nfsv4@ietf.org
Cc: draft-ietf-nfsv4-delstid.all@ietf.org
Content-Type: multipart/alternative; boundary="000000000000407c200606f5cc82"
Archived-At: <https://mailarchive.ietf.org/arch/msg/nfsv4/nqKmJY1-sPgbM4vy5uxRk8i2lG8>
Subject: [nfsv4] AD review: draft-ietf-nfsv4-delstid-03
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.39
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 Oct 2023 10:43:49 -0000

Hi all,

Now I have done my AD review of draft-ietf-nfsv4-delstid-03. I think this
document needs some rewrites and clarifications before we can proceed
further. See my comments below.

Comments :

# We need a section describing what are we updating in a nutshell. The way
it is now written makes it is extremely difficult to understand what has
been modified/amended/updated compared to RFC 8881.

# Please clearly mention that this specification will update RFC8881 in the
abstract.

# Why are we defining delegation and stateid again here? What is the change
in the definition that requires the redefinition ? Can't we use what is
defined in RFC8881?

# Proxy definition : does this mean the client is proxying to itself? Can
this proxy be somewhere in the network between the client and server.
RFC8881 states server could also act as proxy hence this proxy definition
needs to be clear about who can be proxy. I would also like to understand
the difference between delegation and proxying.

# I would strongly suggest to define/describe "offline files". I have hard
time understanding of a file being offline from whos perspective? Will a
file be considered offline if the client for some reason cannot access the
cloud storage or is this only about archived files?

# Please explain or describe the code blocks, otherwise they seems to come
out of nowhere and does not fit themselves well in the sections.

# I think we should gather all the new flags defined in one section or
sub-section and describe them. This will also help to see what are we
updating.

# As we are defining new procedure and new flag, how are we handling the
errors (we not have number of MUSTs, RECOMMENDs and SHOULDs)?

# Section 3:
    - It says -
         "If the client gets both a open and a delegation stateid as part
of the OPEN, then it has to return them both."
    Return to where?
    - Where is OPEN4_SHARE_ACCESS_WANT_OPEN_XOR_DELEGATION and
OPEN4_RESULT_NO_OPEN_STATEID  delegation flags defined ?

# Section 3.1:
   - Put a reference to the "CLOSE operation".
   - Where is OPEN_ARGS_SHARE_ACCESS_WANT_OPEN_XOR_DELEGATION flag defined?
   - What is DELEGRETURN? yes, refer to RFC8881.

# Section 4:
   - I am not sure I understand the statement - "While it is the authority
for these values, it has no way to transfer these values to the server when
the delegation is being returned and the server reclaims its authority with
regard to these values."
     I thought DELEGRETURN is a way to transfer or return those values. RFC
8881 says - "Delegations may be returned voluntarily (i.e., before the
server has recalled them) or when recalled. In either case, the client must
properly propagate state changed under the context of the delegation to the
server before returning the delegation". Can we please explain it in a
better way, like what values we are taking about and why they cant be
transferred?.
    - "These new attributes are invalid GETATTR, VERIFY, and NVERIFY" -
there is something missing in this statement. "invalid to be used with" ?
    - Please describe/explain/reference - "old times", "past the current
time", and "original time". also put references for "access time", "change
time", "modify time".
    - Where is FATTR4_TIME_DELEG_ACCESS and FATTR4_TIME_DELEG_MODIFY
defined?
    - Give a ref to NFS4ERR_DELAY.

# Section 4.1 seems to me a good motivation for this extension, may be we
should uplift if to a separate motivation section.

# Section 4.2: If we want someone to review this document, how would one
read this section? please describe the code blocks, what they do or mean or
related to the sections where these blocks are described.

# May be section 5 is misplaced, may be we should have it before section 3
and 4, so we define them and then show how the are used. the alternative
would be to refer them from section 3 and section 4.

# Section 5:
    - It says - " client MUST determine that the additional new
OPTIONAL functionality
to OPEN is also not supported". what is the procedure for the client to
determine that?

# Section 6:
    - It says - "While the XDR can be appended to that from [RFC7863
<https://www.ietf.org/archive/id/draft-ietf-nfsv4-delstid-03.html#RFC7863>],
the various code snippets belong in their respective areas of the that XDR.".
Does this mean this document also should update RFC7863?

# Section 7: in this specification we are extending some capabilities for
client delegation. I think we need more convincing description that there
is not security concerns here.

//Zahed