< draft-ietf-bier-isis-extensions-01.txt   draft-ietf-bier-isis-extensions-02.txt >
Internet Engineering Task Force L. Ginsberg, Ed. Internet Engineering Task Force L. Ginsberg, Ed.
Internet-Draft Cisco Systems Internet-Draft Cisco Systems
Intended status: Standards Track A. Przygienda Intended status: Standards Track A. Przygienda
Expires: April 19, 2016 Ericsson Expires: September 20, 2016 Ericsson
S. Aldrin S. Aldrin
Google Google
J. Zhang J. Zhang
Juniper Networks, Inc. Juniper Networks, Inc.
October 17, 2015 March 19, 2016
BIER support via ISIS BIER support via ISIS
draft-ietf-bier-isis-extensions-01 draft-ietf-bier-isis-extensions-02
Abstract Abstract
Specification of an ISIS extension to support BIER domains and sub- Specification of an ISIS extension to support BIER domains and sub-
domains. domains.
Requirements Language Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
skipping to change at page 1, line 42 skipping to change at page 1, line 42
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on April 19, 2016. This Internet-Draft will expire on September 20, 2016.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4
4. Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4. Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4.1. BIER Domains and Sub-Domains . . . . . . . . . . . . . . 4 4.1. BIER Domains and Sub-Domains . . . . . . . . . . . . . . 4
5. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 4 4.2. Advertising BIER Information . . . . . . . . . . . . . . 5
5. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 5
5.1. Enabling a BIER Sub-Domain . . . . . . . . . . . . . . . 5 5.1. Enabling a BIER Sub-Domain . . . . . . . . . . . . . . . 5
5.2. Multi Topology and Sub-Domain . . . . . . . . . . . . . . 5 5.2. Multi Topology and Sub-Domain . . . . . . . . . . . . . . 5
5.3. Encapsulation . . . . . . . . . . . . . . . . . . . . . . 5 5.3. Encapsulation . . . . . . . . . . . . . . . . . . . . . . 6
5.4. Tree Type . . . . . . . . . . . . . . . . . . . . . . . . 5 5.4. Tree Type . . . . . . . . . . . . . . . . . . . . . . . . 6
5.5. Label Advertisements for MPLS encapsulated BIER sub- 5.5. Label advertisements for MPLS Encapsulation . . . . . . . 6
domains . . . . . . . . . . . . . . . . . . . . . . . . . 5
5.5.1. Special Consideration . . . . . . . . . . . . . . . . 6
5.6. BFR-id Advertisements . . . . . . . . . . . . . . . . . . 6 5.6. BFR-id Advertisements . . . . . . . . . . . . . . . . . . 6
5.7. Flooding . . . . . . . . . . . . . . . . . . . . . . . . 6 5.7. Reporting Misconfiguration . . . . . . . . . . . . . . . 6
6. Packet Formats . . . . . . . . . . . . . . . . . . . . . . . 6 5.8. Flooding Reduction . . . . . . . . . . . . . . . . . . . 7
6. Packet Formats . . . . . . . . . . . . . . . . . . . . . . . 7
6.1. BIER Info sub-TLV . . . . . . . . . . . . . . . . . . . . 7 6.1. BIER Info sub-TLV . . . . . . . . . . . . . . . . . . . . 7
6.2. BIER MPLS Encapsulation sub-sub-TLV . . . . . . . . . . . 8 6.2. BIER MPLS Encapsulation sub-sub-TLV . . . . . . . . . . . 8
6.3. Optional BIER sub-domain Tree Type sub-sub-TLV . . . . . 9 6.3. Optional BIER sub-domain Tree Type sub-sub-TLV . . . . . 9
6.4. Optional BIER sub-domain BSL conversion sub-sub-TLV . . . 10 6.4. Optional BIER sub-domain BSL conversion sub-sub-TLV . . . 9
7. Security Considerations . . . . . . . . . . . . . . . . . . . 11 7. Security Considerations . . . . . . . . . . . . . . . . . . . 10
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 11 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 10
9. Normative References . . . . . . . . . . . . . . . . . . . . 11 9. Normative References . . . . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11
1. Introduction 1. Introduction
Bit Index Explicit Replication (BIER) Bit Index Explicit Replication (BIER)
[I-D.draft-ietf-bier-architecture-02] defines an architecture where [I-D.draft-ietf-bier-architecture-03] defines an architecture where
all intended multicast receivers are encoded as bitmask in the all intended multicast receivers are encoded as bitmask in the
Multicast packet header within different encapsulations such as Multicast packet header within different encapsulations such as
[I-D.draft-ietf-bier-mpls-encapsulation-02]. A router that receives [I-D.draft-ietf-bier-mpls-encapsulation-03]. A router that receives
such a packet will forward the packet based on the Bit Position in such a packet will forward the packet based on the Bit Position in
the packet header towards the receiver(s), following a precomputed the packet header towards the receiver(s), following a precomputed
tree for each of the bits in the packet. Each receiver is tree for each of the bits in the packet. Each receiver is
represented by a unique bit in the bitmask. represented by a unique bit in the bitmask.
This document presents necessary extensions to the currently deployed This document presents necessary extensions to the currently deployed
ISIS for IP [RFC1195] protocol to support distribution of information ISIS for IP [RFC1195] protocol to support distribution of information
necessary for operation of BIER domains and sub-domains. This necessary for operation of BIER domains and sub-domains. This
document defines a new TLV to be advertised by every router document defines a new TLV to be advertised by every router
participating in BIER signaling. participating in BIER signaling.
2. Terminology 2. Terminology
Some of the terminology specified in Some of the terminology specified in
[I-D.draft-ietf-bier-architecture-02] is replicated here and extended [I-D.draft-ietf-bier-architecture-03] is replicated here and extended
by necessary definitions: by necessary definitions:
BIER: Bit Index Explicit Replication (The overall architecture of BIER: Bit Index Explicit Replication (The overall architecture of
forwarding multicast using a Bit Position). forwarding multicast using a Bit Position).
BIER-OL: BIER Overlay Signaling. (The method for the BFIR to learn BIER-OL: BIER Overlay Signaling. (The method for the BFIR to learn
about BFER's). about BFER's).
BFR: Bit Forwarding Router (A router that participates in Bit Index BFR: Bit Forwarding Router (A router that participates in Bit Index
Multipoint Forwarding). A BFR is identified by a unique BFR- Multipoint Forwarding). A BFR is identified by a unique BFR-
prefix in a BIER domain. prefix in a BIER domain.
BFIR: Bit Forwarding Ingress Router (The ingress border router that BFIR: Bit Forwarding Ingress Router (The ingress border router that
inserts the BM into the packet). inserts the BM into the packet). Each BFIR must have a valid BFR-
id assigned.
BFER: Bit Forwarding Egress Router. A router that participates in BFER: Bit Forwarding Egress Router. A router that participates in
Bit Index Forwarding as leaf. Each BFER must be a BFR. Each BFER Bit Index Forwarding as leaf. Each BFER must be a BFR. Each BFER
must have a valid BFR-id assigned. must have a valid BFR-id assigned.
BFT: Bit Forwarding Tree used to reach all BFERs in a domain. BFT: Bit Forwarding Tree used to reach all BFERs in a domain.
BIFT: Bit Index Forwarding Table. BIFT: Bit Index Forwarding Table.
BMS: Bit Mask Set. Set containing bit positions of all BFER BMS: Bit Mask Set. Set containing bit positions of all BFER
skipping to change at page 4, line 12 skipping to change at page 4, line 12
identified by its unique sub-domain identifier. A BIER sub-domain identified by its unique sub-domain identifier. A BIER sub-domain
can support multiple BitString Lengths. can support multiple BitString Lengths.
BFR-id: An optional, unique identifier for a BFR within a BIER sub- BFR-id: An optional, unique identifier for a BFR within a BIER sub-
domain. domain.
Invalid BFR-id: Unassigned BFR-id, consisting of all 0s. Invalid BFR-id: Unassigned BFR-id, consisting of all 0s.
3. IANA Considerations 3. IANA Considerations
This document adds the following new sub-TLVs to the registry of sub- This document adds the following new sub-TLV to the registry of sub-
TLVs for TLVs 235, 237 [RFC5120] and TLVs 135,236 TLVs for TLVs 235, 237 [RFC5120] and TLVs 135,236
[RFC5305],[RFC5308]. [RFC5305],[RFC5308].
Value: 32 (suggested - to be assigned by IANA) Value: 32 (suggested - to be assigned by IANA)
Name: BIER Info Name: BIER Info
This document also introduces a new registry for sub-sub-TLVs for the
BIER Info sub-TLV added above. The registration policy is Expert
Review as defined in [RFC5226]. This registry is part of the "IS-IS
TLV Codepoints" registry. The name of the registry is "sub-sub-TLVs
for BIER Info sub-TLV". The defined values are:
Type Name
---- ----
1 BIER MPLS Encapsulation
2 BIER sub-domain Tree Type
3 BIER sub-domain BSL conversion
4. Concepts 4. Concepts
4.1. BIER Domains and Sub-Domains 4.1. BIER Domains and Sub-Domains
An ISIS signalled BIER domain is aligned with the scope of An ISIS signalled BIER domain is aligned with the scope of
distribution of BFR-prefixes that identify the BFRs within ISIS. distribution of BFR-prefixes that identify the BFRs within ISIS.
ISIS acts in such a case as the according BIER underlay. ISIS acts in such a case as the supporting BIER underlay.
Within such a domain, ISIS extensions are capable of carrying BIER Within such a domain, the extensions defined in this document
information for multiple BIER sub-domains. Each sub-domain is advertise BIER information for one or more BIER sub-domains. Each
uniquely identified by its subdomain-id and each subdomain can reside sub-domain is uniquely identified by a subdomain-id. Each subdomain
in any of the ISIS topologies [RFC5120]. The mapping of sub-domains is associated with a single ISIS topology [RFC5120], which may be any
to topologies is a local decision of each BFR currently but is of the topologies supported by ISIS. Local configuration controls
advertised throughout the domain to ensure routing consistency. which <MT,SD> pairs are supported by a router. The mapping of sub-
domains to topologies MUST be consistent within a BIER flooding
domain.
Each BIER sub-domain has as its unique attributes the encapsulation Each BIER sub-domain has as its unique attributes the encapsulation
used and the type of tree it is using to forward BIER frames used and the type of tree it is using to forward BIER frames
(currently always SPF). Additionally, per supported bitstring length (currently always SPF). Additionally, per supported bitstring length
in the sub-domain, each router will advertise the necessary label in the sub-domain, each router will advertise the necessary label
ranges to support it. ranges to support it.
This RFC introduces a sub-TLV in the extended reachability TLVs to 4.2. Advertising BIER Information
distribute such information about BIER sub-domains. To satisfy the
requirements for BIER prefixes per BIER information advertisements are associated with a new sub-TLV in
[I-D.draft-ietf-bier-architecture-02] additional information will be the extended reachability TLVs. BIER information is always
carried in [I-D.draft-ietf-isis-prefix-attributes-01]. associated with a host prefix which MUST be a node address for the
advertising node. The following restrictions apply:
o Prefix length MUST be 32 for an IPv4 prefix or 128 for an IPv6
prefix
o When the Prefix Attributes Flags sub-TLV is present N flag MUST be
set and X and R flags MUST NOT be set. [RFC7794]
o BIER sub-TLVs MUST NOT be included when a prefix reachability
advertisement is leaked between levels.
5. Procedures 5. Procedures
5.1. Enabling a BIER Sub-Domain 5.1. Enabling a BIER Sub-Domain
A given sub-domain with identifier SD with supported bitstring A given sub-domain with identifier SD with supported bitstring
lengths MLs in a multi-topology MT [RFC5120] is denoted further as lengths MLs in a multi-topology MT [RFC5120] is denoted further as
<MT,SD,MLs> and dos not have to be advertised by by default by BFRs <MT,SD,MLs> and does not have to be advertised by default by BFRs to
to preserve the scaling of the protocol (i.e. ISIS carries no TLVs preserve the scaling of the protocol (i.e. ISIS carries no TLVs
containing any of the elements related to <MT,SD>). The containing any of the elements related to <MT,SD>). The
advertisement may be triggered e.g. by a first BIER sub-TLV advertisement may be triggered e.g. by a first BIER sub-TLV
(Section 6.1) containing <MT,SD> advertised into the area. The (Section 6.1) containing <MT,SD> advertised into the area. The
specific trigger itself is outside the scope of this RFC but can be specific trigger itself is outside the scope of this RFC but can be
for example a VPN desiring to initiate a BIER sub-domain as MI-PMSI for example a VPN desiring to initiate a BIER sub-domain as MI-PMSI
[RFC6513] tree or a pre-configured BFER (since BFERs will always [RFC6513] tree or a pre-configured BFER (since BFERs will always
advertise the BIER sub-TLV to make sure they can be reached). It is advertise the BIER sub-TLV to make sure they can be reached). It is
outside the scope of this document to describe what trigger for a outside the scope of this document to describe what trigger for a
router capable of participating in <MT,SD> is used to start the router capable of participating in <MT,SD> is used to start the
origination of the necessary information to join into it. origination of the necessary information to join into it.
5.2. Multi Topology and Sub-Domain 5.2. Multi Topology and Sub-Domain
A given sub-domain is supported within one and only one topology.
All routers in the flooding scope of the BIER sub-TLVs MUST advertise All routers in the flooding scope of the BIER sub-TLVs MUST advertise
a sub-domain within the same multi-topology. A router discovering a the same sub-domain within the same multi-topology. A router
sub-domain advertised within a topology that is different from its receiving an <MT,SD> advertisement which does not match the locally
own MUST report a misconfiguration of a specific sub-domain. Each configured pair MUST report a misconfiguration of the received <MT,
router MUST compute BFTs for a sub-domain using only routers SD> pair. All received BIER advertisements associated with the
advertising it in the same multi-topology. conflicting <MT, SD> pair MUST be ignored.
5.3. Encapsulation 5.3. Encapsulation
All routers in the flooding scope of the BIER TLVs MUST advertise the All routers in the flooding scope of the BIER TLVs MUST advertise the
same encapsulation for a given <MT,SD>. A router discovering same encapsulation for a given <MT,SD>. A router discovering
encapsulation advertised that is different from its own MUST report a encapsulation advertised that is different from its own MUST report a
misconfiguration of a specific <MT,SD>. Each router MUST compute misconfiguration of a specific <MT,SD>. All received BIER
BFTs for <MT,SD> using only routers having the same encapsulation as advertisements associated with the conflicting <MT, SD> pair MUST be
its own advertised encapsulation in BIER sub-TLV for <MT,SD>. ignored.
5.4. Tree Type 5.4. Tree Type
All routers in the flooding scope of the BIER TLVs MUST advertise the All routers in the flooding scope of the BIER TLVs MAY advertise a
same tree type for a given <MT,SD>. In case of mismatch the behavior supported tree type for a given <MT,SD>. Tree type indicates the
is analogous to Section 5.3. algorithm used when calculating the optimal path. Currently only the
default algorithm "SPF" is defined - which has a tree type of 0. If
5.5. Label Advertisements for MPLS encapsulated BIER sub-domains no tree type is advertised tree type 0 is assumed. The supported
tree type MUST be consistent for all routers supporting a given
Each router MAY advertise within the BIER MPLS Encapsulation sub-sub- <MT,SD>.
TLV (Section 6.2) of a BIER Info sub-TLV (Section 6.1) for <MT,SD>
(denoted as TLV<MT,SD>) for every supported bitstring length a valid
starting label value and a non-zero range length. It MUST advertise
at least one valid label value and a non-zero range length for the
required bitstring lengths per [I-D.draft-ietf-bier-architecture-02]
in case it has computed itself as being on the BFT rooted at any of
the BFRs with valid BFR-ids (except itself if it does NOT have a
valid BFR-id) participating in <MT,SD>.
A router MAY decide to not advertise the BIER Info sub-TLV
(Section 6.1) for <MT,SD> if it does not want to participate in the
sub-domain due to resource constraints, label space optimization,
administrative configuration or any other reasons.
5.5.1. Special Consideration 5.5. Label advertisements for MPLS Encapsulation
A router that desires to participate in <MT,SD> MUST advertise for A router that desires to participate in <MT,SD> MUST advertise for
each bitstring length it supports in <MT,SD> a label range size that each bitstring length it supports in <MT,SD> a label range size that
guarantees to cover the maximum BFR-id injected into <MT,SD> (which guarantees to cover the maximum BFR-id injected into <MT,SD> (which
implies a certain maximum set id per bitstring length as described in implies a certain maximum set id per bitstring length as described in
[I-D.draft-ietf-bier-architecture-02]). Any router that violates [I-D.draft-ietf-bier-architecture-03]). Any router that violates
this condition MUST be excluded from BIER BFTs for <MT,SD>. this condition MUST be excluded from BIER BFTs for <MT,SD>.
5.6. BFR-id Advertisements 5.6. BFR-id Advertisements
Each BFER MAY advertise with its TLV<MT,SD> the BFR-id that it has Each BFER/BFIR MAY advertise with its TLV<MT,SD> the BFR-id that it
administratively chosen. has administratively chosen. A valid BFR-id MUST be unique within
the flooding scope of the BIER advertisments. All BFERs/BFIRs MUST
detect advertisement of duplicate valid BFR-IDs for a given <MT, SD>.
When such duplication is detected all of the routers advertising
duplicates MUST be treated as if they did not advertise a valid BFR-
id. This implies they cannot act as BFER or BFIR in that <MT,SD>.
If a router discovers that two BFRs it can reach advertise the same 5.7. Reporting Misconfiguration
value for BFR-id for <MT,SD>, it MUST report a misconfiguration and
disregard those routers for all BIER calculations and procedures for
<MT,SD> to align with [I-D.draft-ietf-bier-architecture-02]. It is
worth observing that based on this procedure routers with colliding
BFR-id assignments in <MT,SD> MAY still act as BFIRs in <MT,SD> but
will be never able to receive traffic from other BFRs in <MT,SD>.
5.7. Flooding Whenever an advertisement is received which violates any of the
constraints defined in this document the receiving router MUST report
the misconfiguration.
BIER domain information SHOULD change and force flooding 5.8. Flooding Reduction
infrequently. Especially, the router SHOULD make every possible
attempt to bundle all the changes necessary to sub-domains and ranges BIER domain information SHOULD change infrequently. Frequent changes
advertised with those into least possible updates. will increase the number of Link State PDU (LSP) updates and
negatively impact performance in the network.
6. Packet Formats 6. Packet Formats
All ISIS BIER information is carried within the TLVs 235, 237 All ISIS BIER information is carried within the TLVs 235, 237
[RFC5120] and TLVs 135,236 [RFC5305], [RFC5308]. [RFC5120] or TLVs 135 [RFC5305], or TLV 236 [RFC5308].
6.1. BIER Info sub-TLV 6.1. BIER Info sub-TLV
This sub-TLV carries the information for the BIER sub-domains that This sub-TLV carries the information for the BIER sub-domains that
the router participates in as BFR. It can repeat multiple times for the router participates in as BFR. This sub-TLV MAY appear multiple
different multi-topology and sub-domain <MT,SD> combinations. times in a given prefix-reachability TLV - once for each sub-domain
supported in the associated topology.
The sub-TLV carries a single <MT,SD> combination followed by optional
sub-sub-TLVs specified within its context such as e.g. BIER MPLS
Encapsulation per Section 6.2. If the same <MT,SD> combination is
advertised more than once, only the first occurence of the sub-TLV
MUST be used.
On violation of any of the following conditions, the receiving router
SHOULD signal a misconfiguration condition. Further results are
unspecified unless described in the according section of this RFC:
o The subdomain-id MUST be included only within a single topology. The sub-TLV advertises a single <MT,SD> combination followed by
optional sub-sub-TLVs as described in the following sections.
0 1 2 3 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 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 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | subdomain-id | BFR-id | | Reserved | subdomain-id | BFR-id |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: as indicated in IANA section. Type: as indicated in IANA section.
Length: 1 octet. Length: 1 octet.
Reserved: reserved, must be 0 on transmission, ignored on reception. Reserved: MUST be 0 on transmission, ignored on reception. May be
May be used in future versions. 8 bits used in future versions. 8 bits
subdomain-id: Unique value identifying the BIER sub-domain. 1 octet subdomain-id: Unique value identifying the BIER sub-domain. 1 octet
BFR-id: A 2 octet field encoding the BFR-id, as documented in BFR-id: A 2 octet field encoding the BFR-id, as documented in
[I-D.draft-ietf-bier-architecture-02]. If set to the invalid BFR- [I-D.draft-ietf-bier-architecture-03]. If no BFR-id has been
id advertising router is not owning a BFR-id in the sub-domain. assigned this field is set to the invalid BFR-id.
6.2. BIER MPLS Encapsulation sub-sub-TLV 6.2. BIER MPLS Encapsulation sub-sub-TLV
This sub-sub-TLV carries the information for the BIER MPLS This sub-sub-TLV carries the information for the BIER MPLS
encapsulation and the necessary label ranges per bitstring length for encapsulation including the label range for a specific bitstring
a certain <MT,SD> and is carried within the BIER Info sub-TLV length for a certain <MT,SD>. It is advertised within the BIER Info
(Section 6.1) that the router participates in as BFR. sub-TLV (Section 6.1) . This sub-sub-TLV MAY appear multiple times
within a single BIER info sub-TLV.
On violation of any of the following conditions, the receiving router On violation of any of the following conditions, the receiving router
SHOULD signal a misconfiguration condition. Further results are by MUST ignore the encapsulating BIER Info sub-TLV.
default unspecified unless explicitly described:
o The sub-sub-TLV MUST be included once AND ONLY once within the
sub-TLV. If such a sub-sub-TLV is included more than once, only
the first instance MUST be processed.
o Label ranges within the sub-sub-TLV MUST NOT overlap, otherwise o Label ranges in multiple sub-sub-TLV MUST NOT overlap.
the whole sub-sub-TLV MUST be disregarded and the violating
routers are treated per further procedures in Section 5.3.
o Bitstring lengths within the sub-sub-TLV MUST NOT repeat, o Bitstring lengths in multiple sub-sub-TLVs MUST NOT be identical.
otherwise the whole sub-sub-TLV MUST be disregarded and the
violating routers are treated per further procedures in
Section 5.3.
o The sub-sub-TLV MUST include the required bitstring lengths o The sub-sub-TLV MUST include the required bitstring lengths
encoded in precisely the same way as in encoded in precisely the same way as in
[I-D.draft-ietf-bier-architecture-02]. [I-D.draft-ietf-bier-mpls-encapsulation-03].
o All label range sizes MUST be greater than 0. o The label range size MUST be greater than 0.
o All labels MUST represent valid label values, otherwise the whole o All labels in the range MUST represent valid label values
sub-sub-TLV MUST be disregarded and the violating routers are
treated per further procedures in Section 5.3.
0 1 2 3 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 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 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Lbl Range Size|BS Len | Label | | Lbl Range Size|BS Len | Label |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~~ (number repetitions derived from TLV length) ~~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Lbl Range Size|BS Len | Label |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: value of 0 indicating MPLS encapsulation. Type: value of 1 indicating MPLS encapsulation.
Length: 1 octet. Length: 1 octet.
Local BitString Length (BS Len): Bitstring length for the label Local BitString Length (BS Len): Encoded bitstring length as per [I-
range that this router is advertising per D.draft-ietf-bier-mpls-encapsulation-03]. 4 bits.
[I-D.draft-ietf-bier-mpls-encapsulation-02]. 4 bits.
Label Range Size: Number of labels in the range used on Label Range Size: Number of labels in the range used on
encapsulation for this BIER sub-domain for this bitstring length, encapsulation for this BIER sub-domain for this bitstring length,
1 octet. This MUST never be advertised as 0 (zero) and otherwise, 1 octet.
this sub-sub-TLV must be treated as if not present for BFT
calculations and a misconfiguration SHOULD be reported by the
receiving router.
Label: First label of the range used on encapsulation for this BIER Label: First label of the range, 20 bits. The labels are as defined
sub-domain for this bitstring length, 20 bits. The label is used in [I-D.draft-ietf-bier-mpls-encapsulation-03].
for example by [I-D.draft-ietf-bier-mpls-encapsulation-02] to
forward traffic to sets of BFERs.
6.3. Optional BIER sub-domain Tree Type sub-sub-TLV 6.3. Optional BIER sub-domain Tree Type sub-sub-TLV
This sub-sub-TLV carries the information of the BIER tree type for a This sub-sub-TLV carries the information associated with the
<MT,SD> combination. It is carried within the BIER Info sub-TLV supported BIER tree type for a <MT,SD> combination. It is carried
(Section 6.1) that the router participates in as BFR. This sub-sub- within the BIER Info sub-TLV (Section 6.1) that the router
TLV is optional and its absence has the same semantics as its participates in as BFR. This sub-sub-TLV is optional and its absence
presence with Tree Type value 0 (SPF). BIER implementation following has the same semantics as its presence with Tree Type value 0 (SPF).
this version of the RFC SHOULD NOT advertise this TLV. When Tree Type 0 is used it is recommended that this sub-sub-TLV be
omitted in order to reduce the space consumed in the parent TLV.
On violation of any of the following conditions, the receiving router
implementing this RFC SHOULD signal a misconfiguration condition.
Further results are unspecified unless described further:
o The sub-sub-TLV MUST NOT be included more than once. This sub-sub-TLV MUST NOT occur more than once in a BIER Info sub-
TLV. If multiple occurences of this sub-sub-TLV are present in a
single BIER Info sub-TLV the encapsulating BIER Info sub-TLV MUST be
ignored.
o The Tree Type MUST be 0 (SPF). If the tree type (implied or explicitly advertised) does not match
the locally configured tree type associated with the matching <MT,
SD> pair the encapsulating sub-TLV MUST be ignored.
0 1 2 3 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 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 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tree Type | | Tree Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Tree Type specific opaque data|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~~ up to TLV Length ~~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tree Type specific opaque data|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: value of 1 indicating BIER Tree Type. Type: value of 1 indicating BIER Tree Type.
Length: 1 octet. Length: 1 octet.
Tree Type: The only supported value in this specification is 0 and Tree Type: 1 octet
indicates that BIER uses normal SPF computed reachability to
construct BIFT. BIER implementation following this RFC MUST
ignore the node for purposes of the sub-domain <MT,SD> if this
field has any value except 0.
Tree type specific opaque data: Opaque data up to the length of the
TLV carrying tree type specific parameters. For Tree Type 0 (SPF)
no such data is included and therefore TLV Length is 1.
6.4. Optional BIER sub-domain BSL conversion sub-sub-TLV 6.4. Optional BIER sub-domain BSL conversion sub-sub-TLV
This sub-sub-TLV indicates whether the BFR is capable of imposing a This sub-sub-TLV indicates whether the BFR is capable of imposing a
different Bit String Length (BSL) than the one it received in a BIER different Bit String Length (BSL) than the one it received in a BIER
encapsulated packet. Such a capability may allow future, advanced encapsulated packet. Such a capability may allow future, advanced
tree types which ensure simple migration procedures from one BSL to tree types which ensure simple migration procedures from one BSL to
another in a given <MT,SD> or prevent stable blackholes in scenarios another in a given <MT,SD> or prevent stable blackholes in scenarios
where not all routers support the same set of BSLs in a given where not all routers support the same set of BSLs in a given
<MT,SD>. It is carried within the BIER Info sub-TLV (Section 6.1). <MT,SD>. It is carried within the BIER Info sub-TLV (Section 6.1).
This sub-sub-TLV is optional and its absence indicates that the This sub-sub-TLV is optional and its absence indicates that the
router is NOT capable of imposing different BSLs but will always router is NOT capable of imposing different BSLs but will always
forward the packet with the BSL unchanged. forward the packet with the BSL unchanged. This sub-sub-TLV MAY
occur at most once in a given BIER info sub-TLV. If multiple
On violation of any of the following conditions, the receiving router occurences of this sub-sub-TLV are received in a given BIER info sub-
implementing this RFC SHOULD signal a misconfiguration condition. TLV the encapsulating sub-TLV MUST be ignored.
Further results are unspecified unless described further:
o The sub-sub-TLV MUST NOT be included more than once.
0 1 2 3 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 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 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: value of 2 indicating BIER BSL conversion.
Length: 1 octet.
7. Security Considerations 7. Security Considerations
Implementations must assure that malformed TLV and Sub-TLV Implementations must assure that malformed TLV and Sub-TLV
permutations do not result in errors which cause hard protocol permutations do not result in errors which cause hard protocol
failures. failures.
8. Acknowledgements 8. Acknowledgements
The RFC is aligned with the The RFC is aligned with the
[I-D.draft-ietf-bier-ospf-bier-extensions-00] draft as far as the [I-D.draft-ietf-bier-ospf-bier-extensions-01] draft as far as the
protocol mechanisms overlap. protocol mechanisms overlap.
Many thanks for comments from (in no particular order) Hannes Many thanks for comments from (in no particular order) Hannes
Gredler, Ijsbrand Wijnands, Peter Psenak and Chris Bowers. Gredler, Ijsbrand Wijnands, Peter Psenak and Chris Bowers.
9. Normative References 9. Normative References
[I-D.draft-ietf-bier-architecture-02] [I-D.draft-ietf-bier-architecture-03]
Wijnands et al., IJ., "Stateless Multicast using Bit Index Wijnands et al., IJ., "Stateless Multicast using Bit Index
Explicit Replication Architecture", internet-draft draft- Explicit Replication Architecture", internet-draft draft-
ietf-bier-architecture-02.txt, July 2015. ietf-bier-architecture-03.txt, Jan 2016.
[I-D.draft-ietf-bier-mpls-encapsulation-02] [I-D.draft-ietf-bier-mpls-encapsulation-03]
Wijnands et al., IJ., "Bit Index Explicit Replication Wijnands et al., IJ., "Bit Index Explicit Replication
using MPLS encapsulation", internet-draft draft-ietf-bier- using MPLS encapsulation", internet-draft draft-ietf-bier-
mpls-encapsulation-02.txt, Aug 2015. mpls-encapsulation-03.txt, Feb 2016.
[I-D.draft-ietf-bier-ospf-bier-extensions-00] [I-D.draft-ietf-bier-ospf-bier-extensions-01]
Psenak et al., P., "OSPF Extension for Bit Index Explicit Psenak et al., P., "OSPF Extension for Bit Index Explicit
Replication", internet-draft draft-ietf-bier-ospf-bier- Replication", internet-draft draft-ietf-bier-ospf-bier-
extensions-00.txt, October 2014. extensions-01.txt, October 2015.
[I-D.draft-ietf-isis-prefix-attributes-01]
Ginsberg et al., U., "IS-IS Prefix Attributes for Extended
IP and IPv6 Reachability", internet-draft draft-ietf-isis-
prefix-attributes-01.txt, June 2015.
[RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and [RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and
dual environments", RFC 1195, DOI 10.17487/RFC1195, dual environments", RFC 1195, DOI 10.17487/RFC1195,
December 1990, <http://www.rfc-editor.org/info/rfc1195>. December 1990, <http://www.rfc-editor.org/info/rfc1195>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>. <http://www.rfc-editor.org/info/rfc2119>.
[RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi [RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi
Topology (MT) Routing in Intermediate System to Topology (MT) Routing in Intermediate System to
Intermediate Systems (IS-ISs)", RFC 5120, Intermediate Systems (IS-ISs)", RFC 5120,
DOI 10.17487/RFC5120, February 2008, DOI 10.17487/RFC5120, February 2008,
<http://www.rfc-editor.org/info/rfc5120>. <http://www.rfc-editor.org/info/rfc5120>.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 5226,
DOI 10.17487/RFC5226, May 2008,
<http://www.rfc-editor.org/info/rfc5226>.
[RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic
Engineering", RFC 5305, DOI 10.17487/RFC5305, October Engineering", RFC 5305, DOI 10.17487/RFC5305, October
2008, <http://www.rfc-editor.org/info/rfc5305>. 2008, <http://www.rfc-editor.org/info/rfc5305>.
[RFC5308] Hopps, C., "Routing IPv6 with IS-IS", RFC 5308, [RFC5308] Hopps, C., "Routing IPv6 with IS-IS", RFC 5308,
DOI 10.17487/RFC5308, October 2008, DOI 10.17487/RFC5308, October 2008,
<http://www.rfc-editor.org/info/rfc5308>. <http://www.rfc-editor.org/info/rfc5308>.
[RFC6513] Rosen, E., Ed. and R. Aggarwal, Ed., "Multicast in MPLS/ [RFC6513] Rosen, E., Ed. and R. Aggarwal, Ed., "Multicast in MPLS/
BGP IP VPNs", RFC 6513, DOI 10.17487/RFC6513, February BGP IP VPNs", RFC 6513, DOI 10.17487/RFC6513, February
2012, <http://www.rfc-editor.org/info/rfc6513>. 2012, <http://www.rfc-editor.org/info/rfc6513>.
[RFC7794] Ginsberg, L., Ed., Decraene, B., Previdi, S., Xu, X., and
U. Chunduri, "IS-IS Prefix Attributes for Extended IPv4
and IPv6 Reachability", RFC 7794, DOI 10.17487/RFC7794,
March 2016, <http://www.rfc-editor.org/info/rfc7794>.
Authors' Addresses Authors' Addresses
Les Ginsberg (editor) Les Ginsberg (editor)
Cisco Systems Cisco Systems
510 McCarthy Blvd. 510 McCarthy Blvd.
Milpitas, CA 95035 Milpitas, CA 95035
USA USA
Email: ginsberg@cisco.com Email: ginsberg@cisco.com
Tony Przygienda Tony Przygienda
 End of changes. 63 change blocks. 
187 lines changed or deleted 160 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/