< draft-przygienda-bier-isis-ranges-01.txt   draft-przygienda-bier-isis-ranges-02.txt >
Internet Engineering Task Force A. Przygienda Internet Engineering Task Force A. Przygienda
Internet-Draft Ericsson Internet-Draft Ericsson
Intended status: Standards Track L. Ginsberg Intended status: Standards Track L. Ginsberg
Expires: April 26, 2015 Cisco Systems Expires: August 3, 2015 Cisco Systems
S. Aldrin S. Aldrin
Huawei Huawei
J. Zhang J. Zhang
Juniper Networks, Inc. Juniper Networks, Inc.
October 23, 2014 January 30, 2015
BIER support via ISIS BIER support via ISIS
draft-przygienda-bier-isis-ranges-01 draft-przygienda-bier-isis-ranges-02
Abstract Abstract
Specification of an ISIS extension to support BIER domains. Specification of an ISIS extension to support BIER domains and sub-
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
document are to be interpreted as described in RFC 2119 [RFC2119] . document are to be interpreted as described in RFC 2119 [RFC2119] .
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
skipping to change at page 1, line 41 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 26, 2015. This Internet-Draft will expire on August 3, 2015.
Copyright Notice Copyright Notice
Copyright (c) 2014 IETF Trust and the persons identified as the Copyright (c) 2015 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 in Extended Reachability TLVs . . . . . . . 4 4.1. BIER Domains and Sub-Domains . . . . . . . . . . . . . . 4
4.2. BIER Domains . . . . . . . . . . . . . . . . . . . . . . 4
5. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 4 5. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 4
5.1. Enabling a BIER Domain . . . . . . . . . . . . . . . . . 4 5.1. Enabling a BIER Sub-Domain . . . . . . . . . . . . . . . 5
5.2. Encapsulation . . . . . . . . . . . . . . . . . . . . . . 5 5.2. Multi Topology and Sub-Domain . . . . . . . . . . . . . . 5
5.3. Label Advertisements for MPLS encapsulated BIER domains . 5 5.3. Encapsulation . . . . . . . . . . . . . . . . . . . . . . 5
5.3.1. Special Consideration . . . . . . . . . . . . . . . . 5 5.4. Tree Type . . . . . . . . . . . . . . . . . . . . . . . . 5
5.4. BFR-id Advertisements . . . . . . . . . . . . . . . . . . 5 5.5. Label Advertisements for MPLS encapsulated BIER sub-
5.5. Flooding . . . . . . . . . . . . . . . . . . . . . . . . 6 domains . . . . . . . . . . . . . . . . . . . . . . . . . 5
6. Packet Formats . . . . . . . . . . . . . . . . . . . . . . . 6 5.5.1. Special Consideration . . . . . . . . . . . . . . . . 6
6.1. BIER Info sub-TLV . . . . . . . . . . . . . . . . . . . . 6 5.6. BFR-id Advertisements . . . . . . . . . . . . . . . . . . 6
6.2. BIER MPLS Encapsulation sub-sub-TLV . . . . . . . . . . . 7 5.7. Flooding . . . . . . . . . . . . . . . . . . . . . . . . 6
7. Security Considerations . . . . . . . . . . . . . . . . . . . 7 5.8. Version . . . . . . . . . . . . . . . . . . . . . . . . . 6
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 6. Packet Formats . . . . . . . . . . . . . . . . . . . . . . . 7
9. Normative References . . . . . . . . . . . . . . . . . . . . 8 6.1. BIER Info sub-TLV . . . . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 6.2. BIER MPLS Encapsulation sub-sub-TLV . . . . . . . . . . . 8
6.3. Optional BIER sub-domain Tree Type sub-sub-TLV . . . . . 9
7. Security Considerations . . . . . . . . . . . . . . . . . . . 11
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 11
9. Normative References . . . . . . . . . . . . . . . . . . . . 11
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12
1. Introduction 1. Introduction
Bit Index Explicit Replication (BIER) Bit Index Explicit Replication (BIER)
[I-D.draft-wijnands-bier-architecture-00] defines an architecture [I-D.draft-wijnands-bier-architecture-02] defines an architecture
where all intended multicast receivers are encoded as bitmask in the where 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-wijnands-mpls-bier-encapsulation-01]. A router that [I-D.draft-wijnands-mpls-bier-encapsulation-02]. A router that
receives such a packet will forward the packet based on the Bit receives such a packet will forward the packet based on the Bit
Position in the packet header towards the receiver(s), following a Position in the packet header towards the receiver(s), following a
precomputed tree for each of the bits in the packet. Each receiver precomputed tree for each of the bits in the packet. Each receiver
is represented by a unique bit in the bitmask. is represented by a unique bit in the bitmask.
This document presents first attempt at necessary extensions to the This document presents necessary extensions to the currently deployed
currently deployed ISIS for IP [RFC1195] protocol to support ISIS for IP [RFC1195] protocol to support distribution of information
distribution of information necessary for operation of BIER domains. necessary for operation of BIER domains and sub-domains. This
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 such BIER domains. participating in BIER signaling.
2. Terminology 2. Terminology
Some of the terminology specified in Some of the terminology specified in
[I-D.draft-wijnands-bier-architecture-00] is replicated here and [I-D.draft-wijnands-bier-architecture-02] is replicated here and
extended by necessary definitions: extended 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).
BM: Bit Mask (A bit stream of a certain fixed length. Each Bit
represents a receiver).
P-BM: Packet Bit Mask (A Bit Mask included in the Multicast Packet).
BP: Bit Position (A single Bit from the Bit Mask that represents a
receiver).
BFR: Bit Forwarding Router (A router that participates in Bit Index BFR: Bit Forwarding Router (A router that participates in Bit Index
Multipoint Forwarding). Multipoint Forwarding). A BFR is identified by a unique BFR-
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).
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. Bit Index Forwarding as leaf. Each BFER must be a BFR. Each BFER
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 (A 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
participating in a set. participating in a set.
BMP: Bit Mask Position, a given bit in a BMS. BMP: Bit Mask Position, a given bit in a BMS.
Invalid BMP: Unassigned Bit Mask Position, consisting of all 0s. Invalid BMP: Unassigned Bit Mask Position, consisting of all 0s.
Invalid BFR-id: Unassigned BFR-id, consisting of all 0s. IGP signalled BIER domain: A BIER underlay where the BIER
synchronization information is carried in IGP. Observe that a
multi-topology is NOT a separate BIER domain in IGP.
IGP signalled BIER domain: A BIER domain information carried in IGP BIER sub-domain: A further distinction within a BIER domain
and identified by its multi-topology and bitmask length. identified by its unique sub-domain identifier. A BIER sub-domain
can support multiple BitString Lengths.
BFR-id: An optional, unique identifier for a BFR within a BIER sub-
domain.
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-TLVs 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
4. Concepts 4. Concepts
4.1. BIER Domains in Extended Reachability TLVs 4.1. BIER Domains and Sub-Domains
This draft introduces a sub-TLV in the extended reachability TLVs to An ISIS signalled BIER domain is aligned with the scope of
distribute information about BIER domains and services they carry. distribution of BFR-prefixes that identify the BFRs within ISIS.
To satisfy the requirements for BIER prefixes per ISIS acts in such a case as the according BIER underlay.
[I-D.draft-wijnands-bier-architecture-00] additional information may
be carried in [I-D.draft-ginsberg-isis-prefix-attributes].
4.2. BIER Domains Within such a domain, ISIS extensions are capable of carrying BIER
information for multiple BIER sub-domains. Each sub-domain is
uniquely identified by its subdomain-id and each subdomain can reside
in any of the ISIS topologies [RFC5120]. The mapping of sub-domains
to topologies is a local decision of each BFR currently but is
advertised throughout the domain to ensure routing consistency.
ISIS extensions are capable of carrying BIER information not only for Each BIER sub-domain has as its unique attributes the encapsulation
a single BIER domains but for multiple ones. A BIER domain in ISIS used and the type of tree it is using to forward BIER frames
is currently always uniquely identified by the tuple of multi- (currently always SPF). Additionally, per supported bitstring length
topology MT and bitmask length ML it belongs to denoted as <MT,ML>. in the sub-domain, each router will advertise the necessary label
ranges to support it.
Each such domain itself has as its unique attributes the This RFC introduces a sub-TLV in the extended reachability TLVs to
encapsulation used and the type of tree it is using to forward BIER distribute such information about BIER sub-domains. To satisfy the
frames (currently always SPF). requirements for BIER prefixes per
[I-D.draft-wijnands-bier-architecture-02] additional information will
be carried in [I-D.draft-ginsberg-isis-prefix-attributes].
5. Procedures 5. Procedures
5.1. Enabling a BIER Sub-Domain
5.1. Enabling a BIER Domain A given sub-domain with identifier BS with supported bitstring
lengths MLs in a multi-topology MT [RFC5120] is denoted further as
<MT,SD,MLs> and is normally not advertised to preserve the scaling of
the protocol (i.e. ISIS carries no TLVs containing any of the
elements related to <MT,SD>) and is enabled by a first BIER sub-TLV
(Section 6.1) containing <MT,SD> being advertised into the area. The
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
[RFC6513] tree. It is outside the scope of this document to describe
what trigger for a router capable of participating in <MT,SD> is used
to start the origination of the necessary information to join into
it.
A given domain with masklength ML in a multi-topology MT [RFC5120] 5.2. Multi Topology and Sub-Domain
(denoted as <MT,ML>) is normally not advertised to preserve the
scaling of the protocol (i.e. ISIS carries no TLVs containing any of
the elements related to <MT,ML>) and is enabled by a first BIER sub-
TLV (Section 6.1) containing <MT,ML> being advertised into the area.
The trigger itself is outside the scope of this draft but can be for
example a VPN desiring to initiate a BIER layer as MI-PMSI [RFC6513]
tree. It is outside the scope of this document to describe what
trigger for a router capable of participating <MT,ML> is used to
start the origination of the necessary information to join into it.
5.2. Encapsulation All routers in the flooding scope of the BIER TLVs MUST advertise a
sub-domain within the same multi-topology. A router discovering a
sub-domain advertised within a topology that is different from its
own MUST report a misconfiguration of a specific sub-domain. Each
router MUST compute BFTs for a sub-domain using only routers
advertising it in the same topology.
All routers in the flooding scope of the BIER TLVs SHOULD advertise 5.3. Encapsulation
the same encapsulation for a given <MT,ML>. A router discovering
All routers in the flooding scope of the BIER TLVs MUST advertise the
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,ML>. Each router MUST compute misconfiguration of a specific <MT,SD>. Each router MUST compute
BFTs for <MT,ML> using only routers having the same encapsulation as BFTs for <MT,SD> using only routers having the same encapsulation as
its own advertised encapsulation in BIER sub-TLV for <MT,ML>. its own advertised encapsulation in BIER sub-TLV for <MT,SD>.
5.3. Label Advertisements for MPLS encapsulated BIER domains 5.4. Tree Type
All routers in the flooding scope of the BIER TLVs MUST advertise the
same tree type for a given <MT,SD>. In case of mismatch the behavior
is analogous to Section 5.3.
5.5. Label Advertisements for MPLS encapsulated BIER sub-domains
Each router MAY advertise within the BIER MPLS Encapsulation sub-sub- Each router MAY advertise within the BIER MPLS Encapsulation sub-sub-
TLV (Section 6.2) of a BIER Info sub-TLV (Section 6.1) for <MT,ML> TLV (Section 6.2) of a BIER Info sub-TLV (Section 6.1, denoted as
(denoted further as TLV<MT,ML>) a valid starting label value and a TLV<MT,SD>) for <MT,SD> for every supported bitstring length a valid
non-zero range length. It MUST advertise a valid label value and a starting label value and a non-zero range length. It MUST advertise
non-zero range length in case it has computed itself as being on the at least one valid label value and a non-zero range length for the
BFT rooted at any of the BFRs with valid BFR-ids (except itself if it required bitstring lengths per
does NOT have a valid BFR-id) participating in <MT,ML>. [I-D.draft-wijnands-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 CAN decide to not advertise its TLV<MT,ML> if it does not A router MAY decide to not advertise the BIER Info sub-TLV
want to participate in the domain due to resource constraints, label (Section 6.1) for <MT,SD> if it does not want to participate in the
space optimization, administrative configuration or any other sub-domain due to resource constraints, label space optimization,
reasons. administrative configuration or any other reasons.
5.3.1. Special Consideration 5.5.1. Special Consideration
A router MUST advertise for <MT,ML> label range size that guarantees A router MUST advertise for each bitstring length it supports in
to cover the maximum BFR-id injected into <MT,ML> (which implies a <MT,SD> a label range size that guarantees to cover the maximum BFR-
certain set id as described in id injected into <MT,SD> (which implies a certain maximum set id per
[I-D.draft-wijnands-bier-architecture-00]). Any router that violates bitstring length as described in
this condition MUST be excluded from BIER BFTs for <MT,ML>. [I-D.draft-wijnands-bier-architecture-02]). Any router that violates
this condition MUST be excluded from BIER BFTs for <MT,SD>.
5.4. BFR-id Advertisements 5.6. BFR-id Advertisements
Each BFER MAY advertise with its TLV<MT,ML> the BFR-id that it has Each BFER MAY advertise with its TLV<MT,SD> the BFR-id that it has
administratively chosen. administratively chosen.
If a router discovers that two BFRs it can reach advertise the same If a router discovers that two BFRs it can reach advertise the same
value for BFR-id for <MT,ML>, it MUST report a misconfiguration and value for BFR-id for <MT,SD>, it MUST report a misconfiguration and
disregard those routers for all BIER calculations and procedures for disregard those routers for all BIER calculations and procedures for
<MT,ML> to align with [I-D.draft-wijnands-bier-architecture-00]. It <MT,SD> to align with [I-D.draft-wijnands-bier-architecture-02]. It
is worth observing that based on this procedure routers with is worth observing that based on this procedure routers with
colliding BFR-id assignments in <MT,ML> MAY still act as BFIRs in colliding BFR-id assignments in <MT,SD> MAY still act as BFIRs in
<MT,ML> but will be never able to receive traffic from other BFRs in <MT,SD> but will be never able to receive traffic from other BFRs in
<MT,ML>. <MT,SD>.
5.5. Flooding 5.7. Flooding
BIER domain information SHOULD change and force flooding BIER domain information SHOULD change and force flooding
infrequently. Further discussion TBD. infrequently. Especially, the router SHOULD make every possible
attempt to bundle all the changes necessary to sub-domains and ranges
advertised with those into least possible updates.
5.8. Version
This RFC specifies Version 0 of the BIER extension encodings. Packet
encoding supports introduction of future, higher versions with e.g.
new sub-sub-TLVs or redefining reserved bits that can maintain the
compatiblity to Version 0 or choose to indicate that the
compatibility cannot be maintained anymore (changes that cannot work
with the provided encoding would necessitate obviously introduction
of completely new sub-TLV for BIER).
This kind of 'versioning' allows to introduce e.g. backwards-
compatible automatic assignment of unique BFR-ids within sub-domains
or addition of optional sub-sub-TLVs that can be ignored by version 0
BIER routers without the danger of incompatiblity.
This is a quite common technique in software development today to
maintain and extend backwards compatible APIs.
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] and TLVs 135,236 [RFC5305], [RFC5308].
6.1. BIER Info sub-TLV 6.1. BIER Info sub-TLV
This sub-TLV carries the information for the BIER domains that the This sub-TLV carries the information for the BIER sub-domains that
router participates in as BFR. It can repeat multiple times for the router participates in as BFR. It can repeat multiple times for
different domain <MT,ML> combinations. If the same <MT,ML> domain is different sub-domain <MT,SD> combinations.
advertised multiple times with different encapsulations, the result
is unspecified.
The sub-TLV carries a single <MT,ML> combination followed by optional 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 sub-sub-TLVs specified within its context such as e.g. BIER MPLS
Encapsulation per Section 6.2. Encapsulation per Section 6.2.
0 1 2 On violation of any of the following conditions, the receiving router
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 SHOULD signal a misconfiguration condition. Further results are
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ unspecified unless described in the according section of this RFC:
| Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ o The subdomain-id MUST be included only within a single topology.
| BM Len|Reservd| BFR-id |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Ver|C| Reserved| subdomain-id | BFR-id |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: as indicated in IANA section. Type: as indicated in IANA section.
Length: 1 octet. Length: 1 octet.
Local BitMask Length (BM Len): Bitmask length for this BIER domain Version: Version of the BIER TLV advertised, must be 0 on
that this router is advertising per transmission by router implementing this RFC. Behavior on
[I-D.draft-wijnands-mpls-bier-encapsulation-01]. 4 bits. reception depends on the 'C' bit. 2 bits
Reserved reserved, must be 0 on transmission, ignored on reception. C-BIT: Compatibility bit indicating that the TLV can be interpreted
4 bits by routers implementing lower than the advertised version. Router
implementing this version of the RFC MUST set it to 1. On
reception, IF the version of the protocol is higher than 0 AND the
bit is set (i.e. its value is 1), the TLV MUST be processed
normally, IF the bit is clear (i.e. its value is 0), the TLV MUST
be ignored for further processing completely independent of the
advertised version. When processing this sub-TLV with
compatibility bit set, all sub-sub-TLV of unknown type MUST and
CAN be safely ignored. 1 bit
BFR-id A 2 octet field encoding the BFR-id, as documented in Reserved: reserved, must be 0 on transmission, ignored on reception.
[I-D.draft-wijnands-bier-architecture-00]. If set to the invalid May be used in future versions. 5 bits
BFR-id advertising router is not owning any BFR-id.
subdomain-id: Unique value identifying the BIER sub-domain. 1 octet
BFR-id: A 2 octet field encoding the BFR-id, as documented in
[I-D.draft-wijnands-bier-architecture-02]. If set to the invalid
BFR-id advertising router is not owning a BFR-id in the sub-
domain.
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
encapsulations for a certain <MT,ML> and is carried within the BIER encapsulation and the necessary label ranges per bitstring length for
Info sub-TLV (Section 6.1) that the router participates in as BFR. a certain <MT,SD> and is carried within the BIER Info sub-TLV
It can repeat only once within it. If this sub-sub-TLV is included (Section 6.1) that the router participates in as BFR.
more than once, the result is unspecified.
0 1 2 3 On violation of any of the following conditions, the receiving router
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 SHOULD signal a misconfiguration condition. Further results are
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ unspecified:
| Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ o The sub-sub-TLV MUST be included once AND ONLY once within the
| Lbl Range Size|Reservd| Label | sub-TLV.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
o Label ranges within the sub-sub-TLV MUST NOT overlap. A receiving
BFR MAY additionally check whether any of the ranges in all the
sub-sub-TLVs advertised by another BFR overlap and apply the same
treatement on violations.
o Bitstring lengths within the sub-sub-TLV MUST NOT repeat.
o The sub-sub-TLV MUST include the required bitstring lengths per
[I-D.draft-wijnands-bier-architecture-02].
o All label range sizes MUST be greater than 0.
o All labels MUST represent valid label values.
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ <-+
| 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 0 indicating MPLS encapsulation.
Length: 1 octet. Length: 1 octet.
Local BitString Length (BS Len): Bitstring length for the label
range that this router is advertising per
[I-D.draft-wijnands-mpls-bier-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 domain, 1 octet. This MUST never be encapsulation for this BIER sub-domain for this bitstring length,
advertise as 0 (zero) and otherwise, this sub-sub-TLV must be 1 octet. This MUST never be advertised as 0 (zero) and otherwise,
treated as if not present for BFT calculations and a this sub-sub-TLV must be treated as if not present for BFT
misconfiguration SHOULD be reported by the receiving router. 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 used on encapsulation for this BIER
domain and service, 20 bits. The label is used for example by sub-domain for this bitstring length, 20 bits. The label is used
[I-D.draft-wijnands-mpls-bier-encapsulation-01] to forward traffic for example by [I-D.draft-wijnands-mpls-bier-encapsulation-02] to
to sets of BFERs. forward traffic to sets of BFERs.
Reserved reserved, must be 0 on transmission, ignored on reception. 6.3. Optional BIER sub-domain Tree Type sub-sub-TLV
4 bits
This sub-sub-TLV carries the information of the BIER tree type for a
certain <MT,SD>. It is carried within the BIER Info sub-TLV
(Section 6.1) that the router participates in as BFR. This sub-sub-
TLV is optional and its absence indicates the same as its presence
with Tree Type value 0 (SPF). BIER implementation following this
version of the RFC SHOULD NOT advertise this 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 be included once AND ONLY once.
o The advertised BIER TLV version is 0 and the value of Tree Type
MUST be 0 (SPF).
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tree Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tree Type specific opaque data|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~~ up to TLV Length ~~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tree Type specific opaque data|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: value of 1 indicating BIER Tree Type.
Length: 1 octet.
Tree Type: The only supported value today is 0 and 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.
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 draft is aligned with the The RFC is aligned with the [I-D.draft-psenak-ospf-bier-extension-01]
[I-D.draft-psenak-ospf-bier-extension-01] draft as far as the 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 and Peter Psenak. Gredler, Ijsbrand Wijnands and Peter Psenak.
9. Normative References 9. Normative References
[I-D.draft-ginsberg-isis-prefix-attributes] [I-D.draft-ginsberg-isis-prefix-attributes]
Ginsberg et al., U., "IS-IS Prefix Attributes for Extended Ginsberg et al., U., "IS-IS Prefix Attributes for Extended
IP and IPv6 Reachability", internet-draft draft-ginsberg- IP and IPv6 Reachability", internet-draft draft-ginsberg-
isis-prefix-attributes-00.txt, October 2014. isis-prefix-attributes-00.txt, October 2014.
[I-D.draft-psenak-ospf-bier-extension-01] [I-D.draft-psenak-ospf-bier-extension-01]
Psenak, P. and IJ. Wijnands, "OSPF Extension for Bit Index Psenak, P. and IJ. Wijnands, "OSPF Extension for Bit Index
Explicit Replication", internet-draft draft-ietf-ospf- Explicit Replication", internet-draft draft-ietf-ospf-
prefix-link-attr-01.txt, October 2014. prefix-link-attr-01.txt, October 2014.
[I-D.draft-wijnands-bier-architecture-00] [I-D.draft-wijnands-bier-architecture-02]
Wijnands, IJ., "Stateless Multicast using Bit Index Wijnands, IJ., "Stateless Multicast using Bit Index
Explicit Replication Architecture", internet-draft draft- Explicit Replication Architecture", internet-draft draft-
wijnands-bier-architecture-00.txt, February 2014. wijnands-bier-architecture-02.txt, February 2014.
[I-D.draft-wijnands-mpls-bier-encapsulation-01] [I-D.draft-wijnands-mpls-bier-encapsulation-02]
Wijnands et al., IJ., "Bit Index Explicit Replication Wijnands et al., IJ., "Bit Index Explicit Replication
using MPLS encapsulation", internet-draft draft-wijnands- using MPLS encapsulation", internet-draft draft-wijnands-
mpls-bier-encapsulation-01.txt, February 2014. mpls-bier-encapsulation-02.txt, February 2014.
[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, December 1990. dual environments", RFC 1195, December 1990.
[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, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC4971] Vasseur, JP., Shen, N., and R. Aggarwal, "Intermediate [RFC4971] Vasseur, JP., Shen, N., and R. Aggarwal, "Intermediate
System to Intermediate System (IS-IS) Extensions for System to Intermediate System (IS-IS) Extensions for
Advertising Router Information", RFC 4971, July 2007. Advertising Router Information", RFC 4971, July 2007.
 End of changes. 59 change blocks. 
149 lines changed or deleted 291 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/