PCEP Extensions for Topology Filter
draft-xpbs-pce-topology-filter-01

Document Type Active Internet-Draft (individual)
Authors Quan Xiong  , Shaofu Peng  , Vishnu Beeram  , Tarek Saad  , Mike Koldychev 
Last updated 2021-10-08
Replaces draft-peng-pce-te-constraints
Stream (None)
Intended RFC status (None)
Formats pdf htmlized bibtex
Stream Stream state (No stream defined)
Consensus Boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date
Responsible AD (None)
Send notices to (None)
PCE                                                             Q. Xiong
Internet-Draft                                                   S. Peng
Intended status: Standards Track                         ZTE Corporation
Expires: 11 April 2022                                         V. Beeram
                                                                 T. Saad
                                                        Juniper Networks
                                                            M. Koldychev
                                                           Cisco Systems
                                                          8 October 2021

                  PCEP Extensions for Topology Filter
                   draft-xpbs-pce-topology-filter-01

Abstract

   This document proposes a set of extensions for PCEP to support the
   topology filter during path computation.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on 11 April 2022.

Copyright Notice

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

Xiong, et al.             Expires 11 April 2022                 [Page 1]
Internet-Draft     PCEP Extensions for Topology Filter      October 2021

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents (https://trustee.ietf.org/
   license-info) in effect on the date of publication of this document.
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.  Code Components
   extracted from this document must include Simplified BSD License text
   as described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Terminology . . . . . . . . . . . . . . . . . . . . . . .   3
     1.2.  Requirements Language . . . . . . . . . . . . . . . . . .   3
   2.  Topology Filter . . . . . . . . . . . . . . . . . . . . . . .   3
     2.1.  Topology Reference  . . . . . . . . . . . . . . . . . . .   3
     2.2.  Filters . . . . . . . . . . . . . . . . . . . . . . . . .   4
   3.  PCEP Extensions . . . . . . . . . . . . . . . . . . . . . . .   4
     3.1.  TOPOLOGY Object . . . . . . . . . . . . . . . . . . . . .   4
       3.1.1.  Source Protocol TLV . . . . . . . . . . . . . . . . .   5
       3.1.2.  Multi-topology TLV  . . . . . . . . . . . . . . . . .   5
       3.1.3.  Area TLV  . . . . . . . . . . . . . . . . . . . . . .   6
       3.1.4.  Algorithm TLV . . . . . . . . . . . . . . . . . . . .   7
     3.2.  IRO Object  . . . . . . . . . . . . . . . . . . . . . . .   7
       3.2.1.  Link ID . . . . . . . . . . . . . . . . . . . . . . .   7
       3.2.2.  Admin Group . . . . . . . . . . . . . . . . . . . . .   7
       3.2.3.  Source Protocol . . . . . . . . . . . . . . . . . . .   8
     3.3.  XRO Object  . . . . . . . . . . . . . . . . . . . . . . .   9
     3.4.  Procedures  . . . . . . . . . . . . . . . . . . . . . . .   9
   4.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   9
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   9
     5.1.  TOPOLOGY Object . . . . . . . . . . . . . . . . . . . . .   9
     5.2.  IRO and XRO Object  . . . . . . . . . . . . . . . . . . .  10
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .  10
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  10
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .  10
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  11

1.  Introduction

   [RFC5440] describes the Path Computation Element Protocol (PCEP)
   which is used between a Path Computation Element (PCE) and a Path
   Computation Client (PCC) (or other PCE) to enable computation of
   Multi-protocol Label Switching (MPLS) for Traffic Engineering Label
   Switched Path (TE LSP).  PCEP Extensions for the Stateful PCE Model
   [RFC8231] describes a set of extensions to PCEP to enable active
   control of MPLS-TE and Generalized MPLS (GMPLS) tunnels.  As depicted
   in [RFC4655], a PCE MUST be able to compute the path of a TE LSP by

Xiong, et al.             Expires 11 April 2022                 [Page 2]
Internet-Draft     PCEP Extensions for Topology Filter      October 2021

   operating on the TED and considering bandwidth and other constraints
   applicable to the TE LSP service request.

   A PCE always perform path computation based on the network topology
   information collected through BGP-LS [RFC7752].  BGP-LS can get
   multiple link-state data from multiple IGP instance, or multiple
   virtual topologies from a single IGP instance.  It is necessary to
   restrict the PCE to a sub-topology during path computation.  The PCE
   MUST take the topology constraint into consideration during path
   computation.

   The sub-topology may be considered as a TE topology or a specific IGP
   domain.  As defined in draft-bestbar-teas-yang-topology-filter, a
   topology filter is a data construct that can be applied on either a
   native topology or a user specified topology.  The topology filter
   can be viewed as a set of filtering rules to construct the sub-
   topology.  The topology filter specifies the topology reference or a
   set of include-any, include-all and exclude filtering rules.

   This document proposes a set of extensions for PCEP to support the
   topology filter during path computation.

1.1.  Terminology

   The terminology is defined as [RFC5440], [RFC7752] and [RFC8795].

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

2.  Topology Filter

   As defined in draft-bestbar-teas-yang-topology-filter, a topology
   filter is a data construct that can be applied on either a native
   topology or a user specified topology.  The topology filter can be
   viewed as a set of filtering rules to construct the sub-topology.
   The topology filter specifies the topology reference or a set of
   include-any, include-all and exclude filtering rules.

2.1.  Topology Reference

   The topology reference indicates the topology on which the existing
   referenced filtering rules need to be applied.  The referenced
   topology could be a predefined TE topology or a specific IGP domain.

Xiong, et al.             Expires 11 April 2022                 [Page 3]
Internet-Draft     PCEP Extensions for Topology Filter      October 2021

   As defined in RFC7752, the IGP domain has a unique IGP representation
   by using the combination of Area-ID, Router-ID, Protocol-ID, Multi-
   Topology ID, and Instance-ID.  This document defines TOPOLOGY object
   and new TLVs for the topology filiter such as Source Protocol TLV,
   Multi-Topology ID, Area-ID and Algorithm TLV.

2.2.  Filters

   The topology filters carries a list of filters.  Each filter
   specifies a set of include-any, include-all and exclude filtering
   rules that can be applied on the native topology.  The filtering
   rules specify the a set of constraints on the topology, that are to
   be used to compute path at PCE.  This document proposes a set of
   extensions for IRO and XRO objext and defines new subobjects such as
   Link ID, Link affinity and Source Protocol.

3.  PCEP Extensions

3.1.  TOPOLOGY Object

   This document defines a new TOPOLOGY object to carry the topology
   filter.

   The TOPOLOGY object is optional and specifies the sub-topology to be
   taken into account by the PCE during path computation.  The TOPOLOGY
   object can be carried within a PCReq message, or a PCRep message in
   case of unsuccessful path computation.

   TOPOLOGY Object-Class is TBD1.

   TOPOLOGY Object-Type is TBD2.

   The format of the TOPOLOGY object body is:

            0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Reserved                        |     Flags     |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   //                      Optional TLVs                          //
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Figure 1: TOPOLOGY Body Object Format

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

Xiong, et al.             Expires 11 April 2022                 [Page 4]
Internet-Draft     PCEP Extensions for Topology Filter      October 2021

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

   The format of optional TLVs is defined in RFC5440 and may be used to
   carry topology filter information as defined in section.

3.1.1.  Source Protocol TLV

   The Source Protocol TLV is optional and is defined to carry the
   protocol ID and Instance ID.

   The format of the Source Protocol TLV is:

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Type=TBD3             |            Length=12          |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |  Protocol-ID  |                  Reserved                     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                          Instance-ID                          |
       |                           (64 bits)                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Figure 2: Source Protocol TLV

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

   Protocol-ID (8 bits): defined in [RFC7752] section 3.2.  IS-IS
   [RFC8202] and OSPF [RFC6549] MAY run multiple routing protocol
   instances identified by the Protocol-ID over the same link.

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

   Instance-ID (64 bits): defined in [RFC7752] section 3.2.

3.1.2.  Multi-topology TLV

   The Multi-topology TLV is optional and is defined to carry the multi-
   topology ID.

   The format of the Multi-topology TLV is :

Xiong, et al.             Expires 11 April 2022                 [Page 5]
Internet-Draft     PCEP Extensions for Topology Filter      October 2021

       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=TBD4             |            Length=4           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |R R R R|   Multi-Topology ID   |          Reserved             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Figure 3: Multi-topology TLV

   The code point for the sub-TLV type is TBD4.  The sub-TLV length is 4
   octets.

   Multi-Topology ID (12 bits): Semantics of the IS-IS MT-ID are defined
   in Section 7.2 of [RFC5120].  Semantics of the OSPF MT-ID are defined
   in Section 3.7 of [RFC4915].  As defined in section 3.2.1.5 of
   [RFC7752], if the value is derived from OSPF, then the upper 9 bits
   MUST be set to 0.  Bits R are reserved and SHOULD be set to 0 when
   originated and ignored on receipt.

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

3.1.3.  Area TLV

   The Area TLV is optional and is defined to carry the Area ID.

   The format of the Area TLV is :

           0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |              Type=TBD5        |             Length            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      //                 Area ID (variable)                         //
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                           Figure 4: Area TLV

   The code point for the TLV type is TBD3.  The TLV length is variable.

   Area-ID: Area identifier as defined in RFC7752.

Xiong, et al.             Expires 11 April 2022                 [Page 6]
Internet-Draft     PCEP Extensions for Topology Filter      October 2021

3.1.4.  Algorithm TLV

   The Algorithm TLV is optional and is defined to carry the Algorithm
   ID.

   The Algorithm TLV MAY be inserted so as to provide the Flex-algo
   plane information for the computed path.  The format of the TLV is
   defined in draft-tokar-pce-sid-algo-04 section 3.4.

3.2.  IRO Object

   As per [RFC5440], IRO can be used to specify that the computed path
   needs to traverse a set of specified network elements or abstract
   nodes.  This document proposed a set of extensions for topology
   filter.

3.2.1.  Link ID

   The Link ID is used to include the link that is used during the path
   calculation.

   The Link ID subobject is defined:

       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=TBD6   |     Length    |         Reserved              |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                        Link ID (4 bytes)                      |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Figure 5: Link ID subobject in IRO

   The code point for the TLV type is TBD6.  The TLV length is 12
   octets.

   Link ID (32bits ): defined in IS-IS RFC5307 and OSPF RFC3630.

3.2.2.  Admin Group

   The Admin Group is used to include the links that is used during the
   path calculation.

Xiong, et al.             Expires 11 April 2022                 [Page 7]
Internet-Draft     PCEP Extensions for Topology Filter      October 2021

       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=TBD7   |     Length    |         Reserved              |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                      Extended Admin Group                     |
      +-                                                             -+
      |                            ...                                |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                   Figure 6: Admin Group subobject in IRO

   The code point for the TLV type is TBD7.  The TLV length is variable.

   Extended Administrative Group: Extended Administrative Group as
   defined in [RFC7308].

3.2.3.  Source Protocol

   The format of the Source Protocol subobject is:

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |  Type=TBD8    |     Length    |   Reserved    | Protocol-ID   |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                          Instance-ID                          |
       |                           (64 bits)                           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                 Figure 7: Source Protocol subobject in IRO

   The code point for the TLV type is TBD8.  The TLV length is 12
   octets.

   Protocol-ID (8 bits): defined in [RFC7752] section 3.2.  IS-IS
   [RFC8202] and OSPF [RFC6549] MAY run multiple routing protocol
   instances identified by the Protocol-ID over the same link.

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

   Instance-ID (64 bits): defined in [RFC7752] section 3.2.

Xiong, et al.             Expires 11 April 2022                 [Page 8]
Internet-Draft     PCEP Extensions for Topology Filter      October 2021

3.3.  XRO Object

   As per [RFC5521], XRO is an optional object used to specify exclusion
   of certain abstract nodes or resources from the whole path.  This
   document proposed a set of extensions for topology filter.

   The XRO is made of sub-objects identical to the ones defined in IRO,
   where the XRO sub-object type is identical to the sub-object type
   defined in this documents.

   The following sub-object types are supported.

   Type Sub-object

   TBD6 Link ID

   TBD7 Admin Group

   TBD8 Source Protocol

3.4.  Procedures

   A PCC MAY insert a TOPOLOGY object to indicate the sub-topology of an
   IGP domain that MUST be considered by the PCE.  The PCE will perform
   path computation based on the sub-topology identified by the topology
   filter rules that can be applied on either the native topology or a
   user specified topology.  The absence of the TLVs related topology
   reference indicates that the filtering rules are to be applied on the
   native topology.

4.  Acknowledgements

   TBA

5.  IANA Considerations

5.1.  TOPOLOGY Object

   IANA is requested to make allocations for Topology Object from the
   registry, as follows:

   TOPOLOGY Object-Class is TBD1.

   TOPOLOGY Object-Type is TBD2.

   The TLVs for Topology Object is as follows:

Xiong, et al.             Expires 11 April 2022                 [Page 9]
Internet-Draft     PCEP Extensions for Topology Filter      October 2021

             +======+=====================+=================+
             | Type |         TLV         |    Reference    |
             +======+=====================+=================+
             | TBD3 | Source Protocol TLV | [this document] |
             +------+---------------------+-----------------+
             | TBD4 |  Multi-topology TLV | [this document] |
             +------+---------------------+-----------------+
             | TBD5 |       Area TLV      | [this document] |
             +------+---------------------+-----------------+

                    Table 1: TLVs for Topology Object

5.2.  IRO and XRO Object

   IANA is requested to make allocations for IRO and ERO Object from the
   registry, as follows:

               +======+=================+=================+
               | Type |    Subobject    |    Reference    |
               +======+=================+=================+
               | TBD6 |     Link ID     | [this document] |
               +------+-----------------+-----------------+
               | TBD7 |   Admin Group   | [this document] |
               +------+-----------------+-----------------+
               | TBD8 | Source Protocol | [this document] |
               +------+-----------------+-----------------+

                Table 2: Subobjects for IRO and XRO Object

6.  Security Considerations

   TBA

7.  References

7.1.  Normative References

   [draft-ietf-lsr-flex-algo]
              "IGP Flexible Algorithm", July 2021, <https://www.rfc-
              editor.org/info/draft-ietf-lsr-flex-algo>.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC4655]  "A Path Computation Element (PCE)-Based Architecture",
              August 2006, <https://www.rfc-editor.org/info/RFC4655>.

Xiong, et al.             Expires 11 April 2022                [Page 10]
Internet-Draft     PCEP Extensions for Topology Filter      October 2021

   [RFC4915]  "Multi-Topology (MT) Routing in OSPF", June 2007,
              <https://www.rfc-editor.org/info/RFC4915>.

   [RFC5120]  "M-ISIS: Multi Topology (MT) Routing in Intermediate
              System to Intermediate Systems (IS-ISs)", February 2008,
              <https://www.rfc-editor.org/info/RFC5120>.

   [RFC5440]  "Path Computation Element (PCE) Communication Protocol
              (PCEP)", March 2009,
              <https://www.rfc-editor.org/info/RFC5440>.

   [RFC6549]  "OSPFv2 Multi-Instance Extensions", March 2012,
              <https://www.rfc-editor.org/info/RFC6549>.

   [RFC7752]  "North-Bound Distribution of Link-State and Traffic
              Engineering (TE) Information Using BGP", March 2016,
              <https://www.rfc-editor.org/info/RFC7752>.

   [RFC8174]  "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key
              Words", May 2017,
              <https://www.rfc-editor.org/info/RFC8174>.

   [RFC8202]  "IS-IS Multi-Instance", June 2017,
              <https://www.rfc-editor.org/info/RFC8202>.

   [RFC8231]  "Path Computation Element Communication Protocol (PCEP)
              Extensions for Stateful PCE", September 2017,
              <https://www.rfc-editor.org/info/RFC8231>.

   [RFC8795]  "YANG Data Model for Traffic Engineering (TE) Topologies",
              August 2020, <https://www.rfc-editor.org/info/RFC8795>.

Authors' Addresses

   Quan Xiong
   ZTE Corporation
   China

   Email: xiong.quan@zte.com.cn

   Shaofu Peng
   ZTE Corporation
   No.50 Software Avenue
   Nanjing
   Jiangsu, 210012
   China

Xiong, et al.             Expires 11 April 2022                [Page 11]
Internet-Draft     PCEP Extensions for Topology Filter      October 2021

   Email: peng.shaofu@zte.com.cn

   Vishnu Pavan Beeram
   Juniper Networks

   Email: vbeeram@juniper.net

   Tarek Saad
   Juniper Networks

   Email: tsaad@juniper.net

   Mike Koldychev
   Cisco Systems
   Canada

   Email: mkoldych@cisco.com

Xiong, et al.             Expires 11 April 2022                [Page 12]