Skip to main content

PCEP extensions for GMPLS
draft-ietf-pce-gmpls-pcep-extensions-05

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft that was ultimately published as RFC 8779.
Authors Cyril Margaria , Oscar Gonzalez de Dios , Fatai Zhang
Last updated 2012-03-09
Replaces draft-margaria-pce-gmpls-pcep-extensions
RFC stream Internet Engineering Task Force (IETF)
Formats
Reviews
Additional resources Mailing list discussion
Stream WG state WG Document
Document shepherd (None)
IESG IESG state Became RFC 8779 (Proposed Standard)
Consensus boilerplate Unknown
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-ietf-pce-gmpls-pcep-extensions-05
Network Working Group                                   C. Margaria, Ed.
Internet-Draft                                    Nokia Siemens Networks
Intended status: Standards Track                O. Gonzalez de Dios, Ed.
Expires: September 9, 2012                    Telefonica Investigacion y
                                                              Desarrollo
                                                           F. Zhang, Ed.
                                                     Huawei Technologies
                                                           March 8, 2012

                       PCEP extensions for GMPLS
                draft-ietf-pce-gmpls-pcep-extensions-05

Abstract

   This memo provides extensions for the Path Computation Element
   communication Protocol (PCEP) for the support of GMPLS control plane.

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 September 9, 2012.

Copyright Notice

   Copyright (c) 2012 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

Margaria, et al.        Expires September 9, 2012               [Page 1]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

   described in the Simplified BSD License.

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
     1.1.  Contributing Authors . . . . . . . . . . . . . . . . . . .  3
     1.2.  PCEP requirements for GMPLS  . . . . . . . . . . . . . . .  3
     1.3.  PCEP existing objects related to GMPLS . . . . . . . . . .  4
     1.4.  Requirements Language  . . . . . . . . . . . . . . . . . .  5
   2.  PCEP objects and extensions  . . . . . . . . . . . . . . . . .  6
     2.1.  RP object extension  . . . . . . . . . . . . . . . . . . .  7
     2.2.  Traffic parameters encoding, GENERALIZED-BANDWIDTH . . . .  8
     2.3.  Traffic parameters encoding, GENERALIZED-LOAD-BALANCING  . 10
     2.4.  END-POINTS Object extensions . . . . . . . . . . . . . . . 13
       2.4.1.  Generalized Endpoint Object Type . . . . . . . . . . . 14
       2.4.2.  END-POINTS TLVs extensions . . . . . . . . . . . . . . 17
     2.5.  IRO TLV extension  . . . . . . . . . . . . . . . . . . . . 20
     2.6.  XRO TLV extension  . . . . . . . . . . . . . . . . . . . . 21
     2.7.  LSPA extensions  . . . . . . . . . . . . . . . . . . . . . 22
     2.8.  NO-PATH Object Extension . . . . . . . . . . . . . . . . . 23
       2.8.1.  Extensions to NO-PATH-VECTOR TLV . . . . . . . . . . . 23
   3.  Additional Error Type and Error Values Defined . . . . . . . . 25
   4.  Manageability Considerations . . . . . . . . . . . . . . . . . 27
   5.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 28
     5.1.  PCEP Objects . . . . . . . . . . . . . . . . . . . . . . . 28
     5.2.  END-POINTS object, Object Type Generalized Endpoint  . . . 29
     5.3.  New PCEP TLVs  . . . . . . . . . . . . . . . . . . . . . . 29
     5.4.  RP Object Flag Field . . . . . . . . . . . . . . . . . . . 30
     5.5.  New PCEP Error Codes . . . . . . . . . . . . . . . . . . . 31
     5.6.  New  NO-PATH-VECTOR TLV Fields . . . . . . . . . . . . . . 32
     5.7.  New Subobject for the Include Route Object . . . . . . . . 32
     5.8.  New Subobject for the Exclude Route Object . . . . . . . . 33
   6.  Security Considerations  . . . . . . . . . . . . . . . . . . . 34
   7.  Contributing Authors . . . . . . . . . . . . . . . . . . . . . 35
   8.  Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . 37
   9.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 38
     9.1.  Normative References . . . . . . . . . . . . . . . . . . . 38
     9.2.  Informative References . . . . . . . . . . . . . . . . . . 39
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 41

Margaria, et al.        Expires September 9, 2012               [Page 2]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

1.  Introduction

   PCEP RFCs [RFC5440], [RFC5521], [RFC5541], [RFC5520] are focused on
   path computation requests in MPLS networks.  [RFC4655] defines the
   PCE framework also for GMPLS networks.  This document complements
   these RFCs by providing some consideration of GMPLS applications and
   routing requests, for example for OTN and WSON networks.

   The requirements on PCE extensions to support those characteristics
   are described in [I-D.ietf-pce-gmpls-aps-req] and
   [I-D.ietf-pce-wson-routing-wavelength].

1.1.  Contributing Authors

   Elie Sfeir, Franz Rambach (Nokia Siemens Networks) Francisco Javier
   Jimenez Chico (Telefonica Investigacion y Desarrollo) Suresh BR,
   Young Lee, SenthilKumar S, Jun Sun (Huawei Technologies), Ramon
   Casellas (CTTC)

1.2.  PCEP requirements for GMPLS

   The document [I-D.ietf-pce-gmpls-aps-req] describe what are the set
   of PCEP PCEP requirements to support GMPLS TE-LSPs.  When requesting
   a path computation (PCReq) to PCE, the PCC should be able to indicate
   the following additional information:

      Which data flow is switched by the LSP: a combination of Switching
      capability (for instance L2SC or TDM), Switching Encoding (e.g.,
      Ethernet, SONET/SDH) and sometime Signal Type (in case of TDM/LSC
      switching capability)

      Data flow specific traffic parameter, which can vary a lot, for
      instance In SDH/SONET and G.709 OTN networks the Concatenation
      Type, Concatenation Number have influence on the switched data and
      on which link it can be supported

      Support for asymmetric bandwidth requests.

      Support for unnumbered interfaces: as defined in [RFC3477]

      Label information and technology specific label(s) such as
      wavelength label as defined in [RFC6205].  PCC should also be able
      to specify Label restriction similar to the one supported by RSVP.

      Ability to indicate the requested granularity for the path ERO:
      node, link, label.  This is to allow the use of the explicit label
      control of RSVP.

Margaria, et al.        Expires September 9, 2012               [Page 3]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

   We describe in this document a proposal to fulfill those
   requirements.

1.3.  PCEP existing objects related to GMPLS

   PCEP as of [RFC5440], [RFC5521] and [I-D.ietf-pce-inter-layer-ext],
   supports the following information (in the PCReq and PCRep) related
   to the described requirements.

   From [RFC5440]:

   o  numbered endpoints

   o  bandwidth (encoded as IEEE float)

   o  ERO

   o  LSP attributes (setup and holding priorities)

   o  Request attribute (include some LSP attributes)

   From [RFC5521],Extensions to PCEP for Route Exclusions, definition of
   a XRO object and a new semantic (F bit):

   o  This object also allows to exclude (strict or not) resources; XRO
      includes the diversity level (node, link, SRLG).  The requested
      diversity is expressed in the XRO

   o  This Object with the F bit set indicates that the existing route
      is failed and resources present in the RRO can be reused.

   From [I-D.ietf-pce-inter-layer-ext]:

   o  INTER-LAYER : indicates if inter-layer computation is allowed

   o  SWITCH-LAYER : indicates which layer(s) should be considered, can
      be used to represent the RSVP-TE generalized label request

   o  REQ-ADAP-CAP : indicates the adaptation capabilities requested,
      can also be used for the endpoints in case of mono-layer
      computation

   The shortcomings of the existing PCEP information are:

      The BANDWIDTH and LOAD-BALANCING objects do not describe the
      details of the traffic request (for example NVC, multiplier) in
      the context of GMPLS networks, for instance TDM or OTN networks.

Margaria, et al.        Expires September 9, 2012               [Page 4]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

      The END-POINTS object does not allow specifying an unnumbered
      interface, nor the labels on the interface.  Those parameters are
      of interest in case of switching constraints.

      The IRO/XRO objects do not allow to include/exclude labels

   Current attributes do not allow to express the requested link level
   protection and end-to-end protection attributes.

   The covered PCEP extensions are:

      New objects are introduced (GENERALIZED-BANDWIDTH and GENERALIZED-
      LOAD-BALANCING) for flexible bandwidth encoding,

      A new object type is introduced for the END-POINTS object
      (generalized-endpoint),

      A new TLV is added to the LSPA object.

      A new TLV type is allowed in IRO

      In order to indicate the mandatory routing granularity in the
      response, a new flag in the RP object is added.

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

Margaria, et al.        Expires September 9, 2012               [Page 5]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

2.  PCEP objects and extensions

   This section describes the required PCEP objects and extensions.  The
   PCReq and PCRep messages are defined in [RFC5440].  The format of the
   request and response messages with the proposed extensions
   (GENERALIZED-BANDWIDTH, GENERALIZED-LOAD-BALANCING, SUGGESTED-LABEL-
   SET and LABEL-SET) is as follows:

     <request>::= <RP>
                  <segment-computation>|<path-key-expansion>

     <segment-computation> ::=
       <END-POINTS>
       [<LSPA>]
       [<BANDWIDTH>]
       [<GENERALIZED-BANDWIDTH>...]
       [<metric-list>]
       [<OF>]
       [<RRO> [<BANDWIDTH>] [<GENERALIZED-BANDWIDTH>...]]
       [<IRO>]
       [<LOAD-BALANCING>]
       [<GENERALIZED-LOAD-BALANCING>...]
       [<XRO>]

     <path-key-expansion> ::= <PATH-KEY>

     <response>::=<RP>
       [<NO-PATH>]
       [<attribute-list>]
       [<path-list>]

     <path-list>::=<path>[<path-list>]
     <path>::= <ERO><attribute-list>
     <metric-list>::=<METRIC>[<metric-list>]

   Where:

      <attribute-list>::=[<LSPA>]
      [<BANDWIDTH>]
      [<GENERALIZED-BANDWIDTH>...]
      [<GENERALIZED-LOAD-BALANCING>...]
      [<metric-list>]
      [<IRO>]

   For point-to-multipoint(P2MP) computations, the proposed grammar is:

Margaria, et al.        Expires September 9, 2012               [Page 6]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

    <segment-computation> ::=
        <end-point-rro-pair-list>
        [<LSPA>]
        [<BANDWIDTH>]
        [<GENERALIZED-BANDWIDTH>...]
        [<metric-list>]
        [<IRO>]
        [<LOAD-BALANCING>]
        [<GENERALIZED-LOAD-BALANCING>...]
        [<XRO>]

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

     <RRO-List>::=<RRO>[<BANDWIDTH>]
     [< GENERALIZED-BANDWIDTH>...][<RRO-List>]

2.1.  RP object extension

   Explicit label control (ELC) is a procedure supported by RSVP-TE,
   where the outgoing label(s) is(are) encoded in the ERO.  In
   consequence, the PCE may be able to provide such label(s) directly in
   the path ERO.  The PCC, depending on policies or switching layer, may
   be required to use explicit label control or expect explicit link,
   thus it need to indicate in the PCReq which granularity it is
   expecting in the ERO.  This correspond to requirement 11 of
   [I-D.ietf-pce-gmpls-aps-req] The possible granularities can be node,
   link, label.  The granularities are inter-dependent, in the sense
   that link granularity imply the presence of node information in the
   ERO, similarly a label granularity imply that the ERO contain node,
   link and label information.

   A new 2-bit routing granularity (RG) flag is defined in the RP
   object.  The values are defined as follows

Margaria, et al.        Expires September 9, 2012               [Page 7]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

                               0 : node

                               1 : link

                               2 : label

                               3 : reserved

   When the RP object appears in a request within a PCReq message the
   flag indicates the requested route granularity.  The PCE MAY try to
   follow this granularity and MAY return a NO-PATH if the requested
   granularity cannot be provided.  The PCE MAY return more details on
   the route based on its policy.  The PCC can decide if the ERO is
   acceptable based on its content.

   If a PCE did use the requested routing granularity in a PCReq it MUST
   indicate the routing granularity in the PCRep.  The RG flag is
   backward-compatible with previous RFCs: the value sent by an
   implementation not supporting it will indicate a node granularity.
   This flag is optional for responses.  A new capability flag in the
   PCE-CAP-FLAGS from [RFC5088] and [RFC5089] may be added.

2.2.  Traffic parameters encoding, GENERALIZED-BANDWIDTH

   The PCEP BANDWIDTH does not describe the details of the signal (for
   example NVC, multiplier), hence the bandwidth information should be
   extended to use the RSVP Tspec object encoding.  The PCEP BANDWIDTH
   object defines two types: 1 and 2.  C-Type 2 is representing the
   existing bandwidth in case of re-optimization.

   The following possibilities cannot be represented in the BANDWIDTH
   object:

   o  Asymmetric bandwidth (different bandwidth in forward and reverse
      direction), as described in [RFC6387]

   o  GMPLS (SDH/SONET, G.709, ATM, MEF etc) parameters are not
      supported.

   This correspond to requirement 3,4,5 and 10 of
   [I-D.ietf-pce-gmpls-aps-req].

   According to [RFC5440] the BANDWIDTH object has no TLV and has a
   fixed size of 4 bytes.  This definition does not allow extending it
   with the required information.  To express this information, a new
   object named GENERALIZED-BANDWIDTH having the following format is
   defined:

Margaria, et al.        Expires September 9, 2012               [Page 8]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

       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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   Traffic Spec Length         | Reserved                  |R|O|
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      ~                       Traffic Spec                            ~
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      ~                       Optional TLVs                           ~
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   The GENERALIZED-BANDWIDTH has a variable length.  The Traffic spec
   length field indicates the length of the Traffic spec field.  The
   bits R and O have the following meaning:

      O bit : when set the value refers to the previous bandwidth in
      case of re-optimization

      R bit : when set the value refers to the bandwidth of the reverse
      direction

   The Object type determines which type of bandwidth is represented by
   the object.  The following object types are defined:

   1.  Intserv

   2.  SONET/SDH

   3.  G.709

   4.  Ethernet

   The encoding of the field Traffic Spec is the same as in RSVP-TE, it
   can be found in the following references.

Margaria, et al.        Expires September 9, 2012               [Page 9]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

                      Object Type Name      Reference

                      0           Reserved

                      1           Reserved

                      2           Intserv   [RFC2210]

                      3           Re served

                      4           SONET/SDH [RFC4606]

                      5           G.709     [RFC4328]

                      6           Ethernet  [RFC6003]

                        Traffic Spec field encoding

   The GENERALIZED-BANDWIDTH MAY appear more than once in a PCReq
   message.  If more than one GENERALIZED-BANDWIDTH have the same Object
   Type, Reserved, R and O values, only the first one is processed, the
   others are ignored.

   A PCE MAY ignore GENERALIZED-BANDWIDTH objects, a PCC that requires a
   GENERALIZED-BANDWIDTH to be used can set the P (Processing) bit in
   the object header.

   When a PCC needs to get a bi-directional path with asymmetric
   bandwidth, it SHOULD specify the different bandwidth in forward and
   reverse directions through two separate GENERALIZED-BANDWIDTH
   objects.  If the PCC set the P bit on both object the PCE MUST
   compute a path that satisfies the asymmetric bandwidth constraint and
   return the path to PCC if the path computation is successful.  If the
   P bit on the reverse GENERALIZED-BANDWIDTH object the PCE MAY ignore
   this constraint.

   A PCE MAY include the GENERALIZED-BANDWIDTH objects in the response
   to indicate the GENERALIZED-BANDWIDTH of the path

   Optional TLVs may be included within the object body to specify more
   specific bandwidth requirements.  The specification of such TLVs is
   outside the scope of this document.

2.3.  Traffic parameters encoding, GENERALIZED-LOAD-BALANCING

   The LOAD-BALANCING object is used to request a set of maximum Max-LSP
   TE-LSP having in total the bandwidth specified in BANDWIDTH, each TE-
   LSP having a minimum of min-bandwidth bandwidth.  The LOAD-BALANCING

Margaria, et al.        Expires September 9, 2012              [Page 10]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

   follows the bandwidth encoding of the BANDWIDTH object, it does not
   describe enough details for the traffic specification expected by
   GMPLS.  A PCC should be allowed to request a set of TE-LSP also in
   case of GMPLS traffic specification.

   According to [RFC5440] the LOAD-BALANCING object has no TLV and has a
   fixed size of 8 bytes.  This definition does not allows extending it
   with the required information.  To express this information, a new
   Object named GENERALIZED-LOAD-BALANCING is defined.

   The GENERALIZED-LOAD-BALANCING object, as the LOAD-BALANCING object,
   allows the PCC to request a set of TE-LSP having in total the
   GENERALIZED-BANDWIDTH traffic specification with potentially Max-Lsp,
   each TE-LSP having a minimum of Min Traffic spec.  The GENERALIZED-
   LOAD-BALANCING is optional.

   GENERALIZED-LOAD-BALANCING Object-Class is to be assigned by IANA.
   The GENERALIZED-LOAD-BALANCING Object type determines which type of
   minimum bandwidth is represented by the object.  The following object
   types are defined:

   1.  Intserv

   2.  SONET/SDH

   3.  G.709

   4.  Ethernet

   The GENERALIZED-LOAD-BALANCING has a variable length.

   The format of the GENERALIZED-LOAD-BALANCING object body 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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |    Traffic spec length        |     Flags   |R|     Max-LSP   |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |        Min  Traffic Spec                                      |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      ~                Optional   TLVs                                ~
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Traffic spec length (16 bits): the total length of the min traffic
   specification.  It should be noted that the RSVP traffic

Margaria, et al.        Expires September 9, 2012              [Page 11]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

   specification may also include TLV different than the PCEP TLVs.

   Flags (8 bits): The undefined Flags field MUST be set to zero on
   transmission and MUST be ignored on receipt.  The following flag is
   defined:

      R Flag : (1 bit) set when the value refer to the bandwidth of the
      reverse direction

   Max-LSP (8 bits): maximum number of TE LSPs in the set.

   Min-Traffic spec (variable): Specifies the minimum traffic spec of
   each element of the set of TE LSPs.

   The encoding of the field Traffic Spec is the same as in RSVP-TE, it
   can be found in the following references.

                      Object Type Name      Reference

                      2           Intserv   [RFC2210]

                      4           SONET/SDH [RFC4606]

                      5           G.709     [RFC4328]

                      6           Ethernet  [RFC6003]

                        Traffic Spec field encoding

   The GENERALIZED-LOAD-BALANCING MAY appear more than once in a PCReq
   message.  If more than one GENERALIZED-LOAD-BALANCING have the same
   Object Type, and R Flag, only the first one is processed, the others
   are ignored.

   a PCE MAY ignore GENERALIZED-LOAD-BALANCING objects.  A PCC that
   requires a GENERALIZED-LOAD-BALANCING to be used can set the P
   (Processing) bit in the object header.

   When a PCC needs to get a bi-directional path with asymmetric
   bandwidth, it SHOULD specify the different bandwidth in forward and
   reverse directions through two separate GENERALIZED-LOAD-BALANCING
   objects with different R Flag.  If the PCC set the P bit on both
   object the PCE MUST compute a path that satisfies the asymmetric
   bandwidth constraint and return the path to PCC if the path
   computation is successful.  If the P bit on the reverse GENERALIZED-
   LOAD-BALANCING object the PCE MAY ignore this constraint.

   Optional TLVs may be included within the object body to specify more

Margaria, et al.        Expires September 9, 2012              [Page 12]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

   specific bandwidth requirements.  The specification of such TLVs is
   outside the scope of this document.

   The GENERALIZED-LOAD-BALANCING object has the same semantic as the
   LOAD-BALANCING object; If a PCC requests the computation of a set of
   TE LSPs so that the total of their generalized bandwidth is X, the
   maximum number of TE LSPs is N, and each TE LSP must at least have a
   bandwidth of B, it inserts a GENERALIZED-BANDWIDTH object specifying
   X as the required bandwidth and a GENERALIZED-LOAD-BALANCING object
   with the Max-LSP and Min-traffic spec fields set to N and B,
   respectively.

   For example a request for one co-signaled n x VC-4 TE-LSP will not
   use the GENERALIZED-LOAD-BALANCING.  In case the V4 components can
   use different paths, the GENERALIZED-BANDWIDTH will contain a traffic
   specification indicating the complete n x VC4 traffic specification
   and the GENERALIZED-LOAD-BALANCING the minimum co-signaled VC4.  For
   a SDH network, a request to have a TE-LSP group with 10 VC4
   container, each path using at minimum 2VC4 container, can be
   represented with a GENERALIZED-BANDWIDTH object with OT=4, the
   content of the Traffic specification is ST=6,RCC=0,NCC=0,NVC=10,MT=1.
   The GENERALIZED-LOAD-BALANCING, OT=4,R=0,Max-LSP=5, min Traffic spec
   is (ST=6,RCC=0,NCC=0,NVC=2,MT=1).  The PCE can respond with a
   response with maximum 5 path, each of then having a GENERALIZED-
   BANDWIDTH OT=4,R=0, and traffic spec matching the minimum traffic
   spec from the GENERALIZED-LOAD-BALANCING object of the corresponding
   request.

2.4.  END-POINTS Object extensions

   The END-POINTS object is used in a PCReq message to specify the
   source and destination of the path for which a path computation is
   requested.  From [RFC3471] the source IP address and the destination
   IP address are used to identify those.  A new Object Type is defined
   to address the following possibilities:

   o  Different endpoint types.

   o  Label restrictions on the endpoint.

   o  Specification of unnumbered endpoints type as seen in GMPLS
      networks.

   The Object encoding is described in the following sections.

Margaria, et al.        Expires September 9, 2012              [Page 13]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

2.4.1.  Generalized Endpoint Object Type

   In GMPLS context the endpoints can:

   o  Be unnumbered

   o  Have label(s) associated to them

   o  May have different switching capabilities

   The IPv4 and IPv6 endpoints are used to represent the source and
   destination IP addresses.  The scope of the IP address (Node or Link)
   is not explicitly stated.  It should also be possible to request a
   Path between a numbered link and an unnumbered link, or a P2MP path
   between different type of endpoints.

   Since the PCEP END-POINTS object only support endpoints of the same
   type a new C-Type is proposed that support different endpoint types,
   including unnumbered.  This new C-Type also supports the
   specification of constraints on the endpoint label to be use.  The
   PCE might know the interface restrictions but this is not a
   requirement.  On the path calculation request only the Tspec and
   switch layer need to be coherent, the endpoint labels could be
   different (supporting a different Tspec).  Hence the label
   restrictions include a Generalized label request in order to
   interpret the labels.  This correspond to requirement 6 and 9 of
   [I-D.ietf-pce-gmpls-aps-req].

   The proposed object format consists of a body and a list of TLVs,
   which give the details of the endpoints and are described in
   Section 2.4.2.  For each endpoint type, a different grammar is
   defined.  The TLVs defined to describe an endpoint are:

   1.   IPv4 address.

   2.   IPv6 address.

   3.   Unnumbered endpoint.

   4.   Label request.

   5.   Label.

   6.   Upstream label.

   7.   Old Label.

Margaria, et al.        Expires September 9, 2012              [Page 14]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

   8.   Old Upstream label.

   9.   Label set.

   10.  Suggested label set.

   The labels TLV are used to restrict the label allocation in the PCE.
   They follow the set of restrictions provided by signaling with
   explicit value (label and upstream label), mandatory range
   restrictions (Label set) and optional range restriction (suggested
   label set).  Single suggested value is using the suggested label set.
   The Old Label and Old Upstream Labels are used to represent existing
   label(s) when requesting a re-optimization.  The Old Label and Old
   upstream Label MAY be present only when the Reoptimization flag (R)
   of the RP object is set.  The label range restrictions are valid in
   GMPLS networks, either by PCC policy or depending on the switching
   technology used, for instance on given Ethernet or ODU equipment
   having limited hardware capabilities restricting the label range.
   Label set restriction also applies to WSON networks where the optical
   sender and receivers are limited in their frequency tunability
   ranges, restricting then in GMPLS the possible label ranges on the
   interface.  The END-POINTS Object with Generalized Endpoint object
   type is encoded as follow:

       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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |      Reserved                                 | endpoint type |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      ~                           TLVs                                ~
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Reserved bits should be set to 0 when a message is sent and ignored
   when the message is received

   the endpoint type is defined as follow:

Margaria, et al.        Expires September 9, 2012              [Page 15]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

   Value   Type                Meaning

   0       Point-to-Point

   1       Point-to-Multipoint New leaves to add

   2                           Old leaves to remove

   3                           Old leaves whose path can be
                               modified/reoptimized

   4                           Old leaves whose path must be left
                               unchanged

   5-244   Reserved

   245-255 Experimental range

   The endpoint type is used to cover both point-to-point and different
   point-to-multipoint endpoint semantic.  Endpoint type 0 MAY be
   accepted by the PCE, other endpoint type MAY be supported if the PCE
   implementation supports P2MP path calculation.  A PCE not supporting
   a given endpoint type MUST respond with a PCErr with error code "Path
   computation failure", error type "Unsupported endpoint type in END-
   POINTS Generalized Endpoint object type".  The TLVs present in the
   object body MUST follow the following grammar:

     <generalized-endpoint-tlvs>::=
       <p2p-endpoints> | <p2mp-endpoints>

     <p2p-endpoints> ::=
       <source-endpoint>
       <destination-endpoint>

     <source-endpoint> ::=
       <endpoint>
       [<endpoint-restriction-list>]

     <destination-endpoint> ::=
       <endpoint>
       [<endpoint-restriction-list>]

     <p2mp-endpoints> ::=
       <endpoint> [<endpoint-restriction-list>]
       [<endpoint> [<endpoint-restriction-list>]]...

   For endpoint type Point-to-Multipoint several endpoint objects may be

Margaria, et al.        Expires September 9, 2012              [Page 16]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

   present in the message and represent a leave, exact meaning depend on
   the endpoint type defined of the object.

   An endpoint is defined as follows:

    <endpoint>::=<IPV4-ADDRESS>|<IPV6-ADDRESS>|<UNNUMBERED-ENDPOINT>
    <endpoint-restriction-list> ::=               <endpoint-restriction>
                 [<endpoint-restriction-list>]

    <endpoint-restriction> ::=
                     <LABEL-REQUEST><label-restriction-list>

    <label-restriction-list> ::= <label-restriction>
                                 [<label-restriction-list>]
    <label-restriction> ::= <LABEL>|<UPSTREAM-LABEL>|
                            <OLD-LABEL>|<OLD-UPSTREAM-LABEL>|
                             <LABEL-SET>|
                             <SUGGESTED-LABEL-SET>

   The different TLVs are described in the following sections.  A PCE
   MAY support IPV4-ADDRESS,IPV6-ADDRESS or UNNUMBERED-ENDPOINT TLV.  A
   PCE not supporting one of those TLV in a PCReq MUST respond with a
   PCRep with NO-PATH with the bit "Unknown destination" or "Unknown
   source" in the NO-PATH-VECTOR TLV, the PCRep MUST include the
   ENDPOINT object in the response with only the TLV it did not
   understood.

   A PCE MAY support LABEL-REQUEST, LABEL, UPSTREAM-LABEL, OLD-LABEL,
   OLD-UPSTREAM-LABEL, LABEL-SET or SUGGESTED-LABEL-SET TLV.  If the TLV
   OLD-LABEL or OLD-UPSTREAM-LABEL are present the R bit of the RP
   object MUST be set or a PCErr message with error type="Reception of
   an invalid object" error value="OLD-LABEL or OLD-UPSTREAM-LABEL TLV
   present without R bit set in RP" For non supported TLV in the END-
   POINTS a PCE MUST respond with a PCErr message with error type="Path
   computation failure" error value="Unsupported TLV present in END-
   POINTS Generalized Endpoint object type" and the message MUST include
   the ENDPOINT object in the response with only the endpoint and
   endpoint restriction TLV it did not understood.  A PCE not supporting
   being able to fulfill the label restriction MUST respond with a PCRep
   with NO-PATH with the bit "No endpoint label resource" or "No
   endpoint label resource in range" in the NO-PATH-VECTOR TLV, the
   PCRep MUST include the ENDPOINT object in the response with only the
   TLV where it could not met the constraint.

2.4.2.  END-POINTS TLVs extensions

   All endpoint TLVs have the standard PCEP TLV header as defined in
   [RFC5440] section 7.1

Margaria, et al.        Expires September 9, 2012              [Page 17]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

2.4.2.1.  IPV4-ADDRESS

   This TLV represent a numbered endpoint using IPv4 numbering, the
   format of the IPv4-ADDRESS TLV value (TLV-Type=TBA) 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                          IPv4 address                         |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   This TLV MAY be ignored, in which case a PCRep with NO-PATH should be
   responded, as described in Section 2.4.1.

2.4.2.2.  IPV6-ADDRESS TLV

   This TLV represent a numbered endpoint using IPV6 numbering, the
   format of the IPv6-ADDRESS TLV value (TLV-Type=TBA) 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              IPv6 address (16 bytes)                          |
     |                                                               |
     |                                                               |
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   This TLV MAY be ignored, in which case a PCRep with NO-PATH should be
   responded, as described in Section 2.4.1.

2.4.2.3.  UNNUMBERED-ENDPOINT TLV

   This TLV represent an unnumbered interface.  This TLV has the same
   semantic as in [RFC3477] The TLV value is encoded as follow (TLV-
   Type=TBA)

      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                          LSR's Router ID                      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                       Interface ID (32 bits)                  |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   This TLV MAY be ignored, in which case a PCRep with NO-PATH should be
   responded, as described in Section 2.4.1.

Margaria, et al.        Expires September 9, 2012              [Page 18]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

2.4.2.4.  LABEL-REQUEST TLV

   The LABEL-REQUEST TLV indicates the switching capability and encoding
   type of the label restriction list.  Its format is the same as
   described in [RFC3471] Section 3.1 Generalized label request.  The
   LABEL-REQUEST TLV use TLV-Type=TBA.  The fields are encoded as in the
   RSVP-TE.  The Encoding Type indicates the encoding type, e.g., SONET/
   SDH/GigE etc., that will be used with the data associated with the
   LSP.  The Switching type indicates the type of switching that is
   being requested on the link.  G-PID identifies the payload of the TE-
   LSP.  This TLV and the following one are introduced to satisfy
   requirement 13 for the endpoint.

   This TLV MAY be ignored, in which case a PCRep with NO-PATH should be
   responded, as described in Section 2.4.1.

2.4.2.5.  Labels TLV

   Label or label range restrictions may be specified for the TE-LSP
   endpoints.  Those are encoded in the TLVs.  The label value need to
   be interpreted with a description on the Encoding and switching type.
   The REQ-ADAP-CAP object from [I-D.ietf-pce-inter-layer-ext] can be
   used in case of mono-layer request, however in case of multilayer it
   is possible to have in the future more than one object, so it is
   better to have a dedicated TLV for the label and label request (the
   scope is then more clear).  Those TLV MAY be ignored, in which case a
   PCRep with NO-PATH should be responded, as described in
   Section 2.4.1.  TLVs are encoded as follow (following [RFC5440]) :

   o  LABEL TLV, Type=TBA.  The TLV Length is variable, the value is the
      same as [RFC3471] Section 3.2 Generalized label.  This represent
      the downstream label

   o  UPSTREAM-LABEL TLV, Type=TBA, The TLV Length is variable, the
      value is the same as [RFC3471] Section 3.2 Generalized label.
      This represent the upstream label

   o  OLD-LABEL TLV, Type=TBA.  The TLV Length is variable, the value is
      the same as [RFC3471] Section 3.2 Generalized label.  This
      represent the old downstream label in case of re-optimization.
      This Label MAY be reused.  The R bit of the RP object MUST be set

   o  OLD-UPSTREAM-LABEL TLV, Type=TBA, The TLV Length is variable, the
      value is the same as [RFC3471] Section 3.2 Generalized label.
      This represent the old upstream label in case of re-optimization.
      This Label MAY be reused.  The R bit of the RP object MUST be set

Margaria, et al.        Expires September 9, 2012              [Page 19]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

   o  LABEL-SET TLV, Type=TBA.  The TLV Length is variable, Encoding
      follow [RFC3471] Section 3.5 "Label set" with the addition of a U
      bit : the U bit is set for upstream direction in case of
      bidirectional LSP.

      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |    Action     |    Reserved     |U|        Label Type         |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                          Subchannel 1                         |
     |                              ...                              |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     :                               :                               :
     :                               :                               :
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                          Subchannel N                         |
     |                              ...                              |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   o  SUGGESTED-LABEL-SET TLV Set, Type=TBA.  The TLV length is
      variable, Encoding is as LABEL-SET TLV.

   A LABEL TLV represent the label used on the unnumbered interface, bit
   U is used to indicate which exact direction is considered.  The label
   type indicates which type of label is carried.  A LABEL-SET TLV
   represents a set of possible labels that can be used on the
   unnumbered interface. the label allocated on the first link SHOULD be
   within the label set range.  The action parameter in the Label set
   indicates the type of list provided.  Those parameters are described
   by [RFC3471] section 3.5.1 A SUGGESTED-LABEL-SET TLV has the same
   encoding as the LABEL-SET TLV, it indicates to the PCE a set of
   preferred (ordered) set of labels to be used. the PCE MAY use those
   labels for label allocation.

   The U bit has the following meaning:

   U: Upstream direction: set when the label or label set is in the
      reverse direction

2.5.  IRO TLV extension

   The IRO as defined in [RFC5440] is used to include specific objects
   in the path.  RSVP allows to include label definition, in order to
   fulfill requirement 13 the IRO should support the new TLV Type as
   defined in [RFC3473]:

Margaria, et al.        Expires September 9, 2012              [Page 20]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

                              Type Sub-object

                              3    LABEL

   The L bit of such sub-object has no meaning within an IRO.

   The Label subobject MUST follow a subobject identifying a link ,
   currently an IP address subobject (Type 1 or 2) or an interface id
   (type 4) subobject.  The procedure associated with this subobject is
   as follow

   If the PCE allocate labels the PCE MUST allocate one label of within
   the set of label values for the given link.  If the PCE does not
   assign labels an error

2.6.  XRO TLV extension

   The XRO as defined in [RFC5521] is used to exclude specific objects
   in the path.  RSVP allows to exclude labels ([RFC6001], in order to
   fulfill requirement 13 the XRO should support a new TLV for the label
   exclusion.

   The encoding of the XRO Label subobject is identical follow the
   encoding of the Label ERO subobject defined in [RFC3473] and XRO TLVs
   defined in [RFC5521].  The XRO Label subobject is defined as follows:

   XRO Subobject Type 3: Label Subobject.

   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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |X|  Type=3     |    Length     |U|   Reserved  |   C-Type      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                             Label                             |
   |                              ...                              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      X (1 bit)

         See [RFC5521].

      Type (7 bits)

Margaria, et al.        Expires September 9, 2012              [Page 21]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

         The Type of the XRO Label subobject is 3.

      Length (8 bits)

         See [RFC5521],The total length of the subobject in bytes
         (including the Type and Length fields).  The Length is always
         divisible by 4.

      U (1 bit)

         See [RFC3471].

      C-Type (8 bits)

         The C-Type of the included Label Object.  Copied from the Label
         Object (see [RFC3471]).

      Label

         See [RFC3471].

   XRO Label subobjects MUST follow the numbered or unnumbered interface
   subobjects to which they refer.  Several XRO Labels subobject MAY be
   present.

                              Type Sub-object

                              3    LABEL

   The L bit of such sub-object has no meaning within an XRO.

2.7.  LSPA extensions

   The LSPA carries the LSP attributes.  In the end-to-end protection
   context this also includes the protection state information.  This
   object is introduced to fulfill requirement 7 and is used as a policy
   input for route and label selection.  The LSPA object can be extended
   by a protection TLV type: Type TBA: PROTECTION-ATTRIBUTE

Margaria, et al.        Expires September 9, 2012              [Page 22]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

      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                       |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |S|P|N|O|  Reserved | LSP Flags |     Reserved      | Link Flags|
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |I|R|   Reserved    | Seg.Flags |           Reserved            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   The content is as defined in [RFC4872], [RFC4873].

   LSP Flags can be considered for routing policy based on the
   protection type.  The other attributes are only meaningful for a
   s_ateful PCE.

   This TLV is optional and MAY be ignored by the PCE, in which case
   MUST NOT include the TLV in the LSPA, if present, of the PCRep.  When
   the TLV is used by the PCE, a LSPA object and the PROTECTION-
   ATTRIBUTE TLV MUST be included in the PCRep.  Fields that were not
   considered MUST be set to 0.

2.8.  NO-PATH Object Extension

   The NO-PATH object is used in PCRep messages in response to an
   unsuccessful path computation request (the PCE could not find a path
   satisfying the set of constraints).  In this scenario, PCE MUST
   include a NO-PATH object in the PCRep message.  The NO-PATH object
   may carries the NO-PATH-VECTOR TLV that specifies more information on
   the reasons that led to a negative reply.  In case of GMPLS networks
   there could be some more additional constraints that led to the
   failure like protection mismatch, lack of resources, and so on.  Few
   new flags have been introduced in the 32-bit flag field of the NO-
   PATH-VECTOR TLV and no modifications have been made in the NO-PATH
   object.

2.8.1.  Extensions to NO-PATH-VECTOR TLV

   The modified NO-PATH-VECTOR TLV carrying the additional information
   is as follows:

      Bit number TBA - Protection Mismatch (1-bit).  Specifies the
      mismatch of the protection type in the PROTECTION-ATTRIBUTE TLV in
      the request.

      Bit number TBA - No Resource (1-bit).  Specifies that the
      resources are not currently sufficient to provide the path.

Margaria, et al.        Expires September 9, 2012              [Page 23]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

      Bit number TBA - Granularity not supported (1-bit).  Specifies
      that the PCE is not able to provide a route with the requested
      granularity.

      Bit number TBA - No endpoint label resource (1-bit).  Specifies
      that the PCE is not able to provide a route because of the
      endpoint label restriction.

      Bit number TBA - No endpoint label resource in range (1-bit).
      Specifies that the PCE is not able to provide a route because of
      the endpoint label set restriction.

Margaria, et al.        Expires September 9, 2012              [Page 24]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

3.  Additional Error Type and Error Values Defined

   A PCEP-ERROR object is used to report a PCEP error and is
   characterized by an Error-Type that specifies the type of error while
   Error-value that provides additional information about the error
   type.  An additional error type and few error values are defined to
   represent some of the errors related to the newly identified objects
   related to SDH networks.  For each PCEP error, an Error-Type and an
   Error-value are defined.  Error-Type 1 to 10 are already defined in
   [RFC5440].  Additional Error- values are defined for Error-Type 10
   and A new Error-Type is introduced (value TBA).

   Error-Type Error-value

       10     Reception of an
              invalid object

              Error-value=TBA:  Bad Generalized Bandwidth Object value.

              Error-value=TBA:  Unsupported LSP Protection Type in
                                PROTECTION-ATTRIBUTE TLV.

              Error-value=TBA:  Unsupported LSP Protection Flags in
                                PROTECTION-ATTRIBUTE TLV.

              Error-value=TBA:  Unsupported Secondary LSP Protection
                                Flags in PROTECTION-ATTRIBUTE TLV.

              Error-value=TBA:  Unsupported Link Protection Type in
                                PROTECTION-ATTRIBUTE TLV.

              Error-value=TBA:  Unsupported Link Protection Type in
                                PROTECTION-ATTRIBUTE TLV.

              Error-value=TBA:  OLD-LABEL or OLD-UPSTREAM-LABEL TLV
                                present without R bit set in RP.

       TBA    Path computation
              failure

              Error-value=TBA:  Unacceptable request message.

              Error-value=TBA:  Generalized bandwidth object not
                                supported.

              Error-value=TBA:  Label Set constraint could not be met.

              Error-value=TBA:  Label constraint could not be met.

Margaria, et al.        Expires September 9, 2012              [Page 25]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

              Error-value=TBA:  Unsupported endpoint type in END-POINTS
                                Generalized Endpoint object type

              Error-value=TBA:  Unsupported TLV present in END-POINTS
                                Generalized Endpoint object type

              Error-value=TBA:  Unsupported granularity in the RP object
                                flags

Margaria, et al.        Expires September 9, 2012              [Page 26]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

4.  Manageability Considerations

   Liveness Detection and Monitoring This document makes no change to
   the basic operation of PCEP and so there are no changes to the
   requirements for liveness detection and monitoring set out in
   [RFC4657] and [RFC5440].

Margaria, et al.        Expires September 9, 2012              [Page 27]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

5.  IANA Considerations

   IANA assigns values to the PCEP protocol objects and TLVs.  IANA is
   requested to make some allocations for the newly defined objects and
   TLVs introduced in this document.  Also, IANA is requested to manage
   the space of flags that are newly added in the TLVs.

5.1.  PCEP Objects

   As described in Section 2.2 and Section 2.3new Objects are defined
   IANA is requested to make the following Object-Type allocations from
   the "PCEP Objects" sub-registry.

             Object Class to be assigned

             Name         GENERALIZED-BANDWIDTH

             Object-Type  0 to 6

             Reference    This document (section Section 2.2)

             Object Class to be assigned

             Name         GENERALIZED-LOAD-BALANCING

             Object-Type  0 to 6

             Reference    This document (section Section 2.3)

   As described in Section 2.4.1 a new Object type is defined IANA is
   requested to make the following Object-Type allocations from the
   "PCEP Objects" sub-registry.  The values here are suggested for use
   by IANA.

             Object Class 4

             Name         END-POINTS

             Object-Type  5 : Generalized Endpoint

                          6-15 : unassigned

             Reference    This document (section Section 2.2)

Margaria, et al.        Expires September 9, 2012              [Page 28]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

5.2.  END-POINTS object, Object Type Generalized Endpoint

   IANA is requested to create a registry to manage the endpoint type
   field of the END-POINTS object, Object Type Generalized Endpoint and
   manage the code space.

   New endpoint type in the Reserved range may be allocated by an IETF
   consensus action.  Each endpoint type should be tracked with the
   following qualities:

   o  endpoint type

   o  Description

   o  Defining RFC

   New endpoint type in the Experimental range are for experimental use;
   these will not be registered with IANA and MUST NOT be mentioned by
   RFCs.

   The following values have been defined by this document.
   (Section 2.4.1, Table 4):

   Value   Type                Meaning

   0       Point-to-Point

   1       Point-to-Multipoint New leaves to add

   2                           Old leaves to remove

   3                           Old leaves whose path can be
                               modified/reoptimized

   4                           Old leaves whose path must be left
                               unchanged

   5-244   Reserved

   245-255 Experimental range

5.3.  New PCEP TLVs

   IANA manages the PCEP TLV code point registry (see [RFC5440]).  This
   is maintained as the "PCEP TLV Type Indicators" sub-registry of the
   "Path Computation Element Protocol (PCEP) Numbers" registry.  This
   document defines new PCEP TLVs, to be carried in the END-POINTS
   object with Generalized Endpoint object Type.  IANA is requested to

Margaria, et al.        Expires September 9, 2012              [Page 29]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

   do the following allocation.  The values here are suggested for use
   by IANA.

   Value Meaning                       Reference

     7   IPv4 endpoint                 This document (section
                                       Section 2.4.2.1)

     8   IPv6 endpoint                 This document (section
                                       Section 2.4.2.2)

     9   Unnumbered endpoint           This document (section
                                       Section 2.4.2.3)

     10  Label request                 This document (section
                                       Section 2.4.2.4)

     11  Requested GMPLS Label         This document (section
                                       Section 2.4.2.5)

     12  Requested GMPLS Upstream      This document (section
         Label                         Section 2.4.2.5)

     13  Requested GMPLS Label Set     This document (section
                                       Section 2.4.2.5)

     14  Suggested GMPLS Label Set     This document (section
                                       Section 2.4.2.5)

     15  Old Requested GMPLS Label     This document (section
                                       Section 2.4.2.5)

     16  Old Requested GMPLS Upstream  This document (section
         Label                         Section 2.4.2.5)

     15  LSP Protection Information    This document (section
                                       Section 2.7)

5.4.  RP Object Flag Field

   As described in Section 2.1 new flag are defined in the RP Object
   Flag IANA is requested to make the following Object-Type allocations
   from the "RP Object Flag Field" sub-registry.  The values here are
   suggested for use by IANA.

Margaria, et al.        Expires September 9, 2012              [Page 30]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

          Bit    Description              Reference

       bit 17-16 routing granularity (RG) This document, Section 2.1

5.5.  New PCEP Error Codes

   As described in Section Section 3, new PCEP Error-Type and Error
   Values are defined.  IANA is requested to make the following
   allocation in the "PCEP-ERROR Object Error Types and Values"
   registry.  The values here are suggested for use by IANA.

   Error    name                                              Reference

   Type=10  Reception of an invalid object                    [RFC5440]

   Value=2: Bad Generalized Bandwidth Object value.           This
                                                              Document

   Value=3: Unsupported LSP Protection Type in                This
            PROTECTION-ATTRIBUTE TLV.                         Document

   Value=4: Unsupported LSP Protection Flags in               This
            PROTECTION-ATTRIBUTE TLV.                         Document

   Value=5: Unsupported Secondary LSP Protection Flags in     This
            PROTECTION-ATTRIBUTE TLV.                         Document

   Value=6: Unsupported Link Protection Type in               This
            PROTECTION-ATTRIBUTE TLV.                         Document

   Value=7: Unsupported Link Protection Type in               This
            PROTECTION-ATTRIBUTE TLV.                         Document

   Value=8: OLD-LABEL or OLD-UPSTREAM-LABEL TLV present       This
            without R bit set in RP.                          Document

   Type=14  Path computation failure                          This
                                                              Document

   Value=1: Unacceptable request message.                     This
                                                              Document

   Value=2: Generalized bandwidth object not supported.       This
                                                              Document

   Value=3: Label Set constraint could not be met.            This
                                                              Document

Margaria, et al.        Expires September 9, 2012              [Page 31]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

   Value=4: Label constraint could not be met.                This
                                                              Document

   Value=5: Unsupported endpoint type in END-POINTS           This
            Generalized Endpoint object type                  Document

   Value=6: Unsupported TLV present in END-POINTS Generalized This
            Endpoint object type                              Document

   Value=7: Unsupported granularity in the RP object flags    This
                                                              Document

5.6.  New  NO-PATH-VECTOR TLV Fields

   As described in Section Section 2.8.1, new NO-PATH-VECTOR TLV Flag
   Fields have been defined.  IANA is requested to do the following
   allocations in the "NO-PATH-VECTOR TLV Flag Field" sub-registry.  The
   values here are suggested for use by IANA.

      Bit number 23 - Protection Mismatch (1-bit).  Specifies the
      mismatch of the protection type of the PROTECTION-ATTRIBUTE TLV in
      the request.

      Bit number 22 - No Resource (1-bit).  Specifies that the resources
      are not currently sufficient to provide the path.

      Bit number 21 - Granularity not supported (1-bit).  Specifies that
      the PCE is not able to provide a route with the requested
      granularity.

      Bit number 20 - No endpoint label resource (1-bit).  Specifies
      that the PCE is not able to provide a route because of the
      endpoint label restriction.

      Bit number 19 - No endpoint label resource in range (1-bit).
      Specifies that the PCE is not able to provide a route because of
      the endpoint label set restriction.

5.7.  New Subobject for the Include Route Object

   The "PCEP Parameters" registry contains a subregistry "PCEP Objects"
   with an entry for the Include Route Object (IRO).

   IANA is requested to add a further subobject that can be carried in
   the IRO as follows:

Margaria, et al.        Expires September 9, 2012              [Page 32]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

                    Subobject type           Reference

                    3         Label suboject [RFC3473]

5.8.  New Subobject for the Exclude Route Object

   The "PCEP Parameters" registry contains a subregistry "PCEP Objects"
   with an entry for the XRO object (Exclude Route Object).

   IANA is requested to add a further subobject that can be carried in
   the XRO as follows:

                    Subobject type           Reference

                    3         Label suboject [RFC3473]

Margaria, et al.        Expires September 9, 2012              [Page 33]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

6.  Security Considerations

   None.

Margaria, et al.        Expires September 9, 2012              [Page 34]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

7.  Contributing Authors

   Nokia Siemens Networks:

      Elie Sfeir
      St Martin Strasse 76
      Munich, 81541
      Germany

      Phone: +49 89 5159 16159
      Email: elie.sfeir@nsn.com

      Franz Rambach
      St Martin Strasse 76
      Munich, 81541
      Germany

      Phone: +49 89 5159 31188
      Email: franz.rambach@nsn.com

   Francisco Javier Jimenez Chico
   Telefonica Investigacion y Desarrollo
   C/ Emilio Vargas 6
   Madrid, 28043
   Spain

   Phone: +34 91 3379037
   Email: fjjc@tid.es

   Huawei Technologies

      Suresh BR
      Shenzhen
      China
      Email: sureshbr@huawei.com

      Young Lee
      1700 Alma Drive, Suite 100
      Plano, TX 75075
      USA

      Phone: (972) 509-5599 (x2240)
      Email: ylee@huawei.com

      SenthilKumar S
      Shenzhen
      China
      Email: senthilkumars@huawei.com

Margaria, et al.        Expires September 9, 2012              [Page 35]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

      Jun Sun
      Shenzhen
      China
      Email: johnsun@huawei.com

   CTTC - Centre Tecnologic de Telecomunicacions de Catalunya

      Ramon Casellas
      PMT Ed B4 Av.  Carl Friedrich Gauss 7
      08860 Castelldefels (Barcelona)
      Spain
      Phone: (34) 936452916
      Email: ramon.casellas@cttc.es

Margaria, et al.        Expires September 9, 2012              [Page 36]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

8.  Acknowledgments

   The research of Ramon Casellas, Francisco Javier Jimenez Chico, Oscar
   Gonzalez de Dios, Cyril Margaria, and Franz Rambach leading to these
   results has received funding from the European Community's Seventh
   Framework Program FP7/2007-2013 under grant agreement no 247674.

   The authors would like to thank Lyndon Ong for his useful comments to
   the document.

Margaria, et al.        Expires September 9, 2012              [Page 37]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

9.  References

9.1.  Normative References

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

   [RFC2210]  Wroclawski, J., "The Use of RSVP with IETF Integrated
              Services", RFC 2210, September 1997.

   [RFC3471]  Berger, L., "Generalized Multi-Protocol Label Switching
              (GMPLS) Signaling Functional Description", RFC 3471,
              January 2003.

   [RFC3473]  Berger, L., "Generalized Multi-Protocol Label Switching
              (GMPLS) Signaling Resource ReserVation Protocol-Traffic
              Engineering (RSVP-TE) Extensions", RFC 3473, January 2003.

   [RFC3477]  Kompella, K. and Y. Rekhter, "Signalling Unnumbered Links
              in Resource ReSerVation Protocol - Traffic Engineering
              (RSVP-TE)", RFC 3477, January 2003.

   [RFC4202]  Kompella, K. and Y. Rekhter, "Routing Extensions in
              Support of Generalized Multi-Protocol Label Switching
              (GMPLS)", RFC 4202, October 2005.

   [RFC4203]  Kompella, K. and Y. Rekhter, "OSPF Extensions in Support
              of Generalized Multi-Protocol Label Switching (GMPLS)",
              RFC 4203, October 2005.

   [RFC4328]  Papadimitriou, D., "Generalized Multi-Protocol Label
              Switching (GMPLS) Signaling Extensions for G.709 Optical
              Transport Networks Control", RFC 4328, January 2006.

   [RFC4606]  Mannie, E. and D. Papadimitriou, "Generalized Multi-
              Protocol Label Switching (GMPLS) Extensions for
              Synchronous Optical Network (SONET) and Synchronous
              Digital Hierarchy (SDH) Control", RFC 4606, August 2006.

   [RFC4872]  Lang, J., Rekhter, Y., and D. Papadimitriou, "RSVP-TE
              Extensions in Support of End-to-End Generalized Multi-
              Protocol Label Switching (GMPLS) Recovery", RFC 4872,
              May 2007.

   [RFC4873]  Berger, L., Bryskin, I., Papadimitriou, D., and A. Farrel,
              "GMPLS Segment Recovery", RFC 4873, May 2007.

   [RFC5088]  Le Roux, JL., Vasseur, JP., Ikejiri, Y., and R. Zhang,

Margaria, et al.        Expires September 9, 2012              [Page 38]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

              "OSPF Protocol Extensions for Path Computation Element
              (PCE) Discovery", RFC 5088, January 2008.

   [RFC5089]  Le Roux, JL., Vasseur, JP., Ikejiri, Y., and R. Zhang,
              "IS-IS Protocol Extensions for Path Computation Element
              (PCE) Discovery", RFC 5089, January 2008.

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

   [RFC5520]  Bradford, R., Vasseur, JP., and A. Farrel, "Preserving
              Topology Confidentiality in Inter-Domain Path Computation
              Using a Path-Key-Based Mechanism", RFC 5520, April 2009.

   [RFC5521]  Oki, E., Takeda, T., and A. Farrel, "Extensions to the
              Path Computation Element Communication Protocol (PCEP) for
              Route Exclusions", RFC 5521, April 2009.

   [RFC5541]  Le Roux, JL., Vasseur, JP., and Y. Lee, "Encoding of
              Objective Functions in the Path Computation Element
              Communication Protocol (PCEP)", RFC 5541, June 2009.

   [RFC6001]  Papadimitriou, D., Vigoureux, M., Shiomoto, K., Brungard,
              D., and JL. Le Roux, "Generalized MPLS (GMPLS) Protocol
              Extensions for Multi-Layer and Multi-Region Networks (MLN/
              MRN)", RFC 6001, October 2010.

   [RFC6003]  Papadimitriou, D., "Ethernet Traffic Parameters",
              RFC 6003, October 2010.

   [RFC6205]  Otani, T. and D. Li, "Generalized Labels for Lambda-
              Switch-Capable (LSC) Label Switching Routers", RFC 6205,
              March 2011.

   [RFC6387]  Takacs, A., Berger, L., Caviglia, D., Fedyk, D., and J.
              Meuric, "GMPLS Asymmetric Bandwidth Bidirectional Label
              Switched Paths (LSPs)", RFC 6387, September 2011.

9.2.  Informative References

   [I-D.ceccarelli-ccamp-gmpls-ospf-g709]
              Ceccarelli, D., Caviglia, D., Zhang, F., Li, D., Belotti,
              S., Grandi, P., Rao, R., Pithewan, K., and J. Drake,
              "Traffic Engineering Extensions to OSPF for Generalized
              MPLS (GMPLS) Control of Evolving G.709 OTN Networks",
              draft-ceccarelli-ccamp-gmpls-ospf-g709-07 (work in
              progress), September 2011.

Margaria, et al.        Expires September 9, 2012              [Page 39]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

   [I-D.ietf-pce-gmpls-aps-req]
              Caviglia, D., Zhang, F., Ogaki, K., and T. Otani,
              "Document:", draft-ietf-pce-gmpls-aps-req-05 (work in
              progress), January 2012.

   [I-D.ietf-pce-inter-layer-ext]
              Oki, E., Takeda, T., Farrel, A., and F. Zhang, "Extensions
              to the Path Computation Element communication Protocol
              (PCEP) for Inter-Layer MPLS and GMPLS Traffic
              Engineering", draft-ietf-pce-inter-layer-ext-06 (work in
              progress), January 2012.

   [I-D.ietf-pce-wson-routing-wavelength]
              Bernstein, G., Martensson, J., Dios, O., Tsuritani, T.,
              Takeda, T., and Y. Lee, "PCEP Requirements for WSON
              Routing and Wavelength Assignment",
              draft-ietf-pce-wson-routing-wavelength-06 (work in
              progress), October 2011.

   [I-D.zhang-ccamp-gmpls-evolving-g709]
              Zhang, F., Zhang, G., Belotti, S., Ceccarelli, D., and K.
              Pithewan, "Generalized Multi-Protocol Label Switching
              (GMPLS) Signaling Extensions for the evolving G.709
              Optical Transport Networks Control",
              draft-zhang-ccamp-gmpls-evolving-g709-09 (work in
              progress), August 2011.

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

   [RFC4657]  Ash, J. and J. Le Roux, "Path Computation Element (PCE)
              Communication Protocol Generic Requirements", RFC 4657,
              September 2006.

Margaria, et al.        Expires September 9, 2012              [Page 40]
Internet-Draft             PCEP Ext for GMPLS                 March 2012

Authors' Addresses

   Cyril Margaria (editor)
   Nokia Siemens Networks
   St Martin Strasse 76
   Munich,   81541
   Germany

   Phone: +49 89 5159 16934
   Email: cyril.margaria@nsn.com

   Oscar Gonzalez de Dios (editor)
   Telefonica Investigacion y Desarrollo
   C/ Emilio Vargas 6
   Madrid,   28043
   Spain

   Phone: +34 91 3374013
   Email: ogondio@tid.es

   Fatai Zhang (editor)
   Huawei Technologies
   F3-5-B R&D Center, Huawei Base
   Bantian, Longgang District
   Shenzhen,   518129
   P.R.China

   Email: zhangfatai@huawei.com

Margaria, et al.        Expires September 9, 2012              [Page 41]