Skip to main content

PCE Path Profiles
draft-alvarez-pce-path-profiles-03

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 "Expired".
Authors Santiago Alvarez , Siva Sivabalan , Zafar Ali , Luis Tomotaki , Victor Lopez , Rob Shakir
Last updated 2014-07-04
RFC stream (None)
Formats
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-alvarez-pce-path-profiles-03
Internet Engineering Task Force                               S. Alvarez
Internet-Draft                                              S. Sivabalan
Intended status: Standards Track                                  Z. Ali
Expires: January 5, 2015                             Cisco Systems, Inc.
                                                             L. Tomotaki
                                                                 Verizon
                                                                V. Lopez
                                                          Telefonica I+D
                                                               R. Shakir
                                                                      BT
                                                            July 4, 2014

                           PCE Path Profiles
                   draft-alvarez-pce-path-profiles-03

Abstract

   This document describes extensions to the Path Computation Element
   (PCE) Communication Protocol (PCEP) to signal path profile
   identifiers.  A profile represents a list of path parameters or
   policies that a PCEP peer may invoke on a remote peer using an opaque
   identifier.  When a path computation client (PCC) initiates a path
   computation request, the PCC can signal profile identifiers to invoke
   path parameters or policies defined on the PCE which would influence
   the path computation.  Similarly, when a PCE initiates or updates a
   path, the PCE can signal profile identifiers to invoke path
   parameters or policies defined on the PCC which would influence the
   path setup.

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 http://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 January 5, 2015.

Alvarez, et al.          Expires January 5, 2015                [Page 1]
Internet-Draft              PCE Path Profiles                  July 2014

Copyright Notice

   Copyright (c) 2014 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
   (http://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 Language . . . . . . . . . . . . . . . . . .   2
   2.  Path Profiles . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Procedures  . . . . . . . . . . . . . . . . . . . . . . . . .   3
     3.1.  Capability Advertisement  . . . . . . . . . . . . . . . .   3
     3.2.  PCC-Initiated Paths . . . . . . . . . . . . . . . . . . .   3
       3.2.1.  Point-to-Point Paths  . . . . . . . . . . . . . . . .   4
       3.2.2.  Point-to-Multipoint Paths . . . . . . . . . . . . . .   5
     3.3.  PCE-Initiated Paths . . . . . . . . . . . . . . . . . . .   6
   4.  Object Extensions . . . . . . . . . . . . . . . . . . . . . .   7
     4.1.  OPEN Object . . . . . . . . . . . . . . . . . . . . . . .   7
     4.2.  PATH-PROFILE Object . . . . . . . . . . . . . . . . . . .   8
   5.  Error Codes for PATH-PROFILE Object . . . . . . . . . . . . .   9
   6.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   9
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   9
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  10
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  10
     9.1.  Normative References  . . . . . . . . . . . . . . . . . .  10
     9.2.  Informative References  . . . . . . . . . . . . . . . . .  11
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  11

1.  Introduction

1.1.  Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [RFC2119].

Alvarez, et al.          Expires January 5, 2015                [Page 2]
Internet-Draft              PCE Path Profiles                  July 2014

2.  Path Profiles

   A path profile represents a list of path parameters or policies that
   a PCEP peer may invoke on a remote peer using a profile identifier.
   The receiving peer interprets the identifier according to a local
   path profile definition.  The PATH-PROFILE object defined in
   Section 4.2 can signal one or more profile identifiers.  PCEP carries
   profile identifiers as opaque values.  PCEP peers do not exchange the
   details of a path profile.  The PCE may be stateful or stateless.

3.  Procedures

3.1.  Capability Advertisement

   PCEP peers advertise their capability to support path profile
   identifiers during the session initialization phase.  They include
   the PATH-PROFILE-CAPABILITY TLV defined in Section 4.1 as part of the
   OPEN object.  A PCEP peer can only signal path profile identifiers if
   both peers advertised this capability.  A peer MUST send a PCErr
   message with Error-Type=4 (Not supported object), Error-value=1 (Not
   supported object class) and close the session if it receives a
   message with a path profile identifier, it supports the extensions in
   this document and both peers did not advertise this capability.

3.2.  PCC-Initiated Paths

   A PCC MAY include a PATH-PROFILE object when sending a PCReq message.
   The PCE uses the path profile identifiers to select path parameters
   or path policies to fulfill the request.  The PCE MUST process the
   identifiers in the PATH-PROFILE object in the order received.  The
   means by which the PCC learns about a particular path profile
   identifier and decides to include it in a PCReq message are outside
   the scope of this document.  Similarly, the means by which the PCE
   selects a set of parameters or policies based on the profile
   identifier for a specific request are outside the scope of this
   document.  The P flag of the PATH-PROFILE object MUST be set.

   A PCE may receive a path computation request with one or more
   unexpected path profile identifiers.  The PCE sends a PCErr message
   with Error-Type=[TBA] (PATH-PROFILE Error), Error-value=1 (Unknown
   path profile) if the path profile identifier is not known to the PCE.
   The PCE sends a PCErr message with Error-Type=[TBA] (PATH-PROFILE
   Error), Error-value=2 (Invalid path profile) if the PCE knows about
   the path profile identifier, but considers the request invalid.  As
   an example, the profile may be invalid because of the path type, the
   PCEP session type or the originating PCC.  The PCE sends a PCErr
   message with Error-Type=[TBA] (PATH-PROFILE Error), Error-value=3
   (Incompatible path profiles) if two or more path profile identifiers

Alvarez, et al.          Expires January 5, 2015                [Page 3]
Internet-Draft              PCE Path Profiles                  July 2014

   are incompatible.  That is, they are known and valid, but can not
   occur simultanously.  The PCEP-ERROR object SHOULD include the path
   profile identifiers that generated the error condition.

   The PCE will determine whether to consider any additional optional
   objects included in a PCReq message based on policy.  As illustrated
   in Section 3.2.1 and Section 3.2.2, the PCC MAY include other
   optional objects along with a PATH-PROFILE object as part of a path
   computation request.  The PCC will use the processing-rule (P) flag
   in the common object header to signal whether it considers those
   objects mandatory or optional when the PCE performs path computation.
   Those objects may overlap with the path parameters that the PCE
   associates with the path profile identifier.

   PCE policy may place different kinds of restrictions on PCReq
   messages that include a PATH-PROFILE object and additional
   parameters.  A PCE MUST send an error message if it receives a
   request with optional objects signaled as mandatory (P flag = 1) for
   path computation and PCE policy does not allow such behavior from the
   originating PCC.  In that case, the PCE sends a PCErr message with
   Error-Type=[TBA] (PATH-PROFILE Error), Error-value=3 (Unexpected
   mandatory object).  If the objects are signaled as optional (P flag =
   0) for path computation, the PCE will decide based on policy whether
   to consider them or not.  When sending the PCRep message for the
   request, the PCE will use the ignore (I) flag in the common object
   header to indicate to the PCC whether an object was ignored.

3.2.1.  Point-to-Point Paths

   [RFC5440] defines the basic structure of a PCReq message for point-
   to-point paths.  This documents extends the message format as
   follows:

   <PCReq Message>::= <Common Header>
                      [<svec-list>]
                      <request-list>

   where:

      <svec-list>::=<SVEC>[<svec-list>]
      <request-list>::=<request>[<request-list>]

      <request>::= <RP>
                   <END-POINTS>
                   [<PATH-PROFILE>]
                   [<path-computation>]

Alvarez, et al.          Expires January 5, 2015                [Page 4]
Internet-Draft              PCE Path Profiles                  July 2014

   where:

   <path-computation> is the list of optional objects used for path
   computation as defined initially in [RFC5440] and modified in
   subsequent PCEP extensions.

   If present in a PCReq message, the PATH-PROFILE object MUST be the
   first optional object in the request portion of the message.

3.2.2.  Point-to-Multipoint Paths

   [RFC6006] defines the basic structure of a PCReq message for point-
   to-multipoint paths.  This documents extends the message format as
   follows:

   <PCReq Message>::= <Common Header>
                      <request>

   where:

      <request>::= <RP>
                   <end-point-rro-pair-list>
                   [<PATH-PROFILE>]
                   [<OF>]
                   [<LSPA>]
                   [<BANDWIDTH>]
                   [<metric-list>]
                   [<IRO>]
                   [<LOAD-BALANCING>]

   where:

      <end-point-rro-pair-list>::=
                         <END-POINTS>[<RRO-List>][<BANDWIDTH>]
                         [<end-point-rro-pair-list>]

      <RRO-List>::=<RRO>[<BANDWIDTH>][<RRO-List>]
      <metric-list>::=<METRIC>[<metric-list>]

   If present in a PCReq message, the PATH-PROFILE object MUST be the
   first optional object in the request portion of the message.

Alvarez, et al.          Expires January 5, 2015                [Page 5]
Internet-Draft              PCE Path Profiles                  July 2014

3.3.  PCE-Initiated Paths

   A PCE MAY include a PATH-PROFILE object when sending a PCInitiate
   message as defined in [I-D.ietf-pce-pce-initiated-lsp].  The PCC uses
   the path profile identifiers to select path parameters or path
   policies to be applied during the instantiation of the path.  The PCC
   MUST process the identifiers in the PATH-PROFILE object in the order
   received.  The means by which the PCE learns about a particular path
   profile identifier and decides to include it in a PCInitiate message
   are outside the scope of this document.  Similarly, the means by
   which the PCC selects a set of parameters or policies based on the
   profile identifier for a specific path are outside the scope of this
   document.

   A PCC may receive a path instantiation request with one or more
   unexpected path profile identifiers.  The PCC sends a PCErr message
   with Error-Type=[TBA] (PATH-PROFILE Error), Error-value=1 (Unknown
   path profiles) if the path profile identifier is not known to the
   PCC.  The PCC sends a PCErr message with Error-Type=[TBA] (PATH-
   PROFILE Error), Error-value=2 (Invalid path profiles) if the PCC
   knows about the path profile identifier, but considers the request
   invalid.  As an example, the profile may be invalid because of the
   path type, the PCEP session type or the originating PCE.  The PCC
   sends a PCErr message with Error-Type=[TBA] (PATH-PROFILE Error),
   Error-value=3 (Incompatible path profiles) if two or more path
   profile identifiers are incompatible.  That is, they are known and
   valid, but can not occur simultanously.  The PCEP-ERROR object SHOULD
   include the path profile identifiers that generated the error
   condition.

   [I-D.ietf-pce-pce-initiated-lsp] defines the basic structure of a
   PCInitiate message.  This documents extends the message format as
   follows:

Alvarez, et al.          Expires January 5, 2015                [Page 6]
Internet-Draft              PCE Path Profiles                  July 2014

   <PCInitiate Message> ::= <Common Header>
                               <PCE-initiated-lsp-list>
   Where:

     <PCE-initiated-lsp-list> ::= <PCE-initiated-lsp-request>
                                  [<PCE-initiated-lsp-list>]

     <PCE-initiated-lsp-request> ::= (<PCE-initiated-lsp-instantiation>|
                                      <PCE-initiated-lsp-deletion>)

     <PCE-initiated-lsp-instantiation> ::= <SRP>
                                           <LSP>
                                           <END-POINTS>
                                           <ERO>
                                           [PATH-PROFILE>
                                           [<attribute-list>]

     <PCE-initiated-lsp-deletion> ::= <SRP>
                                      <LSP>

   where:

   <attribute-list> is defined in [RFC5440] and extended by PCEP
   extensions.

4.  Object Extensions

4.1.  OPEN Object

   This documents defines a new optional PATH-PROFILE-CAPABILITY TLV in
   the OPEN object.

    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=[TBA]          |            Length=4           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |            Reserved           |             Flags             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        PATH-PROFILE-CAPABILITY TLV

                                 Figure 1

   Reserved (16 bits):

Alvarez, et al.          Expires January 5, 2015                [Page 7]
Internet-Draft              PCE Path Profiles                  July 2014

      MUST be set to zero on transmission and ignored on receipt.

   Flags (16 bits):
      Unassigned bits are considered reserved.  They MUST be set to zero
      on transmission and ignored on receipt.  No flags are currently
      defined.

4.2.  PATH-PROFILE Object

   The PATH-PROFILE object may be carried in PCReq, PCInitiate and PCUpd
   messages.

   PATH-PROFILE Object-Class is [TBA].

   PATH-PROFILE Object-Type is 1.

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   //                             TLVs                            //
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                            PATH-PROFILE Object

                                 Figure 2

   The PATH-PROFILE object has a variable length and contains one or
   more PATH-PROFILE-ID TLVs.

    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=[TBD]        |             Length=8          |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    Reserved   |      Flags    |       Path Profile Id         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    Path Profile Id  (cont)    |         Extended Id           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |       Extended Id (cont)      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                            PATH-PROFILE-ID TLV

                                 Figure 3

Alvarez, et al.          Expires January 5, 2015                [Page 8]
Internet-Draft              PCE Path Profiles                  July 2014

   Reserved (8 bits):
      MUST be set to zero on transmission and ignored on receipt.

   Flags (8 bits):

      0x01 (X) - Extended Id Flag

                 It indicates to the receiver that an extended
                 identifier associated with Path Profile Id is present.

   Path Profile Id (32 bits):
      (non-zero) unsigned path profile identifier.

   Extended Id (32 bits):
      Extended identifier associated with Path Profile Id.  MUST be set
      to zero on transmission and ignored on receipt unless the Extended
      Id flag is set.

   If more than one PATH-PROFILE object is present, the first one MUST
   be processed and subsequent objects ignored.

5.  Error Codes for PATH-PROFILE Object

   Error-Type       Meaning                  Error-Value
     <TBA>     PATH-PROFILE Error     1: Unknown path profiles
                                      2: Invalid path profiles
                                      3: Incompatible path profiles
                                      4: Unexpected mandatory object

6.  Acknowledgements

   The authors would like to thank Clarence Filsfils for his valuable
   comments.

7.  IANA Considerations

   IANA is requested to assign the following code points.

      PATH-PROFILE-CAPABILITY TLV

      PATH-PROFILE Object-Class

      PATH-PROFILE Object-Type

      PATH-PROFILE Error-Type

Alvarez, et al.          Expires January 5, 2015                [Page 9]
Internet-Draft              PCE Path Profiles                  July 2014

8.  Security Considerations

   TBD

9.  References

9.1.  Normative References

   [I-D.ali-pce-remote-initiated-gmpls-lsp]
              Ali, Z., Sivabalan, S., Filsfils, C., Varga, R., Lopez,
              V., Dios, O., and X. Zhang, "Path Computation Element
              Communication Protocol (PCEP) Extensions for remote-
              initiated GMPLS LSP Setup", draft-ali-pce-remote-
              initiated-gmpls-lsp-03 (work in progress), February 2014.

   [I-D.ietf-pce-gmpls-pcep-extensions]
              Margaria, C., Dios, O., and F. Zhang, "PCEP extensions for
              GMPLS", draft-ietf-pce-gmpls-pcep-extensions-09 (work in
              progress), February 2014.

   [I-D.ietf-pce-pce-initiated-lsp]
              Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "PCEP
              Extensions for PCE-initiated LSP Setup in a Stateful PCE
              Model", draft-ietf-pce-pce-initiated-lsp-01 (work in
              progress), June 2014.

   [I-D.ietf-pce-stateful-pce]
              Crabbe, E., Minei, I., Medved, J., and R. Varga, "PCEP
              Extensions for Stateful PCE", draft-ietf-pce-stateful-
              pce-09 (work in progress), June 2014.

   [I-D.sivabalan-pce-segment-routing]
              Sivabalan, S., Medved, J., Filsfils, C., Crabbe, E., and
              R. Raszuk, "PCEP Extensions for Segment Routing", draft-
              sivabalan-pce-segment-routing-02 (work in progress),
              October 2013.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC5440]  Vasseur, JP. and JL. Le Roux, "Path Computation Element
              (PCE) Communication Protocol (PCEP)", RFC 5440, March
              2009.

Alvarez, et al.          Expires January 5, 2015               [Page 10]
Internet-Draft              PCE Path Profiles                  July 2014

   [RFC6006]  Zhao, Q., King, D., Verhaeghe, F., Takeda, T., Ali, Z.,
              and J. Meuric, "Extensions to the Path Computation Element
              Communication Protocol (PCEP) for Point-to-Multipoint
              Traffic Engineering Label Switched Paths", RFC 6006,
              September 2010.

9.2.  Informative References

   [RFC4655]  Farrel, A., Vasseur, J., and J. Ash, "A Path Computation
              Element (PCE)-Based Architecture", RFC 4655, August 2006.

Authors' Addresses

   Santiago Alvarez
   Cisco Systems, Inc.
   170 West Tasman Drive
   San Jose, CA  95134
   USA

   Email: saalvare@cisco.com

   Siva Sivabalan
   Cisco Systems, Inc.
   2000 Innovation Drive
   Kanata, ON  K2K-3E8
   Canada

   Email: msiva@cisco.com

   Zafar Ali
   Cisco Systems, Inc.
   2000 Innovation Drive
   Kanata, ON  K2K-3E8
   Canada

   Email: zali@cisco.com

   Luis Tomotaki
   Verizon
   400 International
   Richardson, TX  75081
   US

   Email: luis.tomotaki@verizon.com

Alvarez, et al.          Expires January 5, 2015               [Page 11]
Internet-Draft              PCE Path Profiles                  July 2014

   Victor Lopez
   Telefonica I+D
   c/ Don Ramon de la Cruz 84
   Madrid    28006
   Spain

   Email: vlopez@tid.es

   Rob Shakir
   BT
   London
   UK

   Email: rob.shakir@bt.com

Alvarez, et al.          Expires January 5, 2015               [Page 12]