Re: [Bier] BIER WGLC: draft-ietf-bier-php

"Jeffrey (Zhaohui) Zhang" <zzhang@juniper.net> Thu, 10 October 2019 19:25 UTC

Return-Path: <zzhang@juniper.net>
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 00E8F12013A for <bier@ietfa.amsl.com>; Thu, 10 Oct 2019 12:25:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=juniper.net
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 74ugYx-q4lzY for <bier@ietfa.amsl.com>; Thu, 10 Oct 2019 12:25:15 -0700 (PDT)
Received: from mx0b-00273201.pphosted.com (mx0b-00273201.pphosted.com [67.231.152.164]) (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 1665E120089 for <bier@ietf.org>; Thu, 10 Oct 2019 12:25:15 -0700 (PDT)
Received: from pps.filterd (m0108162.ppops.net [127.0.0.1]) by mx0b-00273201.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id x9AJLxBh006842; Thu, 10 Oct 2019 12:25:03 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; h=from : to : subject : date : message-id : references : in-reply-to : content-type : mime-version; s=PPS1017; bh=zThpy4zxIDlFIU41g+ndFsOc021fUxt6+1pOkyRGbjY=; b=FCINsXzCTG+oMEE2YIZhPNwGCyADCM8aFutULkmveGWJ+WuvCEDtwi869IvU+xpe8kPh d1vBCIaePYoaZ3B07DPDk1WCqLO4PcuXlw2aWQB2OphkS1afmmqi/DFtaxoRPkOpS7Sh NAiuUwbpJMW8R6yTQNyg+5oUH/d3yeDEh2Z/uxMKMkvskzK4zYZyvr1+NVpdtOzDkA6+ iYrsbNm4OyCl0Trbx0iXWeSOxvC0FcV7TnROUHPkNpqai2NwPw0EhC77hDYJxOW2Uizy GFJuH9qB0W4pVuf+egm5Lu+oB7KFlwh4Jp4pgOVledQzRgOJOgEJTTKn4XWJk1b48nw0 GA==
Received: from nam03-by2-obe.outbound.protection.outlook.com (mail-by2nam03lp2053.outbound.protection.outlook.com [104.47.42.53]) by mx0b-00273201.pphosted.com with ESMTP id 2vhch1k12j-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 10 Oct 2019 12:25:02 -0700
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TaLLmWY5c1CfW0ceDrHZ4xHKubtLurh7as1jKMakdKlGcdEmE1gLn6AcTgOHwarQE0nQHcraHTiACLIhxMrn1ZrOEFG7zdeoptsSue8DOGwJhzqfiQ6+pvR4dJD8XpzX4k0eycUIyg2BtGPF9MHEJ82fSvp0W6aLHtdCkpK7iul+5r6brcWLLdEnfRUX33d1BxmTTFFcGZA3eBZ+JowsTTMiocHEUrPj6+ex3ak5P6NWxGrUCGgG5E2uzxE3upHJuklnLxEil4F6Y0Vla0GBx8gwYTamPryTnqfjIVMBBTkJ4QuWmwGuIQx61wS9TtybbLr0FvrTxUIglQ+lmHb/1g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zThpy4zxIDlFIU41g+ndFsOc021fUxt6+1pOkyRGbjY=; b=l5VbmOzVGVK/VutzUAnUFqNdS7AbOsu/v7OQXBxchoDkkxEqAoEaqI4j689dU58qKa0AdU5tA02F/JXhEY9fPLUr6YRVBtgiU04vWXScoCeG5dtBdFy+GlxkFXpLEdTNXSbqwfU8PD8bHcuYeZRdV2zGT9YNncZpnOB5T32SGAPbZbzwHYpqK9OolVr7IUdYYjD3ATf5IKeS8Y4QDQOSbYBpGNLABXTIqK+5dtMRjWAqdLHA3hU8guhe0e4ddUudcz3BAHWk98XbwB//VmGrQz42Ko40UFKE6UV21ny2/V7RM8Vs70VRUTFHi4Kdop9OlYJPZp1vAq6nG/4i7s+flw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=juniper.net; dmarc=pass action=none header.from=juniper.net; dkim=pass header.d=juniper.net; arc=none
Received: from DM5PR05MB3548.namprd05.prod.outlook.com (10.174.242.153) by DM5PR05MB3020.namprd05.prod.outlook.com (10.168.177.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2347.15; Thu, 10 Oct 2019 19:24:59 +0000
Received: from DM5PR05MB3548.namprd05.prod.outlook.com ([fe80::4949:bb34:ba48:1913]) by DM5PR05MB3548.namprd05.prod.outlook.com ([fe80::4949:bb34:ba48:1913%7]) with mapi id 15.20.2347.016; Thu, 10 Oct 2019 19:24:59 +0000
From: "Jeffrey (Zhaohui) Zhang" <zzhang@juniper.net>
To: Xiejingrong <xiejingrong@huawei.com>, "gjshep@gmail.com" <gjshep@gmail.com>, BIER WG <bier@ietf.org>
Thread-Topic: [Bier] BIER WGLC: draft-ietf-bier-php
Thread-Index: AQHVRwPuV2YhpunzfEGIFPIq32MyKqc1ZMuAgBz9XoCAAQ0ScIAAmF4AgABj3uA=
Date: Thu, 10 Oct 2019 19:24:58 +0000
Message-ID: <DM5PR05MB35481E08CEE5617532B16ED5D4940@DM5PR05MB3548.namprd05.prod.outlook.com>
References: <CABFReBrqzdz1wbK_weeQD05LfrDZbSsfroj46ecpfWDiBoX2Qw@mail.gmail.com> <CABFReBp=n9KgS4ipkWvxAKdc5ciX6ej+=aZJzhUTGyQyTArdsQ@mail.gmail.com> <16253F7987E4F346823E305D08F9115AAB9F167D@nkgeml514-mbx.china.huawei.com> <DM5PR05MB3548F2830381D4656F0CB106D4940@DM5PR05MB3548.namprd05.prod.outlook.com> <16253F7987E4F346823E305D08F9115AAB9F1B07@nkgeml514-mbx.china.huawei.com>
In-Reply-To: <16253F7987E4F346823E305D08F9115AAB9F1B07@nkgeml514-mbx.china.huawei.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
dlp-product: dlpe-windows
dlp-version: 11.2.0.14
dlp-reaction: no-action
x-originating-ip: [173.76.174.11]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: f931bfbe-53ec-47b8-1780-08d74db78a5b
x-ms-office365-filtering-ht: Tenant
x-ms-traffictypediagnostic: DM5PR05MB3020:
x-ms-exchange-purlcount: 1
x-microsoft-antispam-prvs: <DM5PR05MB3020769F1AC88B9D6BA04D7DD4940@DM5PR05MB3020.namprd05.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-forefront-prvs: 018632C080
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39860400002)(366004)(136003)(346002)(376002)(396003)(199004)(189003)(110136005)(9686003)(33656002)(86362001)(74316002)(6436002)(229853002)(6246003)(790700001)(3846002)(6116002)(236005)(2906002)(316002)(14444005)(256004)(7736002)(54896002)(6306002)(55016002)(186003)(14454004)(476003)(52536014)(8936002)(66556008)(66476007)(7696005)(71200400001)(66446008)(6506007)(76176011)(71190400001)(478600001)(81166006)(81156014)(64756008)(76116006)(5660300002)(66946007)(966005)(446003)(2501003)(606006)(486006)(66574012)(25786009)(9326002)(26005)(102836004)(53546011)(11346002)(66066001)(8676002)(99286004); DIR:OUT; SFP:1102; SCL:1; SRVR:DM5PR05MB3020; H:DM5PR05MB3548.namprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: l2UfPDOdYy8LRW84e5JfWRSWszI9dcjwCJ1mHrYPpm5nq5wjlvUr+98G67MnrkIJIabXoqOpHW03BZiAqXYECkYnbVIlnO9r7D9p+6on+8QSQD2E2JPU+BDO4cqsSsKafAsnPgwUFnshUzb2UKqe6AS0i5qxkNC4HPnMFN+INv5Sg0QcTI0Dh4rF9piXOqjyMK/mPO4KdGWcYvpP7O9Anbkc7s4nEUGkpD2vU9osg41FOKLnmT/whcp8uPkll8JkHIuvCZBt4A1fIvfJOjXPbKMa9/zzl9YJkKfQt0W9R7qIZLNhfRnPJRbhJXnGF6U9PWZFhmUOz6nTh22DQCDHE1K5Slysn4nhmOKP95dVp7VbK7x58WNA8b9CETXYi/hY4cvYgS9/PMpDecCXhogW1tz2Rch1IU4Pko5bzl2f9Le42ICYo+GFnKQh94vkfbKSQAabIfRHY6T9WWGqKOAfXw==
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_DM5PR05MB35481E08CEE5617532B16ED5D4940DM5PR05MB3548namp_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-Network-Message-Id: f931bfbe-53ec-47b8-1780-08d74db78a5b
X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Oct 2019 19:24:59.0334 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: 4dPlvAZpKl1zga00Cdm8XRahe/eKqRwLNv+R7hAmQTdZAjIvca1wI/5Ks/KaFkotueLEYPGzCA/3HNENN8gtqQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR05MB3020
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.95,1.0.8 definitions=2019-10-10_06:2019-10-10,2019-10-10 signatures=0
X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 mlxlogscore=999 phishscore=0 spamscore=0 adultscore=0 clxscore=1015 suspectscore=0 impostorscore=0 malwarescore=0 mlxscore=0 priorityscore=1501 bulkscore=0 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-1908290000 definitions=main-1910100163
Archived-At: <https://mailarchive.ietf.org/arch/msg/bier/oD1v2SOSHPwpygoC-jcSEzf8cG0>
Subject: Re: [Bier] BIER WGLC: draft-ietf-bier-php
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: Thu, 10 Oct 2019 19:25:19 -0000

Hi Jingrong,

From: Xiejingrong <xiejingrong@huawei.com>
Sent: Thursday, October 10, 2019 5:12 AM
To: Jeffrey (Zhaohui) Zhang <zzhang@juniper.net>; gjshep@gmail.com; BIER WG <bier@ietf.org>
Subject: RE: [Bier] BIER WGLC: draft-ietf-bier-php

Hi Jeffrey,

Thanks much for the clarification.
One-hop unicast tunnel is not necessary, and I assume a packet may look like this: Ethernet(type=0x8847) + DCB Label + IP Packet.


Zzh2> Right.

And thus the PHP don’t necessarily detail the ‘unicast tunnel’ finding procedure.
They both work for me.

But I failed to understand the “Interface based RPF can still be done”.
Let me assume MVPN scenario, Ingress PE1 and Ingress PE2  connect to P1, P1 connect to PE3(requesting PHP), how does the PE3 do the RPF so that multicast data packet from PE1 (the incorrect UMH)  could be dropped one PE3?
Allocate DCB label per VPN per Ingress PE ?

Zzh2> “Interface based RPF” only requires per-VPN label; “sender based RPF” (that BGP-MVPN requires for some scenarios) requires either per-VPN per Ingress PE labels (like the Ingress Replication case) or per-VPN label plus a PE Distinguisher label (just like when we need to identify the sending PE in the bi-directional tunnel case). In both cases, the labels are from DCB and it boils down to “downstream assigned label” case.

For the following text, I’d like to check one-by-one the possible BIER Payload, and feel that IPv4 payload and IPv6 payload could be supported by PHP too. I don’t know why it is not included in this doc.

Zzh2> To allow RPF, we will need a label (similar to VPN case, just that the label will point to “virtual interface” in the master/default routing instance for RPF purpose). That boils down to “downstream assigned label” case again.
Zzh2> This is assuming IP multicast.


(1)    the payload after BIER header is Downstream-assigned-MPLS Payload (BIER Proto = 1) //This payload type could be supported by PHP as this doc says.

(2)    the payload after BIER header is Upstream-assigned-MPLS Payload (BIER Proto = 2)

(3)    the payload after BIER header is Ethernet Payload (BIER Proto = 3)

(4)    the payload after BIER header is IPv4 Payload (BIER Proto = 4)  //I feel this payload type could be supported by PHP (the packet after PHP is Ethernet + IPv4 payload, or Ethernet + Label X + IPv4 payload), Label X is either a normal LSP label indicating any payload, or a Label advertised to indicating IPv4 payload.

(5)    the payload after BIER header is OAM Payload (BIER Proto = 5)

(6)    the payload after BIER header is IPv6 Payload (BIER Proto = 6) //I feel this payload type could be supported by PHP (the packet after PHP is Ethernet + IPv6 payload, or Ethernet + Label Y + IPv6 payload), Label X is either a normal LSP label indicating any payload, or a Label advertised to indicating IPv6 payload.

(7)    the payload after BIER header is VXLAN Payload (BIER Proto = TBD)  //This payload type could be supported by PHP as this doc says. (a little confusion, the packet is Ethernet + ???)
Zzh2> Good question. In draft-ietf-bier-evpn, the VXLAN header comes right after the BIER header w/o the IP/UDP header. With BIER PHP, It would be “outer header (Ethernet or tunnel) + VXLAN header (w/o the IP/UDP part)” if we don’t do anything special. That may not work if the outer header does not have a way to indicate the payload is VXLAN header w/o the IP/UDP part.
Zzh2> The reason that draft-ietf-bier-evpn put the VXLAN header right after BIER header w/o the IP/UDP part is so that we don’t have the overhead of unnecessary IP/UDP header, plus that we don’t need to allocate a multicast address to be used in the IP header. Perhaps, when PHP is used, we should use IP/UDP header after all? If we do that, should we allocate an address from the 224.0.0.0/24 block, and we would not need RPF check?
Zzh2> Jeffrey

   The procedures in this section apply only if, by means outside the
   scope of this document, it is known that the payload after BIER
   header is one of the following: (MPLS payload, NVO3 payload)

I also think the ‘by means outside the scope of this document’ makes it difficult to use this PHP method.
Maybe the P1 router (as I assume above) need to judge the BIER Proto value to decide whether to satisfy the “PHP request” by the downstream PE3, and generate a warning if failed to satisfy the “PHP request” ?

Thanks
Jingrong

From: Jeffrey (Zhaohui) Zhang [mailto:zzhang@juniper.net]
Sent: Thursday, October 10, 2019 8:23 AM
To: Xiejingrong <xiejingrong@huawei.com<mailto:xiejingrong@huawei.com>>; gjshep@gmail.com<mailto:gjshep@gmail.com>; BIER WG <bier@ietf.org<mailto:bier@ietf.org>>
Subject: RE: [Bier] BIER WGLC: draft-ietf-bier-php

Hi Jingrong,

Please see zzh> below.

From: BIER <bier-bounces@ietf.org<mailto:bier-bounces@ietf.org>> On Behalf Of Xiejingrong
Sent: Wednesday, October 9, 2019 4:04 AM
To: gjshep@gmail.com<mailto:gjshep@gmail.com>; BIER WG <bier@ietf.org<mailto:bier@ietf.org>>
Subject: Re: [Bier] BIER WGLC: draft-ietf-bier-php

I think the idea of PHP to support BIER-incapable PE is kind of useful.
There are some comments as below:

1.
For the following text, let me assume the “sent to the downstream router without the BIER header directly or over any type of tunnel” as “sent to the downstream router without the BIER header through one-hop unicast tunnel or multi-hop unicast tunnel”.

Zzh> Not necessarily “one-hop tunnel”. It could be w/o using tunnel at all in the direct connection case.

How is the ‘unicast tunnel’ found and used for the PHP ? This seems important for deployment of this PHP draft, and need some clarification.
If this document support finding the ‘unicast tunnel’ by a host prefix (used as BFR-prefix), that seems fine. For example, in a LDP network, this host-prefix can be used as FEC to find a LDP LSP. Another example, In an SR-MPLS network, this host-prefix can be used to find an SRGB LSP.
If this document support finding the  ‘unicast tunnel’ by a non-host prefix (used as BFR-prefix) , there may be more information need to advertise.
   If the downstream neighbor for a BIER prefix is the one advertising
   the prefix with a PHP sub-sub-TLV or with an Implicit Null Label in
   the Label field in its BIER MPLS Encapsulation sub-sub-TLV, then when
   the corresponding BIRT or BIFT entry is created/updated, the
   forwarding behavior MUST be that the BIER header is removed and the
   payload be sent to the downstream router without the BIER header,
   either directly or over any type of tunnel.

Zzh> Put aside PHP for a moment. Let’s say BFR1 needs to send a BIER packet to BFR2, and there is a non-BFR in the middle. The BIER architecture spec says that you just tunnel the BIER packet to BFR2. Any tunnel that terminates at BFR2 will work – the payload through that tunnel is with the BIER header.
Zzh> Now comes back to PHP, and “BFR2” is requesting PHP. The same applies – packet is either sent w/o using a tunnel (in direct connect case) or using a tunnel (one-hop or multi-hop), and w/o the BIER header.
Zzh> In my view, this document does not need to talk about how to find that tunnel, just like in the architect spec.

2.
The following text is kind of unclear to me.
“as long as the edge router does not need to know the transmitting BFIR”  means that the edge router does not need to do RPF ?

Zzh> Interface based RPF can still be done, like in MVPN/GTM case – traffic needs to be coming from the “core”, which can be indicated by a VPN label (which is “downstream” allocated, and DCB label is considered as “downstream” allocated).

Besides, because the edge router won’t have the whole BIER header, there may be some other impacts.
There is no OAM field, so the edge router may not support the BIER OAM ?

Zzh> Right. I will clarify that.

For the lack of Proto field, see the following comment 3.
   While the above text uses MVPN/EVPN as example, BIER PHP is
   applicable to any scenario where the multicast flow overlay edge
   router does not support BIER, as long as the edge router does not
   need to know the transmitting BFIR.

3.
For the following text, I think the edge router may still be able to support other payload type by some means, especially the IPv4 and IPv6 payload for MVPN.
One way I imagine, the edge router could advertise some MPLS Label for type X payload(say IPv4), and advertise some MPLS Label for type Y payload(say IPv6) together with the BFR-prefix and the PHP sub-sub-TLV.

Zzh> And that is exactly covered by existing text that the payload is MPLS (downstream label) and NVO3 (global VNI) – Once you prepend that MPLS label to your type X/Y payload then the payload after BIER header becomes MPLS not X/Y anymore 😊

   The procedures in this section apply only if, by means outside the
   scope of this document, it is known that the payload after BIER
   header is one of the following: (MPLS payload, NVO3 payload)

Zzh> Thanks!
Zzh> Jeffrey

Thanks
Jingrong

From: BIER [mailto:bier-bounces@ietf.org] On Behalf Of Greg Shepherd
Sent: Saturday, September 21, 2019 5:22 AM
To: BIER WG <bier@ietf.org<mailto:bier@ietf.org>>
Subject: Re: [Bier] BIER WGLC: draft-ietf-bier-php

We're long past Aug 13th and not one response. PLEASE read and respond or we'll just let this expire.

Thanks,
Greg

On Tue, Jul 30, 2019 at 11:23 AM Greg Shepherd <gjshep@gmail.com<mailto:gjshep@gmail.com>> wrote:
Please read and respond to this thread:

https://datatracker.ietf.org/doc/draft-ietf-bier-php/<https://urldefense.com/v3/__https:/datatracker.ietf.org/doc/draft-ietf-bier-php/__;!8WoA6RjC81c!WCH5_VMcq3ZIEki7Bcfmv_wbOSkAmKGrS5S8FUyAd5AO5uTR3muKqeH40W_1KOJD$>

EOTWT: Aug 13th.

Thanks,
Shep
(chairs)