--- 1/draft-ietf-ospf-ospfv2-hbit-06.txt 2019-05-19 02:13:11.670807291 -0700 +++ 2/draft-ietf-ospf-ospfv2-hbit-07.txt 2019-05-19 02:13:11.690807797 -0700 @@ -1,54 +1,59 @@ OSPF K. Patel Internet-Draft Arrcus Updates: 2328 (if approved) P. Pillay-Esnault Intended status: Standards Track Huawei Technologies -Expires: February 28, 2019 M. Bhardwaj +Expires: November 20, 2019 M. Bhardwaj S. Bayraktar Cisco Systems - August 27, 2018 + May 19, 2019 - H-bit Support for OSPFv2 - draft-ietf-ospf-ospfv2-hbit-06 + Host Router Support for OSPFv2 + draft-ietf-ospf-ospfv2-hbit-07 Abstract - OSPFv3 defines an option bit for router-LSAs known as the R-bit in - RFC5340. If the R-bit is clear, an OSPFv3 router can participate in - OSPF topology flooding, however it will not be used as a transit - router. In such cases, other routers in the OSPFv3 routing domain - only install routes to allow local traffic delivery. This document - defines the H-bit functionality to prevent other OSPFv2 routers from - using the router for transit traffic in OSPFv2 routing domains as - described in RFC 2328. This document updates RFC 2328. + The OSPFv2 specifies an SPF algorithm that identifies transit + vertices based on their adjacencies. Therefore, OSPFv2 does not have + a mechanism to prevent traffic transiting a participating node if it + is a transit vertex in the only existing or shortest path to the + destination. The use of metrics to make the node undesirable can + only help to repel traffic if an alternative better route exists. + This document defines the Host-bit functionality to prevent other + OSPFv2 routers from using the router for transit traffic in OSPFv2 + routing domains. This document updates the [RFC2328] by assigning a + new bit (Host-bit) in the OSPF Router-LSA bit registry. If the Host- + bit is set, the calculation of the shortest-path tree for an area, as + described in [RFC2328], is modified by including a new check to + verify that transit vertices have the Host-bit clear. 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 https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." - This Internet-Draft will expire on February 28, 2019. + This Internet-Draft will expire on November 20, 2019. Copyright Notice - Copyright (c) 2018 IETF Trust and the persons identified as the + Copyright (c) 2019 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as @@ -63,73 +68,88 @@ the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Requirements Language . . . . . . . . . . . . . . . . . . . . 3 - 3. H-bit Support . . . . . . . . . . . . . . . . . . . . . . . . 3 + 3. Host-bit Support . . . . . . . . . . . . . . . . . . . . . . 3 4. SPF Modifications . . . . . . . . . . . . . . . . . . . . . . 5 - 5. Auto Discovery and Backward Compatibility . . . . . . . . . . 5 + 5. Auto Discovery and Backward Compatibility . . . . . . . . . . 6 6. OSPF AS-External-LSAs/NSSA LSAs with Type 2 Metrics . . . . . 6 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 8. Security Considerations . . . . . . . . . . . . . . . . . . . 7 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 10.1. Normative References . . . . . . . . . . . . . . . . . . 7 - 10.2. Informative References . . . . . . . . . . . . . . . . . 7 + 10.2. Informative References . . . . . . . . . . . . . . . . . 8 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 1. Introduction - OSPFv3 [RFC5340] defines an option bit for router-LSAs known as the - R-bit. If the R-bit is clear, an OSPFv3 router can participate in - OSPFv3 topology flooding without acting as a transit router. In such - cases, other routers in the OSPFv3 routing domain only install routes - used for local traffic. + The OSPFv2 specifies an SPF algorithm that identifies transit + vertices based on their adjacencies. Therefore, OSPFv2 does not have + a mechanism to prevent traffic transiting a participating node if it + is a transit vertex in the only existing or shortest path to the + destination. The use of metrics to make the node undesirable can + only help to repel traffic if an alternative better route exists. - This functionality is particularly useful for BGP Route Reflectors, - known as virtual Route Reflectors (vRRs), that are not in the - forwarding path but are in central locations such as data centers. - Such Route Reflectors typically are used for route distribution and - are not capable of forwarding transit traffic. However, they need to - learn the OSPF topology for: + This functionality is particularly useful for a number of use cases: - 1. SPF computation for Optimal Route Reflection functionality as - defined in [I-D.ietf-idr-bgp-optimal-route-reflection] + 1. To isolate a router to avoid blackhole scenarios when there is a + reload and possible long reconvergence times. - 2. Reachability resolution for its Route Reflector Clients. + 2. Closet Switches are usually not used for transit traffic but need + to participate in the topology. - This document defines the R-bit functionality equivalent for OSPFv2 - defined in [RFC2328] by introducing a new router-LSA bit known as the - "H-bit". This document updates appendix A.4.2 of RFC 2328. + 3. Overloaded routers could use such a capability to repel traffic + until they stabilize. + + 4. BGP Route reflectors known as virtual Route Reflectors (vRRs), + that are not in the forwarding path but are in central locations + such as data centers. Such Route Reflectors typically are used + for route distribution and are not capable of forwarding transit + traffic. However, they need to learn the OSPF topology to + perform spf computation for optimal routes and reachbility + resolution for its clients + [I-D.ietf-idr-bgp-optimal-route-reflection]. + + This document defines the Host-bit (H-Bit)functionality to prevent + other OSPFv2 routers from using the router for transit traffic in + OSPFv2 routing domains. This document updates the [RFC2328] by - + assigning the Host-bit in the OSPF Router-LSA bit registry - if the + host-bit is set then the calculation of the shortest-path tree for an + area, as described in section 16.1 of [RFC2328], is modified by + including a new check to verify that transit vertices DO NOT have the + host-bit set. 2. Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here. -3. H-bit Support +3. Host-bit Support This document defines a new router-LSA bit known as the Host Bit or the H-bit. An OSPFv2 router advertising a router-LSA with the H-bit set indicates to other OSPFv2 routers in the area supporting the - functionality that it MUST NOT be used as a transit router. The bit - value usage of the H-bit is reversed from the R-bit defined in OSPFv3 - [RFC5340] to support backward compatibility. The modified OSPFv2 - router-LSA format is: + functionality that it MUST NOT be used as a transit router (see + section 4). + + If the host-bit is NOT set routers MUST act transit routers as + described in [RFC2328] ensuring backward compatibility. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS age | Options | 1 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Link State ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Advertising Router | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ @@ -148,49 +168,48 @@ | ... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TOS | 0 | TOS metric | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Link ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Link Data | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... | - bit H - When set, an OSPFv2 router is a non-transit router and is - incapable of forwarding transit traffic. + Host Bit in router-LSA - When the H-bit is set, an OSPFv2 router is a non-transit router and - should not be used to forward transit traffic. In this mode, the - other OSPFv2 routers in the area SHOULD NOT use the originating - OSPFv2 router for transit traffic, but MAY use the OSPFv2 router for - local traffic destined to that OSPFv2 router. + 0 1 2 3 4 5 6 7 + +-+-+-+-+-+-+-+-+ + |H|0|0|N|W|V|E|B| + +-+-+-+-+-+-+-+-+ - An OSPFv2 router originating a router-LSA with the H-bit set SHOULD - advertise all its non-local router links with a link cost of - MaxLinkMetric as defined in Section 3 of [RFC6987]. This is to - increase the applicability of the H-bit to partial deployments where - it is the responsibility of the operator to ensure that OSPFv2 - routers not supporting the H-bit do not install routes causing - routing loops. + Host Bit - When the H-bit is set, IPv4 prefixes associated with local interfaces - in other areas MAY be advertised in summary LSAs. Non-local IPv4 - prefixes, e.g., those advertised by other routers and installed - during the SPF computation, MAY be advertised in summary-LSAs if - configured by policy. Likewise, when the H-bit is set, only IPv4 - prefixes associated with local interfaces MAY be advertised in AS- - external LSAs. Non-local IPv4 prefixes, e.g., those exported from - other routing protocols, MUST NOT be advertised in AS-external-LSAs. - Finally, when the H-bit is set, an Area Border Router (ABR) MUST - advertise a consistent H-bit setting in its self-originated router- - LSAs for all attached areas. + Bit H is the high-order bit of the OSPF as shown above. When set, an + OSPFv2 router is a non-transit router and is incapable of forwarding + transit traffic. + + An OSPFv2 router originating a router-LSA with the H-bit set MUST + advertise all its router links with a link cost of MaxLinkMetric + [RFC6987]. This is to increase the applicability of the H-bit to + partial deployments where it is the responsibility of the operator to + ensure that OSPFv2 routers not supporting the H-bit do not install + routes causing routing loops. + + When the H-bit is set, an Area Border Router (ABR) MUST advertise a + consistent H-bit setting in its self-originated router-LSAs for all + attached areas. ONLY IPv4 prefixes associated with its local + interfaces MAY be advertised in summary LSAs. + + When the H-bit is set cannot act as an AS Boundary Router (ASBR), as + non-local IPv4 prefixes, e.g., those exported from other routing + protocols, MUST NOT be advertised in AS-external-LSAs. 4. SPF Modifications The SPF calculation described in section 16.1 [RFC2328] will be modified to ensure that the routers originating router-LSAs with the H-bit set will not be used for transit traffic. Step 2 is modified as follows: 2) Call the vertex just added to the tree vertex V. Examine the LSA @@ -207,22 +226,27 @@ Section A.4.2) is set, set Area A's TransitCapability to TRUE. In any case, each link described by the LSA gives the cost to an adjacent vertex. For each described link, (say it joins vertex V to vertex W): 5. Auto Discovery and Backward Compatibility To avoid the possibility of any routing loops due to partial - deployment, this document defines a OSPF Router-Information LSA - functional capability bit known as the Host Support capability. + deployment, this document defines a OSPF Router Information (RI) LSA + with a Router Functional Capability TLV that includes the following + Router Functional Capability Bit: + + Bit Capabilities + + 7 Host Router Support capability Auto Discovery via announcement of the Host Support Functional Capability ensures that the H-bit functionality and its associated SPF changes SHOULD only take effect if all the routers in a given OSPF area support this functionality. Implementations are encouraged to provide a configuration parameter to manually override enforcement of the H-bit functionality in partial deployments where the topology guarantees that OSPFv2 routers not supporting the H-bit do not compute routes resulting in routing @@ -252,23 +276,23 @@ 0x01 Area Border Router (B-bit) [RFC2328] 0x02 AS Boundary Router (E-bit) [RFC2328] 0x04 Virtual Link Endpoint (V-bit) [RFC2328] 0x08 Historic (W-bit) [RFC1584] 0x10 Unconditional NSSA Translator (Nt-bit) [RFC3101] 0x20 Unassigned 0x40 Unassigned 0x80 Host (H-bit) This Document This document also defines a new Router Functional Capability - [RFC7770] known as the Host Support Functional Capability. This - document requests IANA to allocate the value of this capability from - the Router Functional Capability Bits TLV. + [RFC7770] known as the Host Router Support Functional Capability. + This document requests IANA to allocate the value of this capability + from the Router Functional Capability Bits TLV. 8. Security Considerations This document introduces no new security considerations beyond those already specified in [RFC6987], [RFC2328], and [RFC5340]. 9. Acknowledgements The authors would like to acknowledge Hasmit Grover for discovery of the limitation in [RFC6987], Acee Lindem, Abhay Roy, David Ward, @@ -302,22 +326,22 @@ [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . 10.2. Informative References [I-D.ietf-idr-bgp-optimal-route-reflection] Raszuk, R., Cassar, C., Aman, E., Decraene, B., and K. Wang, "BGP Optimal Route Reflection (BGP-ORR)", draft- - ietf-idr-bgp-optimal-route-reflection-16 (work in - progress), April 2018. + ietf-idr-bgp-optimal-route-reflection-18 (work in + progress), April 2019. [RFC1584] Moy, J., "Multicast Extensions to OSPF", RFC 1584, DOI 10.17487/RFC1584, March 1994, . [RFC6987] Retana, A., Nguyen, L., Zinin, A., White, R., and D. McPherson, "OSPF Stub Router Advertisement", RFC 6987, DOI 10.17487/RFC6987, September 2013, .