RFC 9214 PROPOSED STANDARD MPLS · ROUTING · OSPF

OSPFv3 Code Point for MPLS LSP Ping

Gives OSPFv3 its own protocol value in MPLS LSP Ping and pins the old OSPF value to OSPFv2.

On rfc-editor.org ↗
PUBLISHED
April 2022
AUTHORS
N. Nainar, C. Pignataro, M. Aissaoui
STREAM
IETF
BUILDS ON
RFC 8287 — SR LSP Ping/Traceroute
OSPFV3 IN SEGMENT ID SUB-TLV
Protocol value 3
OSPFV3 IN DDMAP TLV
Protocol value 7
SEGMENT ID SUB-TLV TYPES COVERED
34, 35 and 36
DOI
10.17487/RFC9214

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Internet Engineering Task Force (IETF)                         N. Nainar
Request for Comments: 9214                                  C. Pignataro
Updates: 8287                                        Cisco Systems, Inc.
Category: Standards Track                                    M. Aissaoui
ISSN: 2070-1721                                                    Nokia
                                                              April 2022


                  OSPFv3 Code Point for MPLS LSP Ping

Abstract

   IANA has created "Protocol in the Segment ID Sub-TLV" and "Protocol
   in Label Stack Sub-TLV of Downstream Detailed Mapping TLV" registries
   under the "Multiprotocol Label Switching (MPLS) Label Switched Paths
   (LSPs) Ping Parameters" registry.  RFC 8287 defines the code points
   for Open Shortest Path First (OSPF) and Intermediate System to
   Intermediate System (IS-IS) protocols.

   This document specifies the code point to be used in the Segment ID
   sub-TLV and Downstream Detailed Mapping (DDMAP) TLV when the Interior
   Gateway Protocol (IGP) is OSPFv3.  This document also updates
   RFC 8287 by clarifying that the existing "OSPF" code point is to be
   used only to indicate OSPFv2 and by defining the behavior when the
   Segment ID sub-TLV indicates the use of IPv6.

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/rfc9214.

Copyright Notice

   Copyright (c) 2022 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 Revised BSD License text as described in Section 4.e of the
   Trust Legal Provisions and are provided without warranty as described
   in the Revised BSD License.

Table of Contents

   1.  Introduction
   2.  Requirements Notation
   3.  Terminology
   4.  OSPFv3 Protocol in Segment ID Sub-TLVs
   5.  OSPFv3 Protocol in Downstream Detailed Mapping TLV
   6.  Update to RFC 8287 - OSPFv2 Protocol in Segment ID and DDMAP
           Sub-TLVs
   7.  IANA Considerations
     7.1.  Protocol in the Segment ID Sub-TLV
     7.2.  Protocol in Label Stack Sub-TLV of Downstream Detailed
           Mapping TLV
   8.  Security Considerations
   9.  Normative References
   Acknowledgements
   Authors' Addresses

1.  Introduction

   IANA has created the "Protocol in the Segment ID Sub-TLV" registry
   and "Protocol in Label Stack Sub-TLV of Downstream Detailed Mapping
   TLV" registries under the "Multiprotocol Label Switching (MPLS) Label
   Switched Paths (LSPs) Ping Parameters" registry [IANA-MPLS-LSP-PING].
   [RFC8287] defines the code points for OSPF and IS-IS.

   "OSPF for IPv6" [RFC5340] describes OSPF version 3 (OSPFv3) to
   support IPv6.  "Support of Address Families in OSPFv3" [RFC5838]
   describes the mechanism to support multiple address families (AFs) in
   OSPFv3.  Accordingly, OSPFv3 may be used to advertise IPv6 and IPv4
   prefixes.

   This document specifies the code point to be used in the Segment ID
   sub-TLV (Types 34, 35, and 36) and in the Downstream Detailed Mapping
   (DDMAP) TLV when the IGP is OSPFv3.

   This document also updates "Label Switched Path (LSP) Ping/Traceroute
   for Segment Routing (SR) IGP-Prefix and IGP-Adjacency Segment
   Identifiers (SIDs) with MPLS Data Planes" [RFC8287] by clarifying
   that the existing "OSPF" code point is to be used only to indicate
   OSPFv2 and by defining the behavior when the Segment ID sub-TLV
   indicates the use of IPv6.

2.  Requirements Notation

   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.  Terminology

   This document uses the terminology defined in "Segment Routing
   Architecture" [RFC8402], "Detecting Multiprotocol Label Switched
   (MPLS) Data-Plane Failures" [RFC8029], and "Label Switched Path (LSP)
   Ping/Traceroute for Segment Routing (SR) IGP-Prefix and IGP-Adjacency
   Segment Identifiers (SIDs) with MPLS Data Planes" [RFC8287], and so
   the readers are expected to be familiar with the same.

4.  OSPFv3 Protocol in Segment ID Sub-TLVs

   When the protocol field of the Segment ID sub-TLV of Type 34 (IPv4
   IGP-Prefix Segment ID), Type 35 (IPv6 IGP-Prefix Segment ID), and
   Type 36 (IGP-Adjacency Segment ID) is set to 3, the responder MUST
   perform the Forwarding Equivalence Class (FEC) validation using
   OSPFv3 as the IGP.

   The initiator MUST NOT set the protocol field of the Segment ID sub-
   TLV Type 35 and Type 36 as OSPF (value 1) as OSPFv2 is not compatible
   with the use of IPv6 addresses indicated by this sub-TLV.

   When the protocol field in the received Segment ID sub-TLV Type 35
   and Type 36 is OSPF (value 1), the responder MAY treat the protocol
   value as "Any IGP Protocol" (value 0) according to step 4a of
   Section 7.4 of [RFC8287].  This allows the responder to support
   legacy implementations that use value 1 to indicate OSPFv3.

5.  OSPFv3 Protocol in Downstream Detailed Mapping TLV

   The protocol field of the DDMAP TLV in an echo reply is set to 7 when
   OSPFv3 is used to distribute the label carried in the Downstream
   Label field.

6.  Update to RFC 8287 - OSPFv2 Protocol in Segment ID and DDMAP Sub-
    TLVs

   Section 5 of [RFC8287] defines the code point for OSPF to be used in
   the Protocol field of the Segment ID sub-TLV.  Section 6 of [RFC8287]
   defines the code point for OSPF to be used in the Protocol field of
   the DDMAP TLV.

   This document updates [RFC8287] by specifying that the "OSPF" code
   points SHOULD be used only for OSPFv2.

7.  IANA Considerations

7.1.  Protocol in the Segment ID Sub-TLV

   IANA has assigned a new code point from the "Protocol in the Segment
   ID Sub-TLV" registry under the "Multiprotocol Label Switching (MPLS)
   Label Switched Paths (LSPs) Ping Parameters" registry as follows:

                      +=======+=========+===========+
                      | Value | Meaning | Reference |
                      +=======+=========+===========+
                      | 3     | OSPFv3  | RFC 9214  |
                      +-------+---------+-----------+

                                  Table 1

   IANA has added a note for the existing entry for code point 1 (OSPF):
   "To be used for OSPFv2 only".

7.2.  Protocol in Label Stack Sub-TLV of Downstream Detailed Mapping TLV

   IANA has assigned a new code point for OSPFv3 from "Protocol in Label
   Stack Sub-TLV of Downstream Detailed Mapping TLV" registry under the
   "Multiprotocol Label Switching (MPLS) Label Switched Paths (LSPs)
   Ping Parameters" registry as follows:

                      +=======+=========+===========+
                      | Value | Meaning | Reference |
                      +=======+=========+===========+
                      | 7     | OSPFv3  | RFC 9214  |
                      +-------+---------+-----------+

                                  Table 2

   IANA has added a note for the existing codepoint 5 (OSPF): "To be
   used for OSPFv2 only".

8.  Security Considerations

   This document updates [RFC8287] and does not introduce any additional
   security considerations.  See [RFC8029] to see generic security
   considerations about the MPLS LSP Ping.

9.  Normative References

   [IANA-MPLS-LSP-PING]
              IANA, "Multiprotocol Label Switching (MPLS) Label Switched
              Paths (LSPs) Ping Parameters",
              <https://www.iana.org/assignments/mpls-lsp-ping-
              parameters>.

   [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>.

   [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>.

   [RFC8029]  Kompella, K., Swallow, G., Pignataro, C., Ed., Kumar, N.,
              Aldrin, S., and M. Chen, "Detecting Multiprotocol Label
              Switched (MPLS) Data-Plane Failures", RFC 8029,
              DOI 10.17487/RFC8029, March 2017,
              <https://www.rfc-editor.org/info/rfc8029>.

   [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>.

   [RFC8287]  Kumar, N., Ed., Pignataro, C., Ed., Swallow, G., Akiya,
              N., Kini, S., and M. Chen, "Label Switched Path (LSP)
              Ping/Traceroute for Segment Routing (SR) IGP-Prefix and
              IGP-Adjacency Segment Identifiers (SIDs) with MPLS Data
              Planes", RFC 8287, DOI 10.17487/RFC8287, December 2017,
              <https://www.rfc-editor.org/info/rfc8287>.

   [RFC8402]  Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L.,
              Decraene, B., Litkowski, S., and R. Shakir, "Segment
              Routing Architecture", RFC 8402, DOI 10.17487/RFC8402,
              July 2018, <https://www.rfc-editor.org/info/rfc8402>.

Acknowledgements

   The authors would like to thank Les Ginsberg, Zafar Ali, Loa
   Andersson, Andrew Molotchko, Deborah Brungard, Acee Lindem, and
   Adrian Farrel for their review and suggestions.

   The authors also would like to thank Christer Holmberg, Tero Kivinen,
   Matthew Bocci, Tom Petch, and Martin Vigoureux for their review
   comments.

Authors' Addresses

   Nagendra Kumar Nainar
   Cisco Systems, Inc.
   7200-12 Kit Creek Road
   Research Triangle Park, NC 27709
   United States of America
   Email: naikumar@cisco.com


   Carlos Pignataro
   Cisco Systems, Inc.
   7200-11 Kit Creek Road
   Research Triangle Park, NC 27709
   United States of America
   Email: cpignata@cisco.com


   Mustapha Aissaoui
   Nokia
   Canada
   Email: mustapha.aissaoui@nokia.com

AI ELI5

On this page
PROBLEMRFC 8287 defined protocol code points for OSPF and IS-IS in MPLS LSP Ping, but had none for OSPFv3, which carries IPv6 and can also advertise IPv4 prefixes.
MECHANISMRFC 9214 assigns value 3 (OSPFv3) in the Segment ID sub-TLV protocol registry and value 7 in the Downstream Detailed Mapping registry, and says the existing OSPF values are for OSPFv2 only.
WHY IT MATTERSA responder can now validate a segment against the right OSPF version. The document updates RFC 8287.

§1Introduction

MPLS LSP Ping checks whether a label switched path works. RFC 8287 extended it for Segment Routing and defined protocol code points for OSPF and IS-IS. IANA keeps two registries for them under the MPLS LSP Ping Parameters registry: "Protocol in the Segment ID Sub-TLV" and "Protocol in Label Stack Sub-TLV of Downstream Detailed Mapping TLV".

RFC 5340 describes OSPF version 3 (OSPFv3) for IPv6, and RFC 5838 lets it carry several address families, so OSPFv3 may advertise both IPv6 and IPv4 prefixes. RFC 9214 fills the gap: it names the code point to use when the IGP is OSPFv3.

Testing tools label each message with the kind of routing system behind it. There was a label for the old kind, but not for the newer one that handles the newer kind of address.

§3What the Reader Is Expected to Know

The document builds on the terminology of RFC 8402 (Segment Routing Architecture), RFC 8029 (detecting MPLS data-plane failures) and RFC 8287 (LSP Ping and Traceroute for Segment Routing). Readers are expected to be familiar with all three. It uses the RFC 2119 and RFC 8174 key words, such as MUST and SHOULD, only when written in capitals.

This note is a small add-on to bigger manuals, so you are supposed to have read those first.

§4OSPFv3 in Segment ID Sub-TLVs

When the protocol field of a Segment ID sub-TLV of Type 34 (IPv4 IGP-Prefix Segment ID), Type 35 (IPv6 IGP-Prefix Segment ID) or Type 36 (IGP-Adjacency Segment ID) is set to 3, the responder MUST do Forwarding Equivalence Class (FEC) validation using OSPFv3 as the IGP.

The initiator MUST NOT set the protocol field of Type 35 and Type 36 sub-TLVs to OSPF (value 1), because OSPFv2 is not compatible with the IPv6 addresses those sub-TLVs indicate.

To cope with older implementations that used value 1 to mean OSPFv3, a responder that receives value 1 in a Type 35 or Type 36 sub-TLV MAY treat it as "Any IGP Protocol" (value 0), following step 4a of Section 7.4 of RFC 8287.

When a message says "newer kind", the checker uses the newer rules. If an old tool wrongly used the old label, the checker may just accept any kind.

§5OSPFv3 in the Downstream Detailed Mapping TLV

The protocol field of the Downstream Detailed Mapping (DDMAP) TLV in an echo reply is set to 7 when OSPFv3 is used to distribute the label carried in the Downstream Label field.

In the answer message, a special number tells you the label came from the newer routing system.

§6Update to RFC 8287

RFC 8287 defined the "OSPF" code point for the Protocol field of the Segment ID sub-TLV (its Section 5) and of the DDMAP TLV (its Section 6). RFC 9214 updates it: the "OSPF" code points SHOULD be used only for OSPFv2.

The old label now officially means only the old kind, so nobody mixes the two up.

§7IANA Registry Changes

IANA assigned value 3 (OSPFv3) in the "Protocol in the Segment ID Sub-TLV" registry and value 7 (OSPFv3) in the "Protocol in Label Stack Sub-TLV of Downstream Detailed Mapping TLV" registry. Both entries reference RFC 9214.

IANA also added the note "To be used for OSPFv2 only" to the existing entry for code point 1 (OSPF) in the first registry and code point 5 (OSPF) in the second.

The official list of codes got one new line for each of the two tables, plus a reminder next to the old entries.

OSPF PROTOCOL VALUES (RFC 9214)
  • 1OSPF (Segment ID sub-TLV) — Existing code point, to be used for OSPFv2 only.
  • 3OSPFv3 (Segment ID sub-TLV) — New code point assigned by this document.
  • 5OSPF (DDMAP label stack) — Existing code point, to be used for OSPFv2 only.
  • 7OSPFv3 (DDMAP label stack) — New code point assigned by this document.

§8Security Considerations

The document updates RFC 8287 and does not introduce any additional security considerations. For the generic security considerations of MPLS LSP Ping, it points to RFC 8029.

Adding a new label does not open any new doors for trouble. The older safety notes still apply.

§8References