Re: [6tisch] Comments on draft-ietf-6tisch-msf-00

Simon Duquennoy <simon.duquennoy@ri.se> Fri, 31 August 2018 08:27 UTC

Return-Path: <simon.duquennoy@ri.se>
X-Original-To: 6tisch@ietfa.amsl.com
Delivered-To: 6tisch@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 51E9912D949 for <6tisch@ietfa.amsl.com>; Fri, 31 Aug 2018 01:27:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level:
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-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 mhGjhRmSzH2t for <6tisch@ietfa.amsl.com>; Fri, 31 Aug 2018 01:27:00 -0700 (PDT)
Received: from smtp-out10.electric.net (smtp-out10.electric.net [185.38.180.34]) (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 70284126F72 for <6tisch@ietf.org>; Fri, 31 Aug 2018 01:27:00 -0700 (PDT)
Received: from 1fveld-000Nh0-UT by out10a.electric.net with emc1-ok (Exim 4.90_1) (envelope-from <simon.duquennoy@ri.se>) id 1fveld-000Nhc-VY for 6tisch@ietf.org; Fri, 31 Aug 2018 01:26:57 -0700
Received: by emcmailer; Fri, 31 Aug 2018 01:26:57 -0700
Received: from [194.218.146.197] (helo=sp-mail-2.sp.se) by out10a.electric.net with esmtps (TLSv1.2:ECDHE-RSA-AES128-SHA256:128) (Exim 4.90_1) (envelope-from <simon.duquennoy@ri.se>) id 1fveld-000Nh0-UT for 6tisch@ietf.org; Fri, 31 Aug 2018 01:26:57 -0700
Received: from mail-wr1-f52.google.com (10.116.0.226) by sp-mail-2.sp.se (10.100.0.162) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1466.3; Fri, 31 Aug 2018 10:26:57 +0200
Received: by mail-wr1-f52.google.com with SMTP id z96-v6so10392628wrb.8 for <6tisch@ietf.org>; Fri, 31 Aug 2018 01:26:57 -0700 (PDT)
X-Gm-Message-State: APzg51DvOGLpo6CbC9wSEzxbGll/xtENQCYw+n81NrQ9265jKiHFpPWT weU7YZzsGFm9eSDDtXV3w6IRJnH9SYJ+ji9+AqE=
X-Google-Smtp-Source: ANB0VdY/72BFo3GVV0g6xgmHqzALqFA2q1ZAv4oVYXyGbUpNFNLLd4DJgYZvBDvHajDJ4RFTdoz0KpBhBwSDGdPv2Y8=
X-Received: by 2002:adf:c4c9:: with SMTP id o9-v6mr10589751wrf.173.1535704016670; Fri, 31 Aug 2018 01:26:56 -0700 (PDT)
MIME-Version: 1.0
References: <AB8128C5-C5A4-4E1D-95E5-66ED6A98A1F8@inria.fr>
In-Reply-To: <AB8128C5-C5A4-4E1D-95E5-66ED6A98A1F8@inria.fr>
From: Simon Duquennoy <simon.duquennoy@ri.se>
Date: Fri, 31 Aug 2018 10:26:47 +0200
X-Gmail-Original-Message-ID: <CAMxvJt+b=pDKz7Tsm1ZXtTsggp1eEiuj9eoKPAz7HNKww=c_Rw@mail.gmail.com>
Message-ID: <CAMxvJt+b=pDKz7Tsm1ZXtTsggp1eEiuj9eoKPAz7HNKww=c_Rw@mail.gmail.com>
To: Yasuyuki Tanaka <yasuyuki.tanaka@inria.fr>
CC: 6tisch <6tisch@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000064d6780574b6f4eb"
X-Originating-IP: [10.116.0.226]
X-ClientProxiedBy: sp-mail-1.sp.se (10.100.0.161) To sp-mail-2.sp.se (10.100.0.162)
X-Outbound-IP: 194.218.146.197
X-Env-From: simon.duquennoy@ri.se
X-Proto: esmtps
X-Revdns:
X-HELO: sp-mail-2.sp.se
X-TLS: TLSv1.2:ECDHE-RSA-AES128-SHA256:128
X-Authenticated_ID:
X-Virus-Status: Scanned by VirusSMART (c)
X-Virus-Status: Scanned by VirusSMART (s)
X-PolicySMART: 14510320
Archived-At: <https://mailarchive.ietf.org/arch/msg/6tisch/mOqQ8KUkDQL5Oe66kSyLBLgmFvo>
Subject: Re: [6tisch] Comments on draft-ietf-6tisch-msf-00
X-BeenThere: 6tisch@ietf.org
X-Mailman-Version: 2.1.27
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: Fri, 31 Aug 2018 08:27:04 -0000

On Fri, Aug 24, 2018 at 1:52 PM Yasuyuki Tanaka <yasuyuki.tanaka@inria.fr>
wrote:

> Hi authors,
>
> Congratulations on this great work!
>
>   https://tools.ietf.org/html/draft-ietf-6tisch-msf-00
>
> I'm sharing my comments on the draft; major comments are followed by minor
> comments.
>
> * discussion: when to schedule autonomous TX cells to neighbors
>
> According to Section 4, a join proxy (JP) needs to schedule an autonomous
> TX
> cell to a node (pledge) who wants to join the network. Thanks to this, a
> join
> process can be done with the autonomous cells of the JP and pledge. These
> autonomous cells make the network formation faster.
>
> However, from the view point of security, it'd be better to avoid
> installing any
> state for an unauthenticated/unauthorized node. In this particular case,
> the
> join proxy shouldn't schedule the autonomous cell to the pledge.
>
> We would need some discussion in "Security Considerations" section if we
> allow
> JPs to install autonomous TX cells to their pledges.
>

I fully agree this needs further discussion. In the worst case we might
have to move back the join traffic to the minimal cell, yes.


>
> * question: why do we need a separate slotframe for MSF?
>
> MSF avoids using slot offset 0 for its autonomous cells and its dedicated
> cells
> anyway. The length of Slotframe 1 for MSF is the same as Slotframe 0
>
> draft> (Section 3)
> draft> As detailed in Section 2.2 of [I-D.ietf-6tisch-6top-protocol], MSF
> MUST
> draft> schedule cells from Slotframe 1, while Slotframe 0 is used for
> traffic
> draft> defined in the Minimal 6TiSCH Configuration.
> draft> (...)
> draft> The first time offset is skipped to avoid colliding with the
> minimal cell
> draft> in Slotframe 0.
>
> draft> 8.  Rules for CellList
> draft>
> draft> (snip)
> draft>    o  The slotOffset value of any cell in the CellList MUST NOT be
> the
> draft>       same as the slotOffset of the minimal cell (slotOffset=0).
>

The draft currently says the slotframes SHOULD (not MUST) have the same
value.
The rationale for allowing different value is to have more flexible
dimensioning, and better adjust to more broadcast-intensive or
unicast-intensive networks.


>
> * question: parameters for SAX
>
> What values are used for L and R in SAX? It'd be nice to have an example
> or a
> test vector in the draft in order to validate a SAX implementation used for
> MSF. This is critical for interoperability.
>

Thanks for pointing out, will fix in next version.


>
> * minor comment 1
>
> draft> (Section 1)
> draft> The end state of the join process is that the node is synchronized
> to the
> draft> network, has mutually authenticated to the network, has identified a
> draft> preferred routing parent, has scheduled one default unicast cell
> to/from
> draft> each of its neighbors.
>
> The latter part of this sentence seems not to be accurate.
>
> After the join process, the node (pledge) has the following cells:
>
> - the minimal cell defined by RFC 8180
> - one autonomous RX cell
> - autonomous TX cells to its JP
>
> This doesn't fit "one default unicast cell to/from each of its neighbors."
>

Got it, thanks.


>
> * minor comment 2
>
> draft> (Section 2)
> draft> A node implementing MSF MUST implement the Minimal 6TiSCH
> Configuration
> draft> [RFC8180], which defines the "minimal cell", a single shared cell
> draft> providing minimal connectivity between the nodes in the network.
>
> 'MUST' here sounds too strong... Some may want to use MSF with a base
> schedule
> other than one defined RFC 8180 with full understands on implications by
> not
> following RFC 8180. Then, I'd propose 'SHOULD'.
>
> By the way, I'm not sure whether we can specify 'MUST implement' to a BCP
> document or not.
>

MSF assumes the presence of the minimal cell, but might be able to run
without the full RFC8180.
Happy to hear what others think


>
> * minor comment 3
>
> draft> (Section 2)
> draft> 2.  DODAG Information Objects (DIOs), defined by [RFC6550].  These
> are
> draft> broadcast frames.
>
> A DIO can be sent in a unicast frame.
>
> rfc6550> 8.3.  DIO Transmission
> rfc6550> (...)
> rfc6550> When a node receives a unicast DIS message with a Solicited
> Information
> rfc6550> option and matches the predicates of that Solicited Information
> option,
> rfc6550> it MUST unicast a DIO to the sender in response.
>
> So, that sentence could be...
>
>        2.  DODAG Information Objects (DIOs), defined by [RFC6550].
> Broadcasted
>        DIOs are sent over the minimal cell.
>
> Or, it would be fine to say just "broadcast frames are (always) sent in the
> minimal cell", although there is text which doesn't agree with this
> proposal:
>
> draft> 5.1.  Adapting to Traffic
> draft> (...)
> draft> Autonomous cells are used indistinguishably together with dedicated
> draft> cells, for broadcast or unicast traffic with the target neighbor.
>

Agree, I think we should simply send all broadcast to the minimal cell.


>
> * minor comment 4
>
> The following part seems to me an implementation-specific optimization.
> And it
> is beyond of the scope of this draft. Basically, this idea is about how to
> use
> the minimal cell efficiently; it's not directly related to how to use cells
> scheduled by MSF.
>
> draft> (Section 2)
> draft> Because the minimal cell is SHARED, the back-off algorithm defined
> in
> draft> [IEEE802154-2015] is used to resolve collisions.  To ensure there is
> draft> enough bandwidth available on the minimal cell, a node implementing
> MSF
> draft> SHOULD enforce the following rules for broadcast frames:
> draft> ...
>

I'll let other co-authors answer on that one


>
> * minor comment 5
>
> The phrase of "After joining" in the explanation of step 3 should be "After
> deciding a JP to use"? At this step 3, "joining" is not done.
>
> draft> (Section 4)
> draft> 4.4.  Step 3 - Setting up Autonomous Unicast Cells
> draft>
> draft>    After joining, nodes MUST set up their autonomous unicast cells,
> as
> draft>    described in Section 3.  This enables unicast communication in
> draft>    Slotframe 1, until more cells are added with 6P as defined in
> draft>    Section 5.
> draft>
> draft> 4.5.  Step 4 - Join Request/Response
>

Good catch, will fix in next version


>
> * minor comment 6
>
> What is Section 10, "Rule for Ordering Cells", for...? Why do we need this
> section?
>

I'll let other co-authors answer


>
> That's all!
>

Thanks a lot Yatch!
Simon


>
> Best,
> Yatch
>
> _______________________________________________
> 6tisch mailing list
> 6tisch@ietf.org
> https://www.ietf.org/mailman/listinfo/6tisch
>