Re: [Roll] No path DAO treated as new

Rahul Jadhav <rahul.ietf@gmail.com> Tue, 07 February 2017 17:27 UTC

Return-Path: <rahul.ietf@gmail.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 7949E129417 for <roll@ietfa.amsl.com>; Tue, 7 Feb 2017 09:27:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.698
X-Spam-Level:
X-Spam-Status: No, score=-2.698 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, 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=gmail.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 zZiVRLNnDzSb for <roll@ietfa.amsl.com>; Tue, 7 Feb 2017 09:27:05 -0800 (PST)
Received: from mail-oi0-x22c.google.com (mail-oi0-x22c.google.com [IPv6:2607:f8b0:4003:c06::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2B83C129400 for <roll@ietf.org>; Tue, 7 Feb 2017 09:27:05 -0800 (PST)
Received: by mail-oi0-x22c.google.com with SMTP id s203so68624390oie.1 for <roll@ietf.org>; Tue, 07 Feb 2017 09:27:05 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=mH9uoL+MLgaFvc0mxrL2sXMH/JqCfjizrk+MUKQXZPU=; b=ubDVGKjMNFJws5EYmrBM/UpUABMiyRJZdRKAzLuTTm11/ibuZYE6VdIATp31oC30lF hqudCtsxn8cRRSuUOnSHjxpXnSblYpKmWnCLTVbZC+GW8QE2yDzN7NTTGUcnr7BPKMFY DNBxKaIk7ZpZ4SUZQ9rm/PNGsuy+t2hXB7s0vxee/lxliBWnhP/oo55euwCMREI1MTYl NnRAbWlNunBEwJi3kc4twlSSm74IjAXiAvvVpSoi31hfri8VJV/3yIwbEIWHECMO/VqE xUbSkaQuVNZ4KTrQzgaMapyB1Oqb68HYpXwnQWmYqwI+pNdYoK0/0RAWApDs4IsXg2KH s1NA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=mH9uoL+MLgaFvc0mxrL2sXMH/JqCfjizrk+MUKQXZPU=; b=lyRLIpkcB+Hu2mnKB+CBEfBvVPhUunXkG1q4Aq+vz0R/NkmCk46BoyYJwE0MnlRitZ JbMcaJzitaPNynZghwD9bF2xkSPxPEOZNTKr1U4HwtRlHeLHxMmTZj0Ev3YIee4GvDno 3k6Q2bytnKIrf8Sg9BP7634Iaz/o4WkpqlneHDxBpV2/v3NmSr+GT6cE4Cmh1BdKeCTT SQPHyhIsMYLP1OfSKLpxvxBGP68FErckpetiw4om4B5xT7/aHkE1jTDOJVC9A3QLSJ48 WzMYakYT9w9gEIo8/EqGlVSwSstgCQ+2gVeVJ/V2qMlvEG5v9BYyajvKXZ0rkUM8W0Tz T94A==
X-Gm-Message-State: AMke39nTPOR1Qa3abSXzLjPgxULWwFuo/4ES8xGIVjwtbibBvARWi5ffRWDTPoYFcfFYMgb1Gj0+bhGDfTCeeA==
X-Received: by 10.202.185.135 with SMTP id j129mr8569782oif.66.1486488424280; Tue, 07 Feb 2017 09:27:04 -0800 (PST)
MIME-Version: 1.0
Received: by 10.74.52.27 with HTTP; Tue, 7 Feb 2017 09:27:03 -0800 (PST)
In-Reply-To: <7d16cde379f94919acf50b7cecd3f8c8@XCH-RCD-001.cisco.com>
References: <CAO0Djp373Auuc_yeiT2R22XM7A1zM6xAVsCOv2e=9DED8OdLtQ@mail.gmail.com> <CAO0Djp1AM6d7Y3s1UugZ+2CRWu4HdzD46k7bkU0mZNY60oiyhw@mail.gmail.com> <CAO0Djp1QyPzn8PY8NMLkK7Yms-jqrJRuNWviy-GQH4zhoDE3zg@mail.gmail.com> <CAO0Djp02NVSzKgdVV-rR1hrQ5UEzhVDWMjpaPKX89qFEVHCQVA@mail.gmail.com> <CAO0Djp2gjFyMJ_tyVesQfJySLK6ODREA==UV_B2=3a0mykgO=Q@mail.gmail.com> <7d16cde379f94919acf50b7cecd3f8c8@XCH-RCD-001.cisco.com>
From: Rahul Jadhav <rahul.ietf@gmail.com>
Date: Tue, 07 Feb 2017 22:57:03 +0530
Message-ID: <CAO0Djp1fT9-ZvYd9HxkbLtsvpEPreq6m47CY=gfiddh1X6V64Q@mail.gmail.com>
To: Routing Over Low power and Lossy networks <roll@ietf.org>
Content-Type: multipart/alternative; boundary="001a113cc2407df8550547f40e47"
Archived-At: <https://mailarchive.ietf.org/arch/msg/roll/QsDX-vi3TfIHd25bgBJ5fKvL2A0>
Subject: Re: [Roll] No path DAO treated as new
X-BeenThere: roll@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Routing Over Low power and Lossy networks <roll@ietf.org>
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, 07 Feb 2017 17:27:07 -0000

Thanks Pascal for the detailed articulation.

The timelined messaging that you have mentioned goes exactly as per what i
wanted to convey, thanks.
B will have two adjacencies to target E via C and D and it (node B) can
decides to cleanup the adjacency with respect to C on receiving
NPDAO(tgt=E) from C.

There is one more point to clarify:
Lets say, Node B decides to cleanup the adjacency and schedules an
NPDAO(tgt=E) upstream and when it reaches the upstream node, that node
(node A in my example) won't have multiple adjacencies based on next hop
for target E i.e. Node A will have both the NPDAO(tgt=E) & DAO(tgt=E)
received from the same next hop (node B) and since NPDAO is rcvd last from
the same next hop, it may result in invalidation of that adjacency.

Is it expected that Node B MUST NOT schedule the NPDAO(tgt=E) since the
NPDAO has not cleared the last downward route for tgt E, where last
downward route is identified by PathSeq of DAO (route install) ?

Please find comments inline...

On 7 February 2017 at 14:35, Pascal Thubert (pthubert) <pthubert@cisco.com>
wrote:

> Hello Rahul :
>
>
>
> The section is not about ignoring the DAO, it is about scheduling a DAO to
> parent. If the NP DAO does not cause the removal of the last route, then
> there is nothing to tell the parent, this node can still forward.
>
>
>
> Your assertion that the route in B is removed in your scenario appears
> incorrect. Let’s look in details:
>
>
>
> An (NP) DAO installs and remove adjacencies* between a parent and a child.
> A NP DAO can only clean the adjacency between that parent and that child. A
> NP DAO from C cannot clean the adjacency via D.
>
>
>
> Let’s look at the adjacencies in each nodes along your scenario, see if I
> have it right:
>
>
>
> At T=0 B has a route to Target below E via C (I expect from your
> description, you’re not 100% clear), and C has a route to Target via E.
>
>
>
> At T=1 E sends a NP DAO to its old parent (that’s C), effectively
> invalidating the adjacency in C via E. C has no more route to Target. B
> does not know yet
>
>
>
> At T=2 E sends a DAO to D, D now has a route to Target via E.
>
>
>
> At T=3 D sends a DAO to B, B now has 2 adjacencies for Target, one via C
> and one via D. It can select either for his route to Target, or load
> balance. At this point, B may still use C, and that would be a bad idea
> since C cannot forward anymore to Target.
>
>
>
> At T=4 C sends the NP DAO to B. B cleans the adjacency via C, but retains
> the one via D. So now it still has a route via B and no alternative to it.
> At this point, the routing is correct again.
>

At this point i assume that node B may schedule NPDAO(tgt=E) to its
upstream parent node A.

Thus at T=5, Node A will receive a NPDAO(tgt=E, nhop=B) and it will already
have only one routing adjacency (tgt=E, nhop=B) ... What stops Node A from
invalidating this routing adjacency ?


>

>
> I do not see that we ned to change RPL there…
>
>
>
> *  Adjacencies are the possible next hops learnt from various routing
> protocols with various costs; this is what the routing protocols exchange;
> the routing table is a local decision by the router that retains the subset
> of adjacencies that it selects for forwarding.
>
>
>
>
>
> Pascal
>
>
>
> *From:* Roll [mailto:roll-bounces@ietf.org] *On Behalf Of *Rahul Jadhav
> *Sent:* vendredi 3 février 2017 06:00
> *To:* roll@ietf.org
> *Subject:* [Roll] No path DAO treated as new
>
>
>
> Hello All,
>
>
>
> Section 9.2.2. of RFC6550 says that a No-Path DAO message should always be
> processed as a "new" message (i.e. igoring the PathSequence value related
> to the target) ...
>
> I have problem with a scenario where if a node sends NPDAO (to old path)
> and DAO to the new path for the same target ... and if for some reason
> NPDAO reaches after the DAO to the common parent then it will clear the
> routes because NPDAO is alway processed as "new" message.
>
> Consider an eg network,
>
>     A
>
>     |
>
>     B
>
>    / \
>
>   /   \
>
>  C     D
>
>   :   /
>
>    : /
>
>     E
>
> Node E switches from C to D, E sends an NPDAO to C, and regular DAO to D.
> If B receives NPDAO after DAO, then won't it result in incorrect
> invalidation of routes. My point is, the NPDAO processing should also have
> honored the PathSequence value before processing. But the spec text clearly
> and specifically talks about treating NPDAOs as "new".
>
> Any thoughts on why special treatment for NPDAO was considered?
>
>
>
> Thanks,
>
> Rahul
>
> _______________________________________________
> Roll mailing list
> Roll@ietf.org
> https://www.ietf.org/mailman/listinfo/roll
>
>