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

Xuxiaohu <> Thu, 14 April 2016 03:07 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 2B21012DFA5; Wed, 13 Apr 2016 20:07:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -5.217
X-Spam-Status: No, score=-5.217 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.996, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id P1WIrOh7SZo2; Wed, 13 Apr 2016 20:07:13 -0700 (PDT)
Received: from ( []) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 3EBA812DEC4; Wed, 13 Apr 2016 20:07:12 -0700 (PDT)
Received: from (EHLO ([]) by (MOS 4.3.7-GA FastPath queued) with ESMTP id CMD15174; Thu, 14 Apr 2016 03:07:10 +0000 (GMT)
Received: from ( by ( with Microsoft SMTP Server (TLS) id; Thu, 14 Apr 2016 04:07:09 +0100
Received: from ([fe80::a54a:89d2:c471:ff]) by ([]) with mapi id 14.03.0235.001; Thu, 14 Apr 2016 11:07:06 +0800
From: Xuxiaohu <>
To: Eric C Rosen <>, "Carlos Pignataro (cpignata)" <>
Thread-Topic: [bier] [mpls] The first nibble issue associated with MPLS encapsulation
Thread-Index: AQHRlZODxyb0YWE87kOEgjOaa5qR65+IxvJA
Date: Thu, 14 Apr 2016 03:07:06 +0000
Message-ID: <>
References: <> <> <> <> <> <> <> <> <> <>
In-Reply-To: <>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
x-originating-ip: []
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020203.570F095E.00D5, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0, ip=, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: 1715b35fb911aa155092b33cf697fcc5
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 03:07:15 -0000

> -----Original Message-----
> From: Eric C Rosen []
> Sent: Wednesday, April 13, 2016 10:48 PM
> To: Carlos Pignataro (cpignata)
> Cc: Alexander Vainshtein; Greg Mirsky;;; Xuxiaohu;
> Dr. Tony Przygienda
> Subject: Re: [bier] [mpls] The first nibble issue associated with MPLS
> encapsulation
> On 4/11/2016 8:19 PM, Carlos Pignataro (cpignata) wrote:
> > The format of a BIER packet have enough constrained or self-defining
> > fields, that an off-line parsing tool like Wireshark can apply enough
> > heuristics to figure it out, without the 0x5.
> I haven't worked out for myself whether this is the case or not, but it certainly
> doesn't hurt to have the 0x05 there.
> > I understand why a mid-point LSR might want to not alias the MPLS
> > payload with IPv4 or IPv6, to prevent mis-hashing in the LB. Why would
> > a node be interested in knowing the payload is not a PW? What would it
> > do differently?
> I'm not sure if there is any hardware that performs PW-specific functions in the
> forwarding plane, based on the first nibble, but it seems prudent to avoid any
> possibility of confusion.
> > [It is interesting that the hint is, as described, to nudge a node
> > that the packet is *not* something, instead of the packet *is* BIER.]
> Well, of course, that's why the nibble is not a protocol type field ;-) In the MPLS

If we pick different values for the first nibble of different MPLS payloads, the first nibble actually plays the role of a protocol type field. In fact, there is an attempt to have a registry for the first nibble (a.k.a., MPLS payload type field).

Best regards,

> encaps, the fact that the packet is BIER is determined from the MPLS label.  In
> other proposed encapsulations, the encapsulating protocol would have a
> protocol type field.
> >> This strategy does incur a risk.  Suppose IPv5 gets designed, implemented,
> and deployed, and folks start to deploy hardware that does MPLS load balancing
> by inspecting the IPv5 headers of the MPLS payloads.  If a BIER packet is
> traversing an MPLS tunnel, inappropriate load splitting may occur if the
> hardware thinks the payload is IPv5 rather than BIER.
> >>
> >> This particular risk doesn't seem very significant to me.
> >>
> > I agree that risk is quite insignificant (null in practice). The real risk I believe is if
> some other application over MPLS uses 0x5 in the first nibble, because they do
> not want to be confused with IP either, and they do not like 0x0 or 0x1.
> That is possible, but I don't really see what the problem is.
> I guess it is true that we'll have to say that BIER is not 100%
> compliant with RFC 4928.   I don't see that as a problem either, but it
> is certainly possible that some AD will make an issue of it.