Re: [mpls] [Detnet] DetNet: draft-eckert-detnet-mpls-tc-tcqf-03 request for feedback

Toerless Eckert <tte@cs.fau.de> Thu, 04 August 2022 18:14 UTC

Return-Path: <eckert@i4.informatik.uni-erlangen.de>
X-Original-To: mpls@ietfa.amsl.com
Delivered-To: mpls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7075FC14CF18; Thu, 4 Aug 2022 11:14:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.659
X-Spam-Level:
X-Spam-Status: No, score=-1.659 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.248, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id XCb55KoNkp2c; Thu, 4 Aug 2022 11:14:27 -0700 (PDT)
Received: from faui40.informatik.uni-erlangen.de (faui40.informatik.uni-erlangen.de [IPv6:2001:638:a000:4134::ffff:40]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DF726C14CF12; Thu, 4 Aug 2022 11:14:25 -0700 (PDT)
Received: from faui48e.informatik.uni-erlangen.de (faui48e.informatik.uni-erlangen.de [131.188.34.51]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by faui40.informatik.uni-erlangen.de (Postfix) with ESMTPS id A355C549CA0; Thu, 4 Aug 2022 20:14:18 +0200 (CEST)
Received: by faui48e.informatik.uni-erlangen.de (Postfix, from userid 10463) id 8DD104EB669; Thu, 4 Aug 2022 20:14:18 +0200 (CEST)
Date: Thu, 04 Aug 2022 20:14:18 +0200
From: Toerless Eckert <tte@cs.fau.de>
To: "Black, David" <David.Black@dell.com>
Cc: "duzongpeng@foxmail.com" <duzongpeng@foxmail.com>, DetNet WG <detnet@ietf.org>, "mpls@ietf.org" <mpls@ietf.org>, draft-eckert-detnet-mpls-tc-tcqf <draft-eckert-detnet-mpls-tc-tcqf@ietf.org>
Message-ID: <YuwMer/aNbW42xZ8@faui48e.informatik.uni-erlangen.de>
References: <Ysx36SvLGm3b8fI8@faui48e.informatik.uni-erlangen.de> <tencent_0C966FBA8D4D0D228AAE7C062AC987833D05@qq.com> <YungNZeBK+j1efhn@faui48e.informatik.uni-erlangen.de> <MN2PR19MB4045CF9B26F545637A8593DD839C9@MN2PR19MB4045.namprd19.prod.outlook.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <MN2PR19MB4045CF9B26F545637A8593DD839C9@MN2PR19MB4045.namprd19.prod.outlook.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/mpls/9YDhN59cAd4qrsS0eeAg83lh-YM>
Subject: Re: [mpls] [Detnet] DetNet: draft-eckert-detnet-mpls-tc-tcqf-03 request for feedback
X-BeenThere: mpls@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Multi-Protocol Label Switching WG <mpls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mpls>, <mailto:mpls-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mpls/>
List-Post: <mailto:mpls@ietf.org>
List-Help: <mailto:mpls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mpls>, <mailto:mpls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 04 Aug 2022 18:14:31 -0000

On Wed, Aug 03, 2022 at 01:27:33PM +0000, Black, David wrote:
> Hi Toerless,
> 
> I'll observe that the rather small MPLS TC field is being used to serve a lot of purposes.  A question to consider (and one that likely reflects my limited MPLS expertise) is whether cycle tag information is always needed in the forwarding layer F-label vs. an alternative where the cycle tag is in the service layer S-label, resulting in an approach where the service layer handles tagged cycles, relying on the unmodified forwarding layer of the MPLS data plane between service nodes.  That could result in a hierarchy where service nodes are deployed to bound the level of cycle skew exposed to the unmodified forwarding layer that does not see the cycle tags.  Does that make sense?

The goal definitely is to come up with the most easily first-round deployable
solution, so i am happy to put the bounded latency function into whatever layer
(Service or Forwarding) where it is most easily implemented. But: a) not sure
what the other detnet folks think about that, or b) we probably would need
to ask the MPLS WG what they think aout looking up QoS from the second label
in the stack - complexity wise.

> On ECN ...
> 
> > Wrt. ECN: For TCQF, we do not need ECN: There CANNOT be any TCQF/DetNet traffic
> > with bounded latency that would need ECN markings. That would simply be a failure
> > of the bounded latency service.
> 
> There may be a "never say never" reality check lurking in there ;-).
> 
> While use of ECN to signal actual congestion is almost certainly indicative of a DetNet failure, I'll repeat my comments to Pascal on this topic:
> 
> > > I think we have two related goals in this discussion that ought to be distinguished:
> > > 	- What's the minimal/necessary/ideal L4 transport functionality for DetNet?
> > >	- What would it take to run an existing transport stack (L4 and above) over DetNet?
> > > This discussion started around the first goal, where I agree with you that the ECN-based dynamic windowing
> > > functionality is not needed.  That functionality may be useful towards the second goal (e.g., run HTTP/TLS/QUIC
> > > over a DetNet data plane for device management).
> 
> I suggest more consideration of that second goal.
> 
> Are you taking the position that it is *never* appropriate to run an existing web-based management stack (e.g., based on HTTP/TLS/TCP or HTTP/TLS/QUIC) over a DetNet MPLS data plane?

I think the initial customers for DetNet are those who have the no-loss, no-jitter, no-congestion
requirements. Hence i want the first round that we can do without new packet headers to be
focussing on that, so we (DetNet) gets a good foot in the market. And especially that we
can establish simpler DetNet-Only solutions, instead of creating an unfortunately even
more complex solution we have now: layering DetNet on top of TSN to get bounded latency.

So, i primarily would not want to spare bit for more loftiger goals in this first-round
encoding options (reuse TC, DSCP), unless we know we have them available without  cutting
into that first goal.

Once we know we have the packet header bits to do more:

First of all, i would like us to think about OAM bits to recognize when there are errors,
e.g.: when there is packet drop even though there should be non, because something
malfunctioned. How would we do this ? Aka: Whats the best OAM for failure of
bounded latency that we can give those first-round applications.

If that OAM turns out to also be usable for classical congestion controlled applications
(which i don't think), then we're done. Otherwise we'd have to look for encoding
of bits for both those OAM goals and the ECN goals.

If we go with SR-MPLS, our LSE would turn into SIDs, so we could have SIDs for just
DetNet, not shared by other traffic. Meaning wew have the full 3 bit free. And we
could then also easier (IMHO) hack around even more, redesignating e.g.: some more
bits from TTL (if Cisco gives license to IETF on its patent for that...).

Aka: Lots of options, which is why i was trying to figure out whats hopefully most important
first so we can get more deployment experience from a first round RFC.

Cheers
    Toerless

> Thanks, --David
> 
> -----Original Message-----
> From: detnet <detnet-bounces@ietf.org> On Behalf Of Toerless Eckert
> Sent: Tuesday, August 2, 2022 10:41 PM
> To: duzongpeng@foxmail.com
> Cc: DetNet WG; mpls@ietf.org; draft-eckert-detnet-mpls-tc-tcqf
> Subject: Re: [Detnet] DetNet: draft-eckert-detnet-mpls-tc-tcqf-03 request for feedback
> 
> 
> [EXTERNAL EMAIL] 
> 
> Thanks for the interest Zongpeng,
> 
> Given how the TC-TCQF solution is now within scope of DetNet charter, i think this
> is also a good time to also get more input/review from the MPLS WG, hence Cc'ing it
> (the chair where already suggesting to engage with th MPLS WG on this in the past).
> 
> For background: The draft currently covers what i think is the most easy deployable option to
> enable tagged-cyclic-queuing-and-forwarding (TCQF) with the MPLS forwarding plane -
> without changes on the wire, by reusing the existing MPLS header field TC.
> 
> If we choose to adopt this work in DetNet it would be good work to document not
> only this most simple TC encoding, but also any other encoding that do not require
> on-the-wire-changes, but that may be necessary when this most simple method is
> considered to be not sufficient for some MPLS networks.
> 
> TCQF encoding that would encode the cycle in a new heder field (change on the wire)
> should IMHO be work reserved for another draft. Primarily because i think we can
> much faster finish specifying and deploying the mechanism with the options that do
> not require changes on the wire - and collect experience with it (this is true for
> MPLS as well as IP/IPv6, where we can use DSCP).
> 
> The draft therefore proposed allocation of MPLS TC values for use with TC-TCQF is
> described in section 3.3 of the draft TC-TCQF draft. We would need 3 or 4 TC values.
> 
> Here is a bit more detail:
> 
> RFC3270 defines how to use the TC field
> (actually, it calls it EXP, the field was later renamed to TC in RFC5462)
> 
> What our TCQF draft proposes is to propose to use the so-called 
> "TC- Inferred-PSC LSP (E-LSP) behavior". This is described in section 1.2 of
> RFC3270.
> 
> This is IMHO the most widely deployed method for using DiffServ with MPLS
> and also the most simple to deploy, because it can get away without additional
> control plane / labels. What this effectively means is that the network operator
> configures in a DiffServ style 
> 
> When a deployment has already used more than 4/5 TC and therefore
> does not have 3 or 4 TC free, then (i think!) the operator could allocate additional
> labels space where the TC values are free. Depending on how MPLS experts read
> RFC3270, this might require resorting to calling those LSPs SIDs and call that
> encoding then an SR-MPLS mechanism.
> 
> We could also look into allocating 3 or 4 additional L-LSP, but that looks like
> the most complicated option to me.
> 
> IMHO, a first RFC does not have to be complete with all possible encoding
> options. I'd rather see an RFC finished that can be deployed, and when that
> raises interest in the industry, but the vendors recognize some customers who
> already used up all TC, then this would be good justification to do a -bis of
> the RFC with the more complicated encodings.
> 
> Wrt. ECN: For TCQF, we do not need ECN: There CANNOT be any TCQF/DetNet traffic
> with bounded latency that would need ECN markings. That would simply be a failure
> of the bounded latency service. The non-TCQF TC values may indicate ECN
> for non-TCQF traffic, but to the best of my knowledge ECN with TC is practically
> not deployed.
> 
> Hope this help, please comment!
> 
> Cheers
>     Toerless
> 
> On Tue, Aug 02, 2022 at 09:14:24AM +0800, duzongpeng@foxmail.com wrote:
> > Hi, Toerless   
> > 
> >     I am Zongpeng Du from China Mobile.
> > 
> >     We are interested in the draft. However, we have a question about the method to convey the tag in the TOS of an MPLS label.
> > 
> >     MPLS label: 32bits
> >     
> >     00-19     20-21                                                 23                                    24-31
> >     label       TC: Traffic Class(QoS and ECN)        S: Bottom-of-Stack          TTL: Time-to-live
> > 
> > As shown in the Figure, the three bits for TC have been defined as the format of "QoS and ECN". 
> >     IMO, unless the IETF agrees to disuse it, we can not use the bits that have been used.
> >     Do I have any misunderstanding here?
> > 
> >    Or, the label is special defined, such as an S-Label, so that we can define new use of the TC field ? 
> > 
> > Best Regards
> > Zongpeng Du
> > 
> > 
> > 
> > duzongpeng@foxmail.com & duzongpeng@chinamobile.com
> >  
> > From: Toerless Eckert
> > Date: 2022-07-12 03:20
> > To: detnet
> > CC: draft-eckert-detnet-mpls-tc-tcqf
> > Subject: [Detnet] DetNet: draft-eckert-detnet-mpls-tc-tcqf-03 request for feedback
> > Dear DetNet WG
> >  
> > I just posted rev 3 of https://urldefense.com/v3/__https://datatracker.ietf.org/doc/draft-eckert-detnet-mpls-tc-tcqf/__;!!LpKI!mdHkRkynsjbKwb-lZDUF4l-5wA4KD2nDtRSdgiUzwt_OR1Ia9AOMNJyskNQCYsQzZKh4xiORb915kQ$ [datatracker[.]ietf[.]org]
> >  
> > Diff over previous version 2:
> >   https://urldefense.com/v3/__http://www.ietf.org/*rfcdiff?url1=https:**Awww.ietf.org*archive*id*draft-eckert-detnet-mpls-tc-tcqf-02.txt&url2=https:**Awww.ietf.org*archive*id*draft-eckert-detnet-mpls-tc-tcqf-03.txt__;Ly8vLy8vLy8vLy8!!LpKI!mdHkRkynsjbKwb-lZDUF4l-5wA4KD2nDtRSdgiUzwt_OR1Ia9AOMNJyskNQCYsQzZKh4xiNYE2hEcw$ [ietf[.]org]
> >  
> > This version adds new text about the per-flow ingres enqueueing into the
> > cycles, informational text about high-speed HW implementation considerations
> > and a pointer to a research paper also describing such HW validation.
> >  
> > I think this makes the proposed work complete, and as authors, we would
> > like to ask the WG for adoption - and the participants for feedback.
> >  
> >   Btw: The authors are also happy to discuss any restructuring, for example
> >   Eshan told me it might be better to separaate the genreic mechanism from
> >   the MPLS encoding (separate drafts). 
> >  
> > Quick summary, if you have not kept track:
> >  
> >   TCQF stands for Tagged Cyclic Queuing and Forwarding, and is a proposal
> >   how to adopt the IEEE TSN "Cyclic Queuing and Forwarding" Queuing for
> >   'native' use in DetNet, specifically with MPLS forwarding plane.
> >  
> >   CQF is a great queuing mechanism for DetNet because it does not only offer
> >   bounded latency, but also tight-bounded jitter, important for all
> >   industrial "synchronous" applications. It also is most easily scalable
> >   in HW and operations for metropolitan or larger size WAN DetNet deployments
> >   because it does not have per-hop state on every router.
> >  
> >   By tagging packets with the cycle number, TCQF overcomes also the issues
> >   that keeps CQF limited to small-scale (few Km) Ethernet: it can support
> >   large link delays and link-delay variation, and it reduces relatively
> >   the required clock accuracy, therefore making it feasible to use this
> >   on 100, 400 Gbs or faster networks.
> >  
> >   There is an expired problem description draft i wrote some time ago,
> >   if you need more background: https://urldefense.com/v3/__https://datatracker.ietf.org/doc/draft-eckert-detnet-bounded-latency-problems/__;!!LpKI!mdHkRkynsjbKwb-lZDUF4l-5wA4KD2nDtRSdgiUzwt_OR1Ia9AOMNJyskNQCYsQzZKh4xiOUluv-oQ$ [datatracker[.]ietf[.]org]
> >  
> > Cheers
> >     Toerless
> >  
> > _______________________________________________
> > detnet mailing list
> > detnet@ietf.org
> > https://urldefense.com/v3/__https://www.ietf.org/mailman/listinfo/detnet__;!!LpKI!mdHkRkynsjbKwb-lZDUF4l-5wA4KD2nDtRSdgiUzwt_OR1Ia9AOMNJyskNQCYsQzZKh4xiMZSWyvmw$ [ietf[.]org]
> 
> -- 
> ---
> tte@cs.fau.de
> 
> _______________________________________________
> detnet mailing list
> detnet@ietf.org
> https://urldefense.com/v3/__https://www.ietf.org/mailman/listinfo/detnet__;!!LpKI!mdHkRkynsjbKwb-lZDUF4l-5wA4KD2nDtRSdgiUzwt_OR1Ia9AOMNJyskNQCYsQzZKh4xiMZSWyvmw$ [ietf[.]org]
> 

-- 
---
tte@cs.fau.de