Re: [Roll] do capabilities need to understood, can they be added?
"Pascal Thubert (pthubert)" <pthubert@cisco.com> Mon, 02 September 2019 09:44 UTC
Return-Path: <pthubert@cisco.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 340FB1200CE for <roll@ietfa.amsl.com>; Mon, 2 Sep 2019 02:44:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.501
X-Spam-Level:
X-Spam-Status: No, score=-14.501 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, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com header.b=C+4/05hC; dkim=pass (1024-bit key) header.d=cisco.onmicrosoft.com header.b=SdTkqAGd
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 ch58Ghg6z0sV for <roll@ietfa.amsl.com>; Mon, 2 Sep 2019 02:44:05 -0700 (PDT)
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 9A91B120073 for <roll@ietf.org>; Mon, 2 Sep 2019 02:44:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=6515; q=dns/txt; s=iport; t=1567417445; x=1568627045; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=ccrqluOErihz05QQzcR7OGqk88Ytn892A7knuhS1/+E=; b=C+4/05hCDpZHVBBAkiQjQ5waBExW9kNSuAoWK5507s5vawgfxeNs916X 8AbfcR/bv/QcpLuqNFtv+Yk42pEKdq/rrR+TvXkCnkZWEbhq1WMQ/bw7l QvZ+LWRvF5ntGNGU6q5VJrnDZQ54f/6GtRLFpZ7lTgDo6Z8Mgsmx4Yyus w=;
IronPort-PHdr: 9a23:RHwFixA6oBzZTNR0eiEbUyQJPHJ1sqjoPgMT9pssgq5PdaLm5Zn5IUjD/qs03kTRU9Dd7PRJw6rNvqbsVHZIwK7JsWtKMfkuHwQAld1QmgUhBMCfDkiuNOLqciY3BthqX15+9Hb9Ok9QS47z
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0BZAQC+42xd/5pdJa1lHAEBAQQBAQcEAQGBVQUBAQsBgURQA21WIAQLKodoA4p1TYIPkAqFYYIBgS4UgRADVAkBAQEMAQEYCwoCAQGBS4J0AoJrIzYHDgIDCAEBBAEBAQIBBgRthS4MhUoBAQEDAQEBECgGAQElBwwECwIBCBgeECcLJQIEEwgagwGBagMODwECDJ97AoE4iGGCJYJ8AQEFhRQYghYDBoE0AYYogVqDdRiBQD+BEUaBTlAuPoJhAQGBKTqDO4ImjH+QGo8ECoIfhnOFCYIUhmaCM4c2ilqEI48thj6QVAIEAgQFAg4BAQWBVwkogVhwFTuCbIJCDBeDT4UUhT9zgSmMIQWCTwEB
X-IronPort-AV: E=Sophos;i="5.64,457,1559520000"; d="scan'208";a="318443209"
Received: from rcdn-core-3.cisco.com ([173.37.93.154]) by alln-iport-4.cisco.com with ESMTP/TLS/DHE-RSA-SEED-SHA; 02 Sep 2019 09:44:04 +0000
Received: from XCH-RCD-005.cisco.com (xch-rcd-005.cisco.com [173.37.102.15]) by rcdn-core-3.cisco.com (8.15.2/8.15.2) with ESMTPS id x829i4ll023709 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL) for <roll@ietf.org>; Mon, 2 Sep 2019 09:44:04 GMT
Received: from xhs-rcd-001.cisco.com (173.37.227.246) by XCH-RCD-005.cisco.com (173.37.102.15) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Mon, 2 Sep 2019 04:44:03 -0500
Received: from xhs-rcd-003.cisco.com (173.37.227.248) by xhs-rcd-001.cisco.com (173.37.227.246) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Mon, 2 Sep 2019 04:44:02 -0500
Received: from NAM02-CY1-obe.outbound.protection.outlook.com (72.163.14.9) by xhs-rcd-003.cisco.com (173.37.227.248) with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Mon, 2 Sep 2019 04:44:02 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nXVX9fRo0fdQzB2ldvmaj1aXQFeXXAWrwHSFjVhtpwQ1jrkcdjxKYiH4EJx+b/QegLqTaIw8t/iq1A6CCBDNX95Lk/STlniUjNlzTAjpZBWHdHp7kLp8ynPIShHrzxTG6uztFIC7AGd2uLbBmFocVj98D2X3H4ZQfj+QaXwoFuQ2prcDUZ8qRnX7QmNhe3e7w3X/KULLNRVgR6Q3js42fx0pbJpiLJuCrZGWX3USJL/Ukf27TKAxtxbG6P6V3ra2EA+KlCIjnGGZha2GhP5iIGQNa7czSr0Ww4moytg7rNTN0HJJQ7KOL1tvrMd3ec29U0JAUxVl4n6wrf+PrmQDFg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gMmKECldgl0TVV+DlzE2RS+nAkZOwAlDfeSdn5xdvDA=; b=Es+qFidyIlkuYzOtvjcYd0t1+GhIwLbFJFB2txzxyFPYYw9Y7KS6TU0HtlNyk3l/JRcgTMrDbf/w4ZjBTt7HcP0A9FQx16AEoZnzeVu9iPac/T/abUpGo7AwEkggDcHLgtuvTS26gPlL4gcBC/Sle/kojojV8LAzwYADyuYQTM1irqEIbcILBCAyj+92gqhXmRkn5MUoGWg1JfiSsF8UXcNKYKAhEtXifQ4Jlb+f2AZSUgBDHNJ4dsFNzgRj2loC/eM3K+/v5YhVHnbqs+k8O6y1+b4RNINlNDBqXHCJB+nkOONKink51lqJgjue4EujBrCeGt2OteYjpSbguYhJeA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cisco.com; dmarc=pass action=none header.from=cisco.com; dkim=pass header.d=cisco.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.onmicrosoft.com; s=selector2-cisco-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gMmKECldgl0TVV+DlzE2RS+nAkZOwAlDfeSdn5xdvDA=; b=SdTkqAGdTuZZIwxtPfGllv8EGlIAVEy/GDa1aP6eNjtIt7fOnyzyLvDO/om+kihQVoZ66boydFTuDDtAzZTZmYfS0SceYVb+4EFXWan3oe7viWQAr/a5gMjsrfkZl3F76tHbYDunCh1gb/ouvLpKALfNoJ0qcvji6LiT6+qvwUw=
Received: from MN2PR11MB3565.namprd11.prod.outlook.com (20.178.250.159) by MN2PR11MB3663.namprd11.prod.outlook.com (20.178.253.96) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2220.19; Mon, 2 Sep 2019 09:44:01 +0000
Received: from MN2PR11MB3565.namprd11.prod.outlook.com ([fe80::89cf:9d:8a75:266e]) by MN2PR11MB3565.namprd11.prod.outlook.com ([fe80::89cf:9d:8a75:266e%3]) with mapi id 15.20.2220.022; Mon, 2 Sep 2019 09:44:01 +0000
From: "Pascal Thubert (pthubert)" <pthubert@cisco.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: AQHVYXKtYveRbP8T+0C8nSsNeGeMcA==
Date: Mon, 02 Sep 2019 09:44:00 +0000
Deferred-Delivery: Mon, 2 Sep 2019 09:43:04 +0000
Message-ID: <MN2PR11MB3565DED578369DCA9B1BE4E4D8BE0@MN2PR11MB3565.namprd11.prod.outlook.com>
References: <14914.1566593238@dooku.sandelman.ca> <982B626E107E334DBE601D979F31785C5DFB7878@BLREML503-MBX.china.huawei.com> <22118.1566866805@localhost> <982B626E107E334DBE601D979F31785C5DFB9417@BLREML503-MBX.china.huawei.com>
In-Reply-To: <982B626E107E334DBE601D979F31785C5DFB9417@BLREML503-MBX.china.huawei.com>
Accept-Language: fr-FR, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=pthubert@cisco.com;
x-originating-ip: [2001:420:c0c0:1002::9c]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: e15fc4de-6d53-43c9-a6bf-08d72f8a1622
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600166)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:MN2PR11MB3663;
x-ms-traffictypediagnostic: MN2PR11MB3663:
x-ms-exchange-purlcount: 2
x-microsoft-antispam-prvs: <MN2PR11MB3663F3640B4DB7441F2E1CFED8BE0@MN2PR11MB3663.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-forefront-prvs: 01480965DA
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(136003)(396003)(366004)(376002)(39860400002)(346002)(199004)(189003)(71190400001)(966005)(8676002)(229853002)(6246003)(81166006)(9686003)(55016002)(8936002)(6306002)(305945005)(52536014)(5660300002)(14454004)(478600001)(74316002)(6436002)(81156014)(6916009)(66556008)(25786009)(53936002)(33656002)(316002)(256004)(66946007)(7696005)(446003)(46003)(14444005)(2906002)(486006)(86362001)(476003)(76116006)(102836004)(99286004)(186003)(6116002)(6506007)(7736002)(71200400001)(76176011)(64756008)(66446008)(11346002)(66476007); DIR:OUT; SFP:1101; SCL:1; SRVR:MN2PR11MB3663; H:MN2PR11MB3565.namprd11.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: cisco.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: LWpQY8NJXEYRBVKrdKcy/XUBIy+OilTiPXR5npii+mC2IcIWny1RzAQoGWkkJsM3uUaRuCheym2TEKkdByFLwcik7eSJl410qrPbWH9g5cjAkeeHHlhIs/r739ReDdIKJVIlb4eufw6mm2/Nvq1KA5ZCLGc0lqbOgepU1qPpPFti4t4V4gVBoujxyxZc74nnBeLDnfDhsaD4wCD90Ypwj2v5HGil1vv/qYydYz7Mefx0D/YYTtXaIcZku61N7FGqjvmv2uDBGCf6JLsQxn1cFrmIF8tWzuajiU55ZkFFbzHtzujxE8e4KtsZ2LewDRiqBtW7IjsBnYMPLE3GvB++BFFMcQZI0MWxsoqKWWWDeYjuj77hWySIDBTSvfwQNOZA3PqkJI+l+qwuOopu7fbGlqRY8vvyn3y55NmJttAQY5g=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: e15fc4de-6d53-43c9-a6bf-08d72f8a1622
X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Sep 2019 09:44:01.8876 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5ae1af62-9505-4097-a69a-c1553ef7840e
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: ftJfjzg3EVF26yNz/OZN+bZJogf/sT7GLU6s4jkXmdsYkNDd6JzYNzNTlR6+b0X/AQtWPK+LDUTT5s5UmsCO/w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB3663
X-OriginatorOrg: cisco.com
X-Outbound-SMTP-Client: 173.37.102.15, xch-rcd-005.cisco.com
X-Outbound-Node: rcdn-core-3.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/roll/EtHkWdhMbcbmRQP_ACcFT3e8J_8>
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: Mon, 02 Sep 2019 09:44:08 -0000
Dear all: Seems to me that sometimes the capability of the node is something that only the root cares about. At least that's true when the root needs to know if all nodes support a capability. It wants to flood a query and gather the responses from all. Missing queries would mean a unicast retry I guess. At other times it might be something that the parent cares about. In that case it asks one or all of its children. So we're after a capability exchange flow that is unicast or multicast, with a unicast response. Either from parent to child or from root to any. The flow would be independent of the storing vs. non-storing MOP. We do not really have a flow like that in RPL. It's akin to a software update, when the root wishes to now if all nodes have received the full image. The DIO could be stretched to convey the ask to a group, but it's hard to make it reliable. The DAO even less OK since it carries destination not node information. As of today the root does not really know if multiple addresses are on a same node. All in all it seems that we are after something that is needed by RPL but on the side of the current protocol. I'm not too sure that we should overload the current messages for this. Rather, we may build new objects for Nodes information and capability. Like a unicast or multicast NIS (Node Info Solicitation) and a NAO (Node Advertisement Object). We'd design operations that are independent of the current MOPs. Note that we could use local broadcast NAO to discover siblings and siblings siblings, something P DAO needs anyway. Please see below > 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. > Would you encode capabilities in a bit array? I'm interesting in signaling whether we can live without a capability or if it the node must become leaf if it does not have it. All the best Pascal > -- > Michael Richardson <mcr+IETF@sandelman.ca>, Sandelman Software Works - > = IPv6 IoT consulting =- > > _______________________________________________ > Roll mailing list > Roll@ietf.org > https://www.ietf.org/mailman/listinfo/roll
- Re: [Roll] comments on mopex-cap-00 Michael Richardson
- [Roll] do capabilities need to understood, can th… Michael Richardson
- [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] 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)