Re: [mpls] [Bier] Encapsulation first nibble

Xuxiaohu <xuxiaohu@huawei.com> Tue, 17 March 2015 21:44 UTC

Return-Path: <xuxiaohu@huawei.com>
X-Original-To: mpls@ietfa.amsl.com
Delivered-To: mpls@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 83DD11A8903; Tue, 17 Mar 2015 14:44:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.422
X-Spam-Level:
X-Spam-Status: No, score=-1.422 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, CN_BODY_35=0.339, MIME_CHARSET_FARAWAY=2.45, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UHvIYe9W9ZZ1; Tue, 17 Mar 2015 14:44:13 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 487541A1B6B; Tue, 17 Mar 2015 14:44:12 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml402-hub.china.huawei.com) ([172.18.7.190]) by lhrrg01-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id BTT69516; Tue, 17 Mar 2015 21:44:10 +0000 (GMT)
Received: from NKGEML404-HUB.china.huawei.com (10.98.56.35) by lhreml402-hub.china.huawei.com (10.201.5.241) with Microsoft SMTP Server (TLS) id 14.3.158.1; Tue, 17 Mar 2015 21:44:09 +0000
Received: from NKGEML512-MBS.china.huawei.com ([169.254.8.209]) by nkgeml404-hub.china.huawei.com ([10.98.56.35]) with mapi id 14.03.0158.001; Wed, 18 Mar 2015 05:44:04 +0800
From: Xuxiaohu <xuxiaohu@huawei.com>
To: Eric C Rosen <erosen@juniper.net>, "stbryant@cisco.com" <stbryant@cisco.com>, BIER <bier@ietf.org>
Thread-Topic: [Bier] Encapsulation first nibble
Thread-Index: AQHQXcZrqojq7Dn2dkqRctiyZ05xTp0aTR0AgAY0PqCAAAkpwP//3oUAgADIuWA=
Date: Tue, 17 Mar 2015 21:44:03 +0000
Message-ID: <1FEE3F8F5CCDE64C9A8E8F4AD27C19EE0831CCD2@NKGEML512-MBS.china.huawei.com>
References: <55033E87.3030305@juniper.net> <5503403E.4050304@cisco.com> <1FEE3F8F5CCDE64C9A8E8F4AD27C19EE0831CB77@NKGEML512-MBS.china.huawei.com> <1FEE3F8F5CCDE64C9A8E8F4AD27C19EE0831CBB2@NKGEML512-MBS.china.huawei.com> <55086028.1070004@juniper.net>
In-Reply-To: <55086028.1070004@juniper.net>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.47.74.115]
Content-Type: text/plain; charset="gb2312"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <http://mailarchive.ietf.org/arch/msg/mpls/jJlsj65WWNW1glrQHcXwntWbZPg>
Cc: "mpls@ietf.org" <mpls@ietf.org>, "sfc@ietf.org" <sfc@ietf.org>
Subject: Re: [mpls] [Bier] Encapsulation first nibble
X-BeenThere: mpls@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Multi-Protocol Label Switching WG <mpls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mpls>, <mailto:mpls-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mpls/>
List-Post: <mailto:mpls@ietf.org>
List-Help: <mailto:mpls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mpls>, <mailto:mpls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 17 Mar 2015 21:44:15 -0000

Hi Eric,

Thanks a lot for your response. Please see my response inline.

> -----邮件原件-----
> 发件人: Eric C Rosen [mailto:erosen@juniper.net]
> 发送时间: 2015年3月18日 1:11
> 收件人: Xuxiaohu; stbryant@cisco.com; BIER
> 抄送: erosen@juniper.net; mpls@ietf.org; sfc@ietf.org
> 主题: Re: [Bier] Encapsulation first nibble
> 
> On 3/17/2015 7:17 AM, Xuxiaohu wrote:
> > Another way is to add a protocol identifier field after the bottom of
> > the label stack
> > (https://tools.ietf.org/html/draft-xu-mpls-payload-protocol-identifier-00).
> > In this way, we would not be bothered about the nibble issue anymore
> > when proposing any new encapsulation header which may be encapsulated
> > within an MPLS packet.
> 
> When a BIER packet is traveling from BFIR to BFER via a sequence of directly
> connected BFRs, each BFR already knows, via the bottom label, that the packet
> is a BIER packet.  The nibble issue really only matters when a BIER packet is
> traveling through a non-BIER tunnel.

> When a BIER packet is traveling through a non-BIER tunnel, some of the transit
> routers may be routers that are running older software.  They will base their
> ECMP treatment of the packet on the first nibble.  A protocol identifier field
> won't help, because these old routers won't understand it.  For newer routers,

Since the nibble immediately after the Protocol Identifier Label (PIL) which is at the bottom of the label stack is set to zero, those old routers would not interpreted those packets containing a protocol id field as IP packets. Of course, if the MPLS payload is an IP packet, it could be encapsulated as before (i.e., w/o the protocol id field) . In other words, the protocol id field could be applicable to new payload types till those old routers have disappeared from the network.

> I think the proper direction is to use the MPLS entropy label, rather than to
> have each router compute the entropy based on an analysis of the next
> encapsulation header.
> 
> So I don't think BIER justifies the use of a new MPLS special purpose
> payload-protocol-identifier label.

The reason that I mentioned that approach is: for whatever new encapsulation header (e.g., BIER, NSH,...), as long as it has the possibility of being encapsulated within an MPLS packet, we would have to address the nibble issue when designing that new encapsulation header. I wonder why not the MPLS itself fixes its own drawback (i.e., the lack of the protocol field) so as to eliminate such bother forever. In addition, it could further eliminate the need for allocating and advertising labels for indicating these new MPLS payload types. For example, assume the NSH is to be encapsulated within an MPLS packet, the egress would have to allocate and advertise an application label for the NSH-encapsulated packet, just as what the MPLS-BIER label does. Of course, the MPLS-BIER label could be used to extract other BIER related info besides the payload type info.

Best regards,
Xiaohu

> There is one case though in which it could potentially be useful to enable the
> transit routers of a unicast MPLS tunnel to determine that a particular packet
> has a BIER payload.  Suppose thtat the MPLS TTL of the unicast tunnel expires
> while the packet is still in the tunnel.  It might be useful for the transit router
> to generate an ICMP response to the TTL expiration, and for this ICMP
> response to be BIER-aware.
> However, this is only likely to happen in a traceroute-like application, and I don't
> think that is sufficient justification for having all BIER packets carry the two or
> three extra label stack entries it would take to provide the special purpose
> payload-protocol-identifier label.  On the other hand, a nibble value specific to
> BIER might be useful, as it provides the same information without requiring
> additional overhead.