Re: [Bier] Questions regarding <draft-zhang-bier-bierin6-03>

Xiejingrong <xiejingrong@huawei.com> Tue, 16 July 2019 10:31 UTC

Return-Path: <xiejingrong@huawei.com>
X-Original-To: bier@ietfa.amsl.com
Delivered-To: bier@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A1848120074; Tue, 16 Jul 2019 03:31:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.199
X-Spam-Level:
X-Spam-Status: No, score=-4.199 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
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 f0PbbNNlo9sR; Tue, 16 Jul 2019 03:31:31 -0700 (PDT)
Received: from huawei.com (lhrrgout.huawei.com [185.176.76.210]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 12BF7120234; Tue, 16 Jul 2019 03:31:31 -0700 (PDT)
Received: from lhreml703-cah.china.huawei.com (unknown [172.18.7.108]) by Forcepoint Email with ESMTP id 9A755F5EE7B8CC8DC6B9; Tue, 16 Jul 2019 11:31:28 +0100 (IST)
Received: from NKGEML412-HUB.china.huawei.com (10.98.56.73) by lhreml703-cah.china.huawei.com (10.201.108.44) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 16 Jul 2019 11:31:27 +0100
Received: from NKGEML514-MBS.china.huawei.com ([169.254.3.142]) by nkgeml412-hub.china.huawei.com ([10.98.56.73]) with mapi id 14.03.0439.000; Tue, 16 Jul 2019 18:31:16 +0800
From: Xiejingrong <xiejingrong@huawei.com>
To: Tony Przygienda <tonysietf@gmail.com>, "Jeffrey (Zhaohui) Zhang" <zzhang@juniper.net>
CC: Senthil Dhanaraj <senthil.dhanaraj.ietf@gmail.com>, BIER WG <bier@ietf.org>, "draft-zhang-bier-bierin6@ietf.org" <draft-zhang-bier-bierin6@ietf.org>, Antoni Przygienda <prz@juniper.net>, "Jeffrey (Zhaohui) Zhang" <zzhang=40juniper.net@dmarc.ietf.org>
Thread-Topic: [Bier] Questions regarding <draft-zhang-bier-bierin6-03>
Thread-Index: AdU2IrLV6PANcPQ8TJ2wzjJsYLxNqQAHa6GgAHBJYdsAJ5LssAAG4U8gABMzeYcAAKuo4AABG4TgAAAgNCAAYIK8AAABqPsAABEawzAAAYangAA1J+GgAAIV77A=
Date: Tue, 16 Jul 2019 10:31:16 +0000
Message-ID: <16253F7987E4F346823E305D08F9115AAB8F19ED@nkgeml514-mbs.china.huawei.com>
References: <16253F7987E4F346823E305D08F9115AAB8DC468@nkgeml514-mbx.china.huawei.com> <DM5PR05MB3548E853C20E03CC58C7956BD4F10@DM5PR05MB3548.namprd05.prod.outlook.com> <MWHPR05MB32792FD6E09E4444B8DF45C3ACF30@MWHPR05MB3279.namprd05.prod.outlook.com> <16253F7987E4F346823E305D08F9115AAB8DD5B0@nkgeml514-mbx.china.huawei.com> <DM5PR05MB3548F4EFF3EFC0CCDA3FDE73D4F20@DM5PR05MB3548.namprd05.prod.outlook.com> <16253F7987E4F346823E305D08F9115AAB8DD87A@nkgeml514-mbx.china.huawei.com> <DM5PR05MB354819A911C930C1B8519CD4D4F20@DM5PR05MB3548.namprd05.prod.outlook.com> <DM5PR05MB3548637A9F8CBB1CB70BE3E6D4CD0@DM5PR05MB3548.namprd05.prod.outlook.com> <CAG9=0bJyYGhmLnm8CVk904EcouaW7VCP7KTvuciWc57NuiFDpQ@mail.gmail.com> <CA+wi2hNW4CbKgG1qgiaKqeGsz4GjS7hLkSDWH1yu4VFWfg2C5A@mail.gmail.com> <16253F7987E4F346823E305D08F9115AAB8EAFB1@nkgeml514-mbs.china.huawei.com> <CA+wi2hNZVEmUGBunc1YD5JAG7xtNnCf5hgzQ8FuSYOfJw2OcZg@mail.gmail.com> <16253F7987E4F346823E305D08F9115AAB8F1681@nkgeml514-mbs.china.huawei.com>
In-Reply-To: <16253F7987E4F346823E305D08F9115AAB8F1681@nkgeml514-mbs.china.huawei.com>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.111.217.214]
Content-Type: multipart/alternative; boundary="_000_16253F7987E4F346823E305D08F9115AAB8F19EDnkgeml514mbschi_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/bier/PDw6J0PZKBDvc7h8TsRshf0meoc>
Subject: Re: [Bier] Questions regarding <draft-zhang-bier-bierin6-03>
X-BeenThere: bier@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "\"Bit Indexed Explicit Replication discussion list\"" <bier.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/bier>, <mailto:bier-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/bier/>
List-Post: <mailto:bier@ietf.org>
List-Help: <mailto:bier-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/bier>, <mailto:bier-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 16 Jul 2019 10:31:35 -0000

Sorry, the picture didn’t show in the list.
I re-write in text:

-------Solution Using NH=BIER (draft-zhang-bier-bierin6)-------
Result = FIB Lookup(DA)                            //Step 0
Switch(Result)
  Case Local Interface IPv6 Address:               //Step 1
    If packet is (NH=BIER)                         //Step 2 (*A*)
        Process it
    Else if packet is (NH=a/b/c/d & Last_NH=BIER)  //Step 3
        Process it
    Else If packet is (NH=XXXX)                    //Step 4 (*B*)
        Process it
    Else if packet is (NH=a/b/c/d & Last_NH=XXXX)  //Step 5
        Process it
    Else If packet is (NH=YYYY)                    //Step 6 (*C*)
        Process it
    Else if packet is (NH=a/b/c/d & Last_NH=YYYY)  //Step 7
        Process it
    Else
        Do normal things as usual                  //Step 8 (*D*)
  Case Non-Local Routable IPv6 Address
      Do normal routing and forwarding as usual.

(A) need 2~3 steps!
(B) need 4~5 steps!
(C) need 6~7 steps!
(D) need 8 steps!


-------Solution Using EH and End.BIER(draft-xie-bier-ipv6-encapsulation)-------
Result = FIB Lookup(DA)                                   //Step 0
Switch(Result)
  Case End.BIER:                                          //Step 1
    IF NH=60 and OptType1=BIER and OptLen1=HdrExtLen*8+4  //Step 2(A)
         Process it
    ELSE IF (NH=ICMPv6) or (NH=60 and Dest_NH=ICMPv6)
         Send to CPU.
    ELSE
         Drop the packet.
  Case End.XXXX:                                         //Step 1
    IF NH=60 and OptType1=BIER and OptLen1=HdrExtLen*8+4 //Step 2(B)
        Process it
    ELSE
        Drop the packet
 Case End.YYYY:                                          //Step 1
    IF NH=60 and OptType1=BIER and OptLen1=HdrExtLen*8+4 //Step 2(C)
        Process it
    ELSE
        Drop the packet
  Case Local Interface IPv6 Address:                     //Step 1
        Do normal things as usual                        //Step 2(D)
  Case Non-Local Routable IPv6 Address
        Do normal routing and forwarding as usual.

(A) need 2 steps!
(B) need 2 steps!
(C) need 2 steps!
(D) need 2 steps!


-------Repeat the advantages-------
The least impact:  Switch-case by preceding FIB lookup doesn’t impact other cases.
The most efficient:  Do not need walking through EH ---- only check the first EH.
The most extensible to support features in the future:   Combine with Routing Header(e.g., SRH), Fragmentation, AH or ESP.  Support Multiple BIER TLVs in a single Destination Options header. etc.

Thanks
Jingrong.

From: BIER [mailto:bier-bounces@ietf.org] On Behalf Of Xiejingrong
Sent: Tuesday, July 16, 2019 5:29 PM
To: Tony Przygienda <tonysietf@gmail.com>; Jeffrey (Zhaohui) Zhang <zzhang@juniper.net>
Cc: Senthil Dhanaraj <senthil.dhanaraj.ietf@gmail.com>; BIER WG <bier@ietf.org>; draft-zhang-bier-bierin6@ietf.org; Antoni Przygienda <prz@juniper.net>; Jeffrey (Zhaohui) Zhang <zzhang=40juniper.net@dmarc.ietf.org>
Subject: Re: [Bier] Questions regarding <draft-zhang-bier-bierin6-03>

Hi Tony, Jeffrey:
Let’s f2f in BIER session at Montreal.
Here is a page I think useful to understand the difference between Layer-4 solution(left) and Layer-3 solution(right).
That’s why I think use of a preceding End.BIER is most efficient (for BIER forwarding), least impact (to exist functions), and most extensible for future functions.

The least impact:  Switch-case by preceding FIB lookup doesn’t impact other cases.
The most efficient:  Do not need walking through EH ---- only check the first EH.
The most extensible to support features in the future:   Combine with Routing Header(e.g., SRH), Fragmentation, AH or ESP.  Support Multiple BIER TLVs in a single Destination Options header. etc.

Thanks
Jingrong

From: Tony Przygienda [mailto:tonysietf@gmail.com]
Sent: Monday, July 15, 2019 11:58 PM
To: Xiejingrong <xiejingrong@huawei.com<mailto:xiejingrong@huawei.com>>
Cc: Senthil Dhanaraj <senthil.dhanaraj.ietf@gmail.com<mailto:senthil.dhanaraj.ietf@gmail.com>>; Jeffrey (Zhaohui) Zhang <zzhang=40juniper.net@dmarc.ietf.org<mailto:zzhang=40juniper.net@dmarc.ietf.org>>; BIER WG <bier@ietf.org<mailto:bier@ietf.org>>; draft-zhang-bier-bierin6@ietf.org<mailto:draft-zhang-bier-bierin6@ietf.org>; Antoni Przygienda <prz@juniper.net<mailto:prz@juniper.net>>
Subject: Re: [Bier] Questions regarding <draft-zhang-bier-bierin6-03>



On Mon, Jul 15, 2019 at 12:39 AM Xiejingrong <xiejingrong@huawei.com<mailto:xiejingrong@huawei.com>> wrote:
Please see my comments below:

From: Tony Przygienda [mailto:tonysietf@gmail.com<mailto:tonysietf@gmail.com>]
Sent: Monday, July 15, 2019 3:04 PM
To: Senthil Dhanaraj <senthil.dhanaraj.ietf@gmail.com<mailto:senthil.dhanaraj.ietf@gmail.com>>
Cc: Jeffrey (Zhaohui) Zhang <zzhang=40juniper.net@dmarc.ietf.org<mailto:40juniper.net@dmarc.ietf.org>>; Xiejingrong <xiejingrong@huawei.com<mailto:xiejingrong@huawei.com>>; BIER WG <bier@ietf.org<mailto:bier@ietf.org>>; draft-zhang-bier-bierin6@ietf.org<mailto:draft-zhang-bier-bierin6@ietf.org>; Antoni Przygienda <prz@juniper.net<mailto:prz@juniper.net>>
Subject: Re: [Bier] Questions regarding <draft-zhang-bier-bierin6-03>

if your router can do BIER fast path IPv6 is not an interesting option no matter which draft.
[XJR] That’s not true. The interest in BIER-IPv6-fast-path is strong.  There is no problem of “interest” or “requirement”. The problem is the lack of convinced  “technology” or “solution”.

enlighten me where you saw that except being personally convinced it's cool ... And what is the specific reason customer would want that complexity/cost of v6 option processing silicon compared to ether/mpls encaps.

one would either carry native ether or MPLS rather than trying to build IPv6 fast path with header options @ arbitrary place,
probably misaligning bitmasks and ultimately forcing 4K buffers on v6 option processing in silicon which may be fun but it is expensive, complex fun.
[XJR] The proposals are not as good as expected,  or could not do it in a simple and inexpensive way! I guess this is the point.

yupp. MPLS/Ether will be as inexpensive as it can be and shares same processing block.

[XJR] Well I think, using a preceding BIER-Specific IPv6 Address in IPv6 DA can solve the problem perfectly.
[XJR] This is the way SRv6/SRH do, which first introduces the fast-path processing of extension header, without recognition the pattern of the EHs and the TLVs, but simply ‘process the desired packet, and drop the undesired packet’!

BIER is neither SRv6 nor SRH so your point here is?

BIER is a L2.5 hop-by-hop multicast switching technology that should be tunneled otherwise. v6 enaps (where we really abuse v6 as L1 transport) is only justified if ether/mpls cannot be implemented but chips can do very simple v6 processing and there is not high throughput requirement (albeit one could build bierin6 fast-path in silicon obviously). Obviously bierin6 gives you the nice trick to tunnel it to a v6 destination without establishing a real tunnel but it's really just a by-product and not its main goal

--- tony