Internet DRAFT - draft-yang-pce-pcep-redundancy-policy

draft-yang-pce-pcep-redundancy-policy







PCE Working Group                                                F. Yang
Internet-Draft                                                   X. Geng
Intended status: Standards Track                                 T. Zhou
Expires: 12 January 2023                                          Huawei
                                                            11 July 2022


  Path Computation Element Communication Protocol (PCEP) Extensions to
                           Redundancy Policy
                draft-yang-pce-pcep-redundancy-policy-00

Abstract

   PCEP is used to provide a communication between a PCC and a PCE.
   This document defines the extensions to PCEP to support the
   redundancy paths computation.  Specifically, two new TLVs are defined
   to support the request of redundancy path computation and protection
   method, and one TLV is defined to distribute the Candidate Path Flag
   of an SR Policy.

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 .

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 12 January 2023.

Copyright Notice

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




Yang, et al.             Expires 12 January 2023                [Page 1]

Internet-Draft    PCEP Extensions to Redundancy Policy         July 2022


   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 Revised BSD License text as
   described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Revised BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  RP Object . . . . . . . . . . . . . . . . . . . . . . . . . .   3
     3.1.  Redundancy Protection TLV . . . . . . . . . . . . . . . .   3
     3.2.  Protection Type TLV . . . . . . . . . . . . . . . . . . .   4
   4.  PCEP Extensions for Redundancy Policy . . . . . . . . . . . .   5
     4.1.  SR Policy Candidate Path Flag TLV . . . . . . . . . . . .   6
     4.2.  Path Binding TLV  . . . . . . . . . . . . . . . . . . . .   7
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   7
     5.1.  New TLV Type  . . . . . . . . . . . . . . . . . . . . . .   7
     5.2.  PCEP Errors . . . . . . . . . . . . . . . . . . . . . . .   8
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .   8
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   8
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .   8
     7.2.  Informative References  . . . . . . . . . . . . . . . . .   9
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   9

1.  Introduction

   Redundancy protection [I-D.ietf-spring-sr-redundancy-protection] is a
   generalized protection mechanism by replicating and transmitting
   copies of flow packets on the redundancy node over multiple different
   and disjoint paths, and further eliminating the redundant packets at
   the merging node.  To support redundancy protection in Segment
   Routing, Redundancy Policy[I-D.geng-spring-redundancy-policy] is
   provided to instantiate the segment lists of more than one disjoint
   forwarding paths.  This document extends the PCEP protocols to
   support the request of redundancy paths computation and protection
   method, and further distribute the flag of redundancy policy to
   instantiate more than one segment lists for redundancy forwarding.










Yang, et al.             Expires 12 January 2023                [Page 2]

Internet-Draft    PCEP Extensions to Redundancy Policy         July 2022


2.  Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in BCP
   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

3.  RP Object

   The RP (Request Parameters) object defined in [RFC5440] is used to
   specify various characteristics of the path computation request and
   MUST be carried within each PCReq and PCRep messages.  The format of
   RP object 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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                          Flags                    |O|B|R| Pri |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                        Request-ID-number                      |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      //                      Optional TLVs                          //
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Request Parameters Object

3.1.  Redundancy Protection TLV

   In order to request PCE to compute multiple redundancy forwarding
   paths with the intention of redundancy protection, this document
   defines a new TLV named Redundancy Protection TLV.  The format of
   Redundancy Protection TLV is shown as follows.


       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          Type = TBD1          |            Length             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |    Flag       |     Number    |            Reserved           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Redundancy Protection TLV




Yang, et al.             Expires 12 January 2023                [Page 3]

Internet-Draft    PCEP Extensions to Redundancy Policy         July 2022


   Where:

   *  Type: to be assigned by IANA.

   *  Length: 16-bit value to indicate the length of the value portion
      in bytes.

   *  Flag: 8-bit bitmap to indicate the redundancy constraint of path
      computation that PCC requires.


     0
     0 1 2 3 4 5 6 7
    +-+-+-+-+-+-+-+-+
    |R|U|U|U|U|U|U|U|
    +-+-+-+-+-+-+-+-+

   where:


   a)  R-Flag: One bit Redundancy Flag is used to indicate whether PCC
      requires the common path computation or a redundancy path
      computation.  When redundancy flag bit is set to 0, it means PCC
      requests a common path computation.  When redundancy flag bit is
      set to 1, it means PCC requests a redundancy path computation.

   b)  U-Flag: Unused and undefined

   *  Number: 8-bit value to indicate how many redundancy forwarding
      paths that PCC requires.  The range of the number is recommended
      from 2 to 8.

   *  Reserved: 16-bit of reserved bits.  SHOULD be set to zero on
      transmission and MUST be ignored on receipt.

   When PCC requests a redundancy path computation, it MUST include the
   Redundancy Flag TLV in the RP object in PCReq message.  When PCC
   includes the Redundancy Flag TLV in a path computation request, PCE
   would reply with the required number of redundancy forwarding paths
   and the set of Redundancy Flag associated with the computed paths.

3.2.  Protection Type TLV

   As specified in [I-D.geng-spring-redundancy-policy], multiple
   candidate paths can co-exist with different types of protection.  In
   order to differetiate the types of protection, a new TLV named
   Protection Type TLV is defined.  The format of Protection Type TLV is
   shown as follows.



Yang, et al.             Expires 12 January 2023                [Page 4]

Internet-Draft    PCEP Extensions to Redundancy Policy         July 2022


       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 = TBD2          |            Length             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |  Prot |                        Reserved                       |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Protection Type TLV

   where:

   *  Type: to be assigned by IANA.

   *  Length: 16-bit value to indicate the length of the value portion
      in bytes.

   *  Protection: 4-bit value to indicate the protection type of path
      computation that PCC requires.  The following Table gives the
      values and corresponding protection types.


      +--------------+-------------------------+
      |    Value     |     Protection Type     |
      +--------------+-------------------------+
      |      0       |      No protection      |
      +--------------+-------------------------+
      |      1       |     Backup Protection   |
      +--------------+-------------------------+
      |      2       |  Redundancy Protection  |
      +--------------+-------------------------+
      |     3-15     |       Undefined         |
      +--------------+-------------------------+

   Protection Type Values

   *  Reserved: 24-bit of reserved bits.  SHOULD be set to zero on
      transmission and MUST be ignored on receipt.

4.  PCEP Extensions for Redundancy Policy

   As per [I-D.ietf-pce-segment-routing-policy-cp], the mapping between
   PCEP Associations and SR Policies is always one-to-one, and the
   mapping between PCEP Tunnels and SR Policy Candidate Paths may be
   either one-to-one or many-to-one.  Regarding Redundancy Policy, the
   mapping between PCEP Associations and Redundancy Policy is always
   one-to-one.  PCEP Tunnels and Redundancy Policy Candidate Paths are
   always many-to-one.  The definitions of SR Policy Association Type



Yang, et al.             Expires 12 January 2023                [Page 5]

Internet-Draft    PCEP Extensions to Redundancy Policy         July 2022


   (SRPAT) and SR Policy Association Group (SRPAG) apply same to
   Redundancy policy.

   This document introduces a new SR Policy Candidate Path Attribute
   called Flag, which identify the Flag of SR Policy Candidate Path
   within the context of an SR Policy.  This Flag identifier MUST NOT
   change for a given LSP during its lifetime.  When these rules are not
   satisfied, the PCE MUST send a PCErr message with Error-Type = 26
   "Association Error", Error Value = TBD4 "SR Policy Candidate Path
   Flag Mismatch".


4.1.  SR Policy Candidate Path Flag TLV

   A new SR Policy Association Type TLV
   [I-D.ietf-pce-segment-routing-policy-cp] called SR Policy Candidate
   Path Flag TLV is defined to indicate the Flag of a candidate path.
   The format of SR Policy Candidate Path Flag TLV is shown in
   following.


     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            |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |     Flag      |                    RESERVED                   |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   where:

   SRPOLICY-CPPATH-Flag TLV

   *  Type: to be allocated by IANA.

   *  Length: specifies the length of the value field not including Type
      and Length fields.

   *  Flag: 8-bit bitmap of Flag.  A new registry "SR Policy Candidate
      Path Flags" is created.  One flag is defined at this writing:


     0
     0 1 2 3 4 5 6 7
    +-+-+-+-+-+-+-+-+
    |R|U|U|U|U|U|U|U|
    +-+-+-+-+-+-+-+-+




Yang, et al.             Expires 12 January 2023                [Page 6]

Internet-Draft    PCEP Extensions to Redundancy Policy         July 2022


   where:

   a)  R-Flag: One bit Redundancy Flag is used to indicate the type of
      candidate path.  When R Flag is set, it represents the candidate
      path is used for the redundancy forwarding.

   b)  U-Flag: Unused and undefined

   *  RESERVED: 3-octet of reserved bits.  SHOULD be set to zero on
      transmission and MUST be ignored on receipt.


4.2.  Path Binding TLV

   Since Redundancy Policy can be optionally associated with the Binding
   Segment, specifically the Redundancy Segment, according to
   [I-D.ietf-pce-segment-routing-policy-cp], the functionality of
   specified-BSID-only is not mandatory to be enabled.  It means that
   the given Redundancy Segment is not required to be allocated and
   programmed for the LSP to be operationally up.  When there is a
   Redundancy Segment associated with Redundancy Policy, TE-PATH-BINDIND
   TLV [I-D.ietf-pce-binding-label-sid] is used to distribute Redundancy
   Segment as the Binding Segment of Redundancy Policy.

5.  IANA Considerations


5.1.  New TLV Type

   This document defines three new TLVs.


  +-----------------+------------------------------------+----------------+
  |       Value     |               Name                 |    Reference   |
  +-----------------+------------------------------------+----------------+
  |       TBD1      |    Redundancy Protection TLV       | This document  |
  +-----------------+------------------------------------+----------------+
  |       TBD2      |       Protection Type TLV          | This document  |
  +-----------------+------------------------------------+----------------+
  |       TBD3      | SR Policy Candidate Path Flag TLV  | This document  |
  +-----------------+------------------------------------+----------------+










Yang, et al.             Expires 12 January 2023                [Page 7]

Internet-Draft    PCEP Extensions to Redundancy Policy         July 2022


5.2.  PCEP Errors

   This document defines one new Error-Value within the "Association
   Error" Error-Type.  IANA is requested to allocate new error values
   within the "PCEP-ERROR Object Error Types and Values" sub-registry of
   the PCEP Numbers registry, as follows:


   +------------+------------------+-----------------------+-----------+
   | Error-Type | Meaning          | Error-value           | Reference |
   +------------+------------------+-----------------------+-----------+
   | 26         | Association      |                       | [RFC8697] |
   |            | Error            |                       |           |
   +------------+------------------+-----------------------+-----------+
   |            |                  | TBD4: SR Policy       | This I-D  |
   |            |                  | Candidate Path        |           |
   |            |                  | Flag Mismatch         |           |
   +------------+------------------+-----------------------+-----------+


6.  Security Considerations

   TBD

7.  References

7.1.  Normative References

   [I-D.geng-spring-redundancy-policy]
              Geng, X., Chen, M., and F. Yang, "Redundancy Policy for
              Redundancy Protection", Work in Progress, Internet-Draft,
              draft-geng-spring-redundancy-policy-02, 7 March 2022,
              <https://www.ietf.org/archive/id/draft-geng-spring-
              redundancy-policy-02.txt>.

   [I-D.ietf-pce-segment-routing-policy-cp]
              Koldychev, M., Sivabalan, S., Barth, C., Peng, S., and H.
              Bidgoli, "PCEP extension to support Segment Routing Policy
              Candidate Paths", Work in Progress, Internet-Draft, draft-
              ietf-pce-segment-routing-policy-cp-07, 21 April 2022,
              <https://www.ietf.org/archive/id/draft-ietf-pce-segment-
              routing-policy-cp-07.txt>.









Yang, et al.             Expires 12 January 2023                [Page 8]

Internet-Draft    PCEP Extensions to Redundancy Policy         July 2022


   [I-D.ietf-spring-sr-redundancy-protection]
              Geng, X., Chen, M., Yang, F., Garvia, P. C., and G.
              Mishra, "SRv6 for Redundancy Protection", Work in
              Progress, Internet-Draft, draft-ietf-spring-sr-redundancy-
              protection-01, 15 February 2022,
              <https://www.ietf.org/archive/id/draft-ietf-spring-sr-
              redundancy-protection-01.txt>.

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

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

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

7.2.  Informative References

   [I-D.ietf-pce-binding-label-sid]
              Sivabalan, S., Filsfils, C., Tantsura, J., Previdi, S.,
              and C. L. (editor), "Carrying Binding Label/Segment
              Identifier (SID) in PCE-based Networks.", Work in
              Progress, Internet-Draft, draft-ietf-pce-binding-label-
              sid-15, 20 March 2022, <https://www.ietf.org/archive/id/
              draft-ietf-pce-binding-label-sid-15.txt>.

Authors' Addresses

   Fan Yang
   Huawei
   156 Beiqing Rd.
   Beijing
   100095
   China
   Email: shirley.yangfan@huawei.com










Yang, et al.             Expires 12 January 2023                [Page 9]

Internet-Draft    PCEP Extensions to Redundancy Policy         July 2022


   Xuesong Geng
   Huawei
   156 Beiqing Rd.
   Beijing
   100095
   China
   Email: gengxuesong@huawei.com


   Tianran Zhou
   Huawei
   156 Beiqing Rd.
   Beijing
   100095
   China
   Email: zhoutianran@huawei.com



































Yang, et al.             Expires 12 January 2023               [Page 10]