IS-IS extensions for BIER-TE (Tree Engineering for Bit Index Explicit Replication) with MPLS and non-MPLS Encapsulation
Internet-Draft draft-zwx-bier-te-isis-extensions-01
Zheng Zhang
ZTE Corporation
China
zhang.zheng@zte.com.cn
Yuehua Wei
ZTE Corporation
China
wei.yuehua@zte.com.cn
Benchong Xu
ZTE Corporation
China
xu.benchong@zte.com.cn
2022
Routing
BIER
template
This document describes the IS-IS protocol extension that is required for BIER-TE with MPLS and non-MPLS encapsulation.
Introduction
[I-D.ietf-bier-te-arch] describes per-packet stateless strict and loose path steered replication and forwarding for "Bit Index Explicit Replication" (BIER, [RFC8279]) packets. It is called BIER Tree Engineering (BIER-TE) and is intended to be used as the path steering mechanism for Traffic Engineering with BIER.
BIER-TE introduces a new semantic for "bit positions" (BP) of link. [I-D.ietf-bier-te-isis] describes IS-IS extensions for distributing BitPositions configured on the links in "Bit Index Explicit Replication Traffic Engineering" (BIER-TE) domain.
As described in section 2.3 in [I-D.ietf-bier-te-arch], BIER-TE inherits the encapsulation supporting from BIER unchanged. The encapsulation defined in [RFC8296], which specifies a common header format for both MPLS and non-MPLS networks, though the first 20-bits (referred to as BIFT-id) of the header is an "MPLS Label" in case of MPLS networks and is a local 20-bit opaque value in case of non-MPLS networks.
As described in section 4.3 of [I-D.ietf-bier-te-arch], it is necessary to distinguish the BIER and BIER-TE packet and forwarding. like [RFC8401] and [I-D.ietf-bier-lsr-non-mpls-extensions], the MPLS and non-MPLS encapsulation needs to be advertised for BIER-TE packet encapsulation.
This document describes the IS-IS protocol extension that is required for BIER-TE with MPLS and non-MPLS encapsulation associated with link BitPosition distributing.
Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119].
Terminology
This document does not introduce more terminologies than [RFC8279], [RFC8296], [RFC8401], [I-D.ietf-bier-te-arch] and [I-D.ietf-bier-te-isis].
Flooding of the BIER-TE Encapsulation Information in IS-IS
[I-D.ietf-bier-te-isis] defines a BIER-TE Info Sub-TLV to distribute the Link BitPosition information about the link. This document defines the MPLS Encapsulation Sub-sub-TLV and the Non-MPLS Encapsulation Sub-sub-TLV associate with the BIER-TE Sub-TLV to carry the MPLS and non-MPLS encapsulation information.
In case both of the two encapsulation sub-sub-TLVs are advertised by one node, the label in MPLS encapsulation sub-sub-TLV and BIFT-id in non-MPLS encapsulation sub-sub-TLV SHOULD NOT be overlapped.
MPLS Encapsulation Sub-sub-TLV
The following description is the almost same with [RFC8401] since [I-D.ietf-bier-te-arch] inherit the encapsulation of BIER header.

   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    |                     Label                     |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |BS Len |                     Reserved                          |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Type: TBD1 (To be assigned by IANA).
Length: 2-octet.
Max SI: A 1-octet field encoding the maximum Set Identifier (SI) (see Section 1 of [RFC8279]) used in the encapsulation for this BIER sub-domain for this BitString length.
Label: A 3-octet field, where the 20 rightmost bits represent the first label in the label range. The 4 leftmost bits MUST be ignored.
BS Len (BitString Length): A 4-bit field encoding the supported BitString length associated with this BFR-prefix. The values allowed in this field are specified in Section 2 of [RFC8296].
Reserved: SHOULD be set to 0 on transmission and MUST be ignored on reception.
The "label range" is the set of labels beginning with the Label and ending with (Label + (Max SI)). A unique label range is allocated for each BitString length and sub-domain-id.
The size of the label range is determined by the number of SIs (Section 1 of [RFC8279]) that are used in the network. Each SI maps to a single label in the label range: the first label is for SI=0, the second label is for SI=1, etc.
If the label associated with the Maximum Set Identifier exceeds the 20-bit range, the BIER MPLS Encapsulation Sub-TLV containing the error MUST be ignored.
If the BitString length is set to a value that does not match any of the allowed values specified in [RFC8296], the BIER MPLS Encapsulation Sub-TLV containing the error MUST be ignored.
The "BIFT-id range" is the set of 20-bit values beginning with the BIFT-id and ending with (BIFT-id + (Max SI)).
The flooding scope of this information is the same with section 5 in [RFC8401].
Non-MPLS Encapsulation Sub-sub-TLV
The following description is the almost same with section 3.1 in [I-D.ietf-bier-lsr-non-mpls-extensions] since [I-D.ietf-bier-te-arch] inherit the encapsulation of BIER header.

   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                          |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Type: TBD2 (To be assigned by IANA).
Length: 2-octet.
Max SI: A 1-octet field encoding the maximum Set Identifier (SI) (see Section 1 of [RFC8279]) used in the encapsulation for this BIER sub-domain for this BitString length.
BIFT-id: A 3-octet field, where the 20 rightmost bits represent the first label in the label range. The 4 leftmost bits MUST be ignored.
BS Len (BitString Length): A 4-bit field encoding the supported BitString length associated with this BFR-prefix. The values allowed in this field are specified in Section 2 of [RFC8296].
Reserved: SHOULD be set to 0 on transmission and MUST be ignored on reception.
The BIFT-id range, limitation and flooding scope is the same with the MPLS encapsulation sub-sub-TLV.
BIER-TE IPv6 Encapsulation Advertisement
As described in section 4 of [I-D.ietf-bier-bierin6], which describes how the existing BIER encapsulation specified in [RFC8296] works in a non-MPLS IPv6 network, a node that requires IPv6 encapsulation MUST advertise the BIER-TE IPv6 encapsulation sub-sub-sub-TLV, which follows the Non-MPLS Encapsulation Sub-sub-TLV, according to local configuration or policy in the BIER domain to request other BFRs to always use IPv6 encapsulation.

       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      |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Type: TBD3 (To be assigned by IANA).
Length: 0.
IANA Considerations
TBD.
Security Considerations
This document does not introduce more security considerations than [I-D.ietf-bier-te-arch] and [I-D.ietf-bier-te-isis].
References
Normative References
[I-D.ietf-bier-te-arch]
[RFC8279]
[I-D.ietf-bier-te-isis]
[RFC8296]
[RFC8401]
[I-D.ietf-bier-lsr-non-mpls-extensions]
[RFC2119]
[I-D.ietf-bier-bierin6]