Re: [Roll] unaware leaves - graceful shutdown of attached-6LR

Rahul Jadhav <nyrahul@outlook.com> Tue, 14 April 2020 12:12 UTC

Return-Path: <nyrahul@outlook.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 BD2B03A0D4A for <roll@ietfa.amsl.com>; Tue, 14 Apr 2020 05:12:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.099 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=outlook.com
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 SpNSX7nCrXQR for <roll@ietfa.amsl.com>; Tue, 14 Apr 2020 05:12:05 -0700 (PDT)
Received: from APC01-SG2-obe.outbound.protection.outlook.com (mail-oln040092253091.outbound.protection.outlook.com [40.92.253.91]) (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 578183A0D48 for <roll@ietf.org>; Tue, 14 Apr 2020 05:12:04 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=afX17O0JP3xty1GnBLqz72frxte1iLGhCLs87Xhp7/ibfcWvBEExUr46mW3aK4iaJJNegAW450Hx9GGj+sJ2wZhcwssa1IKEW68mTnNO6tq+ReUJETBWLg3QmNEyYNME3W6J7KqGb20Xs3A44AXi6cxVaIh21iwcm1TEgWUxt8gpr0Fbb5tjoVKoY6XIexWq6xmv984MMvuPlz1EZi9ypm3sLAlycB8uuG0Ip9iSkXywQo2K25OmlTwLirIoLKgOKshUpv6W47yZKgDUE44YAHqF8lfsIOAE1AQXledXHWrDZ/iBCEBAEvBYftJlFdcEc78KHrSfBo1gmioAFHbK4Q==
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=Av8KvpGWbOYMImXFUkQt+cfpSlu+u6zaI2XdMQarhq4=; b=dWtD58WWvRkSitvMzweYwXRScjLl6k25uP6omOb2vW8RxxaSvbYxG8fGxLloRDhBAm6ojbAESts640roWLTHXx1DfDX0uqhiqREPD57u87T93vWnJ4CJkk7yQ5NH+m3Pj54crKlboBmaYLXvXM0DhnuqAOsHPDdDINN/zSFfZtH1ZGf703gDxN9XZkBexCaFbcEtTro0r44vhAT3dirE+E2qRTwfoBpmcWRvglpyKGn9m2Qa1dNC3Bk51sEkgKK/DeHGDYknkx/eH+thbD4+jdKvqZrPHkkn17IO+zKAYymwW6o30HR4S1Zcpzq3Abtaon+TjhVTKBI9rgmdDOujpw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Av8KvpGWbOYMImXFUkQt+cfpSlu+u6zaI2XdMQarhq4=; b=mW2h68L+rvVHP+ASUaXMfptJPE56YghQpz7SOXf77xBX6FwHR6eiCDEnzJ7OqD2p/ICJDC/2R9Dk0qzvqmUetlcVr4p0XZGTDJUMyOMUNhe7KZ29Hsoz/T1uNN86wjW2GZYOaVe8J9bAhdXXGi538m3I2x1yIXCqtlofDmQf+m9+ZlkRebcxEQykOjoLkSPA20k6QSRPBPAsXzsT/yr8yUqawvVe1vgY0ehdkjZadXS7vN2jwCTpurYRVCauHefb6O6BOWxwniJleFJWEk/1YcJT+6LvLrLj7/fBQPTQb5CxZ5qcq8Bt4i0aDjydU3ZI0ut46kbsRSTf2q546qm8EQ==
Received: from HK2APC01FT060.eop-APC01.prod.protection.outlook.com (2a01:111:e400:7ebc::4b) by HK2APC01HT223.eop-APC01.prod.protection.outlook.com (2a01:111:e400:7ebc::427) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.15; Tue, 14 Apr 2020 12:12:01 +0000
Received: from BM1PR01MB4020.INDPRD01.PROD.OUTLOOK.COM (10.152.248.57) by HK2APC01FT060.mail.protection.outlook.com (10.152.249.160) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.15 via Frontend Transport; Tue, 14 Apr 2020 12:12:00 +0000
Received: from BM1PR01MB4020.INDPRD01.PROD.OUTLOOK.COM ([fe80::a1ff:5c53:dc37:c050]) by BM1PR01MB4020.INDPRD01.PROD.OUTLOOK.COM ([fe80::a1ff:5c53:dc37:c050%6]) with mapi id 15.20.2900.028; Tue, 14 Apr 2020 12:11:59 +0000
From: Rahul Jadhav <nyrahul@outlook.com>
To: Routing Over Low power and Lossy networks <roll@ietf.org>
Thread-Topic: [Roll] unaware leaves - graceful shutdown of attached-6LR
Thread-Index: AQHWEZQvbgNuDRZQpEGmjIYHLkz6MKh3KT0IgAC0VwSAAFNOAIAAGVODgAAZELCAABxgnA==
Date: Tue, 14 Apr 2020 12:11:59 +0000
Message-ID: <BM1PR01MB4020EF7E08144EB39D1F9433A9DA0@BM1PR01MB4020.INDPRD01.PROD.OUTLOOK.COM>
References: <BM1PR01MB4020A5C1C43CDC700477C39EA9DA0@BM1PR01MB4020.INDPRD01.PROD.OUTLOOK.COM>, <MN2PR11MB3565E4FB6ECA0B86327478FCD8DA0@MN2PR11MB3565.namprd11.prod.outlook.com> <BM1PR01MB4020DBE40E76D2EAE97C9611A9DA0@BM1PR01MB4020.INDPRD01.PROD.OUTLOOK.COM>, <MN2PR11MB35653AEC812269C1BF5D8CC4D8DA0@MN2PR11MB3565.namprd11.prod.outlook.com>
In-Reply-To: <MN2PR11MB35653AEC812269C1BF5D8CC4D8DA0@MN2PR11MB3565.namprd11.prod.outlook.com>
Accept-Language: en-IN, en-US
Content-Language: en-IN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-incomingtopheadermarker: OriginalChecksum:6F994E6203BA7BE4CA871DF13D0178A091D2031EB311BF2FC77D1B6FE629B35A; UpperCasedChecksum:7868238F70C1261EB298157E98383251F5B7B6FE5CAA491A5576BEE20B1A63E9; SizeAsReceived:7200; Count:44
x-tmn: [yZ5pVFNGfXzyIEIeBx9SPboFKxetlCvZ]
x-ms-publictraffictype: Email
x-incomingheadercount: 44
x-eopattributedmessage: 0
x-ms-office365-filtering-correlation-id: 45f798d7-fa9d-4f48-d202-08d7e06d08c4
x-ms-traffictypediagnostic: HK2APC01HT223:
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: j+V+iWPrVz1eL7sRzkUfbNrp8LK0ax8jnr3MNTDGbr9rc7mCXlZWBIua0gYypS1zlrroL706g8OHiEXrS7YArfinFuOFPFueTLfzqyO+MJAksTYlKT3eNJGmR5xz31Vz8x8L71GRowQSF0yerC16OP0pByj2uNAL6qxmovuUiEnhUoXcYlPdmQIr6C1cYffUfKUj4S/jLeGTXOPV6lMsTV74V589S9PccrVyEjGYhbk=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:0; SRV:; IPV:NLI; SFV:NSPM; H:BM1PR01MB4020.INDPRD01.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFTY:; SFS:; DIR:OUT; SFP:1901;
x-ms-exchange-antispam-messagedata: U+ooVBFQscj6ShIorZQNzdktMNPSD/JMfZAtKAGurFxzwQR/LXycHr4phRKw89DXGkh96oulplsdpMRiUuQ2yS+BZBcWkLt60wmhNjjVeqYcJLywIb87zJ/nv+evCUGxNHxfQX0bX1VD5DITQfAebA==
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_BM1PR01MB4020EF7E08144EB39D1F9433A9DA0BM1PR01MB4020INDP_"
MIME-Version: 1.0
X-OriginatorOrg: outlook.com
X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000
X-MS-Exchange-CrossTenant-Network-Message-Id: 45f798d7-fa9d-4f48-d202-08d7e06d08c4
X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000
X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Apr 2020 12:11:59.8348 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Internet
X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HK2APC01HT223
Archived-At: <https://mailarchive.ietf.org/arch/msg/roll/cyks1LQxnRyua7dHGxL93__nco8>
Subject: Re: [Roll] unaware leaves - graceful shutdown of attached-6LR
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, 14 Apr 2020 12:12:08 -0000

Neighbor Cache full seems the only code that is applicable in this context.

However, can RA carry an EARO? RFC 8505/6775 mentions ARO/EARO only in context to NS/NA.


________________________________
From: Roll <roll-bounces@ietf.org> on behalf of Pascal Thubert (pthubert) <pthubert=40cisco.com@dmarc.ietf.org>
Sent: 14 April 2020 07:34 PM
To: Routing Over Low power and Lossy networks <roll@ietf.org>
Subject: Re: [Roll] unaware leaves - graceful shutdown of attached-6LR


Hello Rahul



I agree, our proxy mechanism doesn’t allow to change the period in run time by the 6LBR. Note that the 6LBR or the Root could send an EDAC back to the 6LR asynchronously. There’ s not much text on that in the existing specs but it’s doable.



The multicast final RA is the normal behavior. Unicasting it is possible and more reliable. That was true already so I agree we do not need to mandate anything new here. It is something that we could have said in RFC 8505, nothing specific to RULs.



For the reason why the 6LR would on its own remove just one BCE, I only see the cache full. What else do you have in mind?



Cheers,



Pascal



From: Roll <roll-bounces@ietf.org> On Behalf Of Rahul Jadhav
Sent: mardi 14 avril 2020 11:44
To: Routing Over Low power and Lossy networks <roll@ietf.org>
Subject: Re: [Roll] unaware leaves - graceful shutdown of attached-6LR



Thanks for the detailed response. Please find my response inline.



One key point you mentioned is that EARO parameters are managed by 6LBR. The initial registration happens using EDAR/EDAC through 6LBR and using EDAC(EARO-lifetime) the 6LBR can control the lifetime in the NA(EARO).

But during lifetime refresh, the keepalive NS sends a lifetime and the 6LR replies directly using NA using the same lifetime. Won't this lifetime create problems? Is it expected that the 6LR remembers the lifetime sent from 6LBR and uses it in the subsequent refresh NA(EARO) reply?



To instantiate this point, consider Figure 10 which shows that DAO is created from NS(EARO) and the lifetime of EARO is converted to lifetime in DAO-transit option. This DAO results in anonymous EDAR from Root to 6LBR and a response EDAC. The response EDAC status value is used in the DAO-ACK but the (possibly updated) lifetime from EDAC is dropped.



________________________________

From: Roll <roll-bounces@ietf.org<mailto:roll-bounces@ietf.org>> on behalf of Pascal Thubert (pthubert) <pthubert=40cisco.com@dmarc.ietf.org<mailto:pthubert=40cisco.com@dmarc.ietf.org>>
Sent: 14 April 2020 04:25 PM
To: Routing Over Low power and Lossy networks <roll@ietf.org<mailto:roll@ietf.org>>
Subject: Re: [Roll] unaware leaves - graceful shutdown of attached-6LR



Hello Rahul



For the lifetime I do not necessarily agree with your wording. My reading is that the registration lifetime is requested by the 6LN and granted by the 6LBR. What the 6LBR returns might be less than what the 6LN requested. This might not be very explicit in RFC 6775 but “5.5.2.  Processing a Neighbor Advertisement” says

“

   The host saves the Registration Lifetime from the ARO

   for use to trigger a new NS well before the lifetime expires.

”

Which tells you that the network has the ultimate control, which is good in a managed network.



[RJ] This makes sense to me now.



Then “8.2.3.  6LR Sending a Duplicate Address Request” says

“

      The EUI-64 and Registration Lifetime are copied from the ARO

      received from the host.

”

Which tells you that the 6LR is just an transmission but has no say in the story.



Normally:

- If the 6LR stops being a router at all the signal is a final RA. We could actually mandate to unicast it to all registered nodes.

- If the 6LR accepts a registration it should keep it as long as it is a router so ‘removed’ comes from above.

- if the 6LR keeps the registration but stops being a router, then signal is the ‘R’ flag only.



So we are talking about a unexpected case where the 6LR would drop an NCE on its own but continue being a router, IOW break its contract with the 6LN.



I see the value of using status “Removed” there. The problem I have here is to clarify what comes from the 6LBR which means that the address is not usable at all vs what comes from the 6LR, which means that this 6LR is not useable, but the 6LN can try with another 6LR. I thought the lifetime helped but on second thought it does not. “Removed” and lifetime are both 6LBR decisions.



If that’s a problem with the 6LR only, we need to signal that. RFC 8505 helps us there. Section “5.7.  Maintaining the Registration States” indicates that

“

   space is exhausted.  In that situation, the EARO is returned in an NA

   message with a status code of "Neighbor Cache Full" (Status 2; see

   [RFC6775<https://tools.ietf.org/html/rfc6775>] and Table 1), and the Registering Node may attempt to

   register to another 6LR.



   If the registry in the 6LBR is full, then the 6LBR cannot decide

   whether a registration for a new address is a duplicate.  In that

   case, the 6LBR replies to an EDAR message with an EDAC message that

   carries a new status code indicating "6LBR Registry Saturated"

   (Table 1).  Note: This code is used by 6LBRs instead of "Neighbor

   Cache Full" when responding to a Duplicate Address message exchange

   and is passed on to the Registering Node by the 6LR.  There is no

   point in the node retrying this registration via another 6LR, since

   the problem is network-wide.  The node may abandon that address,

   de-register other addresses first to make room, or keep the address

   "tentative" [RFC4861<https://tools.ietf.org/html/rfc4861>] and retry later.





“



So I’d suggest that we mandate unicast final RA if the router goes away, and if the router just drops that NCE then use "Neighbor Cache Full" in the NA.

Works?



[RJ] So essentially NA(EARO) is strictly controlled by the 6LBR. Using 'Neighbor Cache Full' will tell the 6LN to move to other 6LR, and this should work, even though the status code does represent the appropriate reason.

I understand mandating final RA but why only unicast? Can't a multicast final RA be sent by a 6LR who is about to go down and has several RULs connected via it?



Note: The 6BBR draft uses it for the 6LBR to clean up a state in the old 6BBR when registering to a new 6BBR. As a second thought it appears that ‘moved’ would be better. That’s what 6BBRs do with one another when it’s a different 6LBR. I’ll fix that unless someone raises an issue.



Regards,



Pascal



Le 14 avr. 2020 à 04:05, Rahul Jadhav <nyrahul@outlook.com<mailto:nyrahul@outlook.com>> a écrit :



Please find my response inline.



________________________________

From: Roll <roll-bounces@ietf.org<mailto:roll-bounces@ietf.org>> on behalf of Pascal Thubert (pthubert) <pthubert=40cisco.com@dmarc.ietf.org<mailto:pthubert=40cisco.com@dmarc.ietf.org>>
Sent: 13 April 2020 11:14 PM
To: Routing Over Low power and Lossy networks <roll@ietf.org<mailto:roll@ietf.org>>
Subject: Re: [Roll] unaware leaves - graceful shutdown of attached-6LR



Great point Rahul.



Normally this is done using a final RA. But the RA is broadcast so unicasting a NA with ‘R’ flag off is a great idea. This is the exact signal that this router does not serve this node. Lifetime 0 would indicate that the router removes the NCE.

Status removed indicates an error. I’d rather use status 0, lifetime 0, ‘R’ off. Don’t you think?



[RJ] Imo, Lifetime is something that is controlled by the target/owner. There has never been (?) a case where someone else changes lifetime on behalf of the target node.

RFC 8505 states: "Removed: The binding state was removed.  This Status MAY be placed in an NA(EARO) message that is sent as the rejection of a proxy registration to an IPv6 ND Registrar, or in an asynchronous NA(EARO), at any time."

I still feel using Status="Removed", 'R' off may be applicable more.



Keep safe.



Pascal



Le 13 avr. 2020 à 15:07, Rahul Jadhav <nyrahul@outlook.com<mailto:nyrahul@outlook.com>> a écrit :



Hello Pascal/Authors,



In the event that the attached 6LR needs to gracefully shutdown, it needs to inform the RUL(s) to detach and possibly move to another 6LR.

I believe this could be done using NA(EARO, Status="Removed"); from the attached-6LR. Can this NA be multicasted if the attached-6LR has more than one RULs attached to it?

Is this correct/allowed? For RPL we have route-poisoning using which a 6LR does a graceful shutdown, but the route-poisoning is not applicable to RULs.. I believe this should be clarified in the text.



Regards,

Rahul

_______________________________________________
Roll mailing list
Roll@ietf.org<mailto:Roll@ietf.org>
https://www.ietf.org/mailman/listinfo/roll

_______________________________________________
Roll mailing list
Roll@ietf.org<mailto:Roll@ietf.org>
https://www.ietf.org/mailman/listinfo/roll