Re: [core] Report on first Resource Directory plugtest

Carsten Bormann <cabo@tzi.org> Fri, 13 April 2018 13:01 UTC

Return-Path: <cabo@tzi.org>
X-Original-To: core@ietfa.amsl.com
Delivered-To: core@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D102E120454 for <core@ietfa.amsl.com>; Fri, 13 Apr 2018 06:01:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3] 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 EIRGCe9zxlro for <core@ietfa.amsl.com>; Fri, 13 Apr 2018 06:01:48 -0700 (PDT)
Received: from mailhost.informatik.uni-bremen.de (mailhost.informatik.uni-bremen.de [IPv6:2001:638:708:30c9::12]) (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 1EB531200C1 for <core@ietf.org>; Fri, 13 Apr 2018 06:01:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at informatik.uni-bremen.de
Received: from submithost.informatik.uni-bremen.de (submithost.informatik.uni-bremen.de [IPv6:2001:638:708:30c9::b]) by mailhost.informatik.uni-bremen.de (8.14.5/8.14.5) with ESMTP id w3DD16Gl022463; Fri, 13 Apr 2018 15:01:06 +0200 (CEST)
Received: from [192.168.217.114] (p5DC7FA72.dip0.t-ipconnect.de [93.199.250.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by submithost.informatik.uni-bremen.de (Postfix) with ESMTPSA id 40MyZV2hkrzDXJM; Fri, 13 Apr 2018 15:01:06 +0200 (CEST)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 11.2 \(3445.5.20\))
From: Carsten Bormann <cabo@tzi.org>
In-Reply-To: <20180413110301.GL18144@hephaistos.amsuess.com>
Date: Fri, 13 Apr 2018 15:01:05 +0200
Cc: peter van der Stok <consultancy@vanderstok.org>, Jim Schaad <ietf@augustcellars.com>, Core WG mailing list <core@ietf.org>
X-Mao-Original-Outgoing-Id: 545317263.971565-b48949272d5ca51101d1a649abf93fc9
Content-Transfer-Encoding: quoted-printable
Message-Id: <29B20CA2-4179-4BBA-A0A7-5365C5A2BE85@tzi.org>
References: <20180413110301.GL18144@hephaistos.amsuess.com>
To: "\"Christian M. Amsüss\"" <christian@amsuess.com>
X-Mailer: Apple Mail (2.3445.5.20)
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/w80Q07yYTGCqyT1-O2IiR4cCK3M>
Subject: Re: [core] Report on first Resource Directory plugtest
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "Constrained RESTful Environments \(CoRE\) Working Group list" <core.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/core>, <mailto:core-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/core/>
List-Post: <mailto:core@ietf.org>
List-Help: <mailto:core-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/core>, <mailto:core-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 13 Apr 2018 13:01:56 -0000

On Apr 13, 2018, at 13:03, Christian M. Amsüss <christian@amsuess.com> wrote:
> 
> Hello Peter, Carsten,
> hello Jim (responding cross-thread to the Location-Query point),
> 
> (removing DNS-SD from the thread because I do not expect those topics to
> be particularly interesting there)
> 
> On Fri, Apr 13, 2018 at 09:04:33AM +0200, peter van der Stok wrote:
>> to be filled into the github, I hope.
> 
> yes, as I am finally going thorough the existing issues and changes.
> 
> On Fri, Apr 13, 2018 at 09:14:27AM +0200, Carsten Bormann wrote:
>>> * Can there be a Location-Query option in a registration response?
>>>   (Probably not, we just didn’t say that.)
>> 
>> Why not?
>> (Sorry, I missed out on responding to Jim’s earlier message on this.
>> I’m trying to find out why we need to restrict the server’s flexibility in choosing the URI here.
>> Maybe there is a good reason, I’d just like it to be more explicitly stated.)
> 
> The good reason is that we are using URI templates in the registration
> update operation: {+location}{?lt,con,extra-attrs*}
> 
> While it should be intuitively obvious that for location="x://y/z?a=b"
> and lt="42", the produced URI is "x://y/z?a=b&lt=42", RFC6570 Section
> 3.2.8 does not describe peeking back at what has been expanded to the
> left side, but prescribes a "?" to be used before the first value, so
> the produced URI would be "x://y/z?a=b?lt=42" (or possibly ?a=b%3Flt=42
> but not ?a=b&lt=42).
> 
> If I'm reading RFC6570 wrong here, Location-Path can be allowed and I'd
> be happy.
> 
> Otherwise, we have to choose between using formal URI templates here
> (vs. saying that some query parameters can be appended) and allowing
> Location-Query. (Requiring anyone to understand ?foo=bar?baz=qux as two
> keyswould be madness so it’s not an option.)

I must admit that I read


   o  append "?" to the result string if this is the first defined value
      or append “&” thereafter;

as doing the right thing, but then maybe I don’t understand “the first defined value” (of what?).

We could also use formal URI templates and just say that they are to be interpreted in the sensible way described above.

(I’m not a fan of RFC 6570 URI templates at all, because the approach is full of brokenness of the kind you describe(*); but it was available at the time…)

> 
>>> Ceterum censeo RFC6690 esse revidendam.
>> 
>> Well, the general feeling was that instead of going for a 6690bis, we
>> maybe want to let the link-format just fade out (In favor of
>> links-json/-cbor).
> 
> link-json/-cbor is not helping with the issue of [1].

No; the intention would be to develop links-json/-cbor in such a way that itself doesn’t have the issue.
(I.e., decouple it a bit from the idiosyncrasies of RFC 6690.)

> Whoever receives a link-format+json document and wants to follow a link
> given there needs to take the href and the anchor, and look up in
> RFC6690 Section 2.1, which is the very root of my misgivings about the
> situation.

Not if we don’t define it that way.

Generally, the idea is that an RD consumer is not affected by this (we always use absolute URIs), and an RD submitter  would be affected only if it uses legacy link-format.

> [1]: https://mailarchive.ietf.org/arch/msg/core/LS0ccxtH8nEVuy73iZoRkkfBpmw
> 
>>> * Production and parsing of invalid RFC6690 (which link attributes
>>>   need to be quoted, 
>> 
>> Right.  I think we really should be following RFC 8288 here and asking
>> implementations to be robust to the misguided “this attribute needs to
>> be quoted” decisions we made in RFC 6690.
>> 
>> Maybe we can put a few updates to 6690 in links-json?
> 
> I don't know from a procedural PoV -- can we? And how far can that go?

In updating a document, we can go as far as we want.
But of course we want to be reasonable and make sure we don’t invalidate existing implementations of link-format.
Instead of doing a link-format v2, the idea is live with v1 and move over to JSON/CBOR.

Grüße, Carsten

(*) the usual mistake of trying to describe operations on the data model level in terms of operations on the serialization level.  That got fixed in RFC 8288, but not in RFC 6570 templates.  In the end, I believe we’ll be much better off with a CORAL-like representations of URIs…