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

"Carlos Pignataro (cpignata)" <> Fri, 08 April 2016 22:38 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id B225C12D5D0; Fri, 8 Apr 2016 15:38:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -14.53
X-Spam-Status: No, score=-14.53 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01, 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 H5x3lklHNWsU; Fri, 8 Apr 2016 15:38:55 -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 895C512D540; Fri, 8 Apr 2016 15:38:55 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;;; l=26832; q=dns/txt; s=iport; t=1460155135; x=1461364735; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=YDiRtT4z7/PeWPK+q5IbDY56DYuoaGFxYHtujOsIkmw=; b=d8X+DsDYe/US9YsfpSEOEs9UNIaQUVKwGHjIFW5MmTnC6ITBolPe77OI 5sPVUb+3bSqff/epL9uIBaLs3uQ7qdm4O/6n3AAlxwTbdvzJbn2s33L5o T2UEL4XB1WFGffS4fXCoEBhHfNGfNbwo9QseYf/NiDBdJ8fn4coq6hwdN 0=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos; i="5.24,454,1454976000"; d="scan'208,217"; a="91609990"
Received: from ([]) by with ESMTP/TLS/DHE-RSA-AES256-SHA; 08 Apr 2016 22:38:54 +0000
Received: from ( []) by (8.14.5/8.14.5) with ESMTP id u38Mcr0q031643 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Fri, 8 Apr 2016 22:38:54 GMT
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.0.1104.5; Fri, 8 Apr 2016 18:38:52 -0400
Received: from ([]) by ([]) with mapi id 15.00.1104.009; Fri, 8 Apr 2016 18:38:53 -0400
From: "Carlos Pignataro (cpignata)" <>
To: Greg Mirsky <>, Alexander Vainshtein <>
Thread-Topic: [mpls] The first nibble issue associated with MPLS encapsulation
Thread-Index: AQHRkPR7Ow6l9wh8WUKpFJXl+MwAqJ+AqQ4A///PiXuAAHRmgP//0LOA
Date: Fri, 08 Apr 2016 22:38:52 +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: multipart/alternative; boundary="_000_D32DB7253F57Bcpignataciscocom_"
MIME-Version: 1.0
Archived-At: <>
Cc: "" <>, "" <>, "" <>, "Dr. Tony Przygienda" <>
Subject: Re: [mpls] 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: Fri, 08 Apr 2016 22:38:58 -0000


My point, sorry if I was not clear, was that there is no such a thing as a ‘first nibble registry’.

Instead, RFC 4928, Section 5, at, says:

   IANA has marked the value 0x1 in the IP protocol version number space
   as "Reserved" and placed a reference to this document to both values
   0x0 and 0x1.

And that is reflected as

The IANA text in 4928 is additionally followed by a disclaimer:

   Note that this document does not in any way change the policies
   regarding the allocation of version numbers, including the possible
   use of the reserved numbers for some future purpose.

Further, RFC 4385 does not specify the ‘first nibble’ as a field. Instead, it depicts the actual binary values for the different CW formats. In other words, it takes the values from the IP protocol version number and not as a new CW Field.


― Carlos.

PS: Sasha, quick typo, s/1119/1190/;

From: Greg Mirsky <<>>
Date: Friday, April 8, 2016 at 7:28 PM
To: Alexander Vainshtein <<>>
Cc: "<>" <<>>, "<>" <<>>, "Dr. Tony Przygienda" <<>>, "<>" <<>>, Xiaohu Xu <<>>, Carlos Pignataro <<>>
Subject: Re: [mpls] The first nibble issue associated with MPLS encapsulation

Hi Sasha,
thank you for pointing to existing IANA allocation, though stale. I wonder if there is the registry for the first nibble. We, Tony and I, had discussed the way the first nibble space managed. If there already is the registry, could you please point me to it.
Regards, Greg

On Apr 8, 2016 2:31 PM, "Alexander Vainshtein" <<>> wrote:

Carlos and all,
Just for the reference, IANA has defined version 5 (0101) has assigned to ST protocol and refers to RFC 1119. The latter has been obsoleted by RFC 1819, but the IANA
assignment still holds.

Is there, just in case, any relationship between BIER and ST?
Thumb typed on my cellphone

-------- Original Message --------
From: "Carlos Pignataro (cpignata)" <<>>
Date: Fri, April 08, 2016 9:25 PM +0300
To: Xiaohu Xu <<>>
CC:<>,<>,<>, "Dr. Tony Przygienda" <<>>
Subject: Re: [mpls] The first nibble issue associated with MPLS encapsulation

Xiaohu, Tony,

Please see inline.

On Apr 7, 2016, at 2:39 PM, Xuxiaohu <<>> wrote:

As for the first nibble issue, will it violate the layering principle of network protocol stacks if the first nibble of any new encapsulation header (which could be an MPLS payload) is used as the "MPLS payload type" field?

Reading draft-wang-bier-ethernet-01, Section 3, the “first nibble” is _not_ used as an “MPLS payload type”. Instead, the text describes an anti-aliasing mechanism, much like RFC 4928.

The relevant text is:
     First nibble: The first 4 bits of the header are set to 0101; this
   ensures that the BIER header will not be confused with an IP header
   or with the header of a pseudowire packet.

Which says “… will not be confused with …"

wouldn't it  be more reasonable and sustainable to fix the problem (i.e., the lack of a protocol field in the MPLS header) by the MPLS header itself?

Who says it is a *problem*? There’s no “fixing” needed.

By the way, since it's claimed that the NSH is transport-independant, it means the NSH should be able to be transported over MPLS. However, it seems that the first nibble issue has not be considered in the current NSH draft. As a result, when encapsulating NSH over MPLS, the NSH may be mis-interpreted as IP header.

There seems to be some massive confusion on this paragraph, on a number of levels. First, NSH is not “claimed to be” transport-independent. It is by charter and by design. Second, the NSH draft does not even include the term “MPLS”, because it does not define transports. The SFC Encapsulation can be used in a transport-agnostic way.

One more comment below.

Best regards,

发件人: BIER [<>] 代表 Tony Przygienda [<>]
发送时间: 2016年4月5日 22:36
主题: [Bier] comments on draft-wang-bier-ethernet-01

after reading

a) first nibble: refer to MPLS encaps as "the same value" to keep in sync

One comment regarding the “First nibble” text at draft-ietf-bier-mpls-encapsulation-03

Since the function of the first nibble is to prevent aliasing with an IP packet, in order for RFC 4928 to specify values of 0x0 and 0x1 for the First Nibble, it had to “Reserve” IP protocol versions of 0 and 1, referencing that RFC (see

Is the intent to re-assign IPv5 at ?

Note that RFC 4928 says “REQUIRED” at:

   It is REQUIRED, however, that applications depend upon in-order
   packet delivery restrict the first nibble values to 0x0 and 0x1.


― Carlos.

b) refer to all other possible fields to MPLS encaps to keep in sync when describing instead of repeating
c) you need to describe which kind of ether MACs are allowed, especially on broadcast media, i.e. is it always p2p or can you take advantage of the broadcast ?
d) Figure 4: use the architecture/MPLS encoding for the length, don't invent a new one
e) who will obtain a new ether type from IEEE? As far I understand, not a trivial process albeit we have several liaisons with IEEE

We’ve heard that a million monkeys at a million keyboards could produce the complete works of Shakespeare; now, thanks to the Internet, we know that is not true.
―Robert Wilensky
mpls mailing list<>

mpls mailing list<>