Skip to main content

Carrying SID Algorithm information in PCE-based Networks.
draft-tokar-pce-sid-algo-02

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft whose latest revision state is "Replaced".
Authors Alex Tokar , Samuel Sidor , Siva Sivabalan , Shuping Peng , Mahendra Singh Negi
Last updated 2020-09-02
Replaced by draft-ietf-pce-sid-algo, draft-ietf-pce-sid-algo, draft-ietf-pce-sid-algo
RFC stream (None)
Formats
Additional resources
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-tokar-pce-sid-algo-02
PCE Working Group                                               A. Tokar
Internet-Draft                                                  S. Sidor
Intended status: Standards Track                     Cisco Systems, Inc.
Expires: March 6, 2021                                      S. Sivabalan
                                                                   Ciena
                                                                 S. Peng
                                                     Huawei Technologies
                                                                 M. Negi
                                                             RtBrick Inc
                                                       September 2, 2020

       Carrying SID Algorithm information in PCE-based Networks.
                      draft-tokar-pce-sid-algo-02

Abstract

   The Algorithm associated with a prefix Segment-ID (SID) defines the
   path computation Algorithm used by Interior Gateway Protocols (IGPs).
   This information is available to controllers such as the Path
   Computation Element (PCE) via topology learning.  This document
   proposes an approach for informing headend routers regarding the
   Algorithm associated with each prefix SID used in PCE-computed paths,
   as well as signalling a specific SID algorithm as a constraint to the
   PCE.

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.

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

Tokar, et al.             Expires March 6, 2021                 [Page 1]
Internet-Draft            SID Algorithm in PCEP           September 2020

   This Internet-Draft will expire on March 6, 2021.

Copyright Notice

   Copyright (c) 2020 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
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Object Formats  . . . . . . . . . . . . . . . . . . . . . . .   3
     3.1.  SR ERO Subobject  . . . . . . . . . . . . . . . . . . . .   4
     3.2.  LSPA Object . . . . . . . . . . . . . . . . . . . . . . .   4
   4.  Operation . . . . . . . . . . . . . . . . . . . . . . . . . .   5
     4.1.  SR-ERO NAI Encoding . . . . . . . . . . . . . . . . . . .   5
     4.2.  SID Algorithm Constraint  . . . . . . . . . . . . . . . .   5
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .   6
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   6
     6.1.  PCEP SR-ERO NAI Types . . . . . . . . . . . . . . . . . .   6
     6.2.  PCEP TLV Types  . . . . . . . . . . . . . . . . . . . . .   6
   7.  Normative References  . . . . . . . . . . . . . . . . . . . .   6
   Appendix A.  Contributors . . . . . . . . . . . . . . . . . . . .   7
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   7

1.  Introduction

   A PCE can compute SR-TE paths using prefix SIDs with different
   Algorithms depending on the use-case, constraints, etc.  While this
   information is available on the PCE, there is no method of conveying
   this information to the headend router.

   Similarly, the headend can also compute SR-TE paths using different
   Algorithms, and this information also needs to be conveyed to the PCE
   for collection or troubleshooting purposes.  In addition, in the case
   of multiple (redundant) PCEs, when the headend receives a path from
   the primary PCE, it needs to be able to report the complete path
   information - including the Algorithm - to the backup PCE so that in

Tokar, et al.             Expires March 6, 2021                 [Page 2]
Internet-Draft            SID Algorithm in PCEP           September 2020

   HA scenarios, the backup PCE can verify the prefix SIDs
   appropriately.

   An operator may also want to constrain the path computed by the PCE
   to a specific SID Algorithm, for example, in order to only use SID
   Algorithms for a low-latency path.  A new TLV is introduced for this
   purpose.

   Refer to [RFC8665] and [RFC8667] for details about the prefix SID
   Algorithm.

   This document introduces two new NAI types for the SR-ERO subobject,
   which is defined in [RFC8664].  A new TLV for signalling SID
   Algorithm constraint to the PCE is also introduced, to be carried
   inside the LSPA object, which is defined in [RFC5440].

   The mechanisms described in this document are equally applicable to
   both SR-MPLS and SRv6.

2.  Terminology

   The following terminologies are used in this document:

   ERO:  Explicit Route Object

   IGP:  Interior Gateway Protocol

   NAI:  Node or Adjacency Identifier.

   PCE:  Path Computation Element

   PCEP:  Path Computation Element Protocol.

   SID:  Segment Identifier.

   SR:  Segment Routing.

   SR-TE:  Segment Routing Traffic Engineering.

   LSP:  Label Switched Path.

   LSPA:  Label Switched Path Attributes.

3.  Object Formats

Tokar, et al.             Expires March 6, 2021                 [Page 3]
Internet-Draft            SID Algorithm in PCEP           September 2020

3.1.  SR ERO Subobject

   The SR-ERO subobject encoding is extended with additional NAI types.

   The following new NAI types (NT) are defined:

   o  NT=TBD1: The NAI is an IPv4 node ID with Algorithm.

   o  NT=TBD2: The NAI is an IPv6 node ID with Algorithm.

   This document defines the following NAIs:

   'IPv4 Node ID with Algorithm'  is specified as an IPv4 address and
      Algorithm identifier.  In this case, the NT value is TBD1 and the
      NAI field length is 8 octets.

        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
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                      Node IPv4 address                        |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                  Reserved                     |  Algorithm    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

              Figure 1: NAI for IPv4 Node SID with Algorithm

   'IPv6 Node ID with Algorithm'  is specified as an IPv6 address and
      Algorithm identifier.  In this case, the NT value is TBD2 and the
      NAI field length is 20 octets.

      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     //               Node IPv6 address (16 octets)                 //
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                  Reserved                     |  Algorithm    |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

              Figure 2: NAI for IPv6 Node SID with Algorithm

3.2.  LSPA Object

   A new TLV for the LSPA Object with TLV type=TBD3 is introduced to
   carry the SID Algorithm constraint.  This TLV SHOULD only be used
   when PST (Path Setup type) = SR or SRv6.

   The format of the SID Algorithm TLV is as follows:

Tokar, et al.             Expires March 6, 2021                 [Page 4]
Internet-Draft            SID Algorithm in PCEP           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=TBD3             |            Length=4           |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Reserved              |   Flags   |L|F|   Algorithm   |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                    Figure 3: SID Algorithm TLV Format

   The code point for the TLV type is TBD3.  The TLV length is 4 octets.

   The 32-bit value is formatted as follows.

   Reserved:  MUST be set to zero by the sender and MUST be ignored by
      the receiver.

   Flags:  This document defines the following flag bits.  The other
      bits MUST be set to zero by the sender and MUST be ignored by the
      receiver.

      *  F (Fallback): If set to 1 and the PCE is unable to compute a
         path using only prefix SIDs with the specified Algorithm, the
         PCE MAY compute an alternate fallback path without constraining
         to the specified Algorithm.

      *  L (Loose): If set to 1, the PCE MAY insert prefix SIDs with a
         different Algorithm, but it MUST prefer the specified Algorithm
         whenever possible.

   Algorithm:  SID Algorithm the PCE MUST take into acount while
      computing a path for the LSP.

4.  Operation

4.1.  SR-ERO NAI Encoding

   IPv4 prefix SIDs used by SR-TE paths with an associated Algorithm
   SHOULD be encoded with 'IPv4 Node ID with Algorithm' NAI.

   IPv6 prefix SIDs used by SR-TE paths with an associated Algorithm
   SHOULD be encoded with 'IPv6 Node ID with Algorithm' NAI.

4.2.  SID Algorithm Constraint

   In order to signal a specific SID Algorithm constraint to the PCE,
   the headend MUST encode the SID ALGORITHM TLV inside the LSPA object.

Tokar, et al.             Expires March 6, 2021                 [Page 5]
Internet-Draft            SID Algorithm in PCEP           September 2020

   When the PCE receives a SID Algorithm constraint, it MUST only take
   prefix SIDs with the specified Algorithm into account during path
   computation.  However, if the L flag is set in the SID Algorithm TLV,
   the PCE MAY insert prefix SIDs with a different Algorithm in order to
   successfully compute a path.

   If the PCE is unable to find a path with the given SID Algorithm
   constraint, it MUST bring the LSP down.  Alternatively, if the F flag
   is set in the SID Algorithm TLV, the PCE MAY attempt to compute a
   path without taking the Algorithm constraint into account at all.

5.  Security Considerations

   No additional security measure is required.

6.  IANA Considerations

6.1.  PCEP SR-ERO NAI Types

   IANA is requested to allocate new SR-ERO NAI types for the new NAI
   types specified in this document.

                Value    Description           Reference

                 TBD1    IPv4 Node ID with     This document
                         Algorithm
                 TBD2    IPv6 Node ID with     This document
                         Algorithm

6.2.  PCEP TLV Types

   IANA is requested to allocate a new TLV type for the new LSPA TLV
   specified in this document.

                Value    Description           Reference

                 TBD3    SID Algorithm         This document

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

Tokar, et al.             Expires March 6, 2021                 [Page 6]
Internet-Draft            SID Algorithm in PCEP           September 2020

   [RFC5440]  Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation
              Element (PCE) Communication Protocol (PCEP)", RFC 5440,
              DOI 10.17487/RFC5440, March 2009,
              <https://www.rfc-editor.org/info/rfc5440>.

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

   [RFC8664]  Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W.,
              and J. Hardwick, "Path Computation Element Communication
              Protocol (PCEP) Extensions for Segment Routing", RFC 8664,
              DOI 10.17487/RFC8664, December 2019,
              <https://www.rfc-editor.org/info/rfc8664>.

   [RFC8665]  Psenak, P., Ed., Previdi, S., Ed., Filsfils, C., Gredler,
              H., Shakir, R., Henderickx, W., and J. Tantsura, "OSPF
              Extensions for Segment Routing", RFC 8665,
              DOI 10.17487/RFC8665, December 2019,
              <https://www.rfc-editor.org/info/rfc8665>.

   [RFC8667]  Previdi, S., Ed., Ginsberg, L., Ed., Filsfils, C.,
              Bashandy, A., Gredler, H., and B. Decraene, "IS-IS
              Extensions for Segment Routing", RFC 8667,
              DOI 10.17487/RFC8667, December 2019,
              <https://www.rfc-editor.org/info/rfc8667>.

Appendix A.  Contributors

   Mike Koldychev
   Cisco Systems
   Kanata, Ontario
   Canada

   EMail: mkoldych@cisco.com

Authors' Addresses

   Alex Tokar
   Cisco Systems, Inc.
   Eurovea Central 3.
   Pribinova 10
   Bratislava  811 09
   Slovakia

   Email: atokar@cisco.com

Tokar, et al.             Expires March 6, 2021                 [Page 7]
Internet-Draft            SID Algorithm in PCEP           September 2020

   Samuel Sidor
   Cisco Systems, Inc.
   Eurovea Central 3.
   Pribinova 10
   Bratislava  811 09
   Slovakia

   Email: ssidor@cisco.com

   Siva Sivabalan
   Ciena
   385 Terry Fox Drive
   Kanata, Ontario  K2K 0L1
   Canada

   Email: msiva282@gmail.com

   Shuping Peng
   Huawei Technologies
   Huawei Campus, No. 156 Beiqing Rd.
   Beijing  100095
   China

   Email: pengshuping@huawei.com

   Mahendra Singh Negi
   RtBrick Inc
   Bangalore, Karnataka
   India

   Email: mahend.ietf@gmail.com

Tokar, et al.             Expires March 6, 2021                 [Page 8]