Re: [6tisch] #40 (minimal): Ralph's INT AREA review on minimal

"Pascal Thubert (pthubert)" <pthubert@cisco.com> Wed, 09 December 2015 17:12 UTC

Return-Path: <pthubert@cisco.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 133DB1ACEEB; Wed, 9 Dec 2015 09:12:46 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.51
X-Spam-Level:
X-Spam-Status: No, score=-14.51 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, T_RP_MATCHES_RCVD=-0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham
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 n0adYSKAvnLU; Wed, 9 Dec 2015 09:12:43 -0800 (PST)
Received: from alln-iport-4.cisco.com (alln-iport-4.cisco.com [173.37.142.91]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F21EF1ACED7; Wed, 9 Dec 2015 09:12:42 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=13002; q=dns/txt; s=iport; t=1449681162; x=1450890762; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=b/q5hBN8c3xi/cXMAINlxwLTDHFsc9ZbwJvkiC4EvJQ=; b=mNOTcI3cCb5xs5YOk9OR/Aup49NvzCilCLv1kcuLbt0x19Etu/k7i1oL EKpQa5bjL5wr9KB3PyI2fICreOJtWF2LmzFDH4wtb62RkzjO1CLX1i4ct POKciFurB3RMtMDqNu0ZY5UnItEeS4HoCdE4QdGtqsQYrVvp3XtFnE1LX c=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0DKCwC9X2hW/4ENJK1SDIM6U18VuGaCRYIngWIdhXICgSc6EgEBAQEBAQGBCoQ0AQEBAwEdHT8FCwIBCBIkEDIXDgIEDg0TiAwIDcANAQEBAQEBAQEBAQEBAQEBAQEBAQEBFASGVYR9hCUBFQEBAYUCBYdUjxUBhTKBKIZggWOHbI9Kg3IBKAE6hASFKjqBBwEBAQ
X-IronPort-AV: E=Sophos;i="5.20,404,1444694400"; d="scan'208";a="215641562"
Received: from alln-core-9.cisco.com ([173.36.13.129]) by alln-iport-4.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 09 Dec 2015 17:12:41 +0000
Received: from XCH-RCD-019.cisco.com (xch-rcd-019.cisco.com [173.37.102.29]) by alln-core-9.cisco.com (8.14.5/8.14.5) with ESMTP id tB9HCfU9003812 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Wed, 9 Dec 2015 17:12:41 GMT
Received: from xch-rcd-001.cisco.com (173.37.102.11) by XCH-RCD-019.cisco.com (173.37.102.29) with Microsoft SMTP Server (TLS) id 15.0.1104.5; Wed, 9 Dec 2015 11:12:41 -0600
Received: from xch-rcd-001.cisco.com ([173.37.102.11]) by XCH-RCD-001.cisco.com ([173.37.102.11]) with mapi id 15.00.1104.009; Wed, 9 Dec 2015 11:12:34 -0600
From: "Pascal Thubert (pthubert)" <pthubert@cisco.com>
To: "Ralph Droms (rdroms)" <rdroms@cisco.com>
Thread-Topic: [6tisch] #40 (minimal): Ralph's INT AREA review on minimal
Thread-Index: AQHRKQIGOiBah7eb5UK75ykPcc2vkp7CY0iQgAC/dID//6eSsA==
Date: Wed, 09 Dec 2015 17:12:23 +0000
Deferred-Delivery: Wed, 9 Dec 2015 17:11:58 +0000
Message-ID: <df9d431c3e7a49f79fc2dd3635a1036e@XCH-RCD-001.cisco.com>
References: <060.3dd7a264eded1d845f64abc1fe858f76@tools.ietf.org> <075.a6c8b59ecb15c9e24f5de9597c350084@tools.ietf.org> <832DA812-A771-4C20-B82B-E3FD63A9A39E@cisco.com> <f784af3f27244a3ea639fed7f6843b94@XCH-RCD-001.cisco.com> <672063CD-B94D-49C2-883E-BE4E0DCDF0AD@cisco.com>
In-Reply-To: <672063CD-B94D-49C2-883E-BE4E0DCDF0AD@cisco.com>
Accept-Language: fr-FR, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.49.80.31]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <http://mailarchive.ietf.org/arch/msg/6tisch/gbhAaalgfmwH0KAHDyTinpA5o94>
Cc: "6tisch@ietf.org" <6tisch@ietf.org>, "draft-ietf-6tisch-minimal.all@ietf.org" <draft-ietf-6tisch-minimal.all@ietf.org>
Subject: Re: [6tisch] #40 (minimal): Ralph's INT AREA review on minimal
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: <https://mailarchive.ietf.org/arch/browse/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, 09 Dec 2015 17:12:46 -0000

Hello Ralph:


> >> Does a network that follows these rules provide an L2 IEEE 802.15.4
> >> service, an
> >> IPv6 6TiSCH service, ???
> 
> This is the key question I was trying to get an answer for.  I think what I read
> below is that the intention for this document is to define "a set of rules for
> simplest operation of an 6TiSCH network".

Yes. That is what I'm expecting as shepherd of the doc to match the charter item.


<snip>

> > 6TiSCH was put together to address the NBMA nature of the multihop network
> as opposed to considering only one hop, like BTLE does, which would probably
> be have been 6lo work.
> 
> My key question is whether this document aimed at a description of how to use
> IEEE 802.15.4 TSCH or 6TiSCH.  As the goal is a description of 6TiSCH, a
> description of how to use RPL is, of course, appropriate.

It is a 6TiSCH spec about minimal 6TiSCH Network, not a description of TSCH, which is already a completed charter item (https://tools.ietf.org/html/rfc7554).


> >
> > 6TiSCH requires RPL for data and time synchronization over multiple hops.
> That capability is part of our bare minimum. If someone only cares for hub and
> spoke, then RPL is not needed, but supporting only that model is below the bar
> of the 6TiSCH bare minimum.
> 
> I still think tying the join process to the use of RPL is a bad idea, but that's a
> minor design point for the WG.

If it was only that, I'd agree. 

But we also need RPL to build a loop-less structure for the clock synchronization, so we do not need an additional routing method for that purpose only.
As you know, clock synchronization is key to the TSCH operation and if a node loses its sense of time, it lose connectivity and will need to rejoin.

So RPL ends up as a core mechanism in 6TiSCH and if that makes things simpler or better, then we are happy to leverage it elsewhere.

> 
> >> I looked at draft-ietf-6tisch-minimal-13, and I see that there are no
> >> changes to the abstract or the introduction.  As I read that text,
> >> this document is intended to give minimal operational parameters for
> >> IEEE802.15.4 TSCH.  However, the title of the document is "Minimal
> >> 6TiSCH Configuration" and the content goes far beyond the parameters
> >> needed to run IEEE802.15.4 TSCH.  As an aside, I don't see any
> >> mention of TiSCH or 6TiSCH in the document, other than in the title.
> >
> > I agree, Ralph;
> >
> > Proposals:
> >
> >
> >
> > --------------
> > Abstract (before)
> >
> >   This document describes the minimal set of rules to operate an IEEE
> >   802.15.4 Timeslotted Channel Hopping (TSCH) network.  This minimal
> >   mode of operation can be used during network bootstrap, as a fall-
> >   back mode of operation when no dynamic scheduling solution is
> >   available or functioning, or during early interoperability testing
> >   and development.
> >
> > ----------
> > Abstract (after)
> >
> >   This document describes the minimal set of rules to operate a 6TiSCH
> >   Network, which provides IPv6 connectivity over a Non-Broadcast
> >   Multi-Access (NBMA) mesh that is formed of IEEE 802.15.4
> >   Timeslotted Channel Hopping (TSCH) links.  This minimal set only
> >   provides static scheduling, but it can be complemented in operating
> >   networks by distributed, or centrally controlled, dynamic scheduling
> >   extensions.
> >
> > ----------
> 
> I apologize if I appear to be wordsmithing (or even bikeshedding).
> 
> I don't think the first sentence is right.  I think what this document describes is a
> simple mode of operation to provide IPv6-over-6Tisch service.  The motivation
> for this mode of operation is testing, initial deployment and/or "required to
> implement" to provide a baseline of interoperability.  I think the focus should be
> on the purpose of the document as a whole and the details of the scheduling
> mechanism can be left for the Introduction.

Hum:

"IPv6-over-6Tisch" is redundant since the 6 in 6TiSCH is already that IPv6.

Our terminology says :   6TiSCH:     IPv6 over the Timeslotted Channel Hopping (TSCH) mode of IEEE 802.15.4e.

Also we have learnt that the initial motivation and how the protocol ends up being used are totally different beast so I'd rather stick to what minimal is as opposed to what we thought we'd be using it for. It is mostly minimal because it uses a static schedule and slotted-aloha over it. It is also minimal because it is based on the IETF standards that are designed to enable IPv6 on the most constrained environments that we support (6LoWPAN, RPL, CoAP, ...).

Finally you say that the first sentence is not right but it appears that you comment on the second. Putting all the above together, and if that's really your point, then yes, I'd agree with you to remove the second sentence. What about:

"
----------
Abstract (2nd try)

This document describes a minimal mode of operation for a 6TiSCH
Network, to provide IPv6 connectivity over a Non-Broadcast
Multi-Access (NBMA) mesh that is formed of IEEE 802.15.4
Timeslotted Channel Hopping (TSCH) links.  This minimal mode 
leverages 6LoWPAN and RPL to enable slotted-aloha operations
over a static TSCH schedule.
"

> 
> >
> > ------------
> >
> >
> >
> > 1.  Requirements Language
> >
> >   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
> >   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in
> this
> >   document are to be interpreted as described in RFC 2119 [RFC2119].
> >
> > 2.  Introduction
> >
> >   The nodes in a IEEE 802.15.4 TSCH network follow a communication
> >   schedule.  The entity (centralized or decentralized) responsible for
> >   building and maintaining that schedule has precise control over the
> >   trade-off between the network's latency, bandwidth, reliability and
> >   power consumption.  During early interoperability testing and
> >   development, however, simplicity is more important than efficiency.
> >   One goal of this document is to define the simplest set of rules for
> >   building a TSCH-compliant network, at the necessary price of lesser
> >   efficiency.  Yet, this minimal mode of operation MAY also be used
> >   during network bootstrap before any schedule is installed into the
> >   network so nodes can self-organize and the management and
> >   configuration information be distributed.  In addition, the minimal
> >   configuration MAY be used as a fall-back mode of operation, ensuring
> >   connectivity of nodes in case that dynamic scheduling mechanisms fail
> >   or are not available.  The IEEE 802.15.4 specification provides a
> >   mechanism whereby the details of slotframe length, timeslot timing,
> >   and channel hopping pattern are communicated when a node time
> >   synchronizes to the network [IEEE802154].  This document describes
> >   specific settings for these parameters.
> >
> >
> > ------------------------------
> >
> > 1.  Introduction
> >
> >   A 6TiSCH Network provides IPv6 connectivity over a Non-Broadcast
> >   Multi-Access (NBMA) mesh that is formed of IEEE 802.15.4
> >   Timeslotted Channel Hopping (TSCH) links.
> 
> Good - a crisp definition of "6TiSCH" is critical.
> 

<snip>

> 
> What about all the other protocols required to run an IPv6 network?
> 
> I would assume that the reader knows about IEEE 802.15.4 TSCH, RPL, etc., and
> their principles of operation.  In the interest of conciseness, I recommend eliding
> motivations and descriptions of protocols that are available elsewhere.  If I were
> reading this document, I would want to know what protocols I need to
> implement, what is the default operation of those protocols, what operational
> parameters a device will receive through the network, what defaults a device
> should use for other operational parameters.

Yes, we agree on the goal; " motivations and descriptions of protocols that are available elsewhere" is exactly what I've been trying to do.
But I fail to see which text in the intro still fits that description. Would you have a suggestion there? Note that we need to insist on the static schedule because that's where the minimalistic thing comes from.
Below I'm adding a paragraph to address the need to mention 6LoWPAN as mandatory parts of the minimal solution, in an attempt to cover your points above and further down this mail.

------------------------------

1.  Introduction

   A 6TiSCH Network provides IPv6 connectivity over a Non-Broadcast
   Multi-Access (NBMA) mesh that is formed of IEEE 802.15.4
   Timeslotted Channel Hopping (TSCH) links.  

<added in v2>

   The 6TiSCH [I-D.ietf-6tisch-architecture] architecture requires the
   use of both RPL and the 6LoWPAN adaptation layer framework 
   ([RFC4944], [RFC6282]) as defined over IEEE 802.14.5.
   6LoWPAN Neighbor Discovery [RFC6775] (ND)  is also required to
   exchange Compression Contexts,  form IPv6 addresses and register
   them for the purpose of Duplicate Address Detection, Address
   Resolution and Neighbor Unreachability detection over one
   TSCH link.
   
</added in v2>

   Nodes in a IEEE 802.15.4 TSCH network follow a communication
   schedule.  An entity (centralized or decentralized) responsible for
   building and maintaining that schedule has precise control over the
   trade-off between the network's latency, bandwidth, reliability and
   power consumption. The degree of optimization that is obtained
   depends on the capabilities of the controlling entity and the acceptable
   complexity for a given deployment. In a minimal configuration,
   this controlling entity is omitted, and the schedule is static.

   The IEEE 802.15.4 specification provides a mechanism whereby the
   schedule, expressed as details of slotframe length, timeslot timing,
   and channel hopping pattern, is obtained by a node at the time it joins
   the network [IEEE802154].

   This specification defines a Minimal Configuration to build a 6TiSCH
   Network, using the Routing Protocol for LLNs (RPL) and a static TSCH
   Schedule.  The 802.15.4 TSCH mode, RPL [RFC6550], and its Objective
   Function 0 (OF0) [RFC6552], are used unmodified, but parameters and
   particular operations are specified  to guarantee interoperability
   between nodes in a 6TiSCH Network. 
   
   More advanced work is expected in the future to complement the
   Minimal Configuration with dynamic operations that can adapt the
   Schedule to the needs of the traffic in run time.

>> 3. Produce "Minimal 6TiSCH Configuration" defining how to build a 6TiSCH
>> network using the Routing Protocol for LLNs (RPL) and a static TSCH schedule. It
>> is expected that RPL and the Objective Function 0 (OF0) will be reused as-is.
> 
> On reflection, I think this charter item is incomplete.  It focuses on only two
> aspects of how to build a simple 6TiSCH network: scheduling and routing.  A
> complete IPv6-over-TSCH definition needs to specify the use of 6LoWPAN, ND,
> address management, prefix management, etc.

Yes, we need to add text on reusing 6LoWPAN HC as is. Then there's the question of 6LoRH (in adoption call at 6lo); should we mention it?
The deployment and interaction with backbone router for those deployments that need it is described in the architecture.
Left to be debated is whether we point only on RFC 6775 for the other items or add draft-thubert-6lo-backbone-router (also in adoption call at 6lo) in the picture.




> Ideally, this document would be paired with a complete IPv6-over-6TSCH
> specification, so that this document specifies only those particular operational
> parameters required for the simple subset of the IPv6-over-6TSCH specification.
> I understand that there is a circular dependency in that it's likely this simple
> 6TiSCH definition will be needed for development and testing before a complete
> 6TiSCH definition is published.  In that case, this document will need to be a
> standalone document and include descriptions of how to use all of the protocols
> required for 6TiSCH service.

My thought too. The high level informational view is supposed to be the architecture, which may be ill-named since as you pointed out in your review, it goes deeper than that.
We do not want to overload the minimal draft with things that are in the architecture already. It is in line with your earlier comment on " eliding motivations and descriptions of protocols that are available elsewhere" to which I do agree.

I added a paragraph to indicate the inheritance from the architecture and the need of all the 6LoWPAN suite.

Does that work?

Pascal