Re: [netconf] [Technical Errata Reported] RFC8040 (6362)

Kent Watsen <kent+ietf@watsen.net> Tue, 22 December 2020 17:15 UTC

Return-Path: <010001768b7342d8-b52c94cf-2f1c-4031-84a1-d3641efdf88d-000000@amazonses.watsen.net>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A4ECF3A119E for <netconf@ietfa.amsl.com>; Tue, 22 Dec 2020 09:15:58 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=amazonses.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 wKXYOFtEbSd4 for <netconf@ietfa.amsl.com>; Tue, 22 Dec 2020 09:15:57 -0800 (PST)
Received: from a8-33.smtp-out.amazonses.com (a8-33.smtp-out.amazonses.com [54.240.8.33]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C8AD83A119D for <netconf@ietf.org>; Tue, 22 Dec 2020 09:15:56 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=224i4yxa5dv7c2xz3womw6peuasteono; d=amazonses.com; t=1608657355; h=From:Message-Id:Content-Type:Mime-Version:Subject:Date:In-Reply-To:Cc:To:References:Feedback-ID; bh=RamAqZkL4THQ+K2OaTGRTvcc2paPFEkasAXPGUNCfaU=; b=XueE98DWRIfWgpqkfCgbGy9AVH8m530j936iIsMOzKoDscmAafK3gVNCp8kjz4V/ s5h0PL+F8wam3oOo5Z2x/nRXYr7EqyamCYJWn1BQf7UsVgSqdMYWBEHW9R40FEYLiqV 8HdxAq7706pa4WRI5JXJAd4NDZczWaJ5cqEy2FdA=
From: Kent Watsen <kent+ietf@watsen.net>
Message-ID: <010001768b7342d8-b52c94cf-2f1c-4031-84a1-d3641efdf88d-000000@email.amazonses.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_6432279D-6406-4ACB-985E-C24B7CDF0638"
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.80.23.2.2\))
Date: Tue, 22 Dec 2020 17:15:55 +0000
In-Reply-To: <CABCOCHTaMtjRkO24oGfY4vD910z-iUpsTxDSNCQmPU3L1U0QVw@mail.gmail.com>
Cc: RFC Errata System <rfc-editor@rfc-editor.org>, Martin Bjorklund <mbj@tail-f.com>, Warren Kumari <warren@kumari.net>, Robert Wilton <rwilton@cisco.com>, Mahesh Jethanandani <mjethanandani@gmail.com>, muly_i@rad.com, "netconf@ietf.org" <netconf@ietf.org>
To: Andy Bierman <andy@yumaworks.com>
References: <20201222143414.775F6F40744@rfc-editor.org> <CABCOCHTaMtjRkO24oGfY4vD910z-iUpsTxDSNCQmPU3L1U0QVw@mail.gmail.com>
X-Mailer: Apple Mail (2.3608.80.23.2.2)
X-SES-Outgoing: 2020.12.22-54.240.8.33
Feedback-ID: 1.us-east-1.DKmIRZFhhsBhtmFMNikgwZUWVrODEw9qVcPhqJEI2DA=:AmazonSES
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/yk57rjlkuy5QmBWxgZUUMn1UryI>
Subject: Re: [netconf] [Technical Errata Reported] RFC8040 (6362)
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NETCONF WG list <netconf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netconf>, <mailto:netconf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netconf/>
List-Post: <mailto:netconf@ietf.org>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netconf>, <mailto:netconf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 22 Dec 2020 17:15:59 -0000

The example uses “/data”, i.e., the unified datastore, which may contain operational data.  I guess that, for /data, it could be said that any "ETag" and "Last-Modified” headers only reflect the “config true” data present, in which case Andy’s interpretation makes sense.

But this is not true for NMDA’s <operational>, where said headers likely should never be returned, even if the “content” parameter is “config”.  

For NMDA’s <running>, it seems that the headers should always be returned, even when the “content” parameter is not specified, as Andy states.  I’m assuming content=nonconfig on <running> is an error case, or at least a non-sensical case..

K.


> On Dec 22, 2020, at 9:57 AM, Andy Bierman <andy@yumaworks.com> wrote:
> 
> Hi,
> 
> This Errata should be rejected.
> The cited text in non-normative Appendix B.3.1 is actually wrong.
> The parameter content=all can also return these fields for configuration data.
> 
> 
> The normative text in 3.5.2 explains what to do.
> 
> 
> 3.5.2 <https://tools.ietf.org/html/rfc8040#section-3.5.2>.  Entity-Tag
> 
>    For configuration data resources, the server SHOULD maintain a
>    resource entity-tag for each resource and return the "ETag" header
>    field when it is retrieved as the target resource with the GET or
>    HEAD methods.  If maintained, the resource entity-tag MUST be updated
>    whenever the resource or any configuration resource within the
>    resource is altered.  If not maintained, then the resource entity-tag
>    for the datastore MUST be used instead.
> 
> 
> Andy
> 
> On Tue, Dec 22, 2020 at 6:34 AM RFC Errata System <rfc-editor@rfc-editor.org <mailto:rfc-editor@rfc-editor.org>> wrote:
> The following errata report has been submitted for RFC8040,
> "RESTCONF Protocol".
> 
> --------------------------------------
> You may review the report below and at:
> https://www.rfc-editor.org/errata/eid6362 <https://www.rfc-editor.org/errata/eid6362>
> 
> --------------------------------------
> Type: Technical
> Reported by: Muly Ilan <muly_i@rad.com <mailto:muly_i@rad.com>>
> 
> Section: 4.3.
> 
> Original Text
> -------------
>    The client might request the response header fields for an XML
>    representation of a specific "album" resource:
> 
>       GET /restconf/data/example-jukebox:jukebox/\
>          library/artist=Foo%20Fighters/album=Wasting%20Light HTTP/1.1
>       Host: example.com <http://example.com/>
>       Accept: application/yang-data+xml
> 
>    The server might respond as follows:
> 
>       HTTP/1.1 200 OK
>       Date: Thu, 26 Jan 2017 20:56:30 GMT
>       Server: example-server
>       Content-Type: application/yang-data+xml
>       Cache-Control: no-cache
>       ETag: "a74eefc993a2b"
>       Last-Modified: Thu, 26 Jan 2017 14:02:14 GMT
> 
> Corrected Text
> --------------
>    The client might request the response header fields for an XML
>    representation of a specific "album" resource:
> 
>       GET /restconf/data/example-jukebox:jukebox/\
>          library/artist=Foo%20Fighters/album=Wasting%20Light HTTP/1.1
>       Host: example.com <http://example.com/>
>       Accept: application/yang-data+xml
> 
>    The server might respond as follows:
> 
>       HTTP/1.1 200 OK
>       Date: Thu, 26 Jan 2017 20:56:30 GMT
>       Server: example-server
>       Content-Type: application/yang-data+xml
>       Cache-Control: no-cache
> 
> 
> Notes
> -----
> Removed the "ETag" and "Last-Modified" header fields.
> 
> According to Appendix B.3.1. :
>    To retrieve only the configuration child resources, the "content"
>    parameter is set to "config".  Note that the "ETag" and
>    "Last-Modified" headers are only returned if the "content" parameter
>    value is "config".
> 
> Instructions:
> -------------
> This erratum is currently posted as "Reported". If necessary, please
> use "Reply All" to discuss whether it should be verified or
> rejected. When a decision is reached, the verifying party  
> can log in to change the status and edit the report, if necessary. 
> 
> --------------------------------------
> RFC8040 (draft-ietf-netconf-restconf-18)
> --------------------------------------
> Title               : RESTCONF Protocol
> Publication Date    : January 2017
> Author(s)           : A. Bierman, M. Bjorklund, K. Watsen
> Category            : PROPOSED STANDARD
> Source              : Network Configuration
> Area                : Operations and Management
> Stream              : IETF
> Verifying Party     : IESG