draft-ietf-ospf-ospfv2-hbit-12.txt   rfc8770.txt 
OSPF K. Patel Internet Engineering Task Force (IETF) K. Patel
Internet-Draft Arrcus Request for Comments: 8770 Arrcus
Updates: 6987 (if approved) P. Pillay-Esnault Updates: 6987 P. Pillay-Esnault
Intended status: Standards Track PPE Consulting Category: Standards Track PPE Consulting
Expires: June 20, 2020 M. Bhardwaj ISSN: 2070-1721 M. Bhardwaj
S. Bayraktar S. Bayraktar
Cisco Systems Cisco Systems
December 18, 2019 April 2020
Host Router Support for OSPFv2 Host Router Support for OSPFv2
draft-ietf-ospf-ospfv2-hbit-12
Abstract Abstract
The Open Shortest Path First Version 2 (OSPFv2) protocol does not The Open Shortest Path First Version 2 (OSPFv2) protocol does not
have a mechanism for a node to repel transit traffic if it is on the have a mechanism for a node to repel transit traffic if it is on the
shortest path. This document defines a bit (Host-bit) that enables a shortest path. This document defines a bit called the Host-bit
router to advertise that it is a non-transit router. It also (H-bit). This bit enables a router to advertise that it is a non-
describes the changes needed to support the H-bit in the domain. In transit router. This document also describes the changes needed to
addition, this document updates RFC 6987 to advertise type-2 External support the H-bit in the domain. In addition, this document updates
and Not-So-Stubby-Area (NSSA) Link State Advertisements (LSAs) with a RFC 6987 to advertise Type 2 External and Not-So-Stubby Area (NSSA)
high cost in order to repel traffic effectively. Link State Advertisements (LSAs) (RFC 3101) with a high cost in order
to repel traffic effectively.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This is an Internet Standards Track document.
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 This document is a product of the Internet Engineering Task Force
and may be updated, replaced, or obsoleted by other documents at any (IETF). It represents the consensus of the IETF community. It has
time. It is inappropriate to use Internet-Drafts as reference received public review and has been approved for publication by the
material or to cite them other than as "work in progress." Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 7841.
This Internet-Draft will expire on June 20, 2020. Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
https://www.rfc-editor.org/info/rfc8770.
Copyright Notice Copyright Notice
Copyright (c) 2019 IETF Trust and the persons identified as the Copyright (c) 2020 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
(https://trustee.ietf.org/license-info) in effect on the date of (https://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. Requirements Language . . . . . . . . . . . . . . . . . . . . 3 2. Requirements Language
3. Host-bit Support . . . . . . . . . . . . . . . . . . . . . . 3 3. Host-Bit Support
4. SPF Modifications . . . . . . . . . . . . . . . . . . . . . . 5 4. SPF Modifications
5. Auto Discovery and Backward Compatibility . . . . . . . . . . 6 5. Autodiscovery and Backward Compatibility
6. OSPF AS-External-LSAs/NSSA LSAs with Type 2 Metrics . . . . . 7 6. OSPF AS-External-LSAs / NSSA-LSAs with Type 2 Metrics
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 7. IANA Considerations
8. Security Considerations . . . . . . . . . . . . . . . . . . . 8 8. Security Considerations
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 9. References
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 9.1. Normative References
10.1. Normative References . . . . . . . . . . . . . . . . . . 9 9.2. Informative References
10.2. Informative References . . . . . . . . . . . . . . . . . 9 Acknowledgements
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 Authors' Addresses
1. Introduction 1. Introduction
The OSPFv2 protocol specifies a Shortest Path First (SPF) algorithm The OSPFv2 protocol specifies a Shortest Path First (SPF) algorithm
that identifies transit vertices based on their adjacencies. that identifies transit vertices based on their adjacencies.
Therefore, OSPFv2 does not have a mechanism to prevent traffic Therefore, OSPFv2 does not have a mechanism to prevent traffic
transiting a participating node if it is a transit vertex in the only 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 existing or shortest path to the destination. The use of metrics to
make the node undesirable can help to repel traffic only if an make the node undesirable can help to repel traffic only if an
alternative better route exists. alternative better route exists.
A mechanism to move traffic away from the shortest path is A mechanism to move traffic away from the shortest path is
particularly useful for a number of use cases: particularly useful for a number of use cases:
1. To gracefully isolate a router to avoid blackhole scenarios when 1. Graceful isolation of a router, to avoid blackhole scenarios when
there is a reload and possible long reconvergence times. there is a reload and possible long reconvergence times.
2. Closet Switches are usually not used for transit traffic but need 2. Closet switches that are not usually used for transit traffic but
to participate in the topology. need to participate in the topology.
3. Overloaded routers could use such a capability to temporarily 3. Overloaded routers that could use such a capability to
repel traffic until they stabilize. temporarily repel traffic until they stabilize.
4. BGP Route reflectors known as virtual Route Reflectors (vRRs), 4. BGP route reflectors, known as virtual Route Reflectors, that are
that are not in the forwarding path but are in central locations not in the forwarding path but are in central locations such as
such as data centers. Such Route Reflectors typically are used data centers. Such route reflectors are typically used for route
for route distribution and are not capable of forwarding transit distribution and are not capable of forwarding transit traffic.
traffic. However, they need to learn the OSPF topology to However, they need to learn the OSPF topology to perform SPF
perform SPF computation for optimal routes and reachability computation for optimal routes and reachability resolution for
resolution for its clients their clients [BGP-ORR].
[I-D.ietf-idr-bgp-optimal-route-reflection].
This document describes the Host-bit (H-bit) functionality that This document describes the functionality provided by the Host-bit
prevents other OSPFv2 routers from using the host router by excluding (H-bit); this functionality prevents other OSPFv2 routers from using
it in path calculations for transit traffic in OSPFv2 routing the host router by excluding it in path calculations for transit
domains. If the H-bit is set then the calculation of the shortest- traffic in OSPFv2 routing domains. If the H-bit is set, then the
path tree for an area, as described in section 16.1 of [RFC2328], is calculation of the shortest-path tree for an area, as described in
modified by including a check to verify that transit vertices DO NOT Section 16.1 of [RFC2328], is modified by including a check to verify
have the H-bit set (see Section 4). Furthermore, in order to repel that transit vertices DO NOT have the H-bit set (see Section 4).
traffic effectively, [RFC6987] is updated so that type-2 External and Furthermore, in order to repel traffic effectively, this document
NSSA LSAs are advertised with a high cost (see Section 6). Open updates [RFC6987] so that Type 2 External and Not-So-Stubby Area
Shortest Path First Version 3 defines an option bit for router-LSAs (NSSA) Link State Advertisements (LSAs) [RFC3101] are advertised with
known as the R-bit in [RFC5340] to support a similar functionality. a high cost (see Section 6). OSPFv3 [RFC5340] defines an option bit,
known as the R-bit, for router-LSAs; the H-bit supports similar
functionality.
2. Requirements Language 2. 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", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP "OPTIONAL" in this document are to be interpreted as described in
14 [RFC2119] [RFC8174] when, and only when, they appear in all BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here. capitals, as shown here.
3. Host-bit Support 3. Host-Bit Support
This document defines a new router-LSA bit known as the Host Bit or 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 the H-bit. An OSPFv2 router advertising a router-LSA with the H-bit
set indicates that it MUST NOT be used as a transit router (see set indicates that it MUST NOT be used as a transit router (see
Section 4) by other OSPFv2 routers in the area supporting the Section 4) by other OSPFv2 routers in the area that support the H-bit
functionality. functionality.
If the H-bit is not set then backwards compatibility is achieved as If the H-bit is not set, then backward compatibility is achieved, as
the behavior will be the same as in [RFC2328]. the behavior will be the same as in [RFC2328].
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS age | Options | 1 | | LS age | Options | 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link State ID | | Link State ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertising Router | | Advertising Router |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS sequence number | | LS sequence number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS checksum | length | | LS checksum | length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|H|0|0|N|W|V|E|B| 0 | # links | |H|0|0|N|W|V|E|B| 0 | # links |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link ID | | Link ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link Data | | Link Data |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | # TOS | metric | | Type | # TOS | metric |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... | | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TOS | 0 | TOS metric | | TOS | 0 | TOS metric |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link ID | | Link ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link Data | | Link Data |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... | | ... |
Figure 1: OSPF Router-LSA Figure 1: OSPF Router-LSA
Bit H is the high-order bit of the OSPF flags as shown below. Bit H is the high-order bit of the OSPF flags, as shown below.
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
|H|0|0|N|W|V|E|B| |H|0|0|N|W|V|E|B|
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Figure 2: OSPF Router-LSA Option bits Figure 2: OSPF Router-LSA Option Bits
When the H-bit is set, the OSPFv2 router is a Host (non-transit) When the H-bit is set, the OSPFv2 router is a host (non-transit)
router and is incapable of forwarding transit traffic. In this mode, router and is incapable of forwarding transit traffic. In this mode,
the other OSPFv2 routers in the area MUST NOT use the host router for the other OSPFv2 routers in the area MUST NOT use the host router for
transit traffic, but may send traffic to its local destinations. transit traffic but may send traffic to its local destinations.
An OSPFv2 router originating a router-LSA with the H-bit set MUST An OSPFv2 router originating a router-LSA with the H-bit set MUST
advertise all its non-stub links with a link cost of MaxLinkMetric advertise all its non-stub links with a link cost of MaxLinkMetric
[RFC6987]. [RFC6987].
When the H-bit is set, an Area Border Router (ABR) MUST advertise the When the H-bit is set, an Area Border Router (ABR) MUST advertise the
same H-bit setting in its self-originated router-LSAs for all same H-bit setting in its self-originated router-LSAs for all
attached areas. The consistency of the setting will prevent inter- attached areas. The consistency of the setting will prevent
area traffic transiting through the router by suppressing inter-area traffic transiting through the router by suppressing
advertisement of prefixes from other routers in the area in its advertisements of prefixes from other routers in the area in its
summary LSAs. Only IPv4 prefixes associated with its local summary-LSAs. Only IPv4 prefixes associated with its local
interfaces MUST be advertised in summary-LSAs to provide reachability interfaces MUST be advertised in summary-LSAs to provide reachability
to end hosts attached to a router with the H-bit set. to end hosts attached to a router with the H-bit set.
When the H-bit is set the host router cannot act as an AS Boundary When the H-bit is set, the host router cannot act as an Autonomous
Router (ASBR). Indeed, ASBR are transit routers to prefixes that are System Border Router (ASBR). Indeed, ASBRs are transit routers to
typically imported through redistribution of prefixes from other prefixes that are typically imported through redistribution of
routing protocols. Therefore, non-local IPv4 prefixes, e.g., those prefixes from other routing protocols. Therefore, non-local IPv4
imported from other routing protocols, SHOULD NOT be advertised in prefixes, e.g., those imported from other routing protocols, SHOULD
AS-external-LSAs if the H-bit is set. Some use cases, such as an NOT be advertised in AS-external-LSAs if the H-bit is set. Some use
overloaded router or a router being gracefully isolated, may benefit cases, such as an overloaded router or a router being gracefully
from continued advertisement of non-local prefixes. In these cases, isolated, may benefit from continued advertisements of non-local
the type 2-metric in AS-external-LSAs MUST be set to LSInfinity to prefixes. In these cases, the Type 2 metric in AS-external-LSAs MUST
repel traffic.(see Section 6 of this document). be set to LSInfinity [RFC2328] to repel traffic (see Section 6 of
this document).
4. SPF Modifications 4. SPF Modifications
The SPF calculation described in section 16.1 [RFC2328] will be The SPF calculation described in Section 16.1 of [RFC2328] is
modified to ensure that the routers originating router-LSAs with the modified to ensure that the routers originating router-LSAs with the
H-bit set will not be used for transit traffic. The Step 2 is H-bit set will not be used for transit traffic. Step (2) is modified
modified to include a check on H-bit as shown below. (Please note to include a check on the H-bit, as shown below. (Please note that
all the sub-procedures of Step 2 remain unchanged and not included in all of the sub-procedures of Step (2) remain unchanged and are not
the excerpt below.) included in the excerpt below.)
2) Call the vertex just added to the
tree vertex V. Examine the LSA
associated with vertex V. This is
a lookup in the Area A's link state
database based on the Vertex ID. If
this is a router-LSA, and the H-bit
of the router-LSA is set, and
vertex V is not the root, then the
router should not be used for transit
and step (3) should be executed
immediately. If this is a router-LSA,
and bit V of the router-LSA (see
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 (2) Call the vertex just added to the tree "vertex V". Examine
the LSA associated with vertex V. This is a lookup in
Area A's link state database based on the Vertex ID. If this
is a router-LSA, and the H-bit of the router-LSA is set, and
vertex V is not the root, then the router should not be used
for transit and Step (3) should be executed immediately. If
this is a router-LSA and bit V of the router-LSA (see
Appendix 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. Autodiscovery and Backward Compatibility
To reduce the possibility of any routing loops due to partial To reduce the possibility of any routing loops due to partial
deployment, this document defines an OSPF Router Information (RI) LSA deployment, this document defines an OSPF Router Information (RI) LSA
[RFC7770] capability. The RI LSA MUST be area-scoped. Bit: capability bit [RFC7770]. See Section 7 (Table 2).
Bit Capabilities
7 Host Router Support capability
Table 1: OSPF Router Information LSA Capabilities The RI LSA MUST be area-scoped.
Auto Discovery via announcement of the Host Router Support Capability Autodiscovery via announcement of the OSPF Host Router capability
ensures that the H-bit functionality and its associated SPF changes (Section 7) ensures that the H-bit functionality and its associated
MUST only take effect if all the routers in a given OSPF area support SPF changes MUST only take effect if all the routers in a given OSPF
this functionality. area support this functionality.
In normal operation, it is possible that the RI LSA will fail to In normal operation, it is possible that the RI LSA will fail to
reach all routers in an area in a timely manner. For example, if a reach all routers in an area in a timely manner. For example, if a
new router without H-bit support joins an area that previously had new router without H-bit support joins an area that previously had
only H-bit capable routers with H-bit set then it may take some time only H-bit-capable routers with the H-bit set, then it may take some
for the RI to propagate to all routers. While it is propagating, the time for the RI LSA to propagate to all routers. While it is
routers in the area will gradually detect the presence of a router propagating, the routers in the area will gradually detect the
not supporting the capability and revert back to normal SPF presence of a router that does not support the capability and will
calculation. During the propagation time, the area as a whole is revert back to the normal SPF calculation. During the propagation
unsure of the status of the new router, and that can cause temporary time, the area as a whole is unsure of the status of the new router;
transient loops. this type of situation can cause temporary transient loops.
The following recommendations will mitigate transient routing loops: The following recommendations will mitigate transient routing loops:
o Implementations are RECOMMENDED to provide a configuration * Implementations are RECOMMENDED to provide a configuration
parameter to manually override enforcement of the H-bit parameter to manually override enforcement of the H-bit
functionality in partial deployments where the topology guarantees functionality in partial deployments where the topology guarantees
that OSPFv2 routers not supporting the H-bit do not compute routes that OSPFv2 routers not supporting the H-bit do not compute routes
resulting in routing loops. resulting in routing loops.
o All routers with the H-bit set MUST advertise all of the router's * All routers with the H-bit set MUST advertise all of the router's
non-stub links with a metric equal to MaxLinkMetric [RFC6987] in non-stub links with a metric equal to MaxLinkMetric [RFC6987] in
its LSAs in order to avoid OSPFv2 (unless last resort) routers not its LSAs in order to prevent OSPFv2 routers (unless a last-resort
supporting the H-bit from attempting to use it for transit path) that do not support the H-bit from attempting to use the
traffic. non-stub links for transit traffic.
o All routers supporting the H-Bit MUST check the RI LSAs of all * All routers supporting the H-bit MUST check the RI LSAs of all
nodes in the area to verify that all nodes support the H-Bit nodes in the area to verify that all nodes support the H-bit
before actively using the H-Bit feature. If any router does not before actively using the H-bit feature. If any router does not
advertise the Host Router Support capability then the SPF advertise the OSPF Host Router capability (Section 7), then the
Modifications (Section 4) MUST NOT be used in the area. SPF modifications described in Section 4 MUST NOT be used in the
area.
6. OSPF AS-External-LSAs/NSSA LSAs with Type 2 Metrics 6. OSPF AS-External-LSAs / NSSA-LSAs with Type 2 Metrics
When calculating the path to a prefix in an OSPF AS-External-LSA or When calculating the path to a prefix in an OSPF AS-external-LSA or
NSSA-LSA [RFC3101] with a Type-2 metric, the advertised Type-2 metric NSSA-LSA [RFC3101] with a Type 2 metric, the advertised Type 2 metric
is taken as more significant than the OSPF intra-area or inter-area is taken as more significant than the OSPF intra-area or inter-area
path. Hence, advertising the links with MaxLinkMetric as specified path. Hence, advertising the links with MaxLinkMetric as specified
in [RFC6987] does not discourage transit traffic when calculating AS in [RFC6987] does not discourage transit traffic when calculating AS-
external or NSSA routes with Type-2 metrics. external or NSSA routes with Type 2 metrics.
Consequently, [RFC6987] is updated so that the Type-2 metric in any Consequently, this document updates [RFC6987] so that the Type 2
self-originated AS-External-LSAs or NSSA-LSAs is advertised as metric in any self-originated AS-external-LSAs or NSSA-LSAs is
LSInfinity-1 [RFC2328]. If the H-bit is set, then the Type-2 metric advertised as LSInfinity-1 [RFC2328]. If the H-bit is set, then the
MUST be set to LSInfinity. Type 2 metric MUST be set to LSInfinity.
7. IANA Considerations 7. IANA Considerations
This document requests the IANA to assign the 0x80 value to the Host- IANA has registered the following value in the "OSPFv2 Router
Bit (H-bit)in the OSPFv2 Router Properties Registry Properties Registry".
Value Description Reference +-------+--------------+-----------+
| Value | Description | Reference |
+=======+==============+===========+
| 0x80 | Host (H-bit) | RFC 8770 |
+-------+--------------+-----------+
0x80 Host (H-bit) This Document Table 1: H-Bit
This document requests the IANA to assign the Bit Number value of 7 IANA has registered the following in the "OSPF Router Informational
to the Host Router Support Capability in the OSPF Router Capability Bits" registry.
Informational Capability Bits Registry.
Bit Number Capability Name Reference +------------+------------------+-----------+
| Bit Number | Capability Name | Reference |
+============+==================+===========+
| 7 | OSPF Host Router | RFC 8770 |
+------------+------------------+-----------+
7 OSPF Host Router This Document Table 2: OSPF Host Router Capability Bit
8. Security Considerations 8. Security Considerations
This document introduces the H-bit which is a capability that This document introduces the H-bit, which is a capability feature
restricts the use of a router for transit, while only its local that restricts the use of a router for transit, while only its local
destinations are reachable. This is a subset of the operations of a destinations are reachable. This is a subset of the operations of a
normal router and therefore should not introduce new security normal router and therefore should not introduce new security
considerations beyond those already known in OSPFv2 [RFC2328]. The considerations beyond those already known in OSPFv2 [RFC2328]. The
feature introduces the advertising of a host router capability feature introduces the advertisement of host router capability
information to all OSPFv2 routers in an area. This information can information to all OSPFv2 routers in an area. This information can
be leveraged for discovery and verification that all routers in the be leveraged for discovery and verification that all routers in the
area support the capability before the feature is turned on. In the area support the capability before the feature is turned on. In the
event that a rogue or buggy router advertises incorrectly its event that a rogue or buggy router incorrectly advertises its
capability the possible cases are: capability, possible scenarios are as follows:
o The router does not have the capability but sends the H-Bit set in
its LSAs: In this case, there is a possibility of a routing loop.
However this is mitigated by the fact that this router should be
avoided anyway. Moreover, the link metrics cost (MaxLinkMetric)
of this router will mitigate this situation. In any case, a
router advertising the H-bit capability without its links cost
equal to MaxLinkMetric may be an indicator that this is a rogue
router and should be avoided.
o The router has the capability but sends the H-Bit clear in its
LSAs: In this case, the router merely prevents support of other
H-bit routers in the area and all the routers to run the modified
SPF. The impact is also mitigated as other H-Bit routers in the
area also advertise MaxLinkMetric cost so they will still be
avoided unless they are the last resort path.
o The rogue router is on the only transit path for some destinations * The router does not have the capability but sends the H-bit set in
and sends the H-Bit set (for no good/valid reason) in its LSAs and its LSAs. In this case, a routing loop is possible. However,
effectively partition the network. This case is indistinguishable this is mitigated by the fact that this router should be avoided
from the normal case where the operator may consciously decide to anyway. Moreover, the link metrics cost (MaxLinkMetric) of this
set the H-bit to perform maintenance on a router that is on the router will mitigate this situation. In any case, a router
only transit path. The OSPF protocol will continue to function advertising the H-bit capability without its link metrics cost
within the partitioned domains. equal to MaxLinkMetric could be a rogue router and should be
avoided.
9. Acknowledgements * The router has the capability but sends the H-bit clear in its
LSAs. In this case, the router merely prevents the support of
other H-bit routers in the area and prevents all the routers from
running the modified SPF. Any impacts are also mitigated in this
scenario, as other H-bit routers in the area also advertise the
MaxLinkMetric cost, so they will still be avoided unless they are
the last-resort path.
The authors would like to acknowledge Hasmit Grover for discovery of * The rogue router is on the only transit path for some destinations
the limitation in [RFC6987], Acee Lindem, Abhay Roy, David Ward, and sends the H-bit set (for no good/valid reason) in its LSAs,
Burjiz Pithawala, and Michael Barnes for their comments. and effectively partitions the network. This case is
indistinguishable from the normal case where an operator may
consciously decide to set the H-bit to perform maintenance on a
router that is on the only transit path. The OSPF protocol will
continue to function within the partitioned domains.
10. References 9. References
10.1. Normative References 9.1. Normative References
[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,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328, [RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328,
DOI 10.17487/RFC2328, April 1998, DOI 10.17487/RFC2328, April 1998,
<https://www.rfc-editor.org/info/rfc2328>. <https://www.rfc-editor.org/info/rfc2328>.
skipping to change at page 9, line 32 skipping to change at line 375
[RFC7770] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and [RFC7770] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and
S. Shaffer, "Extensions to OSPF for Advertising Optional S. Shaffer, "Extensions to OSPF for Advertising Optional
Router Capabilities", RFC 7770, DOI 10.17487/RFC7770, Router Capabilities", RFC 7770, DOI 10.17487/RFC7770,
February 2016, <https://www.rfc-editor.org/info/rfc7770>. February 2016, <https://www.rfc-editor.org/info/rfc7770>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>. May 2017, <https://www.rfc-editor.org/info/rfc8174>.
10.2. Informative References 9.2. Informative References
[I-D.ietf-idr-bgp-optimal-route-reflection] [BGP-ORR] Raszuk, R., Ed., Cassar, C., Aman, E., Decraene, B., and
Raszuk, R., Cassar, C., Aman, E., Decraene, B., and K. K. Wang, "BGP Optimal Route Reflection (BGP-ORR)", Work in
Wang, "BGP Optimal Route Reflection (BGP-ORR)", draft- Progress, Internet-Draft, draft-ietf-idr-bgp-optimal-
ietf-idr-bgp-optimal-route-reflection-19 (work in route-reflection-20, 8 January 2020,
progress), July 2019. <https://tools.ietf.org/html/draft-ietf-idr-bgp-optimal-
route-reflection-20>.
[RFC3101] Murphy, P., "The OSPF Not-So-Stubby Area (NSSA) Option", [RFC3101] Murphy, P., "The OSPF Not-So-Stubby Area (NSSA) Option",
RFC 3101, DOI 10.17487/RFC3101, January 2003, RFC 3101, DOI 10.17487/RFC3101, January 2003,
<https://www.rfc-editor.org/info/rfc3101>. <https://www.rfc-editor.org/info/rfc3101>.
[RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF [RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF
for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008, for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008,
<https://www.rfc-editor.org/info/rfc5340>. <https://www.rfc-editor.org/info/rfc5340>.
Acknowledgements
The authors would like to acknowledge Hasmit Grover for discovering
the limitation in [RFC6987], and Acee Lindem, Abhay Roy, David Ward,
Burjiz Pithawala, and Michael Barnes for their comments.
Authors' Addresses Authors' Addresses
Keyur Patel Keyur Patel
Arrcus Arrcus
Email: keyur@arrcus.com Email: keyur@arrcus.com
Padma Pillay-Esnault Padma Pillay-Esnault
PPE Consulting PPE Consulting
Email: padma.ietf@gmail.com Email: padma.ietf@gmail.com
skipping to change at page 10, line 17 skipping to change at line 413
Email: keyur@arrcus.com Email: keyur@arrcus.com
Padma Pillay-Esnault Padma Pillay-Esnault
PPE Consulting PPE Consulting
Email: padma.ietf@gmail.com Email: padma.ietf@gmail.com
Manish Bhardwaj Manish Bhardwaj
Cisco Systems Cisco Systems
170 W. Tasman Drive 170 W. Tasman Drive
San Jose, CA 95134 San Jose, CA 95134
USA United States of America
Email: manbhard@cisco.com Email: manbhard@cisco.com
Serpil Bayraktar Serpil Bayraktar
Cisco Systems Cisco Systems
170 W. Tasman Drive 170 W. Tasman Drive
San Jose, CA 95134 San Jose, CA 95134
USA United States of America
Email: serpil@cisco.com Email: serpil@cisco.com
 End of changes. 62 change blocks. 
231 lines changed or deleted 231 lines changed or added

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