Internet-Draft | LSR Extensions for BIER non-MPLS | March 2022 |
Dhanaraj, et al. | Expires 2 September 2022 | [Page] |
Bit Index Explicit Replication (BIER) is an architecture that provides multicast forwarding through a "BIER domain" without requiring intermediate routers to maintain multicast related per-flow state. BIER can be supported in MPLS and non-MPLS networks.¶
This document specifies the required extensions to the IS-IS, OSPFv2 and OSPFv3 protocols for supporting BIER in non-MPLS networks using BIER non-MPLS encapsulation.¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 2 September 2022.¶
Copyright (c) 2022 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
Bit Index Explicit Replication (BIER) [RFC8279] is an architecture that provides multicast forwarding through a "BIER domain" without requiring intermediate routers to maintain multicast related per-flow state. BIER specific forwarding state, while not per-flow, are maintained in Bit Index Forwarding Tables (BIFTs) and used to forward BIER-encapsulated packets.¶
BIER can be supported in MPLS and non-MPLS networks. [RFC8296] specifies a common BIER header format for both MPLS and non-MPLS networks, though the first 20-bits (referred to as BIFT-id) of the BIER header is an "MPLS Label" in case of MPLS networks and is a "domain-wide unique value" in case of non-MPLS networks. It identifies the BIFT used to forwarding the packet. [I-D.ietf-bier-non-mpls-bift-encoding] specifies two optional ways of statically assigning domain-wide unique BIFT-id's.¶
However, BIER architecture [RFC8279] does not require domain-wide-unique BIFT-id's to be used (even for non-MPLS encapsulation). As discussed in [I-D.zzhang-bier-rift], the BIFT-id in case of non-MPLS encapsulation can also just be a local 20-bit opaque value and signaled just like in MPLS case.¶
As an example, suppose a particular BIER domain contains a Sub-Domain (SD) 0, supports two BitStringLengths (BSLs - 256 and 512), and contains 1024 BIER Forwarding Egress Routers (BFERs). Because the number of BFERs is larger than the BSL, the BFERs are grouped into different sets, and multiple copies of a packet may need to be sent by an BIER Forwarding Ingress Router (BFIR) - one for each set. Each set has a Set Identifier (SI), and one BIFT is needed for each <SD, BSL, SI>. A BIER Forwarding Router (BFR) that is provisioned for the above SD, and that supports both BSLs, could advertise the following set of BIFT-id's:¶
Notice that the example uses ranges of continuous BIFT-id's:¶
Strictly speaking, using contiguous range is not required, but it is done for the purpose of simplified signaling similar to MPLS label blocks (notice that locally assigning BIFT-id ranges requires no manual processing just like in the case of MPLS label block allocation).¶
Processing and forwarding of BIER packets requires special software and hardware capabilities. The BFRs supporting a BIER encapsulation type MUST advertise this capability along with the required parameters specific to the encapsulation to the other routers in BIER domain. This advertisements are used by other BFRs to calculate the BIFTs for a specific encapsulation type.¶
[RFC8401], [RFC8444] and [I-D.ietf-bier-ospfv3-extensions] specifies the required extensions to the IS-IS [RFC1195], OSPFv2 [RFC2328] and OSPFv3 [RFC8362] protocols respectively for the distribution of BIER sub-domain information including the Sub-sub-TLVs required to support BIER in MPLS encapsulation for MPLS networks.¶
This document specifies the required similar extensions to the IS-IS [RFC1195], OSPFv2 [RFC2328] and OSPFv3 [RFC8362] protocols for supporting BIER non-MPLS encapsulation with dynamically and locally assigned BIFT-id's.¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
This document updates section 2.2.1.1 of [RFC8296] that the BIFT-id in case of non-MPLS encapsulation need not be unique throughout the BIER domain and can change as the packet travels.¶
A BIER sub-domain MAY use both MPLS and non-MPLS BIER encapsulation. The assignment of BFR-id in a sub-domain is independent of the encapsulation type. This allows this same bit string to be used regardless of the encapsulation types used to reach BFERs.¶
When a BFIR/BFR supports multiple BIER encapsulation types, when sending to a BIER neighbor it MUST use a type that the neighbor also supports. If the neighbor also supports more than one encapsulation type that this BFIR/BFR supports, the type selection could be a matter of local policy and is outside the scope of this document.¶
The procedures in [RFC8401] and [RFC8444] apply to non-MPLS encapsulation, except the encoding and procedure differences specified below.¶
As specified in [RFC8401] and updated in [I-D.ietf-bier-bar-ipa], BIER Info sub-TLV is used to advertise BIER information except that its MPLS Encapsulation sub-sub-TLV is replaced with a new non-MPLS Encapsulation sub-sub-TLV specified as following.¶
The BIER Info sub-TLV is carried within the TLVs 235, 237 [RFC5120] or TLVs 135 [RFC5305], or TLV 236 [RFC5308]. Its non-MPLS Encapsulation sub-sub-TLV carries the information for the BIER non-MPLS encapsulation and is very similar to the MPLS Encapsulation sub-sub-TLV.¶
When a prefix reachability advertisement is leaked between levels, if it has a BIER sub-TLV with non-zero BFR-id the BIER sub-TLV MUST be included but its non-MPLS Encapsulation sub-sub-TLV MAY be omitted.¶
The non-MPLS Encapsulation sub-sub-TLV MAY appear multiple times within a single BIER Info sub-TLV. If the same BitString length is repeated in multiple BIER non-MPLS encapsulation sub-sub-TLVs inside the same BIER Info sub-TLV, the BIER Info sub-TLV MUST be ignored.¶
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Max SI |BS Len | BIFT-id | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+¶
TBD1 (To be assigned by IANA).¶
4¶
As specified in [RFC8444] and updated in [I-D.ietf-bier-bar-ipa], BIER Sub-TLV is used to advertise BIER information except that its MPLS Encapsulation sub-TLV is replaced with a new non-MPLS Encapsulation sub-TLV specified as following.¶
The BIER sub-TLV [RFC8444] is carried within the OSPFv2 Extended Prefix TLV [RFC7684]. Its non-MPLS Encapsulation sub-TLV carries information for the BIER non-MPLS encapsulation, and is very similar to MPLS Encapsulation sub-TLV.¶
When a prefix reachability is re-advertised into other areas, if it has a BIER sub-TLVs with a non-zero BFR-id the BIER sub-TLV MUST be included but its non-MPLS Encapsulation sub-TLV MAY be omitted.¶
The non-MPLS Encapsulation Sub-TLV MAY appear multiple times within a single BIER Sub-TLV. If the same BitString length is repeated in multiple BIER non-MPLS encapsulation Sub-TLVs inside the same BIER Sub-TLV, the BIER Sub-TLV MUST be ignored.¶
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Max SI | BIFT-id | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |BS Len | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+¶
TBD2 (To be assigned by IANA).¶
8¶
As specified in [I-D.ietf-bier-ospfv3-extensions], BIER Sub-TLV is used to advertise BIER information except that its MPLS Encapsulation sub-TLV is replaced with a new non-MPLS encapsulation sub-TLV specified as following.¶
The BIER Sub-TLV is carried within the Intra-Area-Prefix TLV or Inter-Area-Prefix TLV in OSPFv3 Extended LSA TLV defined in [RFC8362]. its non-MPLS Encapsulation Sub-TLV carries information for the BIER non-MPLS encapsulation, and is very similar to the MPLS Encapsulation sub-TLV.¶
When a prefix reachability is re-advertised into other areas, if it has a BIER sub-TLVs with a non-zero BFR-id the BIER sub-TLV MUST be included but its non-MPLS Encapsulation sub-TLV MAY be omitted.¶
The non-MPLS Encapsulation Sub-TLV MAY appear multiple times within a single BIER Sub-TLV. If the same BitString length is repeated in multiple BIER non-MPLS encapsulation Sub-TLVs inside the same BIER Sub-TLV, the BIER Sub-TLV MUST be ignored.¶
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Max SI | BIFT-id | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |BS Len | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+¶
TBD3 (To be assigned by IANA).¶
8¶
Security concerns for IS-IS are addressed in [RFC5304] and [RFC5310] and the security concerns for IS-IS extensions for BIER are addressed in [RFC8401]. This document introduces new sub-sub-TLV for the already existing IS-IS TLVs defined for distributing the BIER sub-domain information in [RFC8401]. It does not introduce any new security risks to IS-IS.¶
Security concerns and required extensions for OSPFv2 are addressed in [RFC2328] and [RFC7684] and the security concerns for OSPFv2 extensions for BIER are addressed in [RFC8444]. This document introduces new Sub-TLV for the already existing OSPFv2 TLV defined for distributing the BIER sub-domain information in [RFC8444]. It does not introduce any new security risks to OSPFv2.¶
The document requests new allocations from the IANA registries as follows¶
The author wants to thank Antonie Przygienda for his comments and suggestions.¶