Internet Engineering Task Force (IETF) A. Smirnov
Request for Comments: 8687 Cisco Systems, Inc.
Updates: 5786 A. Retana
Category: Standards Track Futurewei Technologies, Inc.
ISSN: 2070-1721 M. Barnes
November 2019
OSPF Routing with Cross-Address Family Traffic Engineering Tunnels
Abstract
When using Traffic Engineering (TE) in a dual-stack IPv4/IPv6
network, the Multiprotocol Label Switching (MPLS) TE Label Switched
Path (LSP) infrastructure may be duplicated, even if the destination
IPv4 and IPv6 addresses belong to the same remote router. In order
to achieve an integrated MPLS TE LSP infrastructure, OSPF routes must
be computed over MPLS TE tunnels created using information propagated
in another OSPF instance. This issue is solved by advertising cross-
address family (X-AF) OSPF TE information.
This document describes an update to RFC 5786 that allows for the
easy identification of a router's local X-AF IP addresses.
Status of This Memo
This is an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by the
Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 7841.
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/rfc8687.
Copyright Notice
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
described in the Simplified BSD License.
Table of Contents
1. Introduction
2. Requirements Language
3. Operation
4. Backward Compatibility
4.1. Automatically Switched Optical Networks
5. Security Considerations
6. IANA Considerations
7. References
7.1. Normative References
7.2. Informative References
Acknowledgements
Authors' Addresses
1. Introduction
TE extensions to OSPFv2 [RFC3630] and OSPFv3 [RFC5329] have been
described to support intra-area TE in IPv4 and IPv6 networks,
respectively. In both cases, the TE database provides a tight
coupling between the routed protocol and advertised TE signaling
information. In other words, any use of the TE database is limited
to IPv4 for OSPFv2 [RFC2328] and IPv6 for OSPFv3 [RFC5340].
In a dual-stack network, it may be desirable to set up common MPLS TE
LSPs to carry traffic destined to addresses from different address
families on a router. The use of common LSPs eases potential
scalability and management concerns by halving the number of LSPs in
the network. Besides, it allows operators to group traffic based on
business characteristics, class of service, and/or applications; the
operators are not constrained by the network protocol used.
For example, an LSP created based on MPLS TE information propagated
by an OSPFv2 instance can be used to transport both IPv4 and IPv6
traffic, as opposed to using both OSPFv2 and OSPFv3 to provision a
separate LSP for each address family. Even if, in some cases, the
address-family-specific traffic is to be separated, calculation from
a common TE database may prove to be operationally beneficial.
During the SPF calculation on the TE tunnel head-end router, OSPF
computes shortcut routes using TE tunnels. A commonly used algorithm
for computing shortcuts is defined in [RFC3906]. For that or any
similar algorithm to work with a common MPLS TE infrastructure in a
dual-stack network, a requirement is to reliably map the X-AF
addresses to the corresponding tail-end router. This mapping is a
challenge because the Link State Advertisements (LSAs) containing the
routing information are carried in one OSPF instance, while the TE
calculations may be done using a TE database from a different OSPF
instance.
A simple solution to this problem is to rely on the Router ID to
identify a node in the corresponding OSPFv2 and OSPFv3 Link State
Databases (LSDBs). This solution would mandate both instances on the
same router to be configured with the same Router ID. However,
relying on the correctness of configuration puts additional burden
and cost on the operation of the network. The network becomes even
more difficult to manage if OSPFv2 and OSPFv3 topologies do not match
exactly, for example, if area borders are chosen differently in the
two protocols. Also, if the routing processes do fall out of sync
(e.g., having different Router IDs for local administrative reasons),
there is no defined way for other routers to discover such
misalignment and to take corrective measures (such as to avoid
routing traffic through affected TE tunnels or alerting the network
administrators). The use of misaligned Router IDs may result in
delivering the traffic to the wrong tail-end router, which could lead
to suboptimal routing or even traffic loops.
This document describes an update to [RFC5786] that allows for the
easy identification of a router's local X-AF IP addresses. [RFC5786]
defined the Node IPv4 Local Address and Node IPv6 Local Address sub-
TLVs of the Node Attribute TLV for a router to advertise additional
local IPv4 and IPv6 addresses. However, [RFC5786] did not describe
the advertisement and usage of these sub-TLVs when the address family
of the advertised local address differed from the address family of
the OSPF traffic engineering protocol.
This document updates [RFC5786] so that a router can also announce
one or more local X-AF addresses using the corresponding Local
Address sub-TLV. Routers using the Node Attribute TLV [RFC5786] can
include non-TE-enabled interface addresses in their OSPF TE
advertisements and also use the same sub-TLVs to carry X-AF
information, facilitating the mapping described above.
The method specified in this document can also be used to compute the
X-AF mapping of the egress Label Switching Router (LSR) for sub-LSPs
of a Point-to-Multipoint LSP [RFC4461]. Considerations of using
Point-to-Multipoint MPLS TE for X-AF traffic forwarding is outside
the scope of this document.
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. Operation
To implement the X-AF routing technique described in this document,
OSPFv2 will advertise the Node IPv6 Local Address sub-TLV and OSPFv3
will advertise the Node IPv4 Local Address sub-TLV, possibly in
addition to advertising other IP addresses as documented by
[RFC5786].
Multiple instances of OSPFv3 are needed if it is used for both IPv4
and IPv6 [RFC5838]. The operation in this section is described with
OSPFv2 as the protocol used for IPv4; that is the most common case.
The case of OSPFv3 being used for IPv4 follows the same procedure as
what is indicated for OSPFv2 below.
On a node that implements X-AF routing, each OSPF instance
advertises, using the Node Local Address sub-TLV, all X-AF IPv6 (for
OSPFv2 instance) or IPv4 (for OSPFv3) addresses local to the router
that can be used by the Constrained Shortest Path First (CSPF) to
calculate MPLS TE LSPs:
* The OSPF instance MUST advertise the IP address listed in the
Router Address TLV [RFC3630] [RFC5329] of the X-AF instance
maintaining the TE database.
* The OSPF instance SHOULD include additional local addresses
advertised by the X-AF OSPF instance in its Node Local Address
sub-TLVs.
* An implementation MAY advertise other local X-AF addresses.
When TE information is advertised in an OSPF instance, both natively
(i.e., as per RFC [RFC3630] or [RFC5329]) and as X-AF Node Attribute
TLV, it is left to local configuration to determine which TE database
is used to compute routes for the OSPF instance.
On Area Border Routers (ABRs), each advertised X-AF IP address MUST
be advertised into, at most, one area. If OSPFv2 and OSPFv3 ABRs
coincide (i.e., the areas for all OSPFv2 and OSPFv3 interfaces are
the same), then the X-AF addresses MUST be advertised into the same
area in both instances. This allows other ABRs connected to the same
set of areas to know with which area to associate computed MPLS TE
tunnels.
During the X-AF routing calculation, X-AF IP addresses are used to
map locally created LSPs to tail-end routers in the LSDB. The
mapping algorithm can be described as:
Walk the list of all MPLS TE tunnels for which the computing
router is a head end. For each MPLS TE tunnel T:
1. If T's destination address is from the same address family as
the OSPF instance associated with the LSDB, then the
extensions defined in this document do not apply.
2. Otherwise, it is a X-AF MPLS TE tunnel. Note the tunnel's
destination IP address.
3. Walk the X-AF IP addresses in the LSDBs of all connected
areas. If a matching IP address is found, advertised by
router R in area A, then mark the tunnel T as belonging to
area A and terminating on tail-end router R. Assign the
intra-area SPF cost to reach router R within area A as the IGP
cost of tunnel T.
After completing this calculation, each TE tunnel is associated with
an area and tail-end router in terms of the routing LSDB of the
computing OSPF instance and has a cost.
The algorithm described above is to be used only if the Node Local
Address sub-TLV includes X-AF information.
Note that, for clarity of description, the mapping algorithm is
specified as a single calculation. Implementations may choose to
support equivalent mapping functionality without implementing the
algorithm as described.
As an example, consider a router in a dual-stack network using OSPFv2
and OSPFv3 for IPv4 and IPv6 routing, respectively. Suppose the
OSPFv2 instance is used to propagate MPLS TE information and the
router is configured to accept TE LSPs terminating at local addresses
198.51.100.1 and 198.51.100.2. The router advertises in OSPFv2 the
IPv4 address 198.51.100.1 in the Router Address TLV, the additional
local IPv4 address 198.51.100.2 in the Node IPv4 Local Address sub-
TLV, and other TE TLVs as required by [RFC3630]. If the OSPFv3
instance in the network is enabled for X-AF TE routing (that is, to
use MPLS TE LSPs computed by OSPFv2 for IPv6 routing), then the
OSPFv3 instance of the router will advertise the Node IPv4 Local
Address sub-TLV listing the local IPv4 addresses 198.51.100.1 and
198.51.100.2. Other routers in the OSPFv3 network will use this
information to reliably identify this router as the egress LSR for
MPLS TE LSPs terminating at either 198.51.100.1 or 198.51.100.2.
4. Backward Compatibility
Only routers that serve as endpoints for one or more TE tunnels MUST
be upgraded to support the procedures described herein:
* Tunnel tail-end routers advertise the Node IPv4 Local Address sub-
TLV and/or the Node IPv6 Local Address sub-TLV.
* Tunnel head-end routers perform the X-AF routing calculation.
Both the endpoints MUST be upgraded before the tail end starts
advertising the X-AF information. Other routers in the network do
not need to support X-AF procedures.
4.1. Automatically Switched Optical Networks
[RFC6827] updates [RFC5786] by defining extensions to be used in an
Automatically Switched Optical Network (ASON). The Local TE Router
ID sub-TLV is required for determining ASON reachability. The
implication is that if the Local TE Router ID sub-TLV is present in
the Node Attribute TLV, then the procedures in [RFC6827] apply,
regardless of whether any X-AF information is advertised.
5. Security Considerations
This document describes the use of the Local Address sub-TLVs to
provide X-AF information. The advertisement of these sub-TLVs, in
any OSPF instance, is not precluded by [RFC5786]. As such, no new
security threats are introduced beyond the considerations in OSPFv2
[RFC2328], OSPFv3 [RFC5340], and [RFC5786].
The X-AF information is not used for SPF computation or normal
routing, so the mechanism specified here has no effect on IP routing.
However, generating incorrect information or tampering with the sub-
TLVs may have an effect on traffic engineering computations.
Specifically, TE traffic may be delivered to the wrong tail-end
router, which could lead to suboptimal routing, traffic loops, or
exposing the traffic to attacker inspection or modification. These
threats are already present in other TE-related specifications, and
their considerations apply here as well, including [RFC3630] and
[RFC5329].
6. IANA Considerations
This document has no IANA actions.
7. References
7.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
[RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering
(TE) Extensions to OSPF Version 2", RFC 3630,
DOI 10.17487/RFC3630, September 2003,
<https://www.rfc-editor.org/info/rfc3630>.
[RFC5329] Ishiguro, K., Manral, V., Davey, A., and A. Lindem, Ed.,
"Traffic Engineering Extensions to OSPF Version 3",
RFC 5329, DOI 10.17487/RFC5329, September 2008,
<https://www.rfc-editor.org/info/rfc5329>.
[RFC5786] Aggarwal, R. and K. Kompella, "Advertising a Router's
Local Addresses in OSPF Traffic Engineering (TE)
Extensions", RFC 5786, DOI 10.17487/RFC5786, March 2010,
<https://www.rfc-editor.org/info/rfc5786>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
7.2. Informative References
[RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328,
DOI 10.17487/RFC2328, April 1998,
<https://www.rfc-editor.org/info/rfc2328>.
[RFC3906] Shen, N. and H. Smit, "Calculating Interior Gateway
Protocol (IGP) Routes Over Traffic Engineering Tunnels",
RFC 3906, DOI 10.17487/RFC3906, October 2004,
<https://www.rfc-editor.org/info/rfc3906>.
[RFC4461] Yasukawa, S., Ed., "Signaling Requirements for Point-to-
Multipoint Traffic-Engineered MPLS Label Switched Paths
(LSPs)", RFC 4461, DOI 10.17487/RFC4461, April 2006,
<https://www.rfc-editor.org/info/rfc4461>.
[RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF
for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008,
<https://www.rfc-editor.org/info/rfc5340>.
[RFC5838] Lindem, A., Ed., Mirtorabi, S., Roy, A., Barnes, M., and
R. Aggarwal, "Support of Address Families in OSPFv3",
RFC 5838, DOI 10.17487/RFC5838, April 2010,
<https://www.rfc-editor.org/info/rfc5838>.
[RFC6827] Malis, A., Ed., Lindem, A., Ed., and D. Papadimitriou,
Ed., "Automatically Switched Optical Network (ASON)
Routing for OSPFv2 Protocols", RFC 6827,
DOI 10.17487/RFC6827, January 2013,
<https://www.rfc-editor.org/info/rfc6827>.
Acknowledgements
The authors would like to thank Peter Psenak and Eric Osborne for
early discussions and Acee Lindem for discussing compatibility with
ASON extensions. Also, Eric Vyncke, Ben Kaduk, and Roman Danyliw
provided useful comments.
We would also like to thank the authors of RFC 5786 for laying down
the foundation for this work.
Authors' Addresses
Anton Smirnov
Cisco Systems, Inc.
De Kleetlaan 6a
1831 Diegem
Belgium
Email: as@cisco.com
Alvaro Retana
Futurewei Technologies, Inc.
2330 Central Expressway
Santa Clara, CA 95050
United States of America
Email: alvaro.retana@futurewei.com
Michael Barnes