Re: [mpls] [bier] The first nibble issue associated with MPLS encapsulation

"Nagendra Kumar Nainar (naikumar)" <> Thu, 14 April 2016 14:41 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 7B93A12E442; Thu, 14 Apr 2016 07:41:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -15.517
X-Spam-Status: No, score=-15.517 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.996, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id cNpYnxB9X-75; Thu, 14 Apr 2016 07:41:44 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id ABB7112E3E7; Thu, 14 Apr 2016 07:41:44 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;;; l=3328; q=dns/txt; s=iport; t=1460644904; x=1461854504; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=MGbomDxw7Qtxcp/k1fATf4Pl7dur5jWIMzdcf+9Feos=; b=gn6QKP6x+DSnfAaPQbulNoA5kEG5sryNAgNAXXnt/4feLS1YriI4c6dz 6UacWvZ9XTcS9jVXMc4G9ZiQz4qOU38zCR38WXCb6FreWSa5Mr8x3+CDe GjAJ0gR8HSVcI7gRUHxWEDXVLxqLqNV91AhciIOa+QA/uSLfka5uTZVO1 A=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos;i="5.24,485,1454976000"; d="scan'208";a="91456867"
Received: from ([]) by with ESMTP/TLS/DHE-RSA-AES256-SHA; 14 Apr 2016 14:41:43 +0000
Received: from ( []) by (8.14.5/8.14.5) with ESMTP id u3EEfhft024662 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Thu, 14 Apr 2016 14:41:43 GMT
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.0.1104.5; Thu, 14 Apr 2016 09:41:43 -0500
Received: from ([]) by ([]) with mapi id 15.00.1104.009; Thu, 14 Apr 2016 09:41:43 -0500
From: "Nagendra Kumar Nainar (naikumar)" <>
To: Eric C Rosen <>, Alexander Vainshtein <>, Stewart Bryant <>
Thread-Topic: [mpls] [bier] The first nibble issue associated with MPLS encapsulation
Thread-Index: AQHRllBPnKj84mXOL0uPk6xlEkdjZJ+Jm6UA
Date: Thu, 14 Apr 2016 14:41:43 +0000
Message-ID: <>
References: <> <> <> <> <> <> <> <> <> <> <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-US
user-agent: Microsoft-MacOutlook/
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: []
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <>
Cc: "" <>, "" <>, "Dr. Tony Przygienda" <>
Subject: Re: [mpls] [bier] The first nibble issue associated with MPLS encapsulation
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Multi-Protocol Label Switching WG <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 14 Apr 2016 14:41:46 -0000


Per IANA registry, 0-1 are ³Reserved² and so is not strictly assigned with
PW. Something like a modified CW beneath LSE?. Further, BIER is hop-by-hop
lookup based. So I think we don¹t need to include this always. Instead, we
could conditionally include this, if the next BFR is tunneled (not
directly connected).

The receiving node will use the label to identify the payload/FEC. So I
think, the presence of modified CW should not confuse it with PW.


On 4/14/16, 9:20 AM, "mpls on behalf of Eric C Rosen"
< on behalf of> wrote:

>On 4/14/2016 6:06 AM, Alexander Vainshtein wrote:
>> Stewart and all,
>> I concur with Stewart that there is a strong case for 0 in the first
>>nibble for all non-IP flows.
>> As for the need for sub-typing:
>> AFAIK quite a few implementations (including some HW-based packet
>>processors) treat 0 in the first nibble after the label stack as an
>>indication of an Ethernet PW.
>> Some of them go as far as to hash on the assumed L2 headers for ECMP.
>>This causes serious problems, e.g., with the TDM PWs that could be
>>reordered if handled by such packet processors in transit LSRs.
>> This makes quite a case for sub-typing IMO regardless of BIER.
>> At the same time, it seems that all the bits in CW structure are used -
>>at least for some PW types in some cases.
>It seems to me that Sasha's reasoning supports the conclusion that it is
>best to avoid 0 in the first nibble (even if this is not the conclusion
>he drew!)  I don't think sub-typing is a solution, because it doesn't
>offer any protection against the behavior of existing hardware.
>On 4/14/2016 5:31 AM, Stewart Bryant wrote:
>> The nibble value  is recorded in the IP types registry
>> and any wish to take another value really needs to be discussed
>> with the INT area.
>Are you referring to the IP Version Number registry?  (I am not aware of
>an "IP types registry".)   We're not asking for any modification to
>that, since we're not doing another version of IP. I don't see any need
>to get into  one of those long and non-productive arguments that the INT
>area seems to relish.
>On 4/13/2016 11:07 PM, Xuxiaohu wrote:
>> In fact, there is an attempt to have a registry for the first nibble
>>(a.k.a., MPLS payload type field).
>Hopefully that attempt won't succeed!
>On 4/14/2016 7:06 AM, Loa Andersson wrote:
>> While I can live with 0x0000, 0x0010 or 0x0101, RFC 4928 actually says:
>>    It is REQUIRED, however, that applications depend upon in-order
>>    packet delivery restrict the first nibble values to 0x0 and 0x1.
>> If that is what we want for bier, there is a case to use 0x0 or 0x1 for
>> bier- 
>Strictly speaking, RFC 4928 needs to be updated, as the reasoning given
>there does not really support the above "requirement".  But the effort
>to do that hardly seems worthwhile.  RFC 4928 already makes clear that
>the above requirement is protecting against the risk that IPv5 ECMP will
>affect some MPLS packets inappropriately. No one seems to think that
>that is a real risk.
>mpls mailing list