[Bier] [Shepherding AD review] Pre-IETF Last-Call review of draft-ietf-bier-php-11

"Gunter van de Velde (Nokia)" <gunter.van_de_velde@nokia.com> Fri, 23 August 2024 10:11 UTC

Return-Path: <gunter.van_de_velde@nokia.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 317D6C14F602; Fri, 23 Aug 2024 03:11:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.555
X-Spam-Level:
X-Spam-Status: No, score=-5.555 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.148, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_NONE=0.001, THIS_AD=1.7, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=nokia.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id pxBRlymMZ-Ay; Fri, 23 Aug 2024 03:11:20 -0700 (PDT)
Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on2078.outbound.protection.outlook.com [40.107.241.78]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 25861C14CE4A; Fri, 23 Aug 2024 03:11:20 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Y9M9Wk+DgUFZabL2JJtOfXKUXB9B6t6Gp/DMQc9+mNw8gMln77fjTJrNnlA01jYHLjFnivmYFgryrVDNxkcDFO4BqXHsb9+YERUK+joDXIUXPAzj5ufB/y8WICLs68LIABqG3wnykLd0VqLBHdrui28caA670bTgkPYPhRIiIT+0P//5nwM++iP4P1whZO3GVsqIXogad7zVxApmIeYTlV1P7nuLOw54M6TqN8w45wjb0EAx4rsgpsDiJKHjUyvHTDgaJXWjrKyrwktS6qX2ebOLdBRCsRJKWBauVITR7IXHhaHTJ9yIkdJuq78u7XOH0QsNOL3k8WUcmLPdgGRZUw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=SctlLMKOIbtoZCaPlEUxu7PLNQ+aJLaHJpmeK3BavyI=; b=GNBbIN9nw+yDuKianL/E46OC+eQlwg1n45Zz+z5+CuAHjUf4M4zC+6Nivz7o3TZco8HYA0/+8qz5zOQZvqSOlS9+BOmXJR62WwQPXZBHxiPThsY41TQX7D8Ykpf4iCA24WTa+1aA0/E0Uho34cBgDikX+I0rkcZ1imbQ6J1tNEdFk7FoFeU182kjjh/p/YCs5jAiNIQPrvbILWqiTXSuTOgAnKufyjEl+cChcXgdV2A6CsFYl8gk1Kb54E43hy4BVf4d0D9rjPhTRGV6AhsC7i0+dD+0iVwELDx5wD6G9lilKlv67xZ5aGIgDatRbf1SIiunXf6rFyO/X4ChlDFm6Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nokia.com; dmarc=pass action=none header.from=nokia.com; dkim=pass header.d=nokia.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SctlLMKOIbtoZCaPlEUxu7PLNQ+aJLaHJpmeK3BavyI=; b=j7DGHNZNAAlEg6H5bsEiRL8qOGiWCWQIqXv+dj3wQrOJpxB6w6wzadHJuiorrh3bPCH5D03Hya6eLPMJmBU2ANAV5GmZ6EfVB4CeK5YiDpaow6p4OMXB6LtjV11BpmVKl84emJE3saBsFMyL2R6bvT0DNjh99OwOPB2hnf2f6gUnet1sWm3DJZArcmIoYxYSRc36K60/rT3ZFMgzMoGXPWqIGDpxt7csFlKWMw4R68hpg1cXeRM4tujrV+FFDor0D4evpxYQRGOeTfFQnMMYH1YmQ5qL80pqmVRyhuxh4bhA32wSnxvC1IEh6YttATqpU6cspB7bFJ4uDu8r89pRgg==
Received: from AS1PR07MB8589.eurprd07.prod.outlook.com (2603:10a6:20b:470::16) by AM7PR07MB6484.eurprd07.prod.outlook.com (2603:10a6:20b:1aa::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7897.19; Fri, 23 Aug 2024 10:11:16 +0000
Received: from AS1PR07MB8589.eurprd07.prod.outlook.com ([fe80::5ca6:f902:8e31:6f3e]) by AS1PR07MB8589.eurprd07.prod.outlook.com ([fe80::5ca6:f902:8e31:6f3e%7]) with mapi id 15.20.7875.019; Fri, 23 Aug 2024 10:11:16 +0000
From: "Gunter van de Velde (Nokia)" <gunter.van_de_velde@nokia.com>
To: "draft-ietf-bier-php@ietf.org" <draft-ietf-bier-php@ietf.org>
Thread-Topic: [Shepherding AD review] Pre-IETF Last-Call review of draft-ietf-bier-php-11
Thread-Index: Adr1RAfPcuVdeZg5TMqv4JHfmWOe4g==
Date: Fri, 23 Aug 2024 10:11:16 +0000
Message-ID: <AS1PR07MB8589BB3E610EF0103E8D4543E0882@AS1PR07MB8589.eurprd07.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nokia.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: AS1PR07MB8589:EE_|AM7PR07MB6484:EE_
x-ms-office365-filtering-correlation-id: 10f5fccc-c3bb-4feb-c4d4-08dcc35becbc
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;ARA:13230040|366016|1800799024|376014|38070700018;
x-microsoft-antispam-message-info: 7KJdSIfj9OJRBS598UvOOby1hVXOS87api5JcNaqn3n8XSCkVxzwob+iKNabb7uEzDM/RobMOuqCTwmi01Nhv7WFf/uH9MDvlxzl5a4Eav+Nci3OZc5KQmt8WcKP/hJ71MW1r7FQYMkSrCg7WovdDJcqd+lE+2ijgJIX5vlOxDZIqAZUuL84gV7NNMKPhRUSo6Dz+utFPMvJkRjLkZfmtpuRpFFt9dEXmT2IUC5PXR0cP6laIrtouNq9WUSFnPCJbw5eTM0vkzgpXI7f2ZOXtS8jhDoGX0oe7iaZGa3aBKP5itCQUpsBnJm69KWaMULCbXfkPU4OMr1CBy49fhUg4KIezWVxNej8XztBFmooP04YDKv/zxwav4JAr2bIayww2tvKNImNODoYmg+lF4FgXzHwebTJpZhS79Hn8luezw6KAN55bYwae5Q1rUkwAwJuSwWNh5z9QdCWbEsy1qHXGpHlMgj46g2Mjd5aVNQDHAh4FY/5dewXymRa3tIEq95EleS+MM9K8it9vS6UCLnMfQnXIbXZGAlBPRN2elVms6c0/AoU+OsLdlzbXmUw5fDr4Cvju2FuNgl0DClohGJO0R4mQ9QBMRVUkx9Xh09dzs8B4a/Jz6jvHItOsa/z/6uP+C1GEYEDcDBW5bPt7JgSHlnH40OUPgW13pVn4qK49J/qlTqUNZJ+LupxoFqPG9dF/iLFrbj9LhgGhvaNBQeXS6axCDSp+845U9MFY0nWRp7wsluAasOgdltMWrYbRTlbfAYyeO/nG714Rf1WldUWtVuRq3NbHKgrbFNL35n5UtfXwKphygfMVIfjlc3uc2NT07lz4R4fLY9hzjMhiiao0ILQD5gtTZ0aL0xHyEED7Y0WAbpAp6p0GQEErImy6m98pWmxyKhbXlKyp5D0EHgTlAXiUW8gEoOOE0WpIt+c6t8v2ak31/B0O4xKVOU5vw11cM3JZ6RPWQSkEZ9QB/rqBqYKmOmIZea+RjIqebBfJRVOBySQlsuICNxqfHLdNFOGwvVzGe9OQNlpfmSmFwsuGQUIHkFa/ts92QQTwigXL/fD9tMfNbgJcGNO/tmIjqt6PT7wK0PCScuu+tZUpyKVw46a4GGOwMsWot3U1YMdEpytD+TL5IteaFj/lFg0LY4v7ZprBDuJhgKYwO5YqYgilj7ebxuoDrRuSX04SdswaITiQCKrsSrfSCiQx/PRK+lZajuR+mwbH+TUVrM4h/yobcWuuWNeZyRfjrVZA3QXItLpCyKsjH+8q4ErFuDqSZLbcvmQirtXWCCNJY8W9tNef4qvSmmZeMupOawKWL0qG4kCRklr2XueHkfPmwXWGEB+3Nx9aEYsOHQaO7hz6OVZyoR66KuJ1PVUowT4j8Jq4J4=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS1PR07MB8589.eurprd07.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014)(38070700018);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: HHnKk205696EUbr65OXS2Yttou33pATy0Qql+P42XODw0xyzn+38GK19f38mHWPJKi0PFR0NmveH1JN12riY4uq8ICSFdtXo9Xv2Sjm4GbXr/NZQxuiLcpHeAxxjbpq3cHfQe88rBMi+S1PA0dXj5gkxRIvyL+Uq/pvFdYRE+VbzvL+i/OecC5B8RFNyVJwjfX4z/IF5cJ2svsW1v/2fFU/IjzqCc0O9RJn23sKR9sgTCn5Vmf1juIu3TkLLtI5PAczi9cU/xTh4KlyaJ6qrK3PNqt+I9cTAlbx6Iva3UwKzpRkxCtibApLh5uLkd9XcUPAWnpb8V2Bz/U8beQ0V70bHxIn6PObifLPyeT2E87zRYKxe6+pKJm0XaVHdbYEwCPs4DB23KtBfAtnw/HtC9aMyMc0krFW1EVDOWS2qX5vE0eWGh+r4aJUV9yiqxbyH1lmd7C34nw5lw+jjjVASIdoPFm+zniGjnJx7oTWcYCbhqR/Y6siCPQ2PCl7B+9O5ZUUNudzU0RPCyF6tE5WYFTo9xx5s5IZTpQOAG1tuA92UZ2t03VE78OeRZkckJVCEzCDikez9f3H2cyU97RKrAfbsj3Ivsuif7QsGr2AYYSXTgAuwzjLm7i5w6dI/ZhmN3K+BBKvka8CYfZSJSL+nzAoCTj0v024bZO/LokHmWZqR/I0NfJAToQLRv8roX/sZBbWEnHpYQX2fCSaFBKWp6pruDiTXZbL/dTiIz3iKieUKBlyL28Sfl/8Y43WEbQ4L3DR5NQHDAVX2oJL0H7wuH9fWiSPCfWKTNgW4RZlCTvZ+w0bRGOZEBxtYpSmyI0fms2t+LTT4DWu5gvf8zB2EL3HDw42j8ftPE05SnnMRmZ09EEYLQdC52BsKGVYSaRqpTqf4OZZdozTuEWf28VoM60Leb8lH7IY4GTUObE2itaapXz4e/TEk3d3NSl4A6wd68t7J2c+Vxgd6vtyqgmpyfhcI83Xkfx79FEC4S3jEJ5Hcl0yvIpQKyMexQog2hbAEA2MhMdlcZhsLqeFcRLzBXfRFSWQ54BrBmFoWSZeVkP5ViM0NRDa3bYQyFEQiiFWQu/8aiTN7uD+/JZ/7seRRHnYc3yewvJCtN77QPIcm0T8lfQ7a3JZdeSw3CrUjgfCDkbq2wVc+cFyVT5Q/oaMfXwEVqkqJnU1WvgpgMAd6e19aZ60/kIIgznAwdfOgmdfE7ogW35AKMzOPqgUvFnqUZwyYqUfNzh6RvuopDV8cdMkGz8ZoUnv6I9smZeLq2N1InhKYcCCxH6jRO/gunQegIyhwSvrNsItHKRKqNg+tY7GRpmTp8t7SMrmWMslyErpQZa1wUKRTydsRZpCsbM68I/8zklDuDIDdBmbHB7x6UMpnEDl9WBshUfWu6WMsyymnRVdn3vOitQze3JH8iXQd04KytwJiIdErB4UYt2pZbAQGGdL7bYrrwaprbceZQ/RgsI6RmrhtbGuYbYMsysez4ocJ1RtdZKImHpwiptJs+sItwf92ORpgyVFuGnNy+gFhYmMD9iiUh+SOCFe1vRwluStFhJvlYJSviIBN7OpB+4oi6bAorxhUJ3F5CDn5dWuOlU8KRl6D9kY5xOYvoqF0zaaCxdb4Z/keMF/bSCDE3mQmyrUwzjAv7kQTO5LWG47kmS3kuUHK+QqKkzdglZ9/gA==
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: nokia.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: AS1PR07MB8589.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 10f5fccc-c3bb-4feb-c4d4-08dcc35becbc
X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Aug 2024 10:11:16.0685 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: GN0A0mFT+GDTl3ZaKiIjiEwTSZrt8thtcEws0XcKEdj9swNTTc1iXCoRkNIWKYzs9pgmpSXLiAUSaHO+90WgcHaWq/2b4z9VV1rXF3ZPRwE=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR07MB6484
Message-ID-Hash: KYJOCXRKFTAVGTWQWZU3ODLBH6SGAOFI
X-Message-ID-Hash: KYJOCXRKFTAVGTWQWZU3ODLBH6SGAOFI
X-MailFrom: gunter.van_de_velde@nokia.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-bier.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: BIER WG <bier@ietf.org>
X-Mailman-Version: 3.3.9rc4
Precedence: list
Subject: [Bier] [Shepherding AD review] Pre-IETF Last-Call review of draft-ietf-bier-php-11
List-Id: "\"Bit Indexed Explicit Replication discussion list\"" <bier.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/bier/tMcEP-1P51cme4BIQt8kObvWj38>
List-Archive: <https://mailarchive.ietf.org/arch/browse/bier>
List-Help: <mailto:bier-request@ietf.org?subject=help>
List-Owner: <mailto:bier-owner@ietf.org>
List-Post: <mailto:bier@ietf.org>
List-Subscribe: <mailto:bier-join@ietf.org>
List-Unsubscribe: <mailto:bier-leave@ietf.org>

# Gunter Van de Velde, RTG AD, comments for draft-ietf-bier-php-11

Hi Jeffrey and BIER WG,

Please find here a shepherding AD review of draft-ietf-bier-php-11

Many thanks to Xiao Min for the excellent Shepherd write-up. It was great to see that the work has been validated with the MPLS Working Group. I also noted from the email archive that Loa provided some valuable feedback, which has been thoughtfully incorporated.

When running idnits, a few messages appeared, likely due to the references being slightly outdated over time. You can view the idnits report here: https://author-tools.ietf.org/api/idnits?url=https://www.ietf.org/archive/id/draft-ietf-bier-php-11.txt

The document currently lacks an operational considerations/implication section. To assist with this, I've added some initial thoughts on the operational aspects associated with PHP operation at the very end of this AD review for inspiration and to discuss if they apply to the BIER use-case.

The security section is somewhat brief. I've included some ideas to help expand on the security considerations related to PHP and its application within BIER. Not all the suggested observations will apply strongly for this BIER use case.

While the document effectively outlines the operational procedures, it could benefit from some grammatical enhancements to improve clarity. Given that this draft is concise, I thought it would be more convenient to propose the revised text section by section rather than suggesting edits paragraph by paragraph. This approach should make it easier to incorporate the suggestions into the XML.


#DETAILED COMMENTS
#=================
##classified as [minor] and [major]

10	Abstract
11
12	   Bit Index Explicit Replication (BIER) can be used as provider tunnel
13	   for Multicast Virtual Private Network (MVPN), Global Table Multicast
14	   or Ethernet Virtual Private Network (EVPN).  It is possible that not
15	   all routers in the provider network support BIER and there are
16	   various methods to handle BIER-incapable transit routers.  However
17	   those methods assume the MVPN/EVPN Provider Edges (PEs) are BIER-
18	   capable.  This document specifies a method to allow BIER-incapable
19	   routers to act as MVPN/EVPN PEs with BIER as the transport, by having
20	   the upstream BIER Forwarding Router (BFR) that is connected directly
21	   or indirectly via a tunnel to a BIER-incapable PE remove the BIER
22	   header and send the payload to the PE.

[major]
I think an abstract should cover the objective of the document in a high level style that the manager of your manager would understand and explains in simple words the purpose. I would assume that when people gp reda this document that they know what BIER is all about. Can I suggest the following abstract instead:

"
This document specifies a mechanism for Penultimate Hop Popping (PHP) in the Bit Index Explicit Replication (BIER) architecture. PHP enables the removal of the BIER header by the penultimate router, thereby reducing the processing burden on the final router in the delivery path. This extension to BIER enhances operational efficiency by optimizing packet forwarding in scenarios where the final hop's capabilities or requirements necessitate such handling. The document details the necessary extensions to the BIER encapsulation and forwarding processes to support PHP, providing guidance for implementation and deployment within BIER-enabled networks.
"

77	1.  Introduction
78
79	   The BIER architecture includes three layers: the "routing underlay",
80	   the "BIER layer", and the "multicast flow overlay".  The multicast
81	   flow overlay is responsible for the BIER Forwarding Egress Routers
82	   (BFERs) to signal to BIER Forwarding Ingress Routers (BFIRs) that
83	   they are interested in receiving certain multicast flows so that
84	   BFIRs can encode the correct bitstring for BIER forwarding by the
85	   BIER layer.
86
87	   MVPN [RFC6513] [RFC6514] and EVPN [RFC7432] are two similar overlays
88	   where BGP Auto-Discovery routes for MVPN/EVPN are exchanged among all
89	   PEs to signal which PEs need to receive multicast traffic for all or
90	   certain flows.  Typically the same provider tunnel type is used for
91	   traffic to reach all receiving PEs.
92
93	   Consider an MVPN/EVPN deployment where enough provider routers are
94	   BIER-capable for BIER to become the preferred choice of provider
95	   tunnel [RFC8556] [I-D.ietf-bier-evpn].  However, some PEs cannot be
96	   upgraded to support BIER forwarding.  While there are ways to allow
97	   an ingress PE to send traffic to some PEs with one type of tunnel and
98	   send traffic to some other PEs with a different type of tunnel, the
99	   procedure becomes complicated and forwarding is not optimized.
100
101	   One way to solve this problem is to use Penultimate Hop Popping (PHP)
102	   so that the upstream BFR can pop the BIER header [RFC8296] and send
103	   the payload "natively" (note that the upstream BFR can be connected
104	   directly or indirectly via any type of tunnel to the PE).  This is
105	   similar to Multi-Protocol Label Switching (MPLS) PHP though it is the
106	   BIER header that is popped.
107
108	   The transition of an existing MVPN/EVPN deployment with traditional
109	   provider tunnels to using BIER with some PEs not capable of receiving
110	   BIER packets can be incremental.  All PEs are first upgraded to
111	   support BIER at least in the control plane, with those not capable of
112	   BIER forwarding requesting PHP.  Then BIER-capable ingress PEs
113	   independently and incrementally switch to BIER transport.
114
115	   While the above text uses MVPN/EVPN as example, BIER PHP is
116	   applicable to any scenario where the multicast flow overlay edge
117	   router does not support BIER, as long as the edge router does not
118	   need to know the transmitting BFIR or participate in BIER OAM
119	   procedures.
120
121	   This works well if a BIER-incapable PE only needs to receive
122	   multicast traffic.  If it needs to send multicast traffic as well,
123	   then it must Ingress Replicate to a BIER-capable helper PE, who will
124	   in turn relay the packet to other PEs.  The helper PE is either a
125	   Virtual Hub as specified in [RFC7024] for MVPN and
126	   [I-D.ietf-bess-evpn-virtual-hub] for EVPN, or an AR-Replicator as
127	   specified in [I-D.ietf-bess-evpn-optimized-ir] for EVPN.

[major]
On the first line the "BIER architecture is mentioned, but there is no added reference to 
https://datatracker.ietf.org/doc/html/rfc8279 mentioned

[minor]
Suggested rewrite

"
The Bit Index Explicit Replication (BIER) architecture [RFC8279] consists of three layers: the "routing underlay," the "BIER layer," and the "multicast flow overlay." The multicast flow overlay is responsible for allowing BIER Forwarding Egress Routers (BFERs) to signal to BIER Forwarding Ingress Routers (BFIRs) their interest in receiving specific multicast flows, enabling BFIRs to encode the appropriate bitstring for forwarding by the BIER layer.

Multicast Virtual Private Network (MVPN) [RFC6513][RFC6514] and Ethernet VPN (EVPN) [RFC7432] are two analogous overlays in which BGP Auto-Discovery routes for MVPN/EVPN are exchanged among all Provider Edge (PE) routers to signal which PEs should receive multicast traffic for all or certain flows. Typically, a consistent provider tunnel type is used for traffic delivery to all receiving PEs.

In a deployment scenario where MVPN/EVPN is in use and a sufficient number of provider routers support BIER, BIER can become the preferred provider tunnel type [RFC8556][I-D.ietf-bier-evpn]. However, some PEs may lack the capability to support BIER forwarding. While it is possible for an ingress PE to send traffic to some PEs using one type of tunnel and to others using a different type, such a procedure can be complex and may result in suboptimal forwarding.

A potential solution to this issue is the use of Penultimate Hop Popping (PHP), whereby the upstream BFR pops the BIER header [RFC8296] and transmits the payload "natively." This transmission can occur either directly or indirectly through any type of tunnel to the PE. This mechanism is analogous to Multi-Protocol Label Switching (MPLS) PHP, except that the BIER header is removed.

The transition from an existing MVPN/EVPN deployment with traditional provider tunnels to a BIER-based solution, where some PEs are not BIER-capable, can be incremental. Initially, all PEs are upgraded to support BIER in the control plane, with those unable to perform BIER forwarding requesting PHP. Subsequently, BIER-capable ingress PEs can independently and incrementally switch to BIER transport.

While MVPN/EVPN is used as an example in the above discussion, BIER PHP is applicable to any scenario where the multicast flow overlay edge router does not support BIER, provided that the edge router does not need to identify the transmitting BFIR or participate in BIER Operations, Administration, and Maintenance (OAM) procedures.

This approach is effective when a BIER-incapable PE only needs to receive multicast traffic. However, if the PE also needs to send multicast traffic, it must perform Ingress Replication to a BIER-capable helper PE, which will then relay the packet to other PEs. The helper PE may be a Virtual Hub as defined in [RFC7024] for MVPN and [I-D.ietf-bess-evpn-virtual-hub] for EVPN, or an AR-Replicator as defined in [I-D.ietf-bess-evpn-optimized-ir] for EVPN.
"

129	2.  Specifications
130
131	   The BIER Penultimate Hop Popping is intended only for the scenario
132	   where a multicast flow overlay router for a BIER domain does not
133	   support BIER forwarding, either entirely or just for some particular
134	   BitStringLengths (BSL).  In the latter case, PHP is only for BIER
135	   packets with those BSL.  The flow overlay router would be a BFER if
136	   it did support BIER forwarding, and PHP would not be done by its
137	   penultimate hop.
138
139	   The procedures in this section apply only if, by means outside the
140	   scope of this document, it is known that all potential penultimate
141	   hop BFRs support PHP (i.e., able to pop the BIER header when sending
142	   to a requesting flow overlay router) , and that the payload after
143	   BIER header is one of the following:
144
145	   *  MPLS packets with downstream-assigned label at top of stack (i.e.,
146	      the Proto field in the BIER header is 1).  For example, a label
147	      from a Domain-wide Common Block (DCB) is used as specified in
148	      [I-D.ietf-bess-mvpn-evpn-aggregation-label].
149
150	   *  IPv4/IPv6 multicast packets for which Reverse Path Forwarding
151	      check is disabled.

[minor]
Suggested rewrite

"
The BIER Penultimate Hop Popping (PHP) mechanism is designed specifically for scenarios where a multicast flow overlay router within a BIER domain does not support BIER forwarding, either completely or for specific BitStringLengths (BSL). In the latter case, PHP applies only to BIER packets with those particular BSLs. If the flow overlay router were capable of BIER forwarding, it would function as a BFER, and PHP would not be performed by the penultimate hop.

The procedures outlined in this section are applicable only if, through means outside the scope of this document, it is established that all potential penultimate hop BFRs are capable of supporting PHP (i.e., able to remove the BIER header when forwarding to a requesting flow overlay router) and that the payload following the BIER header is one of the following:

* MPLS packets with a downstream-assigned label at the top of the stack (i.e., the Proto field in the BIER header is set to 1). For instance, a label from a Domain-wide Common Block (DCB) as specified in [I-D.ietf-bess-mvpn-evpn-aggregation-label].

* IPv4/IPv6 multicast packets for which the Reverse Path Forwarding (RPF) check is disabled.
"

153	2.1.  Signaling
154
155	   With IS-IS signaling, a sub-TLV in another sub-TLV is called sub-sub-
156	   TLV (and more sub-levels are possible like sub-sub-sub-TLV).  With
157	   other signaling protocols, a sub-TLV in another sub-TLV is still
158	   called sub-TLV.  For convenience, in this document we use sub-TLV
159	   even when it is sub-sub-TLV in IS-IS, as there is no ambiguity with
160	   the name itself (e.g.  MPLS Encapsulation).
161
162	   A BIER-incapable router, if acting as a multicast flow overlay router
163	   for BIER, MUST signal its BIER information as specified in [RFC8401],
164	   [RFC8444], [I-D.ietf-bier-ospfv3-extensions], or
165	   [I-D.ietf-bier-idr-extensions] with a PHP sub-TLV included in the
166	   BIER sub-TLV (or TLV in case of BGP) attached to the BIER-incapable
167	   router's BFR-prefix to request BIER PHP from other BFRs.  The type of
168	   the sub-TLV or sub-TLV is TBD, and the length is 0.
169
170	   With MPLS encapsulation, the BIER-incapable multicast flow overlay
171	   router MAY omit the BIER MPLS Encapsulation sub-LV, or MUST set the
172	   Label field in BIER MPLS Encapsulation sub-TLV to Implicit Null Label
173	   [RFC3032].
174
175	   With MPLS encapsulation, if a BFER (that does support BIER but) does
176	   not support a certain BSL, it MAY advertise a corresponding BIER MPLS
177	   Encapsulation sub-TLV with the Label field to Implicit Null Label to
178	   request PHP for that BSL.  It MUST NOT include the PHP sub-TLV in
179	   this case.
180
181	   With non-MPLS encapsulation [I-D.ietf-bier-lsr-non-mpls-extensions],
182	   the BIER-incapable multicast flow overlay router MAY omit the BIER
183	   non-MPLS Encapsulation sub-TLV, or MUST set the BIFT-id field in the
184	   BIER non-MPLS Encapsulation sub-TLV to 0.
185
186	   With non-MPLS encapsulation, if a BFER (that does support BIER but)
187	   does not support certain BSL, it MAY advertise a corresponding BIER
188	   non-MPLS Encapsulation sub-TLV but set the BIFT-id field to 0 to
189	   request PHP for that BSL.  It MUST NOT include the PHP sub-TLV in
190	   this case.

[minor]
Suggested rewrite

"
In IS-IS signaling, a sub-TLV nested within another sub-TLV is referred to as a sub-sub-TLV (and further levels are possible, such as sub-sub-sub-TLV). In other signaling protocols, a sub-TLV nested within another sub-TLV is still referred to as a sub-TLV. For convenience, this document uses the term "sub-TLV" even when referring to a sub-sub-TLV in IS-IS, as there is no ambiguity in the terminology (e.g., MPLS Encapsulation).

A BIER-incapable router, when functioning as a multicast flow overlay router for BIER, MUST signal its BIER information as specified in [RFC8401], [RFC8444], [I-D.ietf-bier-ospfv3-extensions], or [I-D.ietf-bier-idr-extensions], including a PHP sub-TLV within the BIER sub-TLV (or TLV in the case of BGP) attached to the BIER-incapable router's BFR-prefix to request BIER PHP from other BFRs. The type of the sub-TLV or sub-sub-TLV is TBD, and the length is 0.

For MPLS encapsulation, the BIER-incapable multicast flow overlay router MAY omit the BIER MPLS Encapsulation sub-TLV, or it MUST set the Label field in the BIER MPLS Encapsulation sub-TLV to the Implicit Null Label [RFC3032].

In the case of MPLS encapsulation, if a BFER (which supports BIER but not a specific BSL) does not support a particular BSL, it MAY advertise a corresponding BIER MPLS Encapsulation sub-TLV with the Label field set to the Implicit Null Label to request PHP for that BSL. In this scenario, the PHP sub-TLV MUST NOT be included.

For non-MPLS encapsulation [I-D.ietf-bier-lsr-non-mpls-extensions], the BIER-incapable multicast flow overlay router MAY omit the BIER non-MPLS Encapsulation sub-TLV, or it MUST set the BIFT-id field in the BIER non-MPLS Encapsulation sub-TLV to 0.

Similarly, for non-MPLS encapsulation, if a BFER (which supports BIER but not a specific BSL) does not support a particular BSL, it MAY advertise a corresponding BIER non-MPLS Encapsulation sub-TLV but set the BIFT-id field to 0 to request PHP for that BSL. In this scenario, the PHP sub-TLV MUST NOT be included.
"

192	2.2.  BIRT/BIFT Calculation
193
194	   If a BFR follows section 6.9 of [RFC8279] to handle BIER-incapable
195	   routers, it MUST treat a router as BIER-incapable for a BSL if the
196	   label in the corresponding MPLS Encapsulation sub-TLV advertised by
197	   the router is Implicit Null, or if the BIFT-id in the corresponding
198	   non-MPLS Encapsulation sub-TLV is 0.  It MUST treat the router as
199	   BIER-incapable for all BSLs if the router advertises a PHP sub-TLV.
200	   That way, the router will not used as a transit BFR for certain or
201	   for all BSLs.
202
203	   If the downstream neighbor (either resulting in IGP calculation or
204	   carried in the BIER Nexthop sub-TLV in case of BGP) for a BFR-prefix
205	   is the one advertising the prefix with a PHP sub-TLV or with an
206	   Implicit Null Label in its BIER MPLS Encapsulation sub-TLV, or with
207	   BIFT-id 0 in its BIER non-MPLS Encapsulation sub-TLV, then when the
208	   corresponding BIRT or BIFT entry is created/updated, the forwarding
209	   behavior MUST be that the BIER header is removed and the payload be
210	   sent to the downstream router without the BIER header, either
211	   directly or over any type of tunnel.

[minor]
Suggested rewrite

"
If a BFR adheres to Section 6.9 of [RFC8279] for handling BIER-incapable routers, it MUST treat a router as BIER-incapable for a specific BSL if the label in the corresponding MPLS Encapsulation sub-TLV advertised by the router is Implicit Null, or if the BIFT-id in the corresponding non-MPLS Encapsulation sub-TLV is 0. Additionally, the router MUST be treated as BIER-incapable for all BSLs if it advertises a PHP sub-TLV. Consequently, the router will not be utilized as a transit BFR for certain or all BSLs.

When the downstream neighbor (whether determined through IGP calculation or indicated in the BIER Nexthop sub-TLV in the case of BGP) for a BFR-prefix is the router that advertises the prefix with a PHP sub-TLV, an Implicit Null Label in its BIER MPLS Encapsulation sub-TLV, or a BIFT-id of 0 in its BIER non-MPLS Encapsulation sub-TLV, then, upon the creation or update of the corresponding BIRT or BIFT entry, the forwarding behavior MUST be that the BIER header is removed and the payload is forwarded to the downstream router without the BIER header, either directly or over any type of tunnel.
"

213	3.  Security Considerations
214
215	   This specification does not introduce additional security concerns
216	   beyond those already discussed in BIER architecture and OSPF/IS-IS/
217	   BGP extensions for BIER signaling.

[major]
>From a security perspective, this looks reasonable brief. Maybe something could be added about the impact of doing PHP operation and the impact upon BIER? To give some initial ideas:

* Loss of BIER Header Information
When PHP is applied, the BIER header is removed by the penultimate router, and only the payload is forwarded to the final destination. This removal could obscure the original the intended BIER forwarding path, making it difficult for the final hop or network monitoring tools to verify the origin and integrity of the packet.

* Reduced Visibility for Security Monitoring
The removal of the BIER header by the penultimate router reduces the visibility of BIER-specific information, e.g. the bitstring used for forwarding. This could hinder network operators' ability to perform deep packet inspection (DPI) or other security monitoring techniques that rely on the full packet header.

* Potential for Misconfiguration
Misconfiguration of PHP could lead to scenarios where the BIER header is removed prematurely, or where PHP is applied to traffic that should have retained the BIER header. This could result in unintended forwarding behavior, including traffic being misrouted or dropped.

* Complexity in Managing Access Control and Policy Enforcement
With the BIER header removed before the packet reaches its final destination, it may become more challenging to enforce certain access control policies or to apply security policies based on BIER-specific information.

* Impact on End-to-End Security Features
The removal of the BIER header could interfere with end-to-end security features, such as encryption or authentication mechanisms, that are designed to operate over the entire path, including BIER information.

* Operational Complexity
Implementing and managing PHP in a BIER domain adds operational complexity, which could increase the likelihood of configuration errors or vulnerabilities being introduced into the network.


Some thoughts on a section about "Operational Considerations"

[major]
There is no section discussing operational considerations and the impact when doing PHP.

PHP in the context of BIER introduces several operational concerns that network operators need to consider. These concerns stem from the changes in packet handling, potential impacts on network management, and the complexity introduced by implementing PHP in a BIER-enabled network.

1. Increased Complexity in Network Configuration
* Concern: Implementing PHP adds another layer of complexity to network configuration. Network operators must ensure that PHP is correctly applied only in appropriate scenarios, such as when the next hop is a BIER-incapable router or where specific traffic engineering requirements necessitate it.
* Operational Impact: Misconfigurations could lead to incorrect packet forwarding, either by prematurely stripping the BIER header or by failing to strip it when necessary, potentially disrupting traffic flows.

2. Troubleshooting and Diagnostics Challenges
* Concern: With PHP, the BIER header is removed before the packet reaches the final hop, which can make troubleshooting and diagnostics more challenging. Network operators may have difficulty tracing the path of BIER packets or understanding why certain packets were forwarded in a particular way.
* Operational Impact: The reduction in header information at the final hop could lead to longer troubleshooting times, increased difficulty in root cause analysis, and potentially unresolved issues in the network.

3. Impact on Network Visibility and Monitoring
* Concern: PHP reduces the visibility of BIER-specific information, e.g. the bitstring, at the final hop. This reduction can hinder network monitoring tools that rely on full packet visibility for traffic analysis and anomaly detection.
* Operational Impact: Reduced visibility may result in gaps in network monitoring, making it harder to detect and respond to issues such as traffic misrouting, network loops, or malicious activities.

4. Incompatibility with Existing Tools and Processes
* Concern: Existing network management tools and processes may not be fully compatible with the PHP mechanism. Adjusting these tools and processes to account for PHP could require significant updates or replacements.
* Operational Impact: The need to modify or replace existing tools could lead to operational disruptions, increased costs, and the need for additional training for network personnel.

5. Increased Risk of Misconfiguration
* Concern: PHP introduces additional configuration options, increasing the risk of misconfiguration. Network operators must ensure that PHP is applied correctly and consistently across all relevant devices in the network.
* Operational Impact: Misconfigurations could lead to traffic being misrouted, dropped, or delivered in a way that does not meet the intended quality of service (QoS) parameters.

6. Compatibility with BIER OAM Procedures
* Concern: The removal of the BIER header could interfere with BIER Operations, Administration, and Maintenance (OAM) procedures, which rely on the BIER header for monitoring and diagnostic purposes.
* Operational Impact: OAM processes may need to be adjusted or supplemented with additional tools to ensure that network health can be accurately monitored and maintained in environments where PHP is used.