Re: [Roll] do capabilities need to understood, can they be added?
Rahul Arvind Jadhav <rahul.jadhav@huawei.com> Tue, 27 August 2019 13:18 UTC
Return-Path: <rahul.jadhav@huawei.com>
X-Original-To: roll@ietfa.amsl.com
Delivered-To: roll@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A3D8A120073 for <roll@ietfa.amsl.com>; Tue, 27 Aug 2019 06:18:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, 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 oaczmE21hM4R for <roll@ietfa.amsl.com>; Tue, 27 Aug 2019 06:18:34 -0700 (PDT)
Received: from huawei.com (lhrrgout.huawei.com [185.176.76.210]) (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 7D27612003F for <roll@ietf.org>; Tue, 27 Aug 2019 06:18:34 -0700 (PDT)
Received: from lhreml704-cah.china.huawei.com (unknown [172.18.7.106]) by Forcepoint Email with ESMTP id 4016478BFF88F061482F for <roll@ietf.org>; Tue, 27 Aug 2019 14:18:32 +0100 (IST)
Received: from lhreml720-chm.china.huawei.com (10.201.108.71) by lhreml704-cah.china.huawei.com (10.201.108.45) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 27 Aug 2019 14:18:31 +0100
Received: from lhreml720-chm.china.huawei.com (10.201.108.71) by lhreml720-chm.china.huawei.com (10.201.108.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 27 Aug 2019 14:18:31 +0100
Received: from BLREML703-CAH.china.huawei.com (10.20.4.172) by lhreml720-chm.china.huawei.com (10.201.108.71) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA) id 15.1.1713.5 via Frontend Transport; Tue, 27 Aug 2019 14:18:31 +0100
Received: from BLREML503-MBX.china.huawei.com ([169.254.9.145]) by blreml703-cah.china.huawei.com ([::1]) with mapi id 14.03.0439.000; Tue, 27 Aug 2019 18:48:23 +0530
From: Rahul Arvind Jadhav <rahul.jadhav@huawei.com>
To: Routing Over Low power and Lossy networks <roll@ietf.org>
Thread-Topic: [Roll] do capabilities need to understood, can they be added?
Thread-Index: AQHVXHD2ayN5rouNOkKTBdc8Jbrn/qcO3hNw
Date: Tue, 27 Aug 2019 13:18:23 +0000
Message-ID: <982B626E107E334DBE601D979F31785C5DFB9417@BLREML503-MBX.china.huawei.com>
References: <14914.1566593238@dooku.sandelman.ca> <982B626E107E334DBE601D979F31785C5DFB7878@BLREML503-MBX.china.huawei.com> <22118.1566866805@localhost>
In-Reply-To: <22118.1566866805@localhost>
Accept-Language: en-IN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.61.109.81]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/roll/J5GsdU0VhzAsn8hHnxbAcPhboM0>
Subject: Re: [Roll] do capabilities need to understood, can they be added?
X-BeenThere: roll@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Routing Over Low power and Lossy networks <roll.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/roll>, <mailto:roll-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/roll/>
List-Post: <mailto:roll@ietf.org>
List-Help: <mailto:roll-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/roll>, <mailto:roll-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 27 Aug 2019 13:18:37 -0000
mcr> Are they individualized, or does every node in the LLN have to support mcr> a capability before it can be used? Rahul Arvind Jadhav <rahul.jadhav@huawei.com> wrote: rj> Nice point. I haven't thought about this in detail. In non-storing rj> MOP, it may not be required that all the nodes support capabilities rj> but in storing MOP, every 6LR needs to add the cap (if present) of rj> the downstream child, thus requiring every node to support it. This rj> definitely needs handling in the draft. [Ref: rj> https://github.com/roll-wg/MOPex-capabilities/issues/1 I see: 1) the root announces a capability. 6LRs that understand it may use the new capability unilaterally if they understand it, and see a need for it. Nodes that do not understand the new capability are not affected. This could be a control plane thing, or a data plane thing. [RJ] The problem may be in the other direction, .. In storing MOP, how should a 6LR which does not understand capability treat a DAO containing capability? Also how should a 6LR treat an unknown option in general? 6550 mentions how to treat unknown RPL code but there is no handling for unknown option in DIO/DAO. Is there? I searched and could not find. Most of the existing implementations just ignore what they don't understand. 2) the root announces support for capability that it wishes to enable, in order for it be used, every node must support it. If every DAO from every node supports the capability, then the root announces that it is turned on. This in effect is a two-pass system, requiring either two capability bits. It might be that it is better to encode these two bits are three values (plus 00-not supported). [RJ] Another scenario could be that Root announces support for an optional capability. The 6LN just needs to know whether it could make use of this capability of the root to do something. It may not need to reply back to the root saying I see it and I support it. Also should we be using two capability bits or we could use the info on whether the bit is set in DIO/DAO to infer the direction. 3) any 6LR may announce a capability to it's children that it received from it's parent, if it understands that capability. If it does not, then it MUST clear the capability. This can be a unilateral capability (like 1), or one that has to be confirmed (like 2). So this is really 3A and 3B. [RJ] I get 3A .. but do we really need 3B. I mean if the node also needs to indicate that it also supports the same capability to the root then it can set the same bit in the DAO and send it back ... Thus working in both directions. It may not be required that capabilities be handshaked in both directions mandatorily. For e.g., root may indicate the capability that it has access to 6BBR and that unaware leaves could register through 6LRs. Thus 6LRs could proxy the NS (EARO) and other relevant messages. In this case, is it needed that 6LR reply back to the root saying it supports unaware leaves? There might be another example which requires 6LRs/6LNs to indicate in the reply that it supports the feature asked by root using the same cap bit in DAO. The DIO/DAO decides the direction but the bit can be the same. 4) any 6LR may announce a capability to it's children, even if it did not receive it from a parent. The capability is not to be repeated by the children (regardless of whether they understand it), unless they also wish to enable it. [RJ] agree I therefore see several issues to resolve. For capabilities that a node understands, it can know which type of capability it is. For a capability that is unknown, if the behaviour is other than "set to zero", then we need to tell the node what kind of capability it is, and how it is encoded. Counting above, I see (1)-available, (2)-query, (2)-enable, (3)-available, (3)-query, (3)-enable, (4)-available. Conveniently, 7 things, plus all zeros. We could encode capabilities in three bits, so the behaviour would be part of the encoded. -- Michael Richardson <mcr+IETF@sandelman.ca>, Sandelman Software Works -= IPv6 IoT consulting =-
- [Roll] comments on mopex-cap-00 Michael Richardson
- Re: [Roll] comments on mopex-cap-00 Rahul Arvind Jadhav
- Re: [Roll] comments on mopex-cap-00 Pascal Thubert (pthubert)
- Re: [Roll] comments on mopex-cap-00 Michael Richardson
- [Roll] do capabilities need to understood, can th… Michael Richardson
- Re: [Roll] do capabilities need to understood, ca… Rahul Arvind Jadhav
- Re: [Roll] do capabilities need to understood, ca… Michael Richardson
- Re: [Roll] do capabilities need to understood, ca… Pascal Thubert (pthubert)
- Re: [Roll] do capabilities need to understood, ca… Pascal Thubert (pthubert)
- Re: [Roll] do capabilities need to understood, ca… Michael Richardson
- Re: [Roll] do capabilities need to understood, ca… Michael Richardson
- Re: [Roll] do capabilities need to understood, ca… Pascal Thubert (pthubert)