Re: [art] Artart last call review of draft-ietf-core-links-json-07

Carsten Bormann <cabo@tzi.org> Tue, 25 April 2017 19:01 UTC

Return-Path: <cabo@tzi.org>
X-Original-To: ietf@ietfa.amsl.com
Delivered-To: ietf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C700913178B; Tue, 25 Apr 2017 12:01:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.199
X-Spam-Level:
X-Spam-Status: No, score=-4.199 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, URIBL_BLOCKED=0.001] 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 X2qMWII5vINR; Tue, 25 Apr 2017 12:01:17 -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 1D3EB13178D; Tue, 25 Apr 2017 12:00:59 -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 v3PJ014b017046; Tue, 25 Apr 2017 21:00:01 +0200 (CEST)
Received: from [192.168.217.113] (p5DC7F3A7.dip0.t-ipconnect.de [93.199.243.167]) (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 3wCCFX5KBpzDJ5m; Tue, 25 Apr 2017 21:00:00 +0200 (CEST)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
Subject: Re: [art] Artart last call review of draft-ietf-core-links-json-07
From: Carsten Bormann <cabo@tzi.org>
In-Reply-To: <f1b9f42f-559d-d146-e355-c3e2ba31cb01@gmx.de>
Date: Tue, 25 Apr 2017 20:59:59 +0200
Cc: Herbert Van de Sompel <hvdsomp@gmail.com>, art@ietf.org, draft-ietf-core-links-json.all@ietf.org, IETF <ietf@ietf.org>, "core@ietf.org WG" <core@ietf.org>, Erik Wilde <erik.wilde@dret.net>
X-Mao-Original-Outgoing-Id: 514839599.587282-cfed82419b35f701b30329893f680c6a
Content-Transfer-Encoding: quoted-printable
Message-Id: <23DDC7F2-D46F-4C19-AEA8-C71187099414@tzi.org>
References: <149188258769.15738.17473942496982365590@ietfa.amsl.com> <A12A8CB3-F756-4790-806A-A67AA8CE1D78@tzi.org> <CAOywMHdqitw-uN09p11j2xkBK6TO8y3wjAWipK7vhqbTWp0T1w@mail.gmail.com> <a2350664-05a7-8909-4cf4-5b765e09f9e7@dret.net> <027F2C41-E498-4801-86E2-047771E10545@tzi.org> <4cd01462-2a0f-803e-df10-e68b3eed0226@dret.net> <B04F33DD-51C1-4545-AD59-2F1A3AF14FF6@tzi.org> <feee7d84-263a-49e4-d95e-09ab8526b703@dret.net> <CAOywMHfJpYB6u7BFVf10Gf=Nxk0E1h5iEvyVX5VeAW0UKQOSzQ@mail.gmail.com> <5EB045F7-09FA-4EE8-844A-5AC0E3BF5C1E@tzi.org> <f1b9f42f-559d-d146-e355-c3e2ba31cb01@gmx.de>
To: Julian Reschke <julian.reschke@gmx.de>
X-Mailer: Apple Mail (2.3273)
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf/iQ3JNFrdPvNkfKN3q7n4_7Hbqmc>
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: IETF-Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ietf/>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 25 Apr 2017 19:01:21 -0000

On Apr 25, 2017, at 18:46, Julian Reschke <julian.reschke@gmx.de> wrote:
> 
> Do you have a specific problem in mind?

This work was done half a decade ago (May 18, 2012, that is), so I don’t remember all the details.
RFC 6690 says:

   In
   order to convert an HTTP Link Header field to this link format, first
   the "Link:" HTTP header is removed, any linear whitespace (LWS) is
   removed, the header value is converted to UTF-8, and any percent-
   encodings are decoded.

So we get rid of all that fun before it becomes RFC 6690 (and CoAP of course is all UTF-8 in any case).

So far, we have run into one real case where that approach is a limitation, and that is in URIs:

The link

coap://example.com?stupid%3Dkey=4711

is not distinguishable from

coap://example.com?stupid=key=4711

(The typical reaction of an implementer is “then don’t do that!” [1,2].)

We know that because the CoAP protocol itself also completely runs in the UTF-8 domain (there is no percent encoding on the wire); I’m not sure that simplification actually hurt in RFC 6690 use cases yet.

(Note that it is rather likely to see user-visible strings in DNS-SD instance names, which turn into “ins” link attributes, so this is not only a URI/IRI/WVUS [3] issue.)

We don’t have a lot of experience with lingering legacy charsets in HTTP headers in the constrained space, so I’m sure there are other side effects.

Grüße, Carsten

[1]: http://www.condenaststore.com/-sp/Then-don-t-do-that-New-Yorker-Cartoon-Prints_i14788077_.htm
[2]: http://www.catb.org/~esr/jargon/html/D/Don-t-do-that-then-.html
[3]: https://url.spec.whatwg.org/#valid-url-string (WHATWG Valid URL String, or WVUS for short)