Re: [mpls] how does it work if ....

Loa Andersson <> Fri, 26 March 2021 11:06 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 4AF8A3A1B81 for <>; Fri, 26 Mar 2021 04:06:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id Sldv0Nsrq8jF for <>; Fri, 26 Mar 2021 04:06:49 -0700 (PDT)
Received: from ( []) (using TLSv1.1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 53A613A1B7B for <>; Fri, 26 Mar 2021 04:06:49 -0700 (PDT)
Received: from [] (unknown []) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: by (Postfix) with ESMTPSA id 2F3A3325B26; Fri, 26 Mar 2021 12:06:31 +0100 (CET)
To: Stewart Bryant <>
Cc: "" <>, Kireeti Kompella <>
References: <> <> <> <>
From: Loa Andersson <>
Message-ID: <>
Date: Fri, 26 Mar 2021 19:06:23 +0800
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 8bit
Archived-At: <>
Subject: Re: [mpls] how does it work if ....
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Multi-Protocol Label Switching WG <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 26 Mar 2021 11:06:54 -0000


I understand evbery single piece yuor argument, but can't get my head 
around the it ll in the end.

You say:

    You only pop the label to see the xSPL if you are the destination.

So my conclusion is that if you don't pop the top label you can't see 
the info encoded in the xSPL, unless you scan the stack without popping 
the top label.  Crossing the Rubicon!

I guess that this is fine, but that seems to indicate that you have to 
scan every label stack that passes a node. And when you scan how do you 
know when to stop, it might be that the first xSPL that you encounter is 
the important one, it might be deeper down.

Wouldn't it be better to have something in the top label that tells you 
where you need to look and what you ar looking for?

I'd say that this is a FEC.


On 26/03/2021 01:51, Stewart Bryant wrote:
> Loa
> Reply in line
>> On 25 Mar 2021, at 04:56, Loa Andersson < <>> 
>> wrote:
>> Stewart,
>> inline please.
>> On 18/03/2021 00:34, Stewart Bryant wrote:
>>> You only pop the label to see the xSPL if you are the destination.
>> What do you mean by "destination", are you referring to the node that 
>> will pop the top label with the SPLs encoding information beneath? I 
>> we disable the PHP, thast would be the PE, right?
> Yes.
>> So that mean that we can't encode HbH behavior?
> Well, we have crossed the rubicon regarding looking further down the 
> stack to take a forwarding decision. We did this formally with the 
> ELI/EL pair, and have been doing it informally with the five tupple ECMP 
> hash for a long time.
>> And info theat relates to forwarding is also not very useful, since 
>> the packet reached its destination.
> Indeed, so an LSR is going to have to look for this, and ideally this 
> should be optional behaviour like the EL search is.
> Presumably BTW the reason that Kireeti chose to attach his new 
> functionality to the ELI and presumably also the EL is that his (and 
> many other forwarders) was looking for this anyway, so it is not much 
> more work or stack space.
>>> If you do not know about the xSPL you should not have been sent the 
>>> packet in the first place. That would be a routing/control plane failure.
>> So we need some type of mechanism that tells potential ingress LER's 
>> which of its reachable are capable to extract inf from SPL's?
> We need that, but we need that for any stack action other than pop 
> single label and forward IP packet which is the only default MPLS action.
> Similarly if we are forwarding along a path that needs an action we need 
> to know that the on-path LSRs can execute that action on the packet.
> So, I don’t think that this is anything beyond business as usual.
> Best regards
> Stewart
>> /Loa
>>> If you receive it by mistake, and consider that it is for you 
>>> (unlikely but possible) so you pop the label, you will find an 
>>> unknown xSPL and presumably drop the packet.
>>> So I that is safe.
>>> What is going to be difficult is with one of Kireeti’s reused Els. 
>>> That will work fine at a P router, but a PE is going to not process 
>>> the packet properly. This cannot be a PW or Detnet since that has 
>>> another label as a gatekeeper, so we nee think what happens if it is 
>>> an IP packet, in which case the ECMP defeat nibble will be found. 
>>> This should be unexpected, so the packet will be dropped.
>>> If there is an old P router that does not understand the xSPL it will 
>>> just swap and forward as before.
>>> You can always program a P router not to PHP (we did that with 
>>> MPLS-TP for example). It is more work for the receiving PE, but it 
>>> needs to be capable of dealing with that or it should not be used in 
>>> that role with this label stack.
>>> So assuming that Kireeti and I have the same vision of how this 
>>> works, it looks safe to me. However we have to look at every corner 
>>> and strong exception to validate the approach.
>>> Stewart
>>>> On 17 Mar 2021, at 14:18, Loa Andersson < 
>>>> <>> wrote:
>>>> Kireeti,
>>>> I'm looking at your slides from the joint meeting, in particular 
>>>> slide #3, where you say at thye bottom:
>>>>  "Corollary: such labels MUST NOT reach the top of stack (by popping
>>>>   labels above them)"
>>>> How is that backwards compatible.
>>>> If you  have an old LSR, that don't know to look at the bSPL or eSPL 
>>>> underneath the top label. I assume that the top label will be 
>>>> swapped and the packet forwarded.
>>>> What is the pen-ultimate LSR is "old" and just pop the top label, 
>>>> how can the PE sort this out?
>>>> /Loa
>>>> --
>>>> Loa Andersson email: <>
>>>> Senior MPLS Expert <>
>>>> Bronze Dragon Consulting             phone: +46 739 81 21 64
>>>> _______________________________________________
>>>> mpls mailing list
>>>> <>
>> --
>> Loa Andersson               <>
>> Senior MPLS Expert <>
>> Bronze Dragon Consulting             phone: +46 739 81 21 64


Loa Andersson                        email:
Senior MPLS Expert                
Bronze Dragon Consulting             phone: +46 739 81 21 64