Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml
Peter Saint-Andre - Filament <peter@filament.com> Thu, 20 July 2017 23:12 UTC
Return-Path: <peter@filament.com>
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 BC23A127599 for <core@ietfa.amsl.com>; Thu, 20 Jul 2017 16:12:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.601
X-Spam-Level:
X-Spam-Status: No, score=-2.601 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=filament-com.20150623.gappssmtp.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 xvdx_8xzB5Ni for <core@ietfa.amsl.com>; Thu, 20 Jul 2017 16:12:02 -0700 (PDT)
Received: from mail-it0-x232.google.com (mail-it0-x232.google.com [IPv6:2607:f8b0:4001:c0b::232]) (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 131571243F3 for <core@ietf.org>; Thu, 20 Jul 2017 16:12:02 -0700 (PDT)
Received: by mail-it0-x232.google.com with SMTP id h199so155011ith.1 for <core@ietf.org>; Thu, 20 Jul 2017 16:12:02 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=filament-com.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=VMDK+Way5gsbURu61dxPQ58c/kFsACJ4OdeIPpJ9x3o=; b=DJ4GuPlcvVNANKYwHkJ4N/bynyB2ctSK0JArrErWTmQZnmlXw05Tvkg79B6q6etsh0 ARe/njtcZ663fheNmfQ3zw0e0KPZr7Hjw2TcUDPVZPvsCZc1FvSJDo9biGi4KXwQuJbO ZcCPuUyW42n5d05SSXIHk2M+57MgY+eyAa12juzbhkzrkb3NpSMSOvelRP8otPrSNez6 lW70WjdPsJ3p135qTry9ESR69HxuzYzuMVxGYICIDQMojtC1tnN+070w+e59zeGrJgKy J+4ql4xH6oS52X48Im3ptcWGdwbOKI8V9Mdk53maLIaoKnirGZS9L946gj56/MHQQVY/ Ywkg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=VMDK+Way5gsbURu61dxPQ58c/kFsACJ4OdeIPpJ9x3o=; b=BxdC8q3Lyns8hQIGgHLEcLC3iHIzHB+WoUlqJwDcSznPmfsnmzaiPrk1pry83xvs3U 5B49+ZyYrR55iuYHq8qboTyynK1nFNcBFX8Jw0ikykdIM/Bj6JgudBBUtflbmDA7H40b wp/dYkWseA/MU4o7bSsVhsQds7Z2wyXebi/C0ju+T3vS79xf1ANSQs95UdgfA8lDOFoX Es+Iez14R/u6S9HrcmNg4pmeMT9ZzFXz4grymLql4G1Y/EwF2uFWc3g80SW8Nzf3HBDi 3g8se1EJaTu7mggo1f1PAMslkjiZrZGTQ2QxXKK3VgOTBJv21dPH93bagMMMHifpbwHM 5blA==
X-Gm-Message-State: AIVw110V7p6evDPtWFFkNS2uhhPa/USd9tE5fdkgYHgeOyMeCiHvezq9 /eFgAeEiC9i18Gie
X-Received: by 10.36.22.17 with SMTP id a17mr5352362ita.40.1500592321303; Thu, 20 Jul 2017 16:12:01 -0700 (PDT)
Received: from aither.local ([2601:282:4202:67d3:dc2d:4b2e:14fc:6687]) by smtp.gmail.com with ESMTPSA id z84sm4181itc.32.2017.07.20.16.11.59 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 20 Jul 2017 16:12:00 -0700 (PDT)
To: Ari Keränen <ari.keranen@ericsson.com>
References: <5BAB706B-110D-4711-A62E-5980030F241F@ericsson.com> <a51a5b55-7787-beb9-59c0-62724490c79e@filament.com> <5559A4D7-0D55-403D-A3C7-527942640A15@ericsson.com> <1243a4c8-5ce6-642e-faf3-5dda093d13df@filament.com> <5AA558F8-BD20-4871-806B-251155922C56@ericsson.com> <96c526a2-aa7f-5ec3-6e5d-13562b3a8310@filament.com> <CB55E424-B2C8-4FA3-933A-FAF81D796597@ericsson.com>
Cc: core <core@ietf.org>
From: Peter Saint-Andre - Filament <peter@filament.com>
Message-ID: <c4b2718f-31b0-3ada-291f-21373dc07639@filament.com>
Date: Thu, 20 Jul 2017 17:11:57 -0600
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.8.0
MIME-Version: 1.0
In-Reply-To: <CB55E424-B2C8-4FA3-933A-FAF81D796597@ericsson.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/IkY3d90vLLW9x0d8F9jkn9lz4KA>
Subject: Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml
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: Thu, 20 Jul 2017 23:12:04 -0000
On 7/20/17 4:36 PM, Ari Keränen wrote: > >> On 19 Jul 2017, at 16.31, Peter Saint-Andre - Filament >> <peter@filament.com> wrote: >> >> On 7/19/17 6:45 AM, Ari Keränen wrote: <snip/> > OK. The urn:dev is now progressing in CoRE so I guess we can do the > allocation for that and move forward with it. Excellent! >>>>>> Please note that this set is more restricted than the range >>>>>> of characters allowed for URIs in general (RFC 3986) or >>>>>> URNs in particular (RFC 8141). At the least it would be >>>>>> helpful to point this out, because AFAICS it will limit the >>>>>> URI schemes or URN namespaces that can be used. >>>>> >>>>> Good point. I'd suggest text: >>>>> >>>>> "Note that the character set for SenML names is a subset of >>>>> the characters allowed in URIs. The restricted set was chosen >>>>> to enable efficient and safe use of names in various systems >>>>> (e.g., as database keys)." >>>> >>>> I suggest that we also say something like "The restrictions >>>> imply that care needs to be taken in the choice of URIs or URNs >>>> as SenML names." Furthermore, if someone wants to use a URI >>>> scheme that allows characters outside that set (e.g., the 'tag' >>>> scheme), then do those characters need to be encoded somehow? >>>> (Ick.) If not, then we should say so. >>> >>> One should not try to put "full URIs" into the names. Rather the >>> names can be used as part of a URI. >> >> I'm confused. What I see in the draft right now is that names >> (whether "Name" or "Base Name + Name" = concatenated name) are >> URIs, with URIs from the URN scheme used as examples. Is that a >> misunderstanding on my part? > > URIs that conform to the restricted character set ("A" to "Z", "a" to > "z", "0" to "9", "-", ":", ".", "/", "_"), such as urn:dev, are OK. > For example URL with brackets would not be OK (see section 5.1.6 for > example with IPv6 address). So I'll repeat my concern: How do we handle such URLs? Are they forbidden? If they are not forbidden, do characters like brackets get escaped somehow? (I hope we don't go down that road.) If they are forbidden, then most URI schemes and URN namespaces won't be usable. For example, URIs schemes such as 'tag' (RFC 4151) and 'ni' (RFC 6920) don't conform to the restricted character set, and there are characters allowed in URN syntax (e.g., '@', '%', '?', '[', ']', '#', '~', '+', '=', '&') that don't conform either. Thus it might even be misleading to say that names are URIs because so few URI schemes or URN namespaces can be employed here. We might need to say something like this... OLD The Name value is concatenated to the Base Name value to get the name of the sensor. The resulting name needs to uniquely identify and differentiate the sensor from all others. It is RECOMMENDED that the full names are represented as URIs [RFC3986] or URNs [RFC2141]. One way to create a unique name is to include some bit string that has guaranteed uniqueness (such as a 1-wire address) that is assigned to the device. Some of the examples in this draft use the device URN type as specified in [I-D.arkko-core-dev-urn]. UUIDs [RFC4122] are another way to generate a unique name. Note that long-term stable unique identifiers are problematic for privacy reasons and should be used with care or avoided as described in [RFC7721]. The resulting concatenated name MUST consist only of characters out of the set "A" to "Z", "a" to "z", "0" to "9", "-", ":", ".", "/", or "_" and it MUST start with a character out of the set "A" to "Z", "a" to "z", or "0" to "9". This restricted character set was chosen so that these names can be directly used as in other types of URI including segments of an HTTP path with no special encoding and can be directly used in many databases and analytic systems. [RFC5952] contains advice on encoding an IPv6 address in a name. NEW The Name value is concatenated to the Base Name value to yield the name of the sensor. The resulting concatenated name needs to uniquely identify and differentiate the sensor from all others. The concatenated name MUST consist only of characters out of the set "A" to "Z", "a" to "z", "0" to "9", "-", ":", ".", "/", and "_"; furthermore, it MUST start with a character out of the set "A" to "Z", "a" to "z", or "0" to "9". This restricted character set was chosen so that concatenated names can be used directly within various URI schemes (including segments of an HTTP path with no special encoding) and can be used directly in many databases and analytic systems. [RFC5952] contains advice on encoding an IPv6 address in a name. Although it is RECOMMENDED that concatenated names are represented as URIs [RFC3986] or URNs [RFC8141], the restricted character set specified above puts strict limits on the URI schemes and URN namespaces that can be used. As a result, implementers need to take care in choosing the naming scheme for concatenated names, because such names both need to be unique and need to conform to the restricted character set. One approach is to include a bit string that has guaranteed uniqueness (such as a 1-wire address). Another, shown in some of the examples within this document, is to use the device URN namespace as specified in [I-D.arkko-core-dev-urn]. A third approach is to use UUIDs [RFC4122]. Unfortunately, the restricted character set does not allow the use of some URI schemes that might otherwise be attractive, such as the 'tag' scheme [RFC4151] and the 'ni' scheme [RFC6920]. Note also that long-term, stable, unique identifiers are problematic for privacy reasons and should be used with care or avoided entirely as described in [RFC7721]. >>> Perhaps something we should be more clear about. >> >> Yes, clarity would be good. > > Will add clarification about the URIs. See above for proposed text. >>> Now: https://github.com/core-wg/senml-spec/issues/73 >>> >>>>>> Section 4.6 >>>>>> >>>>>> Up to this point in the document, SenML has been defined as >>>>>> a format for representing sensor measurements. Given that a >>>>>> sensor measures something in the world, what does it mean >>>>>> to *set* the value of a sensor or a sensor measurement? >>>>> >>>>> I guess this needs to be elaborated also in the intro (it's >>>>> hinted in the abstract). >>>> >>>> That's the barest of hints. :-) I almost provided a comment >>>> about it, but let it go. >>> >>> Admittedly :) Do you have any proposal how to make it better? >> >> One option is to remove the configuration and actuation use cases. >> They seem to be an afterthought. Perhaps define them more carefully >> in a separate I-D that re-uses SenML, thus not holding up the core >> SenML work any further. >> >> If people really want to support these use cases now and in the >> core spec, then I can suggest improvements to the text. > > There is already use for these so I think we should include the > functionality in the base spec. OK, I will take a closer look at the text and propose some improvements. Peter
- [core] 🔔 WGLC on draft-ietf-core-coap-senml Jaime Jiménez
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Carsten Bormann
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Peter Saint-Andre - Filament
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Ari Keränen
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Peter Saint-Andre - Filament
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Cullen Jennings
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Peter Saint-Andre - Filament
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Cullen Jennings
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Ari Keränen
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Peter Saint-Andre - Filament
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Peter Saint-Andre - Filament
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Ari Keränen
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Peter Saint-Andre - Filament
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Gonzalo Camarillo
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Jim Schaad
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Gonzalo Camarillo
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Ari Keränen
- Re: [core] 🔔 WGLC on draft-ietf-core-coap-senml Ari Keränen