Re: [mpls] Comments on draft-andersson-mpls-mna-fwk-01

"Dongjie (Jimmy)" <> Wed, 01 June 2022 07:01 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 5E818C14F745; Wed, 1 Jun 2022 00:01:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.909
X-Spam-Status: No, score=-1.909 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id luaEX2JJvjzw; Wed, 1 Jun 2022 00:01:32 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 71EFEC15AACD; Wed, 1 Jun 2022 00:01:31 -0700 (PDT)
Received: from (unknown []) by (SkyGuard) with ESMTP id 4LCg5b27hDz6H6sh; Wed, 1 Jun 2022 15:00:35 +0800 (CST)
Received: from ( by ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2375.24; Wed, 1 Jun 2022 09:01:26 +0200
Received: from ( by ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.24; Wed, 1 Jun 2022 15:01:25 +0800
Received: from ([]) by ([]) with mapi id 15.01.2375.024; Wed, 1 Jun 2022 15:01:25 +0800
From: "Dongjie (Jimmy)" <>
To: Tony Li <>
CC: "" <>, "" <>
Thread-Topic: Comments on draft-andersson-mpls-mna-fwk-01
Thread-Index: AdhwQrdhXtvtRdIrQNeDk8wXTg4yFAAo0kUAAC4bcJAANGjHAABV6+MQADzeKQAAK83hMA==
Date: Wed, 1 Jun 2022 07:01:25 +0000
Message-ID: <>
References: <> <> <> <> <> <>
In-Reply-To: <>
Accept-Language: en-US, zh-CN
Content-Language: zh-CN
x-originating-ip: []
Content-Type: multipart/alternative; boundary="_000_71c82c9566f9462db4b1920237a17362huaweicom_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <>
Subject: Re: [mpls] Comments on draft-andersson-mpls-mna-fwk-01
X-Mailman-Version: 2.1.34
Precedence: list
List-Id: Multi-Protocol Label Switching WG <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 01 Jun 2022 07:01:35 -0000

Hi Tony,

Please see further replies inline:

From: Tony Li [] On Behalf Of Tony Li
Sent: Tuesday, May 31, 2022 10:54 PM
To: Dongjie (Jimmy) <>
Subject: Re: Comments on draft-andersson-mpls-mna-fwk-01

Hi Jimmy,

-        Ancillary data. The major question is: are the network actions without further parameters considered as ancillary data? This was recorded as one of the comments to the requirement document, and this document shows that inconsistency understanding of this basic concept could result in different interpretation of other terminologies. Thus I’d suggest the DT and the WG to have further review and discussion about the definition and the scope of ancillary data.

A network action is an abstract concept, so it is never considered data.  This is why we have Network Action Indicators.  NAI are not ancillary data.

[Jie] There are network actions which don’t have any associated data and only need an indicator in the packet.


[Jie #2] Good, this is also progress.

According to the ancillary data definition, such indicator also belong to ancillary data (data relating to the MPLS packet that may be used to affect the forwarding or other processing of that packet). Or do you want to modify the definition of ancillary data to exclude the network action indicators?

I disagree with your interpretation of the definition.  I would be open to suggestions on how to clarify the text.

[Jie #2] The purpose is to clarify the meaning of the terminologies so that people will have consistent view on them. I find this necessary as sometimes people use the same term in the discussion but actually refer to different things.

-        Network Action Sub-stack Indicator (NSI) and MNA label. These terms are used to refer to the indicator of the network action sub-stack. However, there is no clear text about whether they can indicate the existence of PSD or not. In the framework a general term for the indicator of the ancillary data (either ISD or PSD) is needed.

That’s because they’re orthogonal to PSD.  The indication of PSD is an NAI for a network action that requires PSD.  Similarly, the indication of ISD is an NAI for a network action that requires ISD.

[Jie] What you said is just one solution to indicate the existence of PSD. The indication of PSD may not rely on the NAI for specific network actions. It is suggested the framework document be generalized to allow different solutions of indicating the PSD.

I disagree.  The solution and the definition of the network action should specify what data is in the PSD.  There is no need for additional redundant signaling and certainly no need for the framework to specify encoding that should be left to the solution.

[Jie #2] I think we are talking about different solutions. In one possible solution, an indicator in the packet could just indicate the existence of PSD, and the NAIs are carried in the PSD. This is different from the solution you mentioned above. The framework should be generalized to include different options.

2.      Considerations about ISD and PSD in the framework

According to the recent DT and mail list discussion, it seems the consensus is that the framework and solution need to include the mechanism for carrying PSD. Whether ISD is needed in the framework and the specific solutions is still under discussion. Thus it is suggested the framework document align with the DT’s discussion on this point: have some text to indicate that PSD is the necessary component of the framework. For the text about ISD, it is suggested to indicate ISD is an optional component, and for some solutions ISD may not be used.

PSD is not required in every packet.  A solution that may chooses to support network actions that require PSD.  However, we also have solutions (e.g., Bruno’s) that choose NOT to support PSD.

[Jie] Neither ISD nor PSD is required in every MPLS packet.

Agreed.  Progress!

From the miad use cases we collected so far, it is clear that some types of network actions need to be carried using PSD. Thus PSD is required in the mna framework to meet the requirement of all the use cases. A solution document may choose to only support a subset of the use cases.

Agreed, and the ability to use PSD is already in the framework.

[Jie #2] OK. But my point was also about making ISD optional in the network actions. The cunin rrent text in sections 4 says that ISD is mandatory, while PSD is optional. My suggestion is to make ISD optional in this section.

The framework currently requires that NAI appear in stack.  I have sent a request to the mailing list (below) to see if the group would be willing to generalize this, but to date, only John Drake has responded.  You have responded in this email, but you have not given a clear answer.

[Jie] My personal opinion is that the framework can be generalized on the positioning of the NAI.

Thank you.

3.      Changes to MPLS forwarding/processing

The potential changes introduced by MNA to MPLS architecture is not only in the data plane encoding, but also in the forwarding and processing behaviors. This is especially the case for the processing of the ISD data. IMO this is one of the most important things the framework should cover. There is a placeholder section on the development of MPLS forwarding model, the processing of the indicator, the ISD and/or PSD data based on MPLS forwarding model needs to be specified.

Again, repetition does not improve understanding.

The section on the MPLS forwarding model is currently part of the editorial attic.  IMHO, it adds no value and will be discarded.

We can expect a solution to describe how its particular encoding is to be processed. This is not something that can be dealt with by the framework.

As of right now, there are no architectural bounds on a network action. If someone wants to define a network action to compute the Nth digit of pi, that’s 100% acceptable.

[Jie] The changes to MPLS forwarding model is architectural and not just related to a specific solution or network action. For example, the introduction of NAS to MPLS label stack requires additional processing at the ingress node, and the forwarding (in terms of label stack manipulation) at some transit nodes could be different from traditional label swap or pop.  Such changes to MPLS forwarding needs to be described in the document where NAS is introduced to MPLS.

I disagree. Those details are best left to the solution document.  At the very least, that text will need to be specific about encodings.

[Jie #2] RFC 3031 (MPLS architecture) specifies the basic MPLS forwarding behavior (push, pop, swap, php, etc.) without touching the label stack encoding.  Similarly, any change to MPLS forwarding behavior caused by miad/mna would belong to the mna framework/architecture document.

4.      Incorporation of related existing work

One of the comments I made is that draft-song-mpls-eh-indicator describes the alternatives of the indicator of the extension header. Please note that most of that text is about general analysis and comparison, and is not specific to any solution (i.e. not PSD only). Thus incorporation of such text would be helpful to this framework document.

Again, the framework is not an analysis or survey document.

[Jie] Maybe I was not accurate enough with the above statement, my reading of the content in draft-song-mpls-eh-indicator is mainly the description and summary of the alternatives of the indicator, thus some of which could fit into section 3.1 of the mna framework.

I don’t see anything that is of particular relevance.  If you have a specific suggestion, I’m open to hearing it.

[Jie #2] There are descriptions in section 2 about new bSPL and eSPL, section 3 about GAL and first nibble, section 4 about reusing ELI/EL, and section 5 about using FEC label as the indicator. And section 6 provides a summary of the pros and cons of each approach. All of these can be considered as the options of the indicator of ancillary data.

The GAL based approach and FEC label approach could be added to section 3.1 of the mna framework draft, the descriptions about other approaches could also be used to enrich the text.

Best regards,