Re: [6tisch] CoAP resource management - draft-ietf-6tisch-coap-02

Thomas Watteyne <watteyne@eecs.berkeley.edu> Wed, 12 November 2014 00:23 UTC

Return-Path: <twatteyne@gmail.com>
X-Original-To: 6tisch@ietfa.amsl.com
Delivered-To: 6tisch@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 307791A8AAF for <6tisch@ietfa.amsl.com>; Tue, 11 Nov 2014 16:23:12 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.277
X-Spam-Level:
X-Spam-Status: No, score=-1.277 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FM_FORGED_GMAIL=0.622, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=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 J0XNDmgQUJNh for <6tisch@ietfa.amsl.com>; Tue, 11 Nov 2014 16:23:10 -0800 (PST)
Received: from mail-pd0-x22f.google.com (mail-pd0-x22f.google.com [IPv6:2607:f8b0:400e:c02::22f]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DEFE81A8A41 for <6tisch@ietf.org>; Tue, 11 Nov 2014 16:23:09 -0800 (PST)
Received: by mail-pd0-f175.google.com with SMTP id y13so11115046pdi.20 for <6tisch@ietf.org>; Tue, 11 Nov 2014 16:23:09 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=DqTtz6AIjw4GhhYCV4S8MNXEzlCsYjI91chINdTA3u4=; b=L7Ml8tAXLISOAW+CXM0QSyiwDxPX6y29tPvBH/pF2+0BBDENJcd3dM59PAvfnRVKal /FS1beHlyRxYRBPdNBdAFfrjEsXoDERw84obqMbczOwXfXJjWeGsO7sPymKhKYaBdpvP D5Ty38962p+NFEkYhEthxUfmLGgKbJcrggZYszL5lwT93lATHYkib2H4vc0dIi184900 0dshpOakHkkoBLj5caKFAP05RCfpTGqw6lagfcYdcgdTqyYila8aTYnsSsYp1l0McNse XLo5AgAqWign+VQ4xzJVzNXQlmXoTSbgRdSOyNPJaaG/ejVgpZ21WRHXFugNveMgxPN5 mX9g==
X-Received: by 10.70.35.236 with SMTP id l12mr5211801pdj.63.1415751789018; Tue, 11 Nov 2014 16:23:09 -0800 (PST)
MIME-Version: 1.0
Sender: twatteyne@gmail.com
Received: by 10.66.88.42 with HTTP; Tue, 11 Nov 2014 16:22:48 -0800 (PST)
In-Reply-To: <10653.1415740821@sandelman.ca>
References: <D0876D12.C03C%rsudhaak@cisco.com> <32412.1415737868@sandelman.ca> <D087B62D.C081%rsudhaak@cisco.com> <10653.1415740821@sandelman.ca>
From: Thomas Watteyne <watteyne@eecs.berkeley.edu>
Date: Tue, 11 Nov 2014 14:22:48 -1000
X-Google-Sender-Auth: SP3NOkFI0bLS-oUIpZzF7G99eFU
Message-ID: <CADJ9OA_LFkGDuyG_0bf=07d7cvC9FNRr5cMGTmYw2PR=g9XQHA@mail.gmail.com>
To: Michael Richardson <mcr+ietf@sandelman.ca>
Content-Type: multipart/alternative; boundary="047d7bfe9e0879863e05079e668f"
Archived-At: http://mailarchive.ietf.org/arch/msg/6tisch/FOCVIiHFgzUgE4H2C-8Qy7SwKXk
Cc: "Raghuram Sudhaakar (rsudhaak)" <rsudhaak@cisco.com>, "6tisch@ietf.org" <6tisch@ietf.org>
Subject: Re: [6tisch] CoAP resource management - draft-ietf-6tisch-coap-02
X-BeenThere: 6tisch@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "Discuss link layer model for Deterministic IPv6 over the TSCH mode of IEEE 802.15.4e, and impacts on RPL and 6LoWPAN such as resource allocation" <6tisch.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/6tisch>, <mailto:6tisch-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/6tisch/>
List-Post: <mailto:6tisch@ietf.org>
List-Help: <mailto:6tisch-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/6tisch>, <mailto:6tisch-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 12 Nov 2014 00:23:12 -0000

Michael,

Your description captures what I had in mind. In the centralized case, as
part of the joining process (e.g. defined
in draft-richardson-6tisch--security-6top-03), the PCE GETs the CoAP API
version implemented by the newly joining node. The PCE speaks all versions,
and chooses the commands it sends to the node depending on the set of
commands the node understands. Similarly, in a purely distributed cases, a
node GETs the version of the CoAP interface of its neighbor.

In my mind, the version is just a mechanism the CoAP interface offers, and
is generally a "healthy" feature to have, especially if the version of the
interface can change. The initial idea for this discussion is also to be
able to possibly switch to a more generic solution (COMAN? COMI?).

Another versioning option would be to:
- associate a version number to the YANG data model
- have all associated CoAP URIs be prefixed with that version, e.g. /6t/1,
/6t/2, etc.

This is the approach used by Google (
https://developers.google.com/gmail/api/v1/reference/) and Xively (
https://xively.com/dev/docs/api/data/read/single_feed/). It allows for
multiple a node to implement multiple versions, at the cost of an extra
Uri-Path.

Thoughts?

Thomas

On Tue, Nov 11, 2014 at 11:20 AM, Michael Richardson <mcr+ietf@sandelman.ca>
wrote:

>
> Raghuram Sudhaakar (rsudhaak) <rsudhaak@cisco.com> wrote:
>     > Michael I believe ³version data² may be a misleading word I used in
> the
>     > previous email. What I meant is the version number.
>
>     > The version number uniquely identifies the set of 6top resources that
>     > can be accessed on a node. Version number is bumped up when a
> resource
>     > is added, renamed or deleted.
>
> okay, you mean the version of the 6top API; versions are created by
> standards
> action...
>
>     > Heterogenity may arise when new nodes (running an updated
>     > implementation which may have added a new resources) are added to
>     > existing deployments.  Heterogenity is entirely w.r.t the version
>     > number (and consequently the set of 6top resources that can be
> accessed
>     > on the nodes).
>
> Yes, I agree this is an interesting issue.
> The problem is what do you do when a v2 node tries to talk to a v1 node...
> we
> need to think about this now, I agree.  I think this is most acute in the
> minimal case, as otherwise the PCE can have a notion about what the range
> of
> versions available are, and can cope...  The PCE can speak all versions, so
> this means that the nodes do not have to support more than one version.
> But, in the minimal case, they have to talk to each other, so there has to
> be
> a discovery process and some adaptation.
>
> --
> Michael Richardson <mcr+IETF@sandelman.ca>, Sandelman Software Works
>  -= IPv6 IoT consulting =-
>
>
>
>
> _______________________________________________
> 6tisch mailing list
> 6tisch@ietf.org
> https://www.ietf.org/mailman/listinfo/6tisch
>
>