Re: [mpls] draft-fang-mpls-label-forwarding-no-swap - how much does it really save?

Robert Raszuk <> Fri, 24 July 2015 16:55 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id 300E21A87A9 for <>; Fri, 24 Jul 2015 09:55:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.277
X-Spam-Status: No, score=-1.277 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FM_FORGED_GMAIL=0.622, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id Mj5up--Ph42T for <>; Fri, 24 Jul 2015 09:55:50 -0700 (PDT)
Received: from ( [IPv6:2a00:1450:400c:c05::230]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id A8AD61A8726 for <>; Fri, 24 Jul 2015 09:55:31 -0700 (PDT)
Received: by wibxm9 with SMTP id xm9so35944621wib.1 for <>; Fri, 24 Jul 2015 09:55:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=aoEHeWnxTE9+Hj/mE2H5k22QV4xY81hvDdX3Oj05JSE=; b=Y4BlTAHuczu0Cqe0+NNJSFg4RXhNjF9++Q6MQad3n5o02/QZRplh8+mQoGqWsJfHgJ 6rngpUmaJQGLWs0Z8uJK/7K3OYpdOV0lIJCVYENJiURwLHHTxKLJOuSVdIaLc41vVGfi NOTlBkpOeOX4LqAvvGHF2YInl8gjTJZ8JHPGCsp2bI/rauN5DCeBwblT6C14qS+K2ZIg jjxkNG9GuGjRAYACL1/+fx/wigTe1StnQ/iOuwUklw0Pwn08sJMI9KrVb/9RzhtmqST3 Q/hMcxwHohnm8NuFbjXlsB8JgYD6mWIoFd6FC/gLOb5oLaiOB0LNEO+dp5849k5mRTR7 jI5Q==
MIME-Version: 1.0
X-Received: by with SMTP id w15mr9335425wie.58.1437756930488; Fri, 24 Jul 2015 09:55:30 -0700 (PDT)
Received: by with HTTP; Fri, 24 Jul 2015 09:55:29 -0700 (PDT)
Received: by with HTTP; Fri, 24 Jul 2015 09:55:29 -0700 (PDT)
In-Reply-To: <>
References: <> <> <> <> <> <> <> <> <>
Date: Fri, 24 Jul 2015 18:55:29 +0200
X-Google-Sender-Auth: t20sB8bX8FpqBZ8sqFHraiqik1k
Message-ID: <>
From: Robert Raszuk <>
To: Eric Rosen <>
Content-Type: multipart/alternative; boundary="047d7b6d9bac1d80c2051ba1df70"
Archived-At: <>
Cc: "" <>
Subject: Re: [mpls] draft-fang-mpls-label-forwarding-no-swap - how much does it really save?
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Multi-Protocol Label Switching WG <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 24 Jul 2015 16:55:52 -0000


This discussion to me is not related to data plane.

I look at it from control plane perspective which needs to pass label
values to date plane.

Creating non standard optimised APIs or YANG models to send single label or
artificially send identical labels an in and out when given architecture
does not have it seems like no-op to me.

On Jul 24, 2015 6:29 PM, "Eric C Rosen" <> wrote:

> On 7/23/2015 5:31 PM, Robert Raszuk wrote:
>> Going by your logic we would have a notion of "incoming IP address" and
>> "outgoing IP address" in all routers in the world doing basic non NAT
>> routing
> I'm not sure I understand what it means to "have a notion ... in all
> routers".  A given router only needs to implement the functionality that it
> needs to provide to those who are going to deploy it.
> However, certainly there is a distinction to be made between "incoming"
> and "outgoing" even in the case of "pure" IP.  The incoming IP header of a
> packet is always different than the outgoing IP header of that packet, due
> to the need to modify the TTL and checksum fields.
> In addition, as you point out, the incoming source address field may be
> different than the outgoing source address field, due to NAT.  And use of
> the source routing option can result in there being a difference between
> the incoming destination address field and the outgoing destination address
> field.
> Another interesting case is tunnel stitching, where the incoming source
> and destination address fields may both be different than the outgoing
> source and destination address fields.  If you want to optimize for tunnel
> stitching, you precompute the rewrite string, and to the forwarding plane
> it looks like an ordinary case of forwarding a packet.
> Of course, if your platform doesn't need to perform any of these
> functions, it doesn't have to implement them.  Similarly, if you think that
> the most common operation (or even the only operation) your platform will
> have to perform on an MPLS packet is "don't modify the label stack except
> for the TTL of the top entry", nothing stops you from optimizing for that
> case.
> BTW, I understand perfectly well that there is some controversy about
> whether it is or is not a good idea to use domain-wide labels, but that is
> not a data plane issue, and the use of domain-wide labels does not require
> a change in the data plane architecture.