Network Working Group                                     A. Lindem, Ed.
Internet-Draft                                                 P. Psenak
Intended status: Standards Track                           Cisco Systems
Expires: March 27, 2021                               September 23, 2020


   Extensions to OSPF for Advertising Prefix/Link Administrative Tags
                     draft-acee-ospf-admin-tags-06

Abstract

   It is useful for routers in an OSPFv2 or OSPFv3 routing domain to be
   able to associate tags with prefixes and links.  Previously, OSPFv2
   and OSPFv3 were relegated to a single tag for AS External and Not-So-
   Stubby-Area (NSSA) prefixes.  With the flexible encodings provided by
   OSPFv2 Prefix/Link Attribute Advertisement and OSPFv3 Extended LSAs,
   multiple administrative tags may advertised for all types of prefixes
   and links.  These administrative tags can be used for many
   applications including route redistribution policy, selective prefix
   prioritization, selective IP Fast-ReRoute (IPFRR) prefix protection,
   and many others.

   The ISIS protocol supports a similar mechanism that is described in
   RFC 5130.

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 March 27, 2021.

Copyright Notice

   Copyright (c) 2020 IETF Trust and the persons identified as the
   document authors.  All rights reserved.





Lindem & Psenak          Expires March 27, 2021                 [Page 1]


Internet-Draft          OSPF Administrative Tags          September 2020


   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
     1.1.  Requirements notation . . . . . . . . . . . . . . . . . .   3
   2.  32-Bit Administrative Tag Sub-TLV . . . . . . . . . . . . . .   3
   3.  Administrative Tag Applicability  . . . . . . . . . . . . . .   4
   4.  Protocol Operation  . . . . . . . . . . . . . . . . . . . . .   5
     4.1.  Equal-Cost Multipath Applicability  . . . . . . . . . . .   5
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .   6
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   6
   7.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .   6
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   6
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .   6
     8.2.  Informative References  . . . . . . . . . . . . . . . . .   7
   Appendix A.  64-Bit Administrative Tag Sub-TLV  . . . . . . . . .   8
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   8

1.  Introduction

   It is useful for routers in an OSPFv2 [RFC2328] or OSPFv3 [RFC5340]
   routing domain to be able to associate tags with prefixes and links.
   Previously, OSPFv3 and OSPFv3 were relegated to a single tag for AS
   External and Not-So-Stubby-Area (NSSA) prefixes.  With the flexible
   encodings provided by OSPFv2 Prefix/Link Attribute Advertisement
   ([RFC7684]) and OSPFv3 Extended LSA ([RFC8362]), multiple
   administrative tags may be advertised for all types of prefixes and
   links.  These administrative tags can be used many applications
   including (but not limited to):

   1.  Controlling which routes are redistributed into other protocols
       for readvertisement.

   2.  Prioritizing selected prefixes for faster convergence and
       installation in the forwarding plane.

   3.  Identifying selected prefixes for Loop-Free Alternative (LFA)
       protection.




Lindem & Psenak          Expires March 27, 2021                 [Page 2]


Internet-Draft          OSPF Administrative Tags          September 2020


   Throughout this document, OSPF is used when the text applies to both
   OSPFv2 and OSPFv3.  OSPFv2 or OSPFv3 is used when the text is
   specific to one version of the OSPF protocol.

   The ISIS protocol supports a similar mechanism that is described in
   RFC 5130 [RFC5130].

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

2.  32-Bit Administrative Tag Sub-TLV

   This document creates a new Administrative Tag Sub-TLV for OSPFv2 and
   OSPFv3.  This Sub-TLV specifies one or more 32-bit unsigned integers
   that may be associated with an OSPF advertised prefix or OSPF Link.
   The precise usage of these tags is beyond the scope of this document.

   The format of this Sub-TLV is the same as the format used by the
   Traffic Engineering Extensions to OSPF [RFC3630].  The LSA payload
   consists of one or more nested Type/Length/Value (TLV) triplets.  The
   format of each TLV is:


      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            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                            Value...                           |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                                TLV Format

   The Length field defines the length of the value portion in octets
   (thus a TLV with no value portion would have a length of 0).  The TLV
   is padded to 4-octet alignment; padding is not included in the length
   field (so a 3-octet value would have a length of 3, but the total
   size of the TLV would be 8 octets).

   The format of the 32-bit Administrative Tag TLV is as follows:





Lindem & Psenak          Expires March 27, 2021                 [Page 3]


Internet-Draft          OSPF Administrative Tags          September 2020


       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            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |             First 32-bit Administrative Tag                   |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                             o                                 |
                                    o
      |                             o                                 |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |             Last 32-bit Administrative Tag                    |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


      Type     A 16-bit field set to TBD. The value MAY be different
               depending upon the IANA registry from which it is
               allocated.

      Length   A 16-bit field that indicates the length of the value
               portion in octets and will be a multiple of 4 octets
               dependent on the number of administrative tags
               advertised. If the sub-TLV is specified, at least one
               administrative tag must be advertised.

      Value    A variable length list of one or more administrative
               tags.

                     32-bit Administrative Tag Sub-TLV

   This sub-TLV will carry one or more 32-bit unsigned integer values
   that will be used as administrative tags.

3.  Administrative Tag Applicability

   The administrative tag TLV specified herein will be valid as a sub-
   TLV of the following TLVs specified in [RFC7684]:

   1.  Extended Prefix TLV advertised in the OSPFv2 Extended Prefix LSA

   2.  Extended Link TLV advertised in the OSPFv2 Extended Prefix LSA

   The administrative tag TLV specified herein will be valid as a sub-
   TLV of the following TLVs specified in [RFC8362]:

   1.  Router-Link TLV advertised in the E-Router-LSA

   2.  Inter-Area-Prefix TLV advertised in the E-Inter-Area-Prefix-LSA



Lindem & Psenak          Expires March 27, 2021                 [Page 4]


Internet-Draft          OSPF Administrative Tags          September 2020


   3.  Intra-Area-Prefix TLV advertised in the E-Link-LSA and the E-
       Intra-Area-Prefix-LSA

   4.  External-Prefix TLV advertised in the E-AS-External-LSA and the
       E-NSSA-LSA

4.  Protocol Operation

   An OSPF router supporting this specification MUST propagate
   administrative tags when acting as an Area Border Router and
   originating summary advertisements into other areas.  Similarly, an
   OSPF router supporting this specification and acting as an ABR for a
   Not-So-Stubby Area (NSSA) MUST propagate tags when translating NSSA
   routes to AS External advertisements [RFC3101].  The number of tags
   supported MAY limit the number of tags that are propagated.  When
   propagating multiple tags, the order of the the tags must be
   preserved.

   For configured area ranges, NSSA ranges, and configurated
   summarization of redistributed routes, tags from component routes
   SHOULD NOT be propagated to the summary.  Implementations SHOULD
   provide a mechanism to configure tags for area ranges, NSSA ranges,
   and redistributed route summaries.

   An OSPF router supporting this specification MUST be able to
   advertise and interpret one 32-bit tag for prefixes and links.  An
   OSPF router supporting this specification MAY be able to advertise
   and propagate multiple 32-bit tags.  The maximum tags that an
   implementation supports is a local matter depending upon supported
   applications using the prefix or link tags.

   When a single tag is advertised for AS External or NSSA LSA prefix,
   the existing tag in OSPFv2 and OSPFv3 AS-External-LSA and NSSA-LSA
   encodings SHOULD be utilized.  This will facilitate backward
   compatibilty with implementations that do not support this
   specification.

4.1.  Equal-Cost Multipath Applicability

   When multiple LSAs contribute to an OSPF route, it is possible that
   these LSAs will all have different tags.  In this situation, the OSPF
   router MUST associate the tags from one of the LSAs contributing a
   path and, if the implementation supports multiple tags, MAY associate
   tags for multiple contributing LSAs up to the maximum number of tags
   supported.






Lindem & Psenak          Expires March 27, 2021                 [Page 5]


Internet-Draft          OSPF Administrative Tags          September 2020


5.  Security Considerations

   This document describes a generic mechanism for advertising
   administrative tags for both OSPF prefixes and links.  The
   administrative tags are generally less critical than the topology
   information currently advertised by the base OSPF protocol.  The
   security considerations for the generic mechanism are dependent on
   the future application and, as such, should be described as
   additional capabilities are proposed for advertisement.  Security
   considerations for the base OSPF protocol are covered in [RFC2328]
   and [RFC5340].

6.  IANA Considerations

   The following values should be allocated from the OSPF Extended
   Prefix TLV Sub-TLV Registry [RFC7684]:

   o  TBD - 32-bit Administrative Tag TLV

   The following values should be allocated from the OSPF Extended Link
   TLV Sub-TLV Registry [RFC7684]:

   o  TBD - 32-bit Administrative Tag TLV

   The following values should be allocated from the OSPFv3 Extended-LSA
   Sub-TLV Registry [RFC8362]:

   o  TBD - 32-bit Administrative Tag TLV

7.  Acknowledgments

   The authors of RFC 5130 are acknowledged since this document draws
   upon both the ISIS specification and deployment experience.

   Thanks to Donnie Savage for his comments and questions.

   The RFC text was produced using Marshall Rose's xml2rfc tool.

8.  References

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





Lindem & Psenak          Expires March 27, 2021                 [Page 6]


Internet-Draft          OSPF Administrative Tags          September 2020


   [RFC2328]  Moy, J., "OSPF Version 2", STD 54, RFC 2328,
              DOI 10.17487/RFC2328, April 1998,
              <https://www.rfc-editor.org/info/rfc2328>.

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

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

   [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, <https://www.rfc-editor.org/info/rfc7684>.

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

   [RFC8362]  Lindem, A., Roy, A., Goethals, D., Reddy Vallem, V., and
              F. Baker, "OSPFv3 Link State Advertisement (LSA)
              Extensibility", RFC 8362, DOI 10.17487/RFC8362, April
              2018, <https://www.rfc-editor.org/info/rfc8362>.

8.2.  Informative References

   [RFC3101]  Murphy, P., "The OSPF Not-So-Stubby Area (NSSA) Option",
              RFC 3101, DOI 10.17487/RFC3101, January 2003,
              <https://www.rfc-editor.org/info/rfc3101>.

   [RFC5130]  Previdi, S., Shand, M., Ed., and C. Martin, "A Policy
              Control Mechanism in IS-IS Using Administrative Tags",
              RFC 5130, DOI 10.17487/RFC5130, February 2008,
              <https://www.rfc-editor.org/info/rfc5130>.














Lindem & Psenak          Expires March 27, 2021                 [Page 7]


Internet-Draft          OSPF Administrative Tags          September 2020


Appendix A.  64-Bit Administrative Tag Sub-TLV

   The definition of the 64-bit tag was considered but discard given
   that there is no strong requirement or use case.  The specification
   is included here for information.

   This sub-TLV will carry one or more 64-bit unsigned integer values
   that will be used as administrative tags.

   The format of the 64-bit Administrative Tag TLV is as follows:


       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            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |             First 64-bit Administrative Tag                   |
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                             o                                 |
                                    o
      |                             o                                 |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |             Last 64-bit Administrative Tag                    |
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


      Type     A 16-bit field set to TBD. The value MAY be different
               depending upon the registry from which it is allocated.

      Length   A 16-bit field that indicates the length of the value
               portion in octets and will be a multiple of 8 octets
               dependent on the number of administrative tags
               advertised. If the sub-TLV is specified, at least one
               administrative tag must be advertised.

      Value    A variable length list of one or more 64-bit
               administrative tags.

                       64-bit Administrative Tag TLV

Authors' Addresses







Lindem & Psenak          Expires March 27, 2021                 [Page 8]


Internet-Draft          OSPF Administrative Tags          September 2020


   Acee Lindem (editor)
   Cisco Systems
   301 Midenhall Way
   Cary, NC  27513
   USA

   EMail: acee@cisco.com


   Peter Psenak
   Cisco Systems
   Apollo Business Center
   Mlynske nivy 43
   Bratislava, 821 09
   Slovakia

   EMail: ppsenak@cisco.com


































Lindem & Psenak          Expires March 27, 2021                 [Page 9]