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

Rahul Jadhav <rahul.ietf@gmail.com> Fri, 25 September 2020 18:16 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 1B17F3A113B for <roll@ietfa.amsl.com>; Fri, 25 Sep 2020 11:16:22 -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 aH8KkXSOWgcs for <roll@ietfa.amsl.com>; Fri, 25 Sep 2020 11:16:19 -0700 (PDT)
Received: from mail-pf1-x434.google.com (mail-pf1-x434.google.com [IPv6:2607:f8b0:4864:20::434]) (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 7BE163A0AF3 for <roll@ietf.org>; Fri, 25 Sep 2020 11:16:19 -0700 (PDT)
Received: by mail-pf1-x434.google.com with SMTP id k13so3979948pfg.1 for <roll@ietf.org>; Fri, 25 Sep 2020 11:16:19 -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=jjQVs0h2CfnOW/EFxOQA9hg2dBuWsSWVSGJ94UqPhhc=; b=ieb+v9HLq7jCbiQIdizztXvDSwU7kO/T1xd2SGdrK1QlBttC25y2iinpHX3wC2jZ0p j9c5i5mfBPWdGeMdywIV0yjl3M6uFq7265j2MDTbd0XoUhMAWBMEkxF6BvGFRUbQ7CGJ 9lJ1Qy+iTfh8chw3GhPfDtfoi7YDT881khEctEQAmhCrrYd1NP4M8eoaFc47+Up4xTBx uU4nzWHUKOcULhfAC0sC+kq7oCI7ALPbApqPHidQe/sfzvPzJ5Jbj998PRWq3mkuLjhF 0MzKm5VQEMbj5z9skdmMvgL9jxFv/FqZEmpGcRL+YRmZS3cQFf6eREv27ayzNGwOvFhi KbQA==
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=jjQVs0h2CfnOW/EFxOQA9hg2dBuWsSWVSGJ94UqPhhc=; b=dASjZLGQJ7vYg/Qq8Jp9/bNhh8SCRbwciJO7VY0MpshZWHrUjO//u0zgvNaPsI7OOb 1IUNrFdNptiH/ES1wU9u+iuf56eZ0kcTGJ/3IzwulmF7kS16U0DMJNgZp/xL+glwITJi kgB9/nZAJY5WTUOREcD/X5sMF+64Z8etrY2Fp/BV73IjZh89sbOAOdgxLZcf3giJGkSk z4MDTK9UB+9vmFNV1koGmsF2Iyxw0cRjBcDakmplkFv2Ni2+xr7IjVQRs2BMm03960im +GdzKTLH2OcgLmY/64nG/lJvYKrhRP1rT+Xys5k5loLyO3HoaUxyQ7KwyhaMHc8RcBoa ei3Q==
X-Gm-Message-State: AOAM531eDWFCV4Mp08ajcwb4hpJdu+POgS0gBkLSw7gtdqbIeQVc3NF1 Crdpr1/bzKPH4kw1Hav/IsqNYJRaNUiOhw==
X-Google-Smtp-Source: ABdhPJwUgluBU9qr6Jl3mL5VEuxsZ+oLQr+/HhLQJulSRBpyhrN3nxgKkebhX1TTOATq8cRmW9xJbA==
X-Received: by 2002:a63:c112:: with SMTP id w18mr169755pgf.31.1601057778371; Fri, 25 Sep 2020 11:16:18 -0700 (PDT)
Received: from pandora ([223.226.27.61]) by smtp.gmail.com with ESMTPSA id r16sm2539942pjo.19.2020.09.25.11.16.15 for <roll@ietf.org> (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 25 Sep 2020 11:16:17 -0700 (PDT)
Date: Fri, 25 Sep 2020 23:46:14 +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: <51EFCCF8-A6AA-4E39-8DCE-B264CCDCD039@getmailspring.com>
In-Reply-To: <MN2PR11MB3565E58634AC61AD90C18B87D8360@MN2PR11MB3565.namprd11.prod.outlook.com>
References: <MN2PR11MB3565E58634AC61AD90C18B87D8360@MN2PR11MB3565.namprd11.prod.outlook.com>
X-Mailer: Mailspring
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="5f6e33ee_2d7def68_e0c"
Archived-At: <https://mailarchive.ietf.org/arch/msg/roll/VBFZ8XYAa8rxlRaJIZsKmBZvpJw>
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: Fri, 25 Sep 2020 18:16:22 -0000

Very interesting!

But, wouldn't this mandate that only Global DODAG roots can initiate a P-DAO request?
Isn't it currently possible for a local DODAG (with local RPLInstanceID) root to initiate a P-DAO request? If yes, then the DAO base object cannot be used as mentioned by you.
I didn't find any mandate in DAO projection draft that local DODAG roots cannot initiate a P-DAO.
Regards,
Rahul
On Sep 25 2020, at 9:29 pm, Pascal Thubert (pthubert) <pthubert=40cisco.com@dmarc.ietf.org> wrote:
>
> Hello again Rahul and all
>
>
> The Track Egress is the Root of DODAG that we build and we call it a Track.
> For a Track, the RPLInstanceID is a local one, that is associated to the Track Egress, and we call it a TrackID.
>
> Now, trying to make work the below, it seems better that instead of using a TIO, we could signal the Egress and TrackID in the DAO itself as follows:
>
> 0 1 2 3
> 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> | TrackID |K|D| Flags | Reserved | DAOSequence |
> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> | |
> + +
> | |
> + Track Egress +
> | |
> + +
> | |
> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> | Option(s)...
> +-+-+-+-+-+-+-+-+
>
> Figure 16: The DAO Base Object
>
>
> This seems to make more sense than using a TIO.
>
> Works?
>
> Pascal
>
>
>
> From: Pascal Thubert (pthubert)
> Sent: vendredi 25 septembre 2020 09:56
> To: Routing Over Low power and Lossy networks <roll@ietf.org>
> Subject: RE: [Roll] Transit vs. Target in P DAO
>
>
>
>
>
> Hello Rahul,
>
> Yes, this gets quite a lot of things to put together but in the end it is not so complicated if you have a picture to look at.
> I’ll make some for the interim.
>
> My to do’s on this draft for the next version:
>
> - Align the “serial” vs. “Complex” Track terminology between 6TiSCH, RAW n’ ROLL.
>
> - Create an initial format for FIO based in DetNet.
> -> Do you see any more field we’d like to see in there, e.g., the capability to inject a Track in another?
>
> - Describe that the TIO points on the tunnel egress, and that routes via the tunnel are signaled as targets in RTOs
> -> a side effect is that the sequence and lifetimes are now taken from the TIO so they are not needed in the (SR)VIO. This makes good sense IMHO.
> -> should the route to the egress be automatically added? There could be times where only some flows should go there. Maybe we could use a flag in the TIO to signal it?
>
> Many thanks for your help!
>
> Pascal
>
>
>
> From: Roll <roll-bounces@ietf.org (mailto:roll-bounces@ietf.org)> On Behalf Of Rahul Jadhav
> Sent: jeudi 24 septembre 2020 20:38
> To: Routing Over Low power and Lossy networks <roll@ietf.org (mailto:roll@ietf.org)>
> Cc: Routing Over Low power and Lossy networks <roll@ietf.org (mailto:roll@ietf.org)>
> Subject: Re: [Roll] Transit vs. Target in P DAO
>
>
>
>
>
> 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 (mailto: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 (mailto: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 (mailto: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 (mailto:Roll@ietf.org)
> >
> > https://www.ietf.org/mailman/listinfo/roll
> >
>
>
>
>
> _______________________________________________
> Roll mailing list
> Roll@ietf.org
> https://www.ietf.org/mailman/listinfo/roll