PCE Working Group A. Tokar
Internet-Draft S. Sidor
Intended status: Standards Track Cisco Systems, Inc.
Expires: March 6, 2021 S. Sivabalan
Ciena
S. Peng
Huawei Technologies
M. Negi
RtBrick Inc
September 2, 2020
Carrying SID Algorithm information in PCE-based Networks.
draft-tokar-pce-sid-algo-02
Abstract
The Algorithm associated with a prefix Segment-ID (SID) defines the
path computation Algorithm used by Interior Gateway Protocols (IGPs).
This information is available to controllers such as the Path
Computation Element (PCE) via topology learning. This document
proposes an approach for informing headend routers regarding the
Algorithm associated with each prefix SID used in PCE-computed paths,
as well as signalling a specific SID algorithm as a constraint to the
PCE.
Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
Tokar, et al. Expires March 6, 2021 [Page 1]
Internet-Draft SID Algorithm in PCEP September 2020
This Internet-Draft will expire on March 6, 2021.
Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Object Formats . . . . . . . . . . . . . . . . . . . . . . . 3
3.1. SR ERO Subobject . . . . . . . . . . . . . . . . . . . . 4
3.2. LSPA Object . . . . . . . . . . . . . . . . . . . . . . . 4
4. Operation . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4.1. SR-ERO NAI Encoding . . . . . . . . . . . . . . . . . . . 5
4.2. SID Algorithm Constraint . . . . . . . . . . . . . . . . 5
5. Security Considerations . . . . . . . . . . . . . . . . . . . 6
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
6.1. PCEP SR-ERO NAI Types . . . . . . . . . . . . . . . . . . 6
6.2. PCEP TLV Types . . . . . . . . . . . . . . . . . . . . . 6
7. Normative References . . . . . . . . . . . . . . . . . . . . 6
Appendix A. Contributors . . . . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
A PCE can compute SR-TE paths using prefix SIDs with different
Algorithms depending on the use-case, constraints, etc. While this
information is available on the PCE, there is no method of conveying
this information to the headend router.
Similarly, the headend can also compute SR-TE paths using different
Algorithms, and this information also needs to be conveyed to the PCE
for collection or troubleshooting purposes. In addition, in the case
of multiple (redundant) PCEs, when the headend receives a path from
the primary PCE, it needs to be able to report the complete path
information - including the Algorithm - to the backup PCE so that in
Tokar, et al. Expires March 6, 2021 [Page 2]
Internet-Draft SID Algorithm in PCEP September 2020
HA scenarios, the backup PCE can verify the prefix SIDs
appropriately.
An operator may also want to constrain the path computed by the PCE
to a specific SID Algorithm, for example, in order to only use SID
Algorithms for a low-latency path. A new TLV is introduced for this
purpose.
Refer to [RFC8665] and [RFC8667] for details about the prefix SID
Algorithm.
This document introduces two new NAI types for the SR-ERO subobject,
which is defined in [RFC8664]. A new TLV for signalling SID
Algorithm constraint to the PCE is also introduced, to be carried
inside the LSPA object, which is defined in [RFC5440].
The mechanisms described in this document are equally applicable to
both SR-MPLS and SRv6.
2. Terminology
The following terminologies are used in this document:
ERO: Explicit Route Object
IGP: Interior Gateway Protocol
NAI: Node or Adjacency Identifier.
PCE: Path Computation Element
PCEP: Path Computation Element Protocol.
SID: Segment Identifier.
SR: Segment Routing.
SR-TE: Segment Routing Traffic Engineering.
LSP: Label Switched Path.
LSPA: Label Switched Path Attributes.
3. Object Formats
Tokar, et al. Expires March 6, 2021 [Page 3]
Internet-Draft SID Algorithm in PCEP September 2020
3.1. SR ERO Subobject
The SR-ERO subobject encoding is extended with additional NAI types.
The following new NAI types (NT) are defined:
o NT=TBD1: The NAI is an IPv4 node ID with Algorithm.
o NT=TBD2: The NAI is an IPv6 node ID with Algorithm.
This document defines the following NAIs:
'IPv4 Node ID with Algorithm' is specified as an IPv4 address and
Algorithm identifier. In this case, the NT value is TBD1 and the
NAI field length is 8 octets.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Node IPv4 address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Algorithm |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: NAI for IPv4 Node SID with Algorithm
'IPv6 Node ID with Algorithm' is specified as an IPv6 address and
Algorithm identifier. In this case, the NT value is TBD2 and the
NAI field length is 20 octets.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Node IPv6 address (16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Algorithm |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: NAI for IPv6 Node SID with Algorithm
3.2. LSPA Object
A new TLV for the LSPA Object with TLV type=TBD3 is introduced to
carry the SID Algorithm constraint. This TLV SHOULD only be used
when PST (Path Setup type) = SR or SRv6.
The format of the SID Algorithm TLV is as follows:
Tokar, et al. Expires March 6, 2021 [Page 4]
Internet-Draft SID Algorithm in PCEP September 2020
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=TBD3 | Length=4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Flags |L|F| Algorithm |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: SID Algorithm TLV Format
The code point for the TLV type is TBD3. The TLV length is 4 octets.
The 32-bit value is formatted as follows.
Reserved: MUST be set to zero by the sender and MUST be ignored by
the receiver.
Flags: This document defines the following flag bits. The other
bits MUST be set to zero by the sender and MUST be ignored by the
receiver.
* F (Fallback): If set to 1 and the PCE is unable to compute a
path using only prefix SIDs with the specified Algorithm, the
PCE MAY compute an alternate fallback path without constraining
to the specified Algorithm.
* L (Loose): If set to 1, the PCE MAY insert prefix SIDs with a
different Algorithm, but it MUST prefer the specified Algorithm
whenever possible.
Algorithm: SID Algorithm the PCE MUST take into acount while
computing a path for the LSP.
4. Operation
4.1. SR-ERO NAI Encoding
IPv4 prefix SIDs used by SR-TE paths with an associated Algorithm
SHOULD be encoded with 'IPv4 Node ID with Algorithm' NAI.
IPv6 prefix SIDs used by SR-TE paths with an associated Algorithm
SHOULD be encoded with 'IPv6 Node ID with Algorithm' NAI.
4.2. SID Algorithm Constraint
In order to signal a specific SID Algorithm constraint to the PCE,
the headend MUST encode the SID ALGORITHM TLV inside the LSPA object.
Tokar, et al. Expires March 6, 2021 [Page 5]
Internet-Draft SID Algorithm in PCEP September 2020
When the PCE receives a SID Algorithm constraint, it MUST only take
prefix SIDs with the specified Algorithm into account during path
computation. However, if the L flag is set in the SID Algorithm TLV,
the PCE MAY insert prefix SIDs with a different Algorithm in order to
successfully compute a path.
If the PCE is unable to find a path with the given SID Algorithm
constraint, it MUST bring the LSP down. Alternatively, if the F flag
is set in the SID Algorithm TLV, the PCE MAY attempt to compute a
path without taking the Algorithm constraint into account at all.
5. Security Considerations
No additional security measure is required.
6. IANA Considerations
6.1. PCEP SR-ERO NAI Types
IANA is requested to allocate new SR-ERO NAI types for the new NAI
types specified in this document.
Value Description Reference
TBD1 IPv4 Node ID with This document
Algorithm
TBD2 IPv6 Node ID with This document
Algorithm
6.2. PCEP TLV Types
IANA is requested to allocate a new TLV type for the new LSPA TLV
specified in this document.
Value Description Reference
TBD3 SID Algorithm This document
7. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
Tokar, et al. Expires March 6, 2021 [Page 6]
Internet-Draft SID Algorithm in PCEP September 2020
[RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation
Element (PCE) Communication Protocol (PCEP)", RFC 5440,
DOI 10.17487/RFC5440, March 2009,
<https://www.rfc-editor.org/info/rfc5440>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC8664] Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W.,
and J. Hardwick, "Path Computation Element Communication
Protocol (PCEP) Extensions for Segment Routing", RFC 8664,
DOI 10.17487/RFC8664, December 2019,
<https://www.rfc-editor.org/info/rfc8664>.
[RFC8665] Psenak, P., Ed., Previdi, S., Ed., Filsfils, C., Gredler,
H., Shakir, R., Henderickx, W., and J. Tantsura, "OSPF
Extensions for Segment Routing", RFC 8665,
DOI 10.17487/RFC8665, December 2019,
<https://www.rfc-editor.org/info/rfc8665>.
[RFC8667] Previdi, S., Ed., Ginsberg, L., Ed., Filsfils, C.,
Bashandy, A., Gredler, H., and B. Decraene, "IS-IS
Extensions for Segment Routing", RFC 8667,
DOI 10.17487/RFC8667, December 2019,
<https://www.rfc-editor.org/info/rfc8667>.
Appendix A. Contributors
Mike Koldychev
Cisco Systems
Kanata, Ontario
Canada
EMail: mkoldych@cisco.com
Authors' Addresses
Alex Tokar
Cisco Systems, Inc.
Eurovea Central 3.
Pribinova 10
Bratislava 811 09
Slovakia
Email: atokar@cisco.com
Tokar, et al. Expires March 6, 2021 [Page 7]
Internet-Draft SID Algorithm in PCEP September 2020
Samuel Sidor
Cisco Systems, Inc.
Eurovea Central 3.
Pribinova 10
Bratislava 811 09
Slovakia
Email: ssidor@cisco.com
Siva Sivabalan
Ciena
385 Terry Fox Drive
Kanata, Ontario K2K 0L1
Canada
Email: msiva282@gmail.com
Shuping Peng
Huawei Technologies
Huawei Campus, No. 156 Beiqing Rd.
Beijing 100095
China
Email: pengshuping@huawei.com
Mahendra Singh Negi
RtBrick Inc
Bangalore, Karnataka
India
Email: mahend.ietf@gmail.com
Tokar, et al. Expires March 6, 2021 [Page 8]