Re: [Roll] Transit vs. Target in P DAO

Rahul Jadhav <rahul.ietf@gmail.com> Thu, 24 September 2020 18:38 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 2ECD53A1221 for <roll@ietfa.amsl.com>; Thu, 24 Sep 2020 11:38:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 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, SPF_HELO_NONE=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=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 KUkTRes_hlPD for <roll@ietfa.amsl.com>; Thu, 24 Sep 2020 11:37:57 -0700 (PDT)
Received: from mail-pj1-x102e.google.com (mail-pj1-x102e.google.com [IPv6:2607:f8b0:4864:20::102e]) (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 D8AFB3A121C for <roll@ietf.org>; Thu, 24 Sep 2020 11:37:57 -0700 (PDT)
Received: by mail-pj1-x102e.google.com with SMTP id md22so158936pjb.0 for <roll@ietf.org>; Thu, 24 Sep 2020 11:37:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:message-id:in-reply-to:references:subject :mime-version; bh=sFARipYoebzNjh1bc8IuFncSww3LAif+DTAMFUd+GQI=; b=kXUGDVKRkNmO/vJUmejsAlnihHwtvxYhWOIRKzY3F7b3BzxWgiHoMn/mcCPCof9bIG LHCNf/OXc4FT7l/elcKNQaGuarxwTu7u9U+s0KOFwQ3HJ4e1kRQ7Ekbb51smW3xMswS8 vVNeQkl0vZGYSo/aelYEvJjzMVMUCnUimsFdeD8qEQeDNhMN9KQicSRo3gzROXtknPuj oAVxXEsYj8S2Lx9S172/WikRThhZmxqsQLOMojKUDw6IpBhEC/K0csbBFJHpNZmaQ3/+ toRercbWT6y9VDg4Yh3Och81XtlK7T5acCLrucfEjBPR7p4J95qOezRvAjTboTwvx+8d /EFA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:message-id:in-reply-to :references:subject:mime-version; bh=sFARipYoebzNjh1bc8IuFncSww3LAif+DTAMFUd+GQI=; b=Kdfp1hnMybO2rE6gi14F7pyR2mpMw8uMQ9mCCGJ1CA/I0rQ5FkUxW+f3nxNnhdoXG2 EWtQuHNJcDwOt6uqnsnpCYSBgOVjmR0oElSqTM2gEG8N7ET6fMhaO2uoIyd1/pjbEXxH FUdqe3bX0ESgRbR2g/IsokbxpEf28ICj69W4iK5q+Hg/iwelYGxmfA9REI5ELvqt90JM VBM4wceTrpOOAgJmn+fhuHIVXbIvqsmAx/WDjRE5MsajEolgN4t0Aw6FkjPW47FoUGea Pmegc2xkqc3V2sptDoo/W7qYnvnYsrNw3Pum+uUS/FCUan4Y8Zrb1MFJkrh4mcn94vMf +hgA==
X-Gm-Message-State: AOAM533Sp1TxKlooPbY7jYKKmc5DgsQ1l97CYgxY1SthETh9krYr1zk1 OeDDJmmlwccqatxeHdbb5fxNjEBm23h0Qw==
X-Google-Smtp-Source: ABdhPJxRv4Dryhlsn+tIhaUGuCaVtpBl3E56B+YOcD6z3I5AYNKUixrnzPRDbgBs3g84M1NsbHqlgQ==
X-Received: by 2002:a17:90a:d789:: with SMTP id z9mr281225pju.226.1600972676654; Thu, 24 Sep 2020 11:37:56 -0700 (PDT)
Received: from pandora ([223.226.27.61]) by smtp.gmail.com with ESMTPSA id 187sm177300pfx.174.2020.09.24.11.37.54 for <roll@ietf.org> (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 24 Sep 2020 11:37:55 -0700 (PDT)
Date: Fri, 25 Sep 2020 00:07:53 +0530
From: Rahul Jadhav <rahul.ietf@gmail.com>
To: Routing Over Low power and Lossy networks <roll@ietf.org>
Cc: Routing Over Low power and Lossy networks <roll@ietf.org>
Message-ID: <D72438C7-A55E-4928-B004-0A0C1F6F116A@getmailspring.com>
In-Reply-To: <MN2PR11MB356567B8439072FE77DA3861D8380@MN2PR11MB3565.namprd11.prod.outlook.com>
References: <MN2PR11MB356567B8439072FE77DA3861D8380@MN2PR11MB3565.namprd11.prod.outlook.com>
X-Mailer: Mailspring
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="5f6ce781_5704ff9_de8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/roll/8zIh1VMTIgo1Yv6YIZw-kQtObMU>
Subject: Re: [Roll] Transit vs. Target in P DAO
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: Thu, 24 Sep 2020 18:38:00 -0000

Thanks Pascal for the detailed example. The problem stmt is now clear to me and the need for TIO with parent address of egress node.
Few comments inline.

Best,
Rahul

On Sep 23 2020, at 10:09 pm, Pascal Thubert (pthubert) <pthubert=40cisco.com@dmarc.ietf.org> wrote:
>
> Hello Rahul
>
>
> > Currently, the draft allows the Root to send multiple RTOs which could contain the egress target and all the (immediate) children and siblings. The VIO option list would contain all the hops on which to install these target routes. Doesn't this already handle the problem statement you mentioned? Using this the root can install routers not only to the egress but also to its immediate children, isn't it?
>
> I thought so, but I felt there was something wring and digging I found it.
>
> > Is the point to not install the route on behalf of egress but only for the egress's children/siblings? Is this the objective to achieve?
> It would be great to have a sample topology to base this discussion on.
>
>
>
> Ye, we’d like to be able to use the Track to reach siblings wouldn’t we? If so let’s look at signaling and encapsulation:
>
> The “Track” that P DAO sets up is a path between a pair of nodes, call them I and E like ingress and egress. Currently E is indicated in an RTO and the Hops in an RPO (VIO or SRVIO).
>
> If I talks to E, it can do like we do in useofrplinfo for Root to RAN, that is create a packet with destination (that is E), an RPI with the local RPL instance of the Track (rooted at E), and an SRH if this is a SR VIO. No encaps.
>
> Now say that we want node I to send its packets to one of E’s sibling, S over the Track to E. Still following useofrplinfo, node I needs to encaps the packet I-> S in a packet I->E to add the RPI with the local RPL instance ID that is taken from E’s name space, and possibly an SRH.
>
> We also see that signaling that we build a Track I->E (which comes as a aside effect with a route to E) is not the same thing as signaling a route to S via the Track before.

[RJ] This was my assumption which went wrong.
I not get that, to send a packet to destination S via E, an encapsulation is needed. The outer destination is E and inner is S. For node I to create this encapsulation it needs to know that node E is the egress for S. The proposed TIO(E) option identifies this.

There could be many S nodes reachable via the Track to E.

Thus my proposal to encode S in RTO, E in TIO, and then the SRVIO. There could be multiple RTOs as usual, for all the siblings and children of E that we want to reach through the tunnel, but only one TIO since the track (tunnel) has only one egress.
>
>
> So we’d get RTO*, TIO, (VIO | SRVIO*) . Whether E is implicitly a destination or we need an RTO for E as well is to be debated, see below.
>
> It can get worse: say that a child of I sends a packet to E. Following the default route, that packet reaches I. I needs to decide whether to use the default topology (via the Root) or the Track. We have not really defined how that is programmed in I, but the current text says that the P DAO routes have a better admin distance, so current text says we use the Track. With DetNet and RAW, it’s flows that get routed over the Track, signaled by a 6tuple (https://datatracker.ietf.org/doc/html/draft-ietf-detnet-ip-07#section-3). So really we’d need another option that carries the 6tuple (say a flow info option, FIO) and use it as we use the RTOs to signal which flows are routed in the Track.
>
> In that case the P DAO would have (FIO|RTO)*, TIO, (VIO | SRVIO*)
>
> Did I make the problem more clear?
[RJ] Yep. After reading through detnet draft, I now understand the need for Flow Info Option. Need to re-read the draft considering this.

> One another point: The draft talks about "serial Track" .. is that synonymous to the "serial path" you mentioned in your mail. Does serial Track indicate a track with a single projected segment? Would be better to have this term described in the terminology section in the doc. Thanks.

Yes, I should use only one of the two. 6TiSCH defines serial and complex Tracks (see https://datatracker.ietf.org/doc/html/draft-ietf-6tisch-architecture-29#section-4.5.2). OK that I align?
“

A Projected Route is a serial path that may represent the end-to-end
route or only a Segment in a complex Track, in which case multiple
Projected Routes are installed with the same tuple (Target address,
TrackID) and a different Segment ID each.

…

An RPO indicates a Projected Route that can be a serial Track in full
or a Segment of a more complex Track. In Non-Storing Mode, multiple
RPO may be placed after a same Target Option to reflect different
Segments originated at this node. The Track is identified by a
TrackID that is a Local RPLInstanceID to the Target of the Track.

“
[RJ] Yes, we can align to this.
>
> Keep safe;
>
> Pascal
>
> From: Roll <roll-bounces@ietf.org> On Behalf Of Rahul Jadhav
> Sent: mercredi 23 septembre 2020 17:16
> To: Routing Over Low power and Lossy networks <roll@ietf.org>
> Subject: Re: [Roll] Transit vs. Target in P DAO
>
>
>
>
>
> Hi Pascal,
> I have a few questions in the context (with respect to the problem statement, not proposals):
> Currently, the draft allows the Root to send multiple RTOs which could contain the egress target and all the (immediate) children and siblings. The VIO option list would contain all the hops on which to install these target routes. Doesn't this already handle the problem statement you mentioned? Using this the root can install routers not only to the egress but also to its immediate children, isn't it?
> Is the point to not install the route on behalf of egress but only for the egress's children/siblings? Is this the objective to achieve?
> It would be great to have a sample topology to base this discussion on.
>
> One another point: The draft talks about "serial Track" .. is that synonymous to the "serial path" you mentioned in your mail. Does serial Track indicate a track with a single projected segment? Would be better to have this term described in the terminology section in the doc. Thanks.
> Best,
> Rahul
>
>
>
>
> On Tue, 22 Sep 2020 at 16:35, Pascal Thubert (pthubert) <pthubert=40cisco.com@dmarc.ietf.org (mailto:40cisco.com@dmarc.ietf.org)> wrote:
> > Dear all ;
> >
> >
> > Say we are building a serial path using P DAO: in that case, we are building a tunnel from the Track Ingress to the Track Egress, where the Track is signaled in the packet by the local RPLInstanceID in the RPI and the destination IPv6 address. The outer header may also have a SRH in case of non storing P DAO.
> >
> > In the current version of the P DAO draft we use a RPL Target Option (RTO) to signal the Track Egress and the new Via options (CMOs) to indicate the hops. But say we do not want to reach the Tunnel egress but one of its children or siblings. How can we signal that these guys are reachable over the tunnel?
> >
> > Proposal A)
> >
> > If we want to be able to signal that, it could be more consistent with RPL to use:
> > - one or more RTOs to indicate the targets of the route, can be any of the children and siblings
> > - Exactly one Transit Information Option (TIO) to indicate the tunnel egress
> > - then one VIO or one or more SRVIOs (as we currently do)
> >
> > The result would be that the Track terminates at the “Parent” indicated in the TIO but can be used to reach any of the children and siblings indicates as targets
> >
> > Proposal B)
> >
> > Maybe we want to signal that only certain DetNet Flows should be placed in the Track. In that case, The RTO is not sufficient and we’d need the 6tuple. If we take that path, we’d need to create a new Flow option that is a Flow descriptor, in which case we’d get
> > - one or more Flow Options to indicate which flows are encapsulated in the Track
> > - Exactly one RTO (as we currently do) OR Exactly one TIO (as in Proposal A) to indicate the tunnel egress
> > - then one VIO or one or more SRVIOs (as we currently do)
> >
> >
> > What do you guys think?
> >
> > Pascal
> > _______________________________________________
> > Roll mailing list
> > Roll@ietf.org (mailto:Roll@ietf.org)
> > https://www.ietf.org/mailman/listinfo/roll
> >
>
>
>
>
> _______________________________________________
> Roll mailing list
> Roll@ietf.org
> https://www.ietf.org/mailman/listinfo/roll