Re: [mpls] Reference Augmented Forwarding - MPLS RAF

Robert Raszuk <rraszuk@gmail.com> Wed, 27 April 2022 10:35 UTC

Return-Path: <rraszuk@gmail.com>
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 1206EC1B26F0 for <mpls@ietfa.amsl.com>; Wed, 27 Apr 2022 03:35:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.097
X-Spam-Level:
X-Spam-Status: No, score=-7.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, RCVD_IN_DNSWL_HI=-5, 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 ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id kmhaTt7ws6ZN for <mpls@ietfa.amsl.com>; Wed, 27 Apr 2022 03:34:59 -0700 (PDT)
Received: from mail-qv1-xf2f.google.com (mail-qv1-xf2f.google.com [IPv6:2607:f8b0:4864:20::f2f]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C318FC4222DF for <mpls@ietf.org>; Wed, 27 Apr 2022 03:07:46 -0700 (PDT)
Received: by mail-qv1-xf2f.google.com with SMTP id k12so716654qvc.4 for <mpls@ietf.org>; Wed, 27 Apr 2022 03:07:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=BTUmS0TyrVdH+CHwnZFZNtRC3ig8uOdauBdQdaJ+8r8=; b=fUJuPi7baoRnSVPS23WPYrCOS7j3RBW5RMP6nQj/dH+7zNxX0rWvfyA2KJJsYYfjDj c9EWgHq2TchwTiF2gH7tttSk8UgrPlhrvspxNjU4DOPmNyB6NVGktLQFhetVn+8nyYz3 bxoHDtmmr6piUygTCdzrw6NoJaUyC7bzDZxIrggIiUfFvapDorbUCuvuDGcEOfd4tluY CboEuY/DqXbC8JxJ61wSoGy+iS3DrsKMQJld+RUqkdr0kbF4LfcnDI6QTJz/fmpfjghr 97y0ZAB8tNWCDFaHNhQWgBXBRPYNp1DpDCKrzaCZyWpJNm74/lAMSfJa/G/O35TwLL1c AXEg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=BTUmS0TyrVdH+CHwnZFZNtRC3ig8uOdauBdQdaJ+8r8=; b=eQoEgoZ/2IVn2HgH9HFTtyX9bxW77nxIub97AHeRj+Icyl6jggDUprxgZdgr2rWdHt NzSfNjwtWdEtN+fWLl66ypTk2EINFms/LqEEURFfNIPuauxDJ2fa/7NTCrQL4mme2xi1 XI1o4L4sC/lbyx1dnwZ5W6rBF9fJMtu/BLLPm5uL0vpeBzAIacFnD742TxzkbSF1SPYo n1iwyrCO1mv4UCeIRGKmNipyudUJoZfyK1J24DMPCkxcZM7DmB5blYACu6TB4gDu7J9g sgEkZc9QiKLi99JwpT0R7mf4KfyZwayGByE9NOAyn/Sv5BapbbNKrDOBk/7eL8K0O3g6 3DyA==
X-Gm-Message-State: AOAM5333krWv7AC3PJiK0LFLv3H3mDps3GsR+gauYhY0AEFLjH0fnjFO fFXAs2gzgV7C4Eu3JThgGFP2375KCgRkr/vqyb++3f6l54A=
X-Google-Smtp-Source: ABdhPJyKdKg/obtLuC0s2eu2zXHe96LKDw6sHDOSaKk9XalB7t8vnfNhtfKZAXRvGT9K3IRzFeyJ/piQXsx3nZvLQXo=
X-Received: by 2002:a05:6214:262a:b0:456:354e:21e4 with SMTP id gv10-20020a056214262a00b00456354e21e4mr10969744qvb.110.1651054065616; Wed, 27 Apr 2022 03:07:45 -0700 (PDT)
MIME-Version: 1.0
References: <CA+b+ER=87-UZSoR3ke6ikFiemna9TaNpDMgVGkNO3xMUm-t8zQ@mail.gmail.com> <AE84CEA2-BD91-42FD-BBAE-FCC6597CBCE8@tony.li> <CA+b+ERk38ZpcFyAaKmK6jbVpvr+uvDVS-h-nAm2-0k9n4E30+g@mail.gmail.com> <000001d85a0c$34bd2cb0$9e378610$@tsinghua.org.cn> <e3beb32ca0dd4fd0871b182f9722c59b@huawei.com> <CA+b+ER=qeQwZV55P+3_MUbmUM163pyA7ZaVRF9LmWLSCP659Jg@mail.gmail.com> <608aba7669aa4aaebbe3a0e515de282f@huawei.com>
In-Reply-To: <608aba7669aa4aaebbe3a0e515de282f@huawei.com>
From: Robert Raszuk <rraszuk@gmail.com>
Date: Wed, 27 Apr 2022 12:07:34 +0200
Message-ID: <CA+b+ERk1FWz_doHa-c9=7VYHvXe=m2dqeRkQ-Cw+S7=o8_UueA@mail.gmail.com>
To: Tianran Zhou <zhoutianran@huawei.com>
Cc: Aijun Wang <wangaijun@tsinghua.org.cn>, Tony Li <tony.li@tony.li>, mpls <mpls@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000001609fd05dd9ffb1f"
Archived-At: <https://mailarchive.ietf.org/arch/msg/mpls/eIBXP_E-ftJ5fHPDs5nIWI9_0mU>
Subject: Re: [mpls] Reference Augmented Forwarding - MPLS RAF
X-BeenThere: mpls@ietf.org
X-Mailman-Version: 2.1.34
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: Wed, 27 Apr 2022 10:35:03 -0000

Yes right.

But what you said sounded like RAF is the same as
draft-song-ippm-postcard-based-telemetry/
<https://datatracker.ietf.org/doc/draft-song-ippm-postcard-based-telemetry/>
which
I corrected as it is too coarse of the statement.

Thx,
R.

On Wed, 27 Apr 2022 at 12:02, Tianran Zhou <zhoutianran@huawei.com> wrote:

> Hi Robert,
>
> I may not correct. Here, “similar”, I mean detailed instructions are not
> carried in the data plane, but preconfigured on the devices.
>
> Best,
>
> Tianran
>
>
>
> *From:* Robert Raszuk [mailto:rraszuk@gmail.com]
> *Sent:* Wednesday, April 27, 2022 5:57 PM
> *To:* Tianran Zhou <zhoutianran@huawei.com>
> *Cc:* Aijun Wang <wangaijun@tsinghua.org.cn>; Tony Li <tony.li@tony.li>;
> mpls <mpls@ietf.org>
> *Subject:* Re: [mpls] Reference Augmented Forwarding - MPLS RAF
>
>
>
> Hi,
>
>
>
> I think the following proposal shares the similar idea as this RAF
> proposal.
>
>
>
> No. RAF is much broader than that. OAM handling is just one element of it.
>
>
>
> Yes RAF can use the OAM handling as proposed in the draft below as is.
>
>
>
> Thx,
>
> R.
>
>
>
>
>
> https://datatracker.ietf.org/doc/draft-song-ippm-postcard-based-telemetry/
>
>
>
> It could work well with RAF. Just use the label to indicate the postcard
> behavior, IMO.
>
>
>
> Cheers,
>
> Tianran
>
>
>
> *From:* mpls [mailto:mpls-bounces@ietf.org] *On Behalf Of *Aijun Wang
> *Sent:* Wednesday, April 27, 2022 3:56 PM
> *To:* 'Robert Raszuk' <rraszuk@gmail.com>; 'Tony Li' <tony.li@tony.li>
> *Cc:* 'mpls' <mpls@ietf.org>
> *Subject:* Re: [mpls] Reference Augmented Forwarding - MPLS RAF
>
>
>
> Hi, Robert:
>
> How to add additional data to accomplish the In-situ OAM similar function
> based on your proposal?
>
> If not, what’s the difference to apply the traffic policy via the
> management from your proposal?
>
>
>
> Best Regards
>
>
>
> Aijun Wang
>
> China Telecom
>
>
>
> *From:* mpls-bounces@ietf.org <mpls-bounces@ietf.org> *On Behalf Of *Robert
> Raszuk
> *Sent:* Wednesday, April 27, 2022 7:28 AM
> *To:* Tony Li <tony.li@tony.li>
> *Cc:* mpls <mpls@ietf.org>
> *Subject:* Re: [mpls] Reference Augmented Forwarding - MPLS RAF
>
>
>
> Hi Tony,
>
>
>
> - I like the acronym. :-)  We need to find a Spitfire somewhere in the
> proposal. Or Snoopy.
>
>
>
> Not a big challenge :)  My original idea was Forwarding Behaviour
> Indicator (FBI), but was a bit worried about using it for perhaps obvious
> reasons.
>
>
>
> - This doesn’t really seem like a Framework document. It’s a complete
> proposal, architecture to details.
>
>
>
> Well ... the reason I added some details was to highlight the
> architectural principles. They are in no way exhaustive. Lots of details
> especially in distribution of network actions needs to be defined in a
> separate document. Then perhaps we could add a new document as an extension
> to DROID.
>
>
>
> - You say that this is an implicit model. I disagree. It is very much
> explicit. It explicitly shifts the responsibility for communicating network
> actions to the control plane.
>
>
>
> Well yes. I mean implicit from a data plane perspective. But I am willing
> to call it with what WG recommends.
>
>
>
> - Section 2.1: Your definition of a Network Action says that it may not
> affect packet switching. That seems surprising. Wouldn’t we want the
> flexibility to make the packet switch differently? In the very next
> sentence you say that an action may affect forwarding. I’m pretty sure
> that I’m not following the distinction that you’re making here.  Could
> you please expound?
>
>
>
> Ah .. ok I will clarify in the draft here. By not affecting switching I
> mean that the packet may only trigger some actions which are orthogonal to
> switching decisions or any packet processing (as departure from "normal").
> Those would be for example triggers to generate OAM postcards. Trigger to
> generate some local traps. Trigger to generate any form of streaming
> telemetry. The list goes on and on.
>
>
>
> Of course the other category is to purposely affect
> switching/forwarding/routing/queuing decisions - this is very true.
>
>
>
> - You mention that network actions are distributed by configuration.
> Could this be generalized to be the management plane?
>
>
>
> I was thinking about it. The only reason I did not call it that way that I
> did not want to preclude IGP extensions to flood it. Or flowspec v2. I was
> also not sure if DROID would be classified as management plane ?
>
>
>
> But in general yes stating management plane instead of configuration is
> great even if we would include other options to push those
> instructions/mappings.
>
>
>
> - Isn’t a RFV a label?  It’s occupying 20 bits in the label stack, in the
> place where there would be a label.  Should we call it a Reference
> Forwarding Label (RFL)?
>
>
>
> It is. I am ok with renaming it as such. The only little detail here that
> within RFV LSE we could also use TTL field for some meaning. That would no
> longer be label. However with your suggestion we could nicely make it
> cristal clear - RFL + RFV (the latter to mean only the portion of 8 bits of
> TTL).
>
>
>
> Terminology is all open for such great suggestions. I wrote it up to
> trigger discussion about alternative model :).
>
>
>
> - Why have the RFI at all?  Why not just explicitly allocate RFV labels
> that encode both forwarding plus actions?
>
>
>
> Doable in theory but there are multiple reasons why I think this would be
> a bad idea. Quote from my note to Stewart:
>
>
>
> " The signalling reference in the packet being separate from forwarding
> label value itself as mentioned is a design choice based on few points:
>
>
>
> * backwards compatibility to deployed MPLS transport
>
>
>
> * compatibility with hop by hop or domain wide labels
>
>
>
> * decoupling network actions or network programming control plane
> (configuration or pub-sub dist.) from forwarding data plane (yes I do think
> this is a feature not a bug)
>
>
>
> * scalable (no label explosion) for selective execution chains
>
>
>
> * keep label stack of fixed length with max 8 octet growth
>
>
>
> + few new points:
>
>
>
> Moreover what significantly helps (and what perhaps is not very clear from
> the draft) is that RV mapping has *local* significance. That means each
> transit node may act differently on the same RF value.
>
>
>
> So I look at RFV as a marker for groups of uniquely treatable groups of
> flows, not as expressions of verbatim chains of actions.
>
>
>
> Moreover nothing prevent operator to structure RFV. Say you have 5 very
> often used actions. So you could hijack first 5 bits of that label to turn
> them into a bitfield. Last if one would ever get that he needs more then
> 2^20 groups of flows markers for different treatment there is always
> option to add one more RFV' and instead of sending RFI+RFV send
> RFI+RFV+RFV'
>
>
>
> - It seems like you could just reserve the TC and TTL fields in both LSEs.
>
>
>
> Clearly not in both. I want to support the SDN case where RFI is still top
> of the stack. But in general yes as you see above this is considered. TC
> bits in RFV I left for now alone.
>
>
>
> - I’m not sure I see the point in specifying a TLV encoding without any
> understanding of what it’s carried in.
>
>
>
> Right. This was just an illustration. I have some vision why TLV format
> there may be useful but this can all be flatten too. Especially that this
> can be pushed by mgmt too.
>
>
>
> - I have a serious concern about this approach for short-lived flows or
> single packet exchanges.  In these cases, the control plane effort to
> establish forwarding state may well exceed the intended usage. For example,
> suppose that we want an IOAM function such as a ping.  It seems like we
> would need to establish state end-to-end before we sent the ping request.
> That might require many milliseconds and the might only be used for one
> packet.  Then I presume that there would be some mechanism to remove the
> state. For long-lived flows, your proposal seems rational.
>
>
>
> That is not at all how I envision this would work.
>
>
>
> State programming is NOT to be triggered by flow appearance. State should
> be preconfigured before ingress would mark any group of flows for specific
> treatment.
>
>
>
> I do not see this would be of any concern. So even for short lived flows
> this should be pre-programmed. Note by notion of "pre-programming" network
> elements may not need to put all into FIB level. Some rarely used mappings
> can be cached then moved to FIB upon hit.
>
>
>
> - Forwarding state is a serious concern. How does this scale?
>
>
>
> See above.
>
>
>
> - You write:
>
>
>
>    If LSP is not setup and the network uses the concept of SDN
>
>    based path computation it can be preset as topmost LSE.
>
>   How does this work?  Are you assuming that a controller will push a
> stack on top of this?
>
>
>
> Nope.
>
>
>
> Ingress marks a groups of flows with a single RFV label.
>
>
>
> That label is mapped to different switching action at each node it is to
> traverse. Just a bit like OF (sigh :)
>
>
>
> Note that as stated above and what perhas is a bit not exposed in the
> draft - reference to action mapping is local to the receiver (ie. transit
> node).
>
>
>
> -If the topmost label is popped, then the RFI/RFV come to the top of the
> stack. Are they discarded?
>
>
>
> As I mentioned egress will need to understand it and discard (perhaps
> using TC bits or checking TTL.
>
>
>
> - You write:
>
>
>
>    If a node is enabled to perform additional actions on the
>
>    packets it should leave the RFI/RFV tuple as received immediately
>
>    after the top label swap on the stack.
>
>    I don’t understand why you have the word ‘swap’ in this sentence.
>
>
>
> Ahhh basic LDP label swapping - as opposed to global label no swap :)
>
>
>
> Many many thax Tony for great comments !!!
>
>
>
> Kind regards,
>
> Robert
>
>
>
>