OSPF P. Psenak, Ed. Internet-Draft N. Kumar Intended status: Standards Track IJ. Wijnands Expires: January 4, 2018 Cisco A. Dolganow Nokia T. Przygienda J. Zhang Juniper Networks, Inc. S. Aldrin Google, Inc. July 3, 2017 OSPF Extensions for BIER draft-ietf-bier-ospf-bier-extensions-07.txt Abstract 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. Neither does BIER require an explicit tree-building protocol for its operation. A multicast data packet enters a BIER domain at a "Bit-Forwarding Ingress Router" (BFIR), and leaves the BIER domain at one or more "Bit-Forwarding Egress Routers" (BFERs). The BFIR router adds a BIER header to the packet. Such header contains a bit-string in which each bit represents exactly one BFER to forward the packet to. The set of BFERs to which the multicast packet needs to be forwarded is expressed by the according set of bits set in BIER packet header. This document describes the OSPF protocol extension required for BIER with MPLS encapsulation. Status of This Memo 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 http://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 Psenak, et al. Expires January 4, 2018 [Page 1] Internet-Draft OSPF Extensions for BIER July 2017 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 January 4, 2018. Copyright Notice Copyright (c) 2017 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 (http://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 Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Flooding of the BIER Information in OSPF . . . . . . . . . . 3 2.1. BIER Sub-TLV . . . . . . . . . . . . . . . . . . . . . . 3 2.2. BIER MPLS Encapsulation Sub-TLV . . . . . . . . . . . . . 4 2.3. Optional BIER Tree Type Sub-TLV . . . . . . . . . . . . . 5 2.4. Optional BIER sub-domain BSL conversion Sub-TLV . . . . . 6 2.5. Flooding scope of BIER Information . . . . . . . . . . . 7 3. Security Considerations . . . . . . . . . . . . . . . . . . . 7 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 5. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 8 6. Normative References . . . . . . . . . . . . . . . . . . . . 8 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 1. Introduction Bit Index Explicit Replication (BIER) is an architecture that provides optimal multicast forwarding through a "BIER domain" without requiring intermediate routers to maintain any multicast related per- flow state. Neither does BIER explicitly require a tree-building protocol for its operation. A multicast data packet enters a BIER domain at a "Bit-Forwarding Ingress Router" (BFIR), and leaves the BIER domain at one or more "Bit-Forwarding Egress Routers" (BFERs). The BFIR router adds a BIER header to the packet. The BIER header contains a bit-string in which each bit represents exactly one BFER to forward the packet to. The set of BFERs to which the multicast Psenak, et al. Expires January 4, 2018 [Page 2] Internet-Draft OSPF Extensions for BIER July 2017 packet needs to be forwarded is expressed by setting the bits that correspond to those routers in the BIER header. BIER architecture requires routers participating in BIER to exchange BIER related information within a given domain. BIER architecture permits link-state routing protocols to perform distribution of such information. This document describes extensions to OSPF necessary to advertise BIER specific information in the case where BIER uses MPLS encapsulation as described in [I-D.ietf-bier-mpls-encapsulation]. 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]. 2. Flooding of the BIER Information in OSPF All BIER specific information that a Bit-Forwarding Router (BFR) needs to advertise to other BFRs is associated with a BFR-Prefix. A BFR prefix is a unique (within a given BIER domain) routable IP address that is assigned to each BFR as described in more detail in section 2 of [I-D.ietf-bier-architecture]. Given that BIER information must be associated with a BFR prefix, the OSPF Extended Prefix Opaque LSA [RFC7684] has been chosen for advertisement. 2.1. BIER Sub-TLV A Sub-TLV of the Extended Prefix TLV (defined in [RFC7684]) is defined for distributing BIER information. The Sub-TLV is called the BIER Sub-TLV. Multiple BIER Sub-TLVs may be included in the Extended Prefix TLV. The BIER Sub-TLV has the following format: 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 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sub-domain-ID | MT-ID | BFR-id | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sub-TLVs (variable) | +- -+ | | Type: TBD1 Psenak, et al. Expires January 4, 2018 [Page 3] Internet-Draft OSPF Extensions for BIER July 2017 Length: variable Sub-domain-ID: Unique value identifying the BIER sub-domain within the BIER domain, as described in section 1 of [I-D.ietf-bier-architecture]. MT-ID: Multi-Topology ID (as defined in [RFC4915]) that identifies the topology that is associated with the BIER sub-domain. BFR-id: A 2 octet field encoding the BFR-id, as documented in section 2 of [I-D.ietf-bier-architecture]. If the BFR is not locally configured with a valid BFR-id, the value of this field is set to invalid BFR-id per [I-D.ietf-bier-architecture]. Each BFR sub-domain MUST be associated with one and only one OSPF topology that is identified by the MT-ID. If the association between BIER sub-domain and OSPF topology advertised in the BIER sub-TLV by other BFRs is in conflict with the association locally configured on the receiving router, the BIER Sub-TLV MUST be ignored. If a BFR advertises the same Sub-domain-ID in multiple BIER sub-TLVs, the BRF MUST be treated as if it did not advertise a BIER sub-TLV for such sub-domain. All BFRs MUST detect advertisement of duplicate valid BFR-IDs for a given MT-ID and Sub-domain-ID. When such duplication is detected all BFRs advertising duplicates MUST be treated as if they did not advertise a valid BFR-id. 2.2. BIER MPLS Encapsulation Sub-TLV The BIER MPLS Encapsulation Sub-TLV is a Sub-TLV of the BIER Sub-TLV. The BIER MPLS Encapsulation Sub-TLV is used in order to advertise MPLS specific information used for BIER. It MAY appear multiple times in the BIER Sub-TLV. The BIER MPLS Encapsulation Sub-TLV has the following format: 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 | Label Range Base | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | BS Length | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Psenak, et al. Expires January 4, 2018 [Page 4] Internet-Draft OSPF Extensions for BIER July 2017 Type: TBD2 Length: 4 octets Label Range Size: A 1 octet field encoding the label range size of the label range. It MUST be greater then 0, otherwise the advertising router MUST be treated as if it did not advertise a BIER sub-TLV. Label Range Base: A 3 octet field, where the 20 rightmost bits represent the first label in the label range. Bit String Length: A 1 octet field encoding the supported BitString length associated with this BFR-prefix. The values allowed in this field are specified in section 2 of [I-D.ietf-bier-mpls-encapsulation]. The "label range" is the set of labels beginning with the label range base and ending with ((label range base)+(label range size)- 1). A unique label range is allocated for each BitStream length and Sub-domain-ID. These labels are used for BIER forwarding as described in [I-D.ietf-bier-architecture] and [I-D.ietf-bier-mpls-encapsulation]. The size of the label range is determined by the number of Set Identifiers (SI) (section 1 of [I-D.ietf-bier-architecture]) 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 same BS length is repeated in multiple BIER MPLS Encapsulation Sub-TLV inside the same BIER Sub-TLV, the BIER sub-TLV MUST be ignored. Label ranges within all BIER MPLS Encapsulation Sub-TLV inside the same BIER Sub-TLV MUST NOT overlap. If the overlap is detected, the advertising router MUST be treated as if it did not advertise a BIER sub-TLV. All advertised labels MUST be valid, otherwise the BIER sub-TLV MUST be ignored. 2.3. Optional BIER Tree Type Sub-TLV The BIER Tree Type Sub-TLV is a Sub-TLV of the BIER Sub-TLV. This Sub-TLV carries the information associated with the supported BIER tree type for a sub-domain. This Sub-TLV is optional and its absence has the same semantics as its presence with Tree Type value 0 (SPF). Psenak, et al. Expires January 4, 2018 [Page 5] Internet-Draft OSPF Extensions for BIER July 2017 When Tree Type 0 is used, it is RECOMMENDED that this Sub-TLV is omitted in order to reduce the space consumed in the parent TLV. This Sub-TLV MAY occur no more than once in a BIER sub-TLV. If multiple occurences of this Sub-TLV are present in a single BIER Sub- TLV, the BIER sub-TLV MUST be ignored. If the tree type (implied or explicitly advertised) does not match the locally configured tree type associated with the matching sub- domain, 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 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Tree Type | +-+-+-+-+-+-+-+-+ Type: TBD3. Length: 1 octet. Tree Type: 1 octet 2.4. Optional BIER sub-domain BSL conversion Sub-TLV The BIER sub-domain BSL conversion Sub-TLV is a Sub-TLV of the BIER Sub-TLV. This sub-TLV indicates whether the BFR is capable of imposing a different Bit String Length (BSL) than the one it received in a BIER encapsulated packet. Such a capability may allow future, advanced tree types which ensure simple migration procedures from one BSL to another in a given MT-ID and Sub-domain-ID or prevent stable blackholes in scenarios where not all routers support the same set of BSLs in a given MT-ID and Sub-domain-ID. The BIER sub-domain BSL conversion Sub-TLV is optional and its absence indicates that the router is NOT capable of imposing different BSLs but will always forward the packet with the BSL unchanged. This sub-TLV MAY occur at most once in a given BIER sub- TLV. If multiple occurrences of this sub-TLV are received in a given BIER sub-TLV, the BIER sub-TLV MUST be ignored. The BIER sub-domain BSL conversion Sub-TLV has following format: Psenak, et al. Expires January 4, 2018 [Page 6] Internet-Draft OSPF Extensions for BIER July 2017 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: TBD4. Length: 0 octets. 2.5. Flooding scope of BIER Information The flooding scope of the OSPF Extended Prefix Opaque LSA [RFC7684] that is used for advertising the BIER Sub-TLV is set to area-local. To allow BIER deployment in a multi-area environment, OSPF must propagate BIER information between areas. The following procedure is used in order to propagate BIER related information between areas: When an OSPF Area Border Router (ABR) advertises a Type-3 Summary LSA from an intra-area or inter-area prefix to all its attached areas, it will also originate an Extended Prefix Opaque LSA, as described in [RFC7684]. The flooding scope of the Extended Prefix Opaque LSA type will be set to area-local. The route-type in the OSPF Extended Prefix TLV is set to inter-area. When determining whether a BIER Sub-TLV should be included in this LSA, an OSPF ABR will: - Examine its best path to the prefix in the source area and find the advertising router associated with the best path to that prefix. - Determine if such advertising router advertised a BIER Sub- TLV for the prefix. If yes, the ABR will copy the information from such BIER MPLS Sub-TLV when advertising BIER MPLS Sub-TLV to each attached area. 3. Security Considerations Implementations must assure that malformed TLV and Sub-TLV permutations do not result in errors which cause hard OSPF failures. 4. IANA Considerations The document requests three new allocations from the OSPF Extended Prefix sub-TLV registry as defined in [RFC7684]. BIER Sub-TLV: TBD1 Psenak, et al. Expires January 4, 2018 [Page 7] Internet-Draft OSPF Extensions for BIER July 2017 BIER MPLS Encapsulation Sub-TLV: TBD2 BIER Tree Type Sub-TLV: TBD3 BIER sub-domain BSL conversion Sub-TLV 5. Acknowledgments The authors would like to thank Rajiv Asati, Christian Martin, Greg Shepherd and Eric Rosen for their contribution. 6. Normative References [I-D.ietf-bier-architecture] Wijnands, I., Rosen, E., Dolganow, A., Przygienda, T., and S. Aldrin, "Multicast using Bit Index Explicit Replication", draft-ietf-bier-architecture-06 (work in progress), April 2017. [I-D.ietf-bier-mpls-encapsulation] Wijnands, I., Rosen, E., Dolganow, A., Tantsura, J., Aldrin, S., and I. Meilik, "Encapsulation for Bit Index Explicit Replication in MPLS and non-MPLS Networks", draft-ietf-bier-mpls-encapsulation-07 (work in progress), June 2017. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC4915] Psenak, P., Mirtorabi, S., Roy, A., Nguyen, L., and P. Pillay-Esnault, "Multi-Topology (MT) Routing in OSPF", RFC 4915, DOI 10.17487/RFC4915, June 2007, . [RFC7684] Psenak, P., Gredler, H., Shakir, R., Henderickx, W., Tantsura, J., and A. Lindem, "OSPFv2 Prefix/Link Attribute Advertisement", RFC 7684, DOI 10.17487/RFC7684, November 2015, . Authors' Addresses Psenak, et al. Expires January 4, 2018 [Page 8] Internet-Draft OSPF Extensions for BIER July 2017 Peter Psenak (editor) Cisco Apollo Business Center Mlynske nivy 43 Bratislava 821 09 Slovakia Email: ppsenak@cisco.com Nagendra Kumar Cisco 7200 Kit Creek Road Research Triangle Park, NC 27709 US Email: naikumar@cisco.com IJsbrand Wijnands Cisco De Kleetlaan 6a Diegem 1831 Belgium Email: ice@cisco.com Andrew Dolganow Nokia 750 Chai Chee Rd 06-06 Viva Business Park Singapore 469004 Email: andrew.dolganow@alcatel-lucent.com Tony Przygienda Juniper Networks, Inc. 10 Technology Park Drive Westford, MA 01886 USA Email: prz@juniper.net Psenak, et al. Expires January 4, 2018 [Page 9] Internet-Draft OSPF Extensions for BIER July 2017 Jeffrey Zhang Juniper Networks, Inc. 10 Technology Park Drive Westford, MA 01886 USA Email: zzhang@juniper.net Sam Aldrin Google, Inc. 1600 Amphitheatre Parkway Mountain View, CA USA Email: aldrin.ietf@gmail.com Psenak, et al. Expires January 4, 2018 [Page 10]