draft-ietf-pce-disco-proto-igp-01.txt   draft-ietf-pce-disco-proto-igp-02.txt 
Network Working Group J.L. Le Roux (Editor) Network Working Group J.L. Le Roux (Editor)
Internet Draft France Telecom Internet Draft France Telecom
Category: Standard Track Category: Standard Track
Expires: September 2006 J.P. Vasseur (Editor) Expires: December 2006 J.P. Vasseur (Editor)
Cisco System Inc. Cisco System Inc.
Yuichi Ikejiri Yuichi Ikejiri
NTT Communications NTT Communications
Raymond Zhang Raymond Zhang
BT Infonet BT Infonet
IGP protocol extensions for Path Computation Element (PCE) Discovery IGP protocol extensions for Path Computation Element (PCE) Discovery
draft-ietf-pce-disco-proto-igp-01.txt draft-ietf-pce-disco-proto-igp-02.txt
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that other Task Force (IETF), its areas, and its working groups. Note that other
skipping to change at page 1, line 45 skipping to change at page 1, line 45
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
Abstract Abstract
There are various circumstances in which it is highly desirable for a There are various circumstances in which it is highly desirable for a
Path Computation Client (PCC) to be able to dynamically and Path Computation Client (PCC) to be able to dynamically and
automatically discover a set of Path Computation Element(s) (PCE), automatically discover a set of Path Computation Element(s) (PCE),
along with some of information that can used for PCE selection. When along with some of information that can be used for PCE selection.
the PCE is an LSR participating to the IGP, or even a server When the PCE is an LSR participating to the IGP, or even a server
participating passively to the IGP, a simple and efficient way for participating passively to the IGP, a simple and efficient way for
PCE discovery consists of relying on IGP flooding. For that purpose PCE discovery consists of relying on IGP flooding. For that purpose
this document defines OSPF and ISIS extensions for the advertisement this document defines OSPF and ISIS extensions for the advertisement
of PCE Discovery information within an IGP area or the entire routing of PCE Discovery information within an IGP area or within the entire
domain. routing domain.
Conventions used in this document Conventions used in this document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC-2119. document are to be interpreted as described in RFC-2119.
Table of Contents Table of Contents
1. Note........................................................3 1. Note........................................................3
2. Terminology.................................................3 2. Terminology.................................................3
3. Introduction................................................4 3. Introduction................................................4
4. Overview....................................................5 4. Overview....................................................5
4.1. PCE Information.............................................5 4.1. PCE Information.............................................5
4.1.1. PCE Discovery Information...................................5 4.1.1. PCE Discovery Information...................................5
4.1.2. PCE Status Information......................................6 4.1.2. PCE Status Information......................................6
4.2. Flooding scope..............................................6 4.2. Flooding scope..............................................6
5. OSPF extensions.............................................6 5. OSPF extensions.............................................7
5.1. The OSPF PCED TLV...........................................6 5.1. The OSPF PCED TLV...........................................7
5.1.1. PCE-ADDRESS sub-TLV.........................................8 5.1.1. PCE-ADDRESS sub-TLV.........................................8
5.1.2. PATH-SCOPE sub-TLV..........................................8 5.1.2. PATH-SCOPE sub-TLV..........................................9
5.1.3. PCE-DOMAINS sub-TLV........................................10 5.1.3. PCE-DOMAINS sub-TLV........................................10
5.1.3.1. IPv4 area ID DOMAIN sub-TLV..............................11 5.1.3.1. IPv4 area ID DOMAIN sub-TLV..............................11
5.1.3.2. IPv6 area ID DOMAIN sub-TLV..............................11 5.1.3.2. IPv6 area ID DOMAIN sub-TLV..............................12
5.1.3.3. AS Number sub-TLV........................................12 5.1.3.3. AS Number sub-TLV........................................12
5.1.4. PCE-DEST-DOMAINS sub-TLV...................................12 5.1.4. PCE-DEST-DOMAINS sub-TLV...................................12
5.1.5. GENERAL-CAP sub-TLV........................................13 5.1.5. GENERAL-CAP sub-TLV........................................13
5.1.6. The PATH-COMP-CAP sub-TLV..................................14 5.1.6. The PATH-COMP-CAP sub-TLV..................................14
5.2. The OSPF PCES TLV..........................................15 5.1.6.1. Objective Functions sub-TLV..............................15
5.2.1. The CONGESTION sub-TLV.....................................16 5.1.6.2. Opaque Objective Function sub-TLV........................16
5.3. Elements of Procedure......................................16 5.1.6.3. Switch Caps sub-TLV......................................16
5.3.1. PCED TLV Procedure.........................................17 5.2. The OSPF PCES TLV..........................................17
5.3.2. PCES TLV procedure.........................................17 5.2.1. The CONGESTION sub-TLV.....................................18
6. ISIS extensions............................................19 5.3. Elements of Procedure......................................19
6.1. IS-IS PCED TLV format......................................19 5.3.1. PCES TLV specific procedures...............................19
6.1.1. PCE-ADDRESS sub-TLV........................................20 6. ISIS extensions............................................21
6.1.2. The PATH-SCOPE sub-TLV.....................................20 6.1. IS-IS PCED TLV format......................................21
6.1.3. PCE-DOMAINS sub-TLV........................................22 6.1.1. PCE-ADDRESS sub-TLV........................................22
6.1.3.1. Area ID DOMAIN sub-TLV...................................22 6.1.2. The PATH-SCOPE sub-TLV.....................................22
6.1.3.2. AS Number DOMAIN sub-TLV.................................23 6.1.3. PCE-DOMAINS sub-TLV........................................24
6.1.4. PCE-DEST-DOMAINS sub-TLV...................................23 6.1.3.1. Area ID DOMAIN sub-TLV...................................25
6.1.5. GENERAL-CAP sub-TLV........................................23 6.1.3.2. AS Number DOMAIN sub-TLV.................................25
6.1.6. The PATH-COMP-CAP sub-TLV..................................24 6.1.4. PCE-DEST-DOMAINS sub-TLV...................................25
6.2. The ISIS PCES TLV..........................................25 6.1.5. GENERAL-CAP sub-TLV........................................26
6.2.1. The CONGESTION sub-TLV.....................................25 6.1.6. The PATH-COMP-CAP sub-TLV..................................26
6.3. Elements of Procedure......................................26 6.1.6.1. Objective Functions sub-TLV..............................28
6.3.1. PCED TLV Procedure.........................................26 6.1.6.2. Opaque Objective Function sub-TLV........................28
6.3.2. PCES TLV procedure.........................................27 6.1.6.3. Switch Caps sub-TLV......................................29
7. Backward compatibility.....................................27 6.2. The ISIS PCES TLV..........................................29
8. IANA considerations........................................28 6.2.1. The CONGESTION sub-TLV.....................................30
8.1. OSPF TLVs..................................................28 6.3. Elements of Procedure......................................30
8.2. ISIS TLVs..................................................28 6.3.1. PCES TLV specific procedure................................31
8.3. Capability bits............................................29 7. Backward compatibility.....................................32
9. Security Considerations....................................29 8. IANA considerations........................................32
10. References.................................................29 8.1. OSPF TLVs..................................................32
10.1. Normative references........................................29 8.2. ISIS TLVs..................................................33
10.2. Informative references......................................30 8.3. Capability bits............................................33
11. Authors' Addresses:........................................30 9. Security Considerations....................................34
12. Intellectual Property Statement............................31 10. References.................................................34
10.1. Normative references.......................................34
10.2. Informative references.....................................35
11. Authors' Addresses:........................................35
12. Intellectual Property Statement............................36
1. Note 1. Note
This document specifies new TLVs and sub-TLVs to be carried within This document specifies new TLVs and sub-TLVs to be carried within
the OSPF Router information LSA ([OSPF-CAP]) and ISIS Router the OSPF Router information LSA ([OSPF-CAP]) and ISIS Router
Capability TLV ([ISIS-CAP]) respectively. Because this document does Capability TLV ([ISIS-CAP]) respectively. Because this document does
not introduce any new element of procedure it will be discussed not introduce any new element of procedure it will be discussed
within the PCE Working Group with a review of the OSPF and ISIS within the PCE Working Group with a review of the OSPF and ISIS
Working Groups. Furthermore, once stabilized, it may be decided to Working Groups. Furthermore, once stabilized, it may be decided to
split the document in two documents addressing the OSPF and ISIS split the document in two documents addressing the OSPF and ISIS
skipping to change at page 3, line 47 skipping to change at page 3, line 51
Domain: any collection of network elements within a common sphere Domain: any collection of network elements within a common sphere
of address management or path computational responsibility. of address management or path computational responsibility.
Examples of domains include IGP areas and Autonomous Systems. Examples of domains include IGP areas and Autonomous Systems.
IGP Area: OSPF Area or ISIS level. IGP Area: OSPF Area or ISIS level.
Intra-area TE LSP: A TE LSP whose path does not cross IGP area Intra-area TE LSP: A TE LSP whose path does not cross IGP area
boundaries. boundaries.
Intra-AS TE LSP: A TE LSP whose path does not cross AS boundaries.
Inter-area TE LSP: A TE LSP whose path transits through Inter-area TE LSP: A TE LSP whose path transits through
two or more IGP areas. two or more IGP areas.
Inter-AS MPLS TE LSP: A TE LSP whose path transits Inter-AS MPLS TE LSP: A TE LSP whose path transits
through two or more ASes or sub-ASes (BGP confederations). through two or more ASes or sub-ASes (BGP confederations).
LSR: Label Switch Router. LSR: Label Switch Router.
PCC: Path Computation Client: any client application requesting a PCC: Path Computation Client: any client application requesting a
path computation to be performed by a Path Computation Element. path computation to be performed by a Path Computation Element.
PCE: Path Computation Element: an entity (component, application, PCE: Path Computation Element: an entity (component, application,
or network node) that is capable of computing a network path or or network node) that is capable of computing a network path or
route based on a network graph, and applying computational route based on a network graph, and applying computational
constraints. constraints.
PCECP: Path Computation Element Communication Protocol. PCECP: Path Computation Element Communication Protocol.
TE LSP: Traffic Engineered Label Switched Path TE LSP: Traffic Engineered Label Switched Path.
3. Introduction 3. Introduction
[PCE-ARCH] describes the motivations and architecture for a PCE-based [PCE-ARCH] describes the motivations and architecture for a PCE-based
path computation model for MPLS and GMPLS TE LSPs. The model allows path computation model for MPLS and GMPLS TE LSPs. The model allows
the separation of PCE from PCC (also referred to as non co-located the separation of PCE from PCC (also referred to as non co-located
PCE) and allows cooperation between PCEs. This relies on a PCE) and allows cooperation between PCEs. This relies on a
communication protocol between PCC and PCE, and between PCEs. The communication protocol between PCC and PCE, and between PCEs. The
requirements for such communication protocol can be found in [PCECP- requirements for such communication protocol can be found in [PCECP-
REQ] and the communication protocol is defined in [PCEP]. REQ] and the communication protocol is defined in [PCEP].
skipping to change at page 4, line 37 skipping to change at page 4, line 47
some PCEs in other domains, e.g. in case of inter-domain TE LSP some PCEs in other domains, e.g. in case of inter-domain TE LSP
computation. computation.
A network may comprise a large number of PCEs with potentially A network may comprise a large number of PCEs with potentially
distinct capabilities. In such context it would be highly desirable distinct capabilities. In such context it would be highly desirable
to have a mechanism for automatic and dynamic PCE discovery, which to have a mechanism for automatic and dynamic PCE discovery, which
would allow PCCs to automatically discover a set of PCEs, along with would allow PCCs to automatically discover a set of PCEs, along with
additional information required for PCE selection, and to dynamically additional information required for PCE selection, and to dynamically
detect new PCEs or any modification of PCE information. detect new PCEs or any modification of PCE information.
Detailed requirements for such a PCE discovery mechanism are Detailed requirements for such a PCE discovery mechanism are
described in [PCE-DISCO-REQ]. described in [PCE-DISC-REQ].
Moreover, it may also be useful to discover when a PCE experiences Moreover, it may also be useful to discover when a PCE experiences
some processing congestion state and exits such state in order for some processing congestion state and exits such state, in order for
the PCCs to take some appropriate actions (e.g. redirect to another the PCCs to take some appropriate actions (e.g. redirect to another
PCE). Note that the PCE selection algorithm is out of the scope of PCE). Note that the PCE selection algorithm is out of the scope of
this document. this document.
When PCCs are LSRs participating to the IGP (OSPF, ISIS), and PCEs When PCCs are LSRs participating to the IGP (OSPF, ISIS), and PCEs
are LSRs or a servers also participating to the IGP, an efficient are LSRs or a servers also participating to the IGP, an efficient
mechanism for PCE discovery within an IGP routing domain consists of mechanism for PCE discovery within an IGP routing domain consists of
relying on IGP advertisements. relying on IGP advertisements.
This document defines OSPF and ISIS extensions allowing a PCE This document defines OSPF and ISIS extensions allowing a PCE
skipping to change at page 5, line 12 skipping to change at page 5, line 21
also defines extensions allowing a PCE participating to the IGP to also defines extensions allowing a PCE participating to the IGP to
advertise its potential processing congestion state. advertise its potential processing congestion state.
Generic capability mechanisms have been defined in [OSPF-CAP] and Generic capability mechanisms have been defined in [OSPF-CAP] and
[ISIS-CAP] for OSPF and ISIS respectively the purpose of which is to [ISIS-CAP] for OSPF and ISIS respectively the purpose of which is to
allow a router to advertise its capability within an IGP area or an allow a router to advertise its capability within an IGP area or an
entire routing domain. Such IGP extensions fully satisfy the entire routing domain. Such IGP extensions fully satisfy the
aforementioned dynamic PCE discovery requirements. aforementioned dynamic PCE discovery requirements.
This document defines two new TLVs (named the PCE Discovery (PCED) This document defines two new TLVs (named the PCE Discovery (PCED)
TLV and the PCE Status (PCES) TLV) for ISIS and OSPF to be carried TLV and the PCE Status (PCES) TLV) for ISIS and OSPF, to be carried
within the ISIS Capability TLV ([ISIS-CAP]) and the OSPF Router within the ISIS Capability TLV ([ISIS-CAP]) and the OSPF Router
Information LSA ([OSPF-CAP]). Information LSA ([OSPF-CAP]).
The PCE information advertised is detailed in section 4. Protocol The PCE information advertised is detailed in section 4. Protocol
extensions and procedures are defined in section 5 and 6 for ISIS and extensions and procedures are defined in section 5 for OSPF and 6 for
OSPF respectively. ISIS.
This document does not define any new OSPF or ISIS element of This document does not define any new OSPF or ISIS element of
procedure but how the procedures defined in [OSPF-CAP] and [ISIS-CAP] procedure but how the procedures defined in [OSPF-CAP] and [ISIS-CAP]
should be used. should be used.
The routing extensions defined in this document allow for PCE The routing extensions defined in this document allow for PCE
discovery within an IGP Routing domain. Solutions for PCE discovery discovery within an IGP Routing domain. Solutions for PCE discovery
across AS boundaries are beyond the scope of this document, and for across AS boundaries are beyond the scope of this document, and for
further study. further study.
skipping to change at page 5, line 40 skipping to change at page 5, line 49
4.1. PCE Information 4.1. PCE Information
PCE information advertised within the IGP includes PCE Discovery PCE information advertised within the IGP includes PCE Discovery
Information and PCE Status information. Information and PCE Status information.
4.1.1. PCE Discovery Information 4.1.1. PCE Discovery Information
The PCE Discovery information is comprised of: The PCE Discovery information is comprised of:
- The PCE location: This is a set of one or more IPv4 and or IPv6 - The PCE location: This an IPv4 and/or IPv6 address that must be
addresses that MUST be used to reach the PCE. It is RECOMMENDED to used to reach the PCE. It is RECOMMENDED to use addresses always
use loopback addresses always reachable. reachable;
- The PCE inter-domain functions: this refers to the PCE path - The PCE inter-domain functions: this refers to the PCE path
computation scope (i.e. inter-area, inter-AS, inter-layer…). computation scope (i.e. inter-area, inter-AS, inter-layer…);
- The PCE domain(s): This is the set of one or more domain(s) where
- The PCE domain(s): This is the set domain(s) where the PCE has the PCE has visibility and can compute paths;
visibility and can compute paths.
- The PCE Destination domain(s): This is the set of destination - The PCE Destination domain(s): This is the set of one or more
domain(s) towards which a PCE can compute paths. destination domain(s) towards which a PCE can compute paths;
- A set of general PCECP capabilities (e.g. support for request - A set of general PCECP capabilities (e.g. support for request
prioritization) and path computation specific capabilities prioritization) and path computation specific capabilities
(e.g. supported constraints, supported objective functions…). (e.g. supported constraints, supported objective functions…).
These are two variable length sets of bits flags, where each bit
represent a given PCE capability.
It may also contain optional elements to describe more complex It may also contain optional elements to describe more complex
capabilities. capabilities.
PCE Discovery information is by nature a static information that does PCE Discovery information is by nature a static information that does
not change with PCE activity. Changes in PCE Discovery information not change with PCE activity. Changes in PCE Discovery information
may occur as a result of PCE configuration updates, PCE may occur as a result of PCE configuration updates, PCE
deployment/activation or PCE deactivation/suppression. Hence, this deployment/activation, PCE deactivation/suppression or PCE failure.
information is not expected to change frequently. Hence, this information is not expected to change frequently.
4.1.2. PCE Status Information 4.1.2. PCE Status Information
The PCE Status is optional information that can be used to report a The PCE Status is optional information that can be used to report a
PCE processing congested state along with an estimated congestion PCE processing congested state along with an estimated congestion
duration. This dynamic information may change with PCE activity. duration. This is a dynamic information, which may change with PCE
activity.
Procedures for a PCE to move from a processing congested state to a Procedures for a PCE to move from a processing congested state to a
non congested state are beyond the scope of this document, but the non congested state are beyond the scope of this document, but the
rate at which a PCE Status change is advertised MUST not impact by rate at which a PCE Status change is advertised MUST not impact by
any mean the IGP scalability. Particular attention should be given on any mean the IGP scalability. Particular attention should be given on
procedures to avoid state oscillations. procedures to avoid state oscillations.
4.2. Flooding scope 4.2. Flooding scope
The flooding scope for PCE Discovery Information can be limited to The flooding scope for PCE Discovery Information can be limited to
skipping to change at page 7, line 37 skipping to change at page 8, line 5
1 variable PCE-ADDRESS sub-TLV 1 variable PCE-ADDRESS sub-TLV
2 4 PATH-SCOPE sub-TLV 2 4 PATH-SCOPE sub-TLV
3 variable PCE-DOMAINS sub-TLV 3 variable PCE-DOMAINS sub-TLV
4 variable PCE-DEST-DOMAINS sub-TLV 4 variable PCE-DEST-DOMAINS sub-TLV
5 variable GENERAL-CAP sub-TLV 5 variable GENERAL-CAP sub-TLV
6 variable PATH-COMP-CAP sub-TLV 6 variable PATH-COMP-CAP sub-TLV
The sub-TLVs PCE-ADDRESS and PATH SCOPE MUST always be present within The sub-TLVs PCE-ADDRESS and PATH SCOPE MUST always be present within
the PCED TLV. the PCED TLV.
The sub-TLVs PCE-DOMAINS and PCE-DEST-DOMAINS are optional. They MUST The sub-TLVs PCE-DOMAINS and PCE-DEST-DOMAINS are optional. They MAY
be present only in some specific inter-domain cases. be present in some specific inter-domain cases.
The GENERAL-CAP and PATH-COMP-CAP sub-TLVs are optional and MAY be The GENERAL-CAP and PATH-COMP-CAP sub-TLVs are optional and MAY be
present in the PCED TLV to facilitate the PCE selection process. present in the PCED TLV to facilitate the PCE selection process.
Any non recognized sub-TLV MUST be silently ignored. Any non recognized sub-TLV MUST be silently ignored.
Additional sub-TLVs could be added in the future to advertise Additional sub-TLVs could be added in the future to advertise
additional information. additional information.
The PCED TLV is carried within an OSPF Router Information LSA The PCED TLV is carried within an OSPF Router Information LSA
defined in [OSPF-CAP], the opaque type of which is determined by the defined in [OSPF-CAP].
desired flooding scope.
5.1.1. PCE-ADDRESS sub-TLV 5.1.1. PCE-ADDRESS sub-TLV
The PCE-ADDRESS sub-TLV specifies the IP address that MUST be used to The PCE-ADDRESS sub-TLV specifies the IP address(es) that MUST be
reach the PCE. It is RECOMMENDED to make use of a loop-back address used to reach the PCE. It is RECOMMENDED to make use of an address
that is always reachable, provided that the PCE is alive. that is always reachable, provided that the PCE is alive.
The PCE-ADDRESS sub-TLV is mandatory; it MUST be present within the The PCE-ADDRESS sub-TLV is mandatory; it MUST be present within the
PCED TLV. The PCE-ADDRESS sub-TLV MUST appear at least once in the PCED TLV. It MAY appear twice, when the PCE has both an IPv4 and IPv6
PCED sub-TLV originated by a PCE. It MAY appear multiple times, for address. It MUST not appear more than twice.
instance when the PCE has both an IPv4 and IPv6 address.
The format of the PCE-ADDRESS sub-TLV is as follows: The format of the PCE-ADDRESS sub-TLV is as follows:
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 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 | | Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| address-type | Reserved | | address-type | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
skipping to change at page 10, line 24 skipping to change at page 10, line 38
weighted load balancing of requests. An operator may decide to weighted load balancing of requests. An operator may decide to
configure a preference to each PCE so as to balance the path configure a preference to each PCE so as to balance the path
computation load among them, with respect to their respective CPU computation load among them, with respect to their respective CPU
capacity. The algorithms used by a PCC to load balance its path capacity. The algorithms used by a PCC to load balance its path
computation requests according to such PCE’s preference is out of the computation requests according to such PCE’s preference is out of the
scope of this document. Same or distinct preferences may be used for scope of this document. Same or distinct preferences may be used for
different scopes. For instance an operator that wants a PCE capable different scopes. For instance an operator that wants a PCE capable
of both inter-area and inter-AS computation to be used preferably for of both inter-area and inter-AS computation to be used preferably for
inter-AS computation may configure a PrefS higher than the PrefR. inter-AS computation may configure a PrefS higher than the PrefR.
When the L bit, R bit, S or Y bit are cleared the PrefL, PrefR, When the L bit, R bit, S or Y bit are cleared, the PrefL, PrefR,
PrefS, PrefY bit MUST respectively be set to 0. PrefS, PrefY fields MUST respectively be set to 0.
5.1.3. PCE-DOMAINS sub-TLV 5.1.3. PCE-DOMAINS sub-TLV
The PCE-DOMAINS sub-TLV specifies the set of domains (areas, AS) The PCE-DOMAINS sub-TLV specifies the set of domains (areas, AS)
where the PCE has topology visibility and can compute paths. It where the PCE has topology visibility and can compute paths. It
contains a set of one or more sub-TLVs where each sub-TLV identifies contains a set of one or more sub-TLVs where each sub-TLV identifies
a domain. a domain.
The PCED TLV MUST include zero or one PCE-DOMAINS sub-TLV.
The PCE-DOMAINS sub-TLV MUST be present when PCE domains cannot be The PCE-DOMAINS sub-TLV MUST be present when PCE domains cannot be
inferred by other IGP information, for instance when the PCE is inferred by other IGP information, for instance when the PCE is
inter-domain capable (i.e. when the R bit or S bit is set) and the inter-area capable (i.e. when the R bit is set) and the flooding
flooding scope is the entire routing domain. scope is the entire IGP routing domain.
The PCE-DOMAINS sub-TLV has the following format: The PCE-DOMAINS sub-TLV has the following format:
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 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 | | Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
// DOMAIN sub-TLVs // // DOMAIN sub-TLVs //
| | | |
skipping to change at page 13, line 19 skipping to change at page 13, line 36
The PCE-DEST-DOMAINS sub-TLV MUST include at least one DOMAIN sub- The PCE-DEST-DOMAINS sub-TLV MUST include at least one DOMAIN sub-
TLV. It MUST include at least one area ID sub-TLV, if the R bit of TLV. It MUST include at least one area ID sub-TLV, if the R bit of
the PATH-SCOPE TLV is set and the Rd bit of the PATH-SCOPE TLV is the PATH-SCOPE TLV is set and the Rd bit of the PATH-SCOPE TLV is
cleared. Similarly, it MUST include at least one AS number sub-TLV if cleared. Similarly, it MUST include at least one AS number sub-TLV if
the S bit of the PATH-SCOPE TLV is set and the Sd bit of the PATH- the S bit of the PATH-SCOPE TLV is set and the Sd bit of the PATH-
SCOPE TLV is cleared. SCOPE TLV is cleared.
5.1.5. GENERAL-CAP sub-TLV 5.1.5. GENERAL-CAP sub-TLV
The GENERAL-CAP sub-TLV is an optional TLV used to indicate PCECP The GENERAL-CAP sub-TLV is an optional TLV used to indicate PCECP
related capabilities. related capabilities. It MAY be present within the PCED TLV. It MUST
The value field of the GENERAL-CAP sub-TLV is made of bit flags, not be present more than once.
The value field of the GENERAL-CAP sub-TLV is made of a 32-bit flag,
where each bit corresponds to a general PCE capability. It MAY also where each bit corresponds to a general PCE capability. It MAY also
include optional sub-TLVs to encode more complex capabilities. include optional sub-TLVs to encode more complex capabilities.
The format of the GENERAL-CAP sub-TLV is as follows: The format of the GENERAL-CAP sub-TLV is as follows:
0 1 2 3 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 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 | | Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| General PCE Capabilities | | General Capabilities Flag |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Optional sub-TLVs // // Optional sub-TLVs //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type To be assigned by IANA (suggested value =1) Type To be assigned by IANA (suggested value =1)
Length It is set to N x 4 octets. N starts Length Variable.
from 1 and can be increased when there is a need. Value This comprises a 32-bit flag. The bits are indexed
Each 4 octets are referred to as a capability flag. from the most significant to the least significant,
Value This comprises one or more capability flags. where each bit represents one general PCE capability.
For each 4 octets, the bits are indexed from the most Optional TLVs may be added to specify more complex
significant to the least significant, where each bit capabilities: there is no optional TLV currently
represents one general PCE capability. When defined.
the first 32 capabilities are defined, a new
capability flag will be used to accommodate the next
capability. Optional TLVs may be defined to specify
more complex capabilities: there is no optional TLVs
currently defined.
IANA is requested to manage the space of general PCE capability bit IANA is requested to manage the space of the General Capabilities 32-
flags. bit flag.
The following bits in the first capability flag are to be assigned by The following bits are to be assigned by IANA:
IANA:
Bit Capabilities Bit Capabilities
0 P bit: Support for Request prioritization. 0 P bit: Support for Request prioritization.
1 M bit: Support for multiple messages within the same 1 M bit: Support for multiple messages within the same
request message. request message.
2-31 Reserved for future assignments by IANA. 2-31 Reserved for future assignments by IANA.
5.1.6. The PATH-COMP-CAP sub-TLV 5.1.6. The PATH-COMP-CAP sub-TLV
The PATH-COMP-CAP sub-TLV is an optional TLV used to indicate path The PATH-COMP-CAP sub-TLV is an optional TLV used to indicate path
computation specific capabilities. It is made of a set of bit flags, computation specific capabilities. It MAY be present within the PCED
where each bit correspond to a path computation capability. It MAY TLV. It MUST not be present more than once.
also include optional sub-TLVs to encode more complex capabilities. It is made of a 32-bit flag, where each bit correspond to a path
computation capability. It MAY also include optional sub-TLVs to
encode more complex capabilities.
The format of the PATH-COMP-CAP sub-TLV is as follows: The format of the PATH-COMP-CAP sub-TLV is as follows:
0 1 2 3 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 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 | | Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Path Computation Capabilities | | Path Computation Capabilities Flag |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Optional sub-TLVs // // Optional sub-TLVs //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type To be assigned by IANA (suggested value =1) Type To be assigned by IANA (suggested value =1)
Length It is set to N x 4 octets. N starts Length Variable.
from 1 and can be increased when there is a need. Value This comprises a 32 bit flag. Bits are indexed from
Each 4 octets are referred to as a capability flag. the most significant to the least significant, where
Value This comprises one or more capability flags. each bit represents one path computation capability.
For each 4 octets, the bits are indexed from the most Optional TLVs may be defined to specify more complex
significant to the least significant, where each bit capabilities. Three optional sub-TLVs are currently
represents one path computation PCE capability. When defined.
the first 32 capabilities are defined, a new
capability flag will be used to accommodate the next
capability. Optional TLVs may be defined to specify
more complex capabilities: there is no optional TLVs
currently defined.
IANA is requested to manage the space of PCE path commutation IANA is requested to manage the space of the Path Commutation
capability bit flags. Capabilities 32-bit flag.
The following bits in the first capability flag are to be assigned by The following bits are to be assigned by IANA:
IANA:
Bit Capabilities Bit Capabilities
0 G bit: Capability to handle GMPLS contraints 0 G bit: Capability to handle GMPLS link contraints
1 B bit: Capability to compute bidirectional paths 1 B bit: Capability to compute bidirectional paths
2 D bit: Capability to compute link/node/SRLG diverse paths 2 D bit: Capability to compute link/node/SRLG diverse paths
3 L bit: Capability to compute load-balanced paths 3 L bit: Capability to compute load-balanced paths
4 S bit: Capability to compute a set of paths in a 4 S bit: Capability to compute a set of paths in a
synchronized Manner synchronized Manner
5 O bit: Support for multiple objective functions 5 O bit: Support for multiple objective functions
6 P bit: Capability to handle path constraints (e.g. hop
count, metric bound)
6-31 Reserved for future assignments by IANA. 7-31 Reserved for future assignments by IANA.
The G, B, D, L, S and O bits are not exclusive. The G, B, D, L, S, O and P bits are not exclusive.
Three optional sub-TLVs are currently defined for the PATH-COMP-CAP
TLV:
- The Objective Functions sub-TLV (type to be defined, suggested
value =1) that carries a list of supported objective functions,
where each objective function is identified by a 16 bit integer.
- The Opaque Objective Function sub-TLV (type to be defined,
suggested value =2) that allows the user to encode a specific
objective function in any appropriate language.
- The Switch Caps sub-TLV (type to be defined, suggested value =3)
that carries a list of supported switching capabilities. It means
that the PCE can compute path for the listed switching
capabilities.
5.1.6.1. Objective Functions sub-TLV
The format of the Objective Functions sub-TLV 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| function 1 | function 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| function N | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type To be defined by IANA (suggested value =1)
Length Variable (N*2), where N is the number of supported
objective functions.
Value This comprises a set of one or more 16 bit function
ids, where each function id identifies a supported
objective function.
Objectives functions and their identification will be defined in a
separate document.
The Objective Functions sub-TLV is optional, it MAY be present with
the PATH-COMP-CAP TLV. When present it MUST be present only once in
the PATH-COMP-CAP TLV.
5.1.6.2. Opaque Objective Function sub-TLV
The format of the Opaque Objective Function sub-TLV 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Opaque objective function |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type To be defined by IANA (suggested value =2)
Length Variable
Value This encode a specific objective function in any
appropriate language.
The Opaque Objective Function sub-TLV is optional. The PATH-COMP-CAP TLV
MAY comprise 0, one or more Opaque Objective Functions.
5.1.6.3. Switch Caps sub-TLV
The format of the Switch Caps sub-TLV 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SC type | SC type | SC type | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type To be defined by IANA (suggested value =3)
Length Variable = N, where N is the number of supported
switching capabilities
Value This comprises a set of one or more 8-bit switching
types, where each switching type identifies a
supported switching capability.
Switching type values are defined in [RFC4203].
The Objective function sub-TLV is optional, it MAY be present in the
PATH-COMP-CAP TLV. When present it MUST be present only once in the
PATH-COMP-CAP TLV.
5.2. The OSPF PCES TLV 5.2. The OSPF PCES TLV
The OSPF PCE Status TLV (PCES TLV) carries information related to PCE The OSPF PCE Status TLV (PCES TLV) carries information related to PCE
processing congestion state. processing congestion state.
The PCES TLV is carried within an OSPF Router Information LSA which The PCES TLV is carried within an OSPF Router Information LSA which
is defined in [OSPF-CAP]. is defined in [OSPF-CAP].
The OSPF PCES TLV has the following format: The OSPF PCES TLV has the following format:
skipping to change at page 16, line 36 skipping to change at page 18, line 41
|C| Reserved | Congestion Duration | |C| Reserved | Congestion Duration |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type To be assigned by IANA (suggested value =2) Type To be assigned by IANA (suggested value =2)
Length 4 Length 4
Value Value
-C bit: When set this indicates that the PCE experiences -C bit: When set this indicates that the PCE experiences
congestion and cannot support any new request. When congestion and cannot support any new request. When
cleared this indicates that the PCE does not cleared this indicates that the PCE does not
experiences congestion an can support a new request. experience congestion an can support a new request.
-Congestion Duration: 2-bytes, the estimated PCE congestion -Congestion Duration: 2-bytes, the estimated PCE congestion
duration in seconds. duration in seconds.
When C is set and the Congestion Duration field is equal to 0, this When C is set and the Congestion Duration field is equal to 0, this
means that the Congestion Duration is unknown. means that the Congestion Duration is unknown.
When C is cleared the Congestion Duration MUST be set to 0. When C is cleared the Congestion Duration MUST be set to 0.
5.3. Elements of Procedure 5.3. Elements of Procedure
The PCED and PCES TLV are carried within an OSPF Router information The PCES and PCED TLV are advertised within an OSPFv2 Router
opaque LSA (opaque type of 4, opaque ID of 0) which is defined in Information LSA (Opaque type of 4 and Opaque ID of 0) or OSPFv3
[OSPF-CAP]. As the PCES information is likely to change more Router information LSA (function code of 12) which are defined in
frequently than the PCED information, it is RECOMMENDED to carry PCES [OSPF-CAP]. As such, elements of procedure are inherited
and PCED TLVs in separate Router Information LSAs, so as not to carry from those defined in [OSPF-CAP].
all PCED information each time the PCE status changes.
5.3.1. PCED TLV Procedure As the PCES information is likely to change more frequently than the
PCED information, it is RECOMMENDED to carry PCES and PCED TLVs in
separate Router Information LSAs, so as not to carry all PCED
information each time the PCE status changes.
A router MUST originate a new OSPF router information LSA whenever In OSPFv2 the flooding scope is controlled by the opaque LSA type (as
the content of the PCED TLV changes or whenever required by the defined in [RFC2370]) and in OSPFv3 by the S1/S2 bits (as defined in
regular OSPF procedure (LSA refresh (every LSRefreshTime)). [OSPF-v3]). If the flooding scope is local to an area then the PCED
or PCES TLV MUST be carried within an OSPFv2 type 10 router
information LSA or an OSPFV3 Router Information LSA with the S1 bit
set and the S2 bit cleared. If the flooding scope is the entire
domain then the PCED or PCES TLV MUST be carried within an OSPFv2
type 11 Router Information LSA or OSPFv3 Router Information LSA with
the S1 bit cleared and the S2 bit set.
Note that when only the L bit of the PATH-SCOPE sub-TLV is set and
the flooding scope MUST be local.
Note that the flooding scope of the PCED and PCES TLVs may be
distinct, in which case they will be carried in separate LSA.
The PCED TLV may be carried within a type 10 or 11 router information A router MUST originate a new OSPF router information LSA whenever
LSA depending on the flooding scope of the PCE information. the content of the PCED TLV or PCES TLV changes or whenever required
If the flooding scope is local to an area then it MUST be carried by the regular OSPF procedure (LSA refresh (every LSRefreshTime)).
within a type 10 router information LSA.
If the flooding scope is the entire domain then it MUST be carried
within type 11 router information LSA.
Note that when the L bit of the PATH-SCOPE TLV is set and the R bit
and S bit are cleared, the flooding scope MUST be local, and the PCED
TLV MUST be carried within a type 10 Router Information LSA.
PCED sub-TLVs are OPTIONAL. When an OSPF LSA does not contain PCED and PCES sub-TLVs are OPTIONAL. When an OSPF LSA does not
any PCED sub-TLV, this means that the PCE information of that contain any PCED or PCES sub-TLV, this means that the PCE information
node is unknown. of that node is unknown.
Note that a change in PCED information MUST not trigger any SPF Note that a change in PCED information MUST not trigger any SPF
computation. computation.
The way PCEs retrieve their own information is out of the scope of The way PCEs retrieve their own information is out of the scope of
this document. Some information may be configured on the PCE (e.g. this document. Some information may be configured on the PCE (e.g.
address, preferences, scope) and other information may be address, preferences, scope) and other information may be
automatically retrieved by the PCE (e.g. areas of visibility). automatically retrieved by the PCE (e.g. areas of visibility).
5.3.2. PCES TLV procedure 5.3.1. PCES TLV specific procedures
A router MUST originate a new OSPF router information LSA whenever
the content of the PCES TLV changes or whenever required by the
regular OSPF procedure (LSA refresh (every LSRefreshTime)).
When a PCE enters into a processing congestion state, the conditions When a PCE enters into a processing congestion state, the conditions
of which are implementation dependent, it SHOULD originate a Router of which are implementation dependent, it SHOULD originate a Router
Information LSA with a PCES TLV with the C bit set, and optionally a Information LSA with a PCES TLV with the C bit set, and optionally a
non-null expected congestion duration. non-null expected congestion duration.
When a PCE leaves the processing congestion state, the conditions of When a PCE leaves the processing congestion state, the conditions of
which are implementation dependent, there are two cases: which are implementation dependent, there are two cases:
- If the congestion duration in the previously originated PCES - If the congestion duration in the previously originated PCES
TLV was null, it SHOULD originate a PCES TLV with the C bit cleared TLV was null, it SHOULD originate a PCES TLV with the C bit cleared
and a null congestion duration; and a null congestion duration;
- If the congestion duration in the previously originated PCES - If the congestion duration in the previously originated PCES
TLV was non null, it MAY not originate a PCES TLV. Note that in some TLV was non null, it MAY originate a PCES TLV. Note that in some
particular cases it may be desired to originate a PCES TLV with the C particular cases it may be desired to originate a PCES TLV with the C
bit cleared if the saturation duration was over estimated. bit cleared if the saturation duration was over estimated.
The congestion duration allows reducing the amount of OSPF flooding, The congestion duration allows reducing the amount of OSPF flooding,
as only uncongested-congested state transitions are flooded. as only uncongested-congested state transitions are flooded.
It is expected that a proper implementation will support dampening An implementation SHOULD support an appropriate dampening algorithm
algorithms so as to dampen OSPF flooding in order to not impact the so as to dampen OSPF flooding in order to not impact the OSPF
OSPF scalability. It is recommended to introduce some hysteresis for scalability. It is RECOMMENDED to introduce some hysteresis for
saturation state transition, so as to avoid state oscillations that congestion state transition, so as to avoid state oscillations that
may impact OSPF performances. For instance two thresholds could be may impact OSPF performances. For instance two thresholds MAY be
configured: A resource saturation upper-threshold and a resource configured: A resource saturation upper-threshold and a resource
saturation lower-threshold. An LSR enters the congested state when saturation lower-threshold. An LSR enters the congested state when
the CPU load reaches the upper threshold and leaves the congested the CPU load reaches the upper threshold and leaves the congested
state when the CPU load goes under the lower threshold. state when the CPU load goes under the lower threshold.
Upon receipt of an updated PCES TLV a PCC should take appropriate Upon receipt of an updated PCES TLV a PCC should take appropriate
actions. In particular, the PCC should stop sending requests to a actions. In particular, the PCC SHOULD stop sending requests to a
congested PCE, and should gradually start sending again requests to a congested PCE, and SHOULD gradually start sending again requests to a
no longer congested PCE. Such PCC procedures are out of the scope of no longer congested PCE.
this document.
6. ISIS extensions 6. ISIS extensions
6.1. IS-IS PCED TLV format 6.1. IS-IS PCED TLV format
The IS-IS PCED TLV is made of various non ordered sub-TLVs. The IS-IS PCED TLV is made of various non ordered sub-TLVs.
The format of the IS-IS PCED TLV and its sub-TLVs is the same as the The format of the IS-IS PCED TLV and its sub-TLVs is the same as the
TLV format used by the Traffic Engineering Extensions to IS-IS [ISIS- TLV format used by the Traffic Engineering Extensions to IS-IS [ISIS-
TE]. That is, the TLV is composed of 1 octet for the type, 1 octet TE]. That is, the TLV is composed of 1 octet for the type, 1 octet
skipping to change at page 19, line 37 skipping to change at page 21, line 37
1 variable PCE-ADDRESS sub-TLV 1 variable PCE-ADDRESS sub-TLV
2 3 PATH-SCOPE sub-TLV 2 3 PATH-SCOPE sub-TLV
3 variable PCE-DOMAINS sub-TLV 3 variable PCE-DOMAINS sub-TLV
4 variable PCE-DEST-DOMAINS sub-TLV 4 variable PCE-DEST-DOMAINS sub-TLV
5 variable GENERAL-CAP sub-TLV 5 variable GENERAL-CAP sub-TLV
6 variable PATH-COMP-CAP sub-TLV 6 variable PATH-COMP-CAP sub-TLV
The sub-TLVs PCE-ADDRESS and PATH-SCOPE MUST always be present within The sub-TLVs PCE-ADDRESS and PATH-SCOPE MUST always be present within
the PCED TLV. the PCED TLV.
The sub-TLVs PCE-DOMAINS and PCE-DEST-DOMAINS are optional. They MUST The sub-TLVs PCE-DOMAINS and PCE-DEST-DOMAINS are optional. They MAY
be present only in some specific inter-domain cases. be present in some specific inter-domain cases.
The GENERAL-CAP and PATH-COMP-CAP are optional and MAY be present in The GENERAL-CAP and PATH-COMP-CAP are optional and MAY be present in
the PCED TLV to facilitate the PCE selection process. the PCED TLV to facilitate the PCE selection process.
Any non recognized sub-TLV MUST be silently ignored. Any non recognized sub-TLV MUST be silently ignored.
Additional sub-TLVs could be added in the future to advertise Additional sub-TLVs could be added in the future to advertise
additional PCE information. additional PCE information.
The PCED TLV is carried within an ISIS CAPABILITY TLV defined in The PCED TLV is carried within an ISIS CAPABILITY TLV defined in
[ISIS-CAP], whose S bit is determined by the desired flooding scope. [ISIS-CAP], whose S bit is determined by the desired flooding scope.
6.1.1. PCE-ADDRESS sub-TLV 6.1.1. PCE-ADDRESS sub-TLV
The PCE-ADDRESS sub-TLV specifies the IP address that MUST be used to The PCE-ADDRESS sub-TLV specifies the IP address(es) that MUST be
reach the PCE. It is RECOMMENDED to make use of a loop-back addresse used to reach the PCE. It is RECOMMENDED to make use of an address
that is always reachable, provided the PCE is alive. that is always reachable, provided the PCE is alive.
The PCE-ADDRESS sub-TLV is mandatory; it MUST be present within the The PCE-ADDRESS sub-TLV is mandatory; it MUST be present within the
PCED TLV. PCED TLV. It MAY appear twice, when the PCE has both an IPv4 and
IPv6 address. It MUST not appear more than twice.
The PCE-ADDRESS sub-TLV has the following format: The PCE-ADDRESS sub-TLV has the following format:
TYPE: To be assigned by IANA (Suggested value =1) TYPE: To be assigned by IANA (Suggested value =1)
LENGTH: 4 for IPv4 address and 16 for IPv6 address LENGTH: 4 for IPv4 address and 16 for IPv6 address
VALUE: This comprises one octet indicating the address-type and 4 VALUE: This comprises one octet indicating the address-type and 4
or 16 octets encoding the IPv4 or IPv6 address to be used or 16 octets encoding the IPv4 or IPv6 address to be used
to reach the PCE to reach the PCE
Address-type: Address-type:
1 IPv4 1 IPv4
2 IPv6 2 IPv6
The PCE-ADDRESS sub-TLV MUST appear at least once in the PCED sub-LTV The P in the PCED sub-LTV
originated by a PCE. It MAY appear multiple times, for instance when originated by a PCE. It MAY appear multiple times, for instance when
the PCE has both an IPv4 and IPv6 address. the PCE has both an IPv4 and IPv6 address. It MUST not appear more
than two times.
6.1.2. The PATH-SCOPE sub-TLV 6.1.2. The PATH-SCOPE sub-TLV
The PATH-SCOPE sub-TLV indicates the PCE path computation scope which The PATH-SCOPE sub-TLV indicates the PCE path computation scope which
refers to the PCE ability to compute or take part into the refers to the PCE ability to compute or take part into the
computation of intra-area, inter-area, inter-AS or inter-layer_TE computation of intra-area, inter-area, inter-AS or inter-layer_TE
LSP(s). LSP(s).
The PATH-SCOPE sub-TLV is mandatory; it MUST be present within the The PATH-SCOPE sub-TLV is mandatory; it MUST be present within the
PCED TLV. There MUST be exactly one PATH-SCOPE sub-TLV within each PCED TLV. There MUST be exactly one PATH-SCOPE sub-TLV within each
skipping to change at page 22, line 16 skipping to change at page 24, line 22
configure a preference to each PCE so as to balance the path configure a preference to each PCE so as to balance the path
computation load among them, with respect to their respective CPU computation load among them, with respect to their respective CPU
capacity. The algorithms used by a PCC to balance its path capacity. The algorithms used by a PCC to balance its path
computation requests according to such PCE’s preference is out of the computation requests according to such PCE’s preference is out of the
scope of this document. Same or distinct preferences may be used for scope of this document. Same or distinct preferences may be used for
different scopes. For instance an operator that wants a PCE capable different scopes. For instance an operator that wants a PCE capable
of both inter-area and inter-AS computation to be used preferably for of both inter-area and inter-AS computation to be used preferably for
inter-AS computation may configure a PrefS higher than the PrefR. inter-AS computation may configure a PrefS higher than the PrefR.
When the L bit, R bit, S or Y bit are cleared the PrefL, PrefR, When the L bit, R bit, S or Y bit are cleared the PrefL, PrefR,
PrefS, PrefY bit MUST respectively be set to 0. PrefS, PrefY fields MUST respectively be set to 0.
6.1.3. PCE-DOMAINS sub-TLV 6.1.3. PCE-DOMAINS sub-TLV
The PCE-DOMAINS sub-TLV specifies the set of domains (areas or AS) The PCE-DOMAINS sub-TLV specifies the set of domains (areas or AS)
where the PCE has topology visibility and can compute paths. It where the PCE has topology visibility and can compute paths. It
contains a set of one or more sub-TLVs where each sub-TLV identifies contains a set of one or more sub-TLVs where each sub-TLV identifies
a domain. a domain.
The PCE-DOMAINS sub-TLV MUST be present when PCE domains cannot be The PCE-DOMAINS sub-TLV MUST be present when PCE domains cannot be
inferred by other IGP information, for instance when the PCE is inferred by other IGP information, for instance when the PCE is
skipping to change at page 23, line 50 skipping to change at page 26, line 8
The PCE-DEST-DOMAINS sub-TLV MUST include at least one DOMAIN sub- The PCE-DEST-DOMAINS sub-TLV MUST include at least one DOMAIN sub-
TLV. It MUST include at least one area ID sub-TLV, if the R bit of TLV. It MUST include at least one area ID sub-TLV, if the R bit of
the PATH-SCOPE TLV is set and the Rd bit of the PATH-SCOPE TLV is the PATH-SCOPE TLV is set and the Rd bit of the PATH-SCOPE TLV is
cleared. Similarly, it MUST include at least one AS number sub-TLV if cleared. Similarly, it MUST include at least one AS number sub-TLV if
the S bit of the PATH-SCOPE TLV is set and the Sd bit of the PATH- the S bit of the PATH-SCOPE TLV is set and the Sd bit of the PATH-
SCOPE TLV is cleared. SCOPE TLV is cleared.
6.1.5. GENERAL-CAP sub-TLV 6.1.5. GENERAL-CAP sub-TLV
The GENERAL-CAP sub-TLV is an optional TLV used to indicate PCECP The GENERAL-CAP sub-TLV is an optional TLV used to indicate PCECP
related capabilities. related capabilities. It carries a 32-bit flag, where each bit
This is a series of bits flags, where each bit corresponds to a corresponds to a general PCE capability. It MAY also include optional
general PCE capability. It MAY also include optional sub-TLVs to sub-TLVs to encode more complex capabilities.
encode more complex capabilities.
The GENERAL-CAP sub-TLV has the following format: The GENERAL-CAP sub-TLV has the following format:
TYPE: To be assigned by IANA (Suggested value =4) TYPE: To be assigned by IANA (Suggested value =4)
LENGTH: It is set to N. N starts from 1 and can be increased when LENGTH: Variable
there is a need. Each octet is referred to as a VALUE: This comprises a 32-bit General Capabilities flag where
capability flag. each bit corresponds to a general PCE capability, and
VALUE: This comprises one or more general PCE capability optional sub-TLVs that may be defined to specify more
flags. complex capabilities. Currently no sub-TLVs are defined.
The following bits in the first capability flag are to be assigned by The following bits in the General Capabilities 32-bit flag are to be
IANA: assigned by IANA:
0 1 2 3 4 5 6 7 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|P|M| Reserved | |P|M| Reserved |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
P bit: Support for request prioritization. Bit Capabilities
M bit: Support for multiple messages within the same request message.
Reserved bits are for future assignment by IANA. 0 P bit: Support for Request prioritization.
1 M bit: Support for multiple messages within the same
request message.
2-31 Reserved for future assignments by IANA.
6.1.6. The PATH-COMP-CAP sub-TLV 6.1.6. The PATH-COMP-CAP sub-TLV
The PATH-COMP-CAP sub-TLV is an optional TLV used to indicate path The PATH-COMP-CAP sub-TLV is an optional TLV used to indicate path
computation specific capabilities of a PCE. computation specific capabilities of a PCE.
This is a series of bit flags, where each bit correspond to a path This is a 32-bit flag, where each bit corresponds to a path
computation capability. It MAY also include optional sub-TLVs to computation capability. It MAY also include optional sub-TLVs to
encode more complex capabilities. encode more complex capabilities.
The PATH-COMP-CAP sub-TLV has the following format: The PATH-COMP-CAP sub-TLV has the following format:
TYPE: To be assigned by IANA (suggested value = 5) TYPE: To be assigned by IANA (suggested value = 5)
LENGTH: It is set to N. N starts from 1 and can be increased LENGTH: Variable
when there is a need. Each octet is referred to as a VALUE: This comprises one 32 bit Path Computation Capabilities
capability flag. Flag, where each bit corresponds to a path computation
VALUE: This comprises one or more Path Computation specific PCE capability, and optional sub-TLVs that may be defined to
capability flags. specify more complex capabilities. Three optional sub-TLVs
are currently defined.
The following bits in the first capability flag are to be assigned by The following bits in the Path Computation Capabilities 32-bit Flag
IANA. are to be assigned by IANA:
0 1 2 3 4 5 6 7 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
|M|G|D|L|S|0|Res|
+-+-+-+-+-+-+-+-+
G bit: Capability to handle GMPLS constraints +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
B bit: Capability to compute bidirectional paths ||M|G|D|L|S|0|P Reserved |
D bit: Capability to compute link/node/SRLG diverse paths +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
L bit: Capability to compute load-balanced paths
S bit: Capability to compute a set of paths in a Bit Capabilities
0 G bit: Capability to handle GMPLS link contraints
1 B bit: Capability to compute bidirectional paths
2 D bit: Capability to compute link/node/SRLG diverse paths
3 L bit: Capability to compute load-balanced paths
4 S bit: Capability to compute a set of paths in a
synchronized Manner synchronized Manner
O bit: Support for multiple objective functions 5 O bit: Support for multiple objective functions
6 P bit: Capability to handle path constraints (e.g. hop
count, metric bound)
Reserved bits are for future assignment by IANA. 7-31 Reserved for future assignments by IANA.
The G, B, D, L, S and O bits are not exclusive. The G, B, D, L, S, O and P bits are not exclusive.
Three optional sub-TLVs are currently defined for the PATH-COMP-CAP
TLV:
- The Objective Functions sub-TLV (type to be defined, suggested
value =1) that carries a list of supported objective functions,
where each objective function is identified by a 16 bit integer.
- The Opaque Objective Function sub-TLV (type to be defined,
suggested value =2) that allows the user to encode a specific
objective function in any appropriate language.
- The Switch Caps sub-TLV (type to be defined, suggested value =3)
that carries a list of supported switching capabilities. This
means that the PCE can compute paths for the listed switching
capabilities.
6.1.6.1. Objective Functions sub-TLV
The format of the Objective Functions sub-TLV is as follows:
TYPE: To be defined by IANA (suggested value =1)
LENGTH: Variable (N*2)
VALUE: This comprises a set of one or more 16 bit function
ids, where each function id identifies a supported
objective functions.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| function 1 | function 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| function N | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Objectives functions and their identification will be defined in a
separate document.
The Objective Functions sub-TLV is optional. It MAY be present within
the PATH-COMP-CAP TLV. When present it MUST be present only once in
the PATH-COMP-CAP TLV.
6.1.6.2. Opaque Objective Function sub-TLV
The format of the Opaque Objective Function sub-TLV is as follows:
TYPE: To be defined by IANA (suggested value =2)
LENGTH: Variable
VALUE: This encode a specific objective function in any
appropriate language.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Opaque objective function |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The Opaque Objective function sub-TLV is optional. The PATH-COMP-CAP TLV
MAY comprise 0, one or more Opaque Objective Functions.
6.1.6.3. Switch Caps sub-TLV
The format of the Switch Caps sub-TLV is as follows:
TYPE To be defined by IANA (suggested value =3)
LENGTH Variable = N, where N is the number of supported
switching capabilities
VALUE This comprises a set of one or more 8-bit switching
types, where each switching types identifies a
supported switching capability.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SC type | SC type | SC type | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Switching type values are defined in [RFC4205].
The Switch Caps sub-TLV is optional. It MAY be present in the PATH-COMP-
CAP TLV. When present it MUST be present only once in the PATH-COMP-CAP
TLV.
6.2. The ISIS PCES TLV 6.2. The ISIS PCES TLV
The ISIS PCE Status TLV (PCES TLV) carries information related to PCE The ISIS PCE Status TLV (PCES TLV) carries information related to PCE
processing congestion state. processing congestion state.
The PCES TLV is carried within an ISIS Capability TLV which is The PCES TLV is carried within an ISIS Capability TLV which is
defined in [ISIS-CAP]. defined in [ISIS-CAP].
The ISIS PCES TLV has the following format: The ISIS PCES TLV has the following format:
skipping to change at page 26, line 19 skipping to change at page 30, line 36
Here is the TLV structure Here is the TLV structure
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|C| Reserved| Congestion Duration | |C| Reserved| Congestion Duration |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Value Value
-C bit: When set this indicates that the PCE experiences -C bit: When set this indicates that the PCE experiences
congestion and cannot support any new request. When congestion and cannot support any new request. When
cleared this indicates that the PCE does not cleared this indicates that the PCE does not
experiences congestion an can support a new request. experience congestion an can support a new request.
-Congestion Duration: 2-bytes, the estimated PCE congestion -Congestion Duration: 2-bytes, the estimated PCE congestion
duration in seconds. duration in seconds.
When C is set and the Congestion Duration field is equal to 0, this When C is set and the Congestion Duration field is equal to 0, this
means that the Congestion Duration is unknown. means that the Congestion Duration is unknown.
When C is cleared the Congestion Duration MUST be set to 0. When C is cleared the Congestion Duration MUST be set to 0.
6.3. Elements of Procedure 6.3. Elements of Procedure
The PCED and PCES TLV are carried within an ISIS Capability TLV which The PCED and PCES TLV are carried within an ISIS Capability TLV which
is defined in [ISIS-CAP]. As PCES information is likely to change is defined in [ISIS-CAP].
more frequently than the PCED information, it is RECOMMENDED to carry
PCES and PCED TLVs in separate ISIS Capability TLVs, so as not to
carry all PCED information each time the PCE status changes.
6.3.1. PCED TLV Procedure As PCES information is likely to change more frequently than the PCED
information, it is RECOMMENDED to carry PCES and PCED TLVs in
separate ISIS Capability TLVs, so as not to carry all PCED
information each time the PCE status changes.
An ISIS router MUST originate a new ISIS LSP whenever the content An ISIS router MUST originate a new ISIS LSP whenever the content
of any of the PCED TLV changes or whenever required by the regular of any of the PCED TLV or PCES TLV changes or whenever required by
ISIS procedure (LSP refresh). the regular ISIS procedure (LSP refresh).
When the scope of the PCED TLV is area local it MUST be carried When the scope of the PCED or PCES TLV is area local it MUST be
within an ISIS CAPABILITY TLV having the S bit cleared. carried within an ISIS CAPABILITY TLV having the S bit cleared.
When the scope of the PCED TLV is the entire domain, the PCED TLV When the scope of the PCED or PCES TLV is the entire IGP domain, the
MUST be carried within an ISIS CAPABILITY TLV having the S bit set. PCED TLV MUST be carried within an ISIS CAPABILITY TLV having the S
bit set.
Note that when only the L bit of the PATH-SCOPE sub-TLV is set and Note that when only the L bit of the PATH-SCOPE sub-TLV is set and
the flooding scope MUST be local. the flooding scope MUST be local.
Note that the flooding scope of the PCED and PCES TLVs may be
distinct, in which case they are carried in distinct ISIS Capability
TLVs.
PCED sub-TLVs are OPTIONAL. When an ISIS LSP does not contain PCED and PCES sub-TLVs are OPTIONAL. When an ISIS LSP does not
any PCED sub-TLV, this means that the PCE information of contain any PCED or PCES sub-TLV, this means that the PCE information
that node is unknown. of that node is unknown.
Note that a change in PCED information MUST not trigger any SPF Note that a change in PCED information MUST not trigger any SPF
computation. computation.
The way PCEs retrieve their own information is out of the scope of The way PCEs retrieve their own information is out of the scope of
this document. Some information may be configured (e.g. address, this document. Some information may be configured (e.g. address,
preferences, scope) and other information may be automatically preferences, scope) and other information may be automatically
retrieved (e.g. areas of visibility). retrieved (e.g. areas of visibility).
6.3.2. PCES TLV procedure 6.3.1. PCES TLV specific procedure
An ISIS router MUST originate a new ISIS LSP whenever the content
of any of the PCES TLV changes or whenever required by the regular
IS-IS procedure (LSP refresh).
When a PCE enters into a processing congestion state, the conditions When a PCE enters into a processing congestion state, the conditions
of which are implementation dependent, it SHOULD originate a new ISIS of which are implementation dependent, it SHOULD originate a new ISIS
LSP with a Capability TLV carrying a PCES TLV with the C bit set and LSP with a Capability TLV carrying a PCES TLV with the C bit set and
optionally a non-null expected congestion duration. optionally a non-null expected congestion duration.
When a PCE leaves the processing congestion state, the conditions of When a PCE leaves the processing congestion state, the conditions of
which are implementation dependent, there are two cases: which are implementation dependent, there are two cases:
- If the congestion duration in the previously originated PCES - If the congestion duration in the previously originated PCES
TLV was null, it SHOULD originate a PCES TLV with the C bit cleared TLV was null, it SHOULD originate a PCES TLV with the C bit cleared
and a null congestion duration; and a null congestion duration;
- If the congestion duration in the previously originated PCES - If the congestion duration in the previously originated PCES
TLV was non null, it MAY not originate a PCES TLV. Note that in some TLV was non null, it MAY originate a PCES TLV. Note that in some
particular cases it may be desired to originate a PCES TLV with the C particular cases it may be desired to originate a PCES TLV with the C
bit cleared if the saturation duration was over estimated. bit cleared if the saturation duration was over estimated.
The congestion duration allows reducing the amount of ISIS flooding, The congestion duration allows reducing the amount of ISIS flooding,
as only uncongested-congested state transitions are flooded. as only uncongested-congested state transitions are flooded.
It is expected that a proper implementation will support dampening An implementation SHOULD support an appropriate dampening algorithm
algorithms so as to dampen ISIS flooding in order to not impact the so as to dampen ISIS flooding in order to not impact the ISIS
ISIS scalability. It is recommended to introduce some hysteresis for scalability. It is RECOMMENDED to introduce some hysteresis for
congestion state transition, so as to avoid state oscillations that congestion state transition, so as to avoid state oscillations that
may impact ISIS performances. For instance two thresholds could be may impact ISIS performances. For instance two thresholds MAY be
configured: A resource saturation upper-threshold and a resource configured: A resource saturation upper-threshold and a resource
saturation lower-threshold. An LSR enters the congested state when saturation lower-threshold. An LSR enters the congested state when
the CPU load reaches the upper threshold and leaves the congested the CPU load reaches the upper threshold and leaves the congested
state when the CPU load goes under the lower threshold. state when the CPU load goes under the lower threshold.
Upon receipt of an updated PCES TLV a PCC should take appropriate Upon receipt of an updated PCES TLV a PCC should take appropriate
actions. In particular, the PCC should stop sending requests to a actions. In particular, the PCC SHOULD stop sending requests to a
congested PCE, and should gradually start sending again requests to a congested PCE, and SHOULD gradually start sending again requests to a
no longer congested PCE. Such PCC procedures are out of the scope of no longer congested PCE.
this document.
7. Backward compatibility 7. Backward compatibility
The PCED and PCEs TLVs defined in this document do not introduce any The PCED and PCES TLVs defined in this document do not introduce any
interoperability issue. interoperability issue.
For OSPF, a router not supporting the PCED/PCES TLVs SHOULD just For OSPF, a router not supporting the PCED/PCES TLVs SHOULD just
silently ignore the TLVs as specified in [RFC2370]. silently ignore the TLVs as specified in [OSPF-CAP].
For ISIS a router not supporting the PCED/PCES TLVs SHOULD just For ISIS a router not supporting the PCED/PCES TLVs SHOULD just
silently ignore the TLV. silently ignore the TLV as specified in [ISIS-CAP].
8. IANA considerations 8. IANA considerations
8.1. OSPF TLVs 8.1. OSPF TLVs
IANA will assign a new codepoint for the OSPF PCED TLV defined in IANA will assign a new codepoint for the OSPF PCED TLV defined in
this document and carried within the Router Information LSA. this document and carried within the Router Information LSA.
IANA is requested to manage sub-TLV types for the PCED TLV.
Five sub-TLVs types are defined for this TLV and should be assigned Five sub-TLVs types are defined for this TLV and should be assigned
by IANA: by IANA:
-PCE-ADDRESS sub-TLV (suggested value = 1) -PCE-ADDRESS sub-TLV (suggested value = 1)
-PATH-SCOPE sub-TLV (suggested value = 2) -PATH-SCOPE sub-TLV (suggested value = 2)
-PCE-DOMAINS sub-TLV (suggested value = 3) -PCE-DOMAINS sub-TLV (suggested value = 3)
-PCE-DEST-DOMAINS sub-TLV (suggested value =4) -PCE-DEST-DOMAINS sub-TLV (suggested value =4)
-GENERAL-CAP sub-TLV (suggested value = 5) -GENERAL-CAP sub-TLV (suggested value = 5)
-PATH-COMP-CAP sub-TLV (suggested value = 6) -PATH-COMP-CAP sub-TLV (suggested value = 6)
Three sub-TLVs types are defined for the PCE-DOMAINS and PCE-DEST- Three sub-TLVs types are defined for the PCE-DOMAINS and PCE-DEST-
DOMAINS TLVs and should be assigned by IANA: DOMAINS TLVs and should be assigned by IANA:
-IPv4 area ID sub-TLV (suggested value = 1) -IPv4 area ID sub-TLV (suggested value = 1)
-IPv6 area ID sub-TLV (suggested value = 2) -IPv6 area ID sub-TLV (suggested value = 2)
-AS number sub-TLV (suggested value = 3) -AS number sub-TLV (suggested value = 3)
Three sub-TLV types are defined for the PATH-COMP-CAP TLV and should
be assigned by IANA:
-Objective Functions sub-TLV (suggested value =1)
-Opaque Objective Function TLV (suggested value =2)
-Switch Caps sub-TLV (suggested value =3)
IANA will assign a new codepoint for the OSPF PCES TLV defined in IANA will assign a new codepoint for the OSPF PCES TLV defined in
this document and carried within the Router Information LSA. this document and carried within the Router Information LSA.
Two sub-TLVs types are defined for this TLV and should be assigned by IANA is requested to manage sub-TLV types for the PCES TLV. Two sub-
IANA: TLVs types are defined for this TLV and should be assigned by IANA:
-PCE-ADDRESS sub-TLV (suggested value = 1) -PCE-ADDRESS sub-TLV (suggested value = 1)
-CONGESTION sub-TLV (suggested value = 2) -CONGESTION sub-TLV (suggested value = 2)
8.2. ISIS TLVs 8.2. ISIS TLVs
IANA will assign a new codepoint for the PCED TLV defined in this IANA will assign a new codepoint for the PCED TLV defined in this
document and carried within the ISIS CAPABILITY TLV. document and carried within the ISIS CAPABILITY TLV.
IANA is requested to manage sub-TLV types for the PCED TLV.
Five sub-TLVs types are defined for the PCED TLV and should be Five sub-TLVs types are defined for the PCED TLV and should be
assigned by IANA: assigned by IANA:
-PCE-ADDRESS sub-TLV (suggested value = 1) -PCE-ADDRESS sub-TLV (suggested value = 1)
-PATH-SCOPE sub-TLV (suggested value = 2) -PATH-SCOPE sub-TLV (suggested value = 2)
-PCE-DEST-DOMAINS sub-TLV (suggested value = 3) -PCE-DEST-DOMAINS sub-TLV (suggested value = 3)
-PCE-DOMAINS sub-TLV (suggested value = 4) -PCE-DOMAINS sub-TLV (suggested value = 4)
-GENERAL-CAP sub-TLV (suggested value = 5) -GENERAL-CAP sub-TLV (suggested value = 5)
-PATH-COMP-CAP sub-TLV (suggested value = 6) -PATH-COMP-CAP sub-TLV (suggested value = 6)
Two sub-TLVs types are defined for the PCE-DOMAINS and PCE-DEST- Two sub-TLVs types are defined for the PCE-DOMAINS and PCE-DEST-
DOMAINS TLVs and should be assigned by IANA: DOMAINS TLVs and should be assigned by IANA:
-Area ID sub-TLV (suggested value = 1) -Area ID sub-TLV (suggested value = 1)
-AS number sub-TLV (suggested value = 2) -AS number sub-TLV (suggested value = 2)
Three sub-TLV type are defined for the PATH-COMP-CAP TLV and should
be assigned by IANA:
-Objective Functions TLV (suggested value =1)
-Opaque Objective Function TLV (suggested value =2)
-Switch Caps sub-TLV (suggested value =3)
IANA will assign a new codepoint for the ISIS PCES TLV defined in IANA will assign a new codepoint for the ISIS PCES TLV defined in
this document and carried within the ISIS CAPABILITY TLV. this document and carried within the ISIS CAPABILITY TLV.
IANA is requested to manage sub-TLV types for the PCES TLV. Two sub-
Two sub-TLVs types are defined for this TLV and should be assigned by TLVs types are defined for this TLV and should be assigned by IANA:
IANA:
-PCE-ADDRESS sub-TLV (suggested value = 1) -PCE-ADDRESS sub-TLV (suggested value = 1)
-CONGESTION sub-TLV (suggested value = 2) -CONGESTION sub-TLV (suggested value = 2)
8.3. Capability bits 8.3. Capability bits
IANA is requested to manage the space of general and path computation IANA is requested to manage the space of the General Capabilities
specific PCE capability bits flags, numbering them in the usual IETF 32-bit flag and the Path Computation Capabilities 32-bit flag defined
notation starting at zero and continuing at least through 31. in this document, numbering them in the usual IETF notation starting
at zero and continuing through 31.
New bit numbers may be allocated only by an IETF Consensus action. New bit numbers may be allocated only by an IETF Consensus action.
Each bit should be tracked with the following qualities: Each bit should be tracked with the following qualities:
- Bit number - Bit number
- Defining RFC - Defining RFC
- Name of bit - Name of bit
Currently two bits are defined in the General Capabilities flag. Here
Currently two bits are defined in the first general PCE capability are the suggested values:
flag. Here are the suggested values:
-0: Support for Request prioritization. -0: Support for Request prioritization.
-1: Support for multiple messages within the same request message -1: Support for multiple messages within the same request message
Currently six bits are defined in the first path computation specific Currently six bits are defined in the Path Computation Capabilities
PCE capability flag. Here are the suggested values: flag. Here are the suggested values:
-0: Capability to handle GMPLS Constraints -0: Capability to handle GMPLS Constraints
-1: Capability to compute bidirectional paths -1: Capability to compute bidirectional paths
-2: Capability to compute link/node/SRLG diverse paths -2: Capability to compute link/node/SRLG diverse paths
-3: Capability to compute load-balanced paths -3: Capability to compute load-balanced paths
-4: Capability to compute a set of paths in a -4: Capability to compute a set of paths in a
synchronized Manner synchronized Manner
-5: Support for multiple objective functions -5: Support for multiple objective function
-6: Capability to handle path constraints (e.g. hop count, metric
bound)
9. Security Considerations 9. Security Considerations
To be completed in further revisions. To be completed in further revisions.
10. References 10. References
10.1. Normative references 10.1. Normative references
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC3667] Bradner, S., "IETF Rights in Contributions", BCP 78, RFC [RFC3667] Bradner, S., "IETF Rights in Contributions", BCP 78, RFC
3667, February 2004. 3667, February 2004.
[BCP79] Bradner, S., "Intellectual Property Rights in IETF [BCP79] Bradner, S., "Intellectual Property Rights in IETF
Technology", RFC 3979, March 2005. Technology", RFC 3979, March 2005.
[OSPF-v2] Moy, J., "OSPF Version 2", RFC 2328, April 1998. [OSPF-v2] Moy, J., "OSPF Version 2", RFC 2328, April 1998.
[OSPF-v3] Coltun, R., Ferguson, D., and J. Moy, "OSPF for IPv6",
RFC 2740, December 1999.
[RFC2370] Coltun, R., “The OSPF Opaque LSA Option”, RFC 2370, July [RFC2370] Coltun, R., “The OSPF Opaque LSA Option”, RFC 2370, July
1998. 1998.
[IS-IS] "Intermediate System to Intermediate System Intra-Domain [IS-IS] "Intermediate System to Intermediate System Intra-Domain
Routing Exchange Protocol " ISO 10589. Routing Exchange Protocol " ISO 10589.
[IS-IS-IP] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and [IS-IS-IP] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and
dual environments", RFC 1195, December 1990. dual environments", RFC 1195, December 1990.
[OSPF-TE] Katz, D., Yeung, D., Kompella, K., "Traffic Engineering [OSPF-TE] Katz, D., Yeung, D., Kompella, K., "Traffic Engineering
skipping to change at page 30, line 34 skipping to change at page 35, line 22
[IS-IS-CAP] Vasseur, J.P. et al., "IS-IS extensions for advertising [IS-IS-CAP] Vasseur, J.P. et al., "IS-IS extensions for advertising
router information", draft-ietf-isis-caps, work in progress. router information", draft-ietf-isis-caps, work in progress.
[PCE-ARCH] Farrel, A., Vasseur, J.P., Ash, J., "Path Computation [PCE-ARCH] Farrel, A., Vasseur, J.P., Ash, J., "Path Computation
Element (PCE) Architecture", draft-ietf-pce-architecture, work in Element (PCE) Architecture", draft-ietf-pce-architecture, work in
progress. progress.
[PCE-DISCO-REQ] Le Roux, J.L., et al. "Requirements for PCE [PCE-DISCO-REQ] Le Roux, J.L., et al. "Requirements for PCE
discovery", draft-ietf-pce-discovery-reqs, work in progress discovery", draft-ietf-pce-discovery-reqs, work in progress
[RFC4203] Kompella, Rekhter, " OSPF Extensions in Support of
Generalized Multi-Protocol Label Switching (GMPLS)", RFC4203, October
2005.
[RFC4205] Kompella, Rekhter, " IS-IS Extensions in Support of
Generalized Multi-Protocol Label Switching (GMPLS)", RFC4205, October
2005.
10.2. Informative references 10.2. Informative references
[PCECP-REQ] Ash, J., Le Roux, J.L., " PCE Communication Protocol [PCECP-REQ] Ash, J., Le Roux, J.L., " PCE Communication Protocol
Generic Requirements", draft-ietf-pce-comm-protocol-gen-reqs, work in Generic Requirements", draft-ietf-pce-comm-protocol-gen-reqs, work in
progress. progress.
[PCEP] Vasseur et al., “Path Computation Element (PCE) communication [PCEP] Vasseur et al., “Path Computation Element (PCE) communication
Protocol (PCEP) - Version 1”, draft-ietf-pce-pcep-01.txt, work in Protocol (PCEP) - Version 1”, draft-ietf-pce-pcep, work in progress.
progress.
11. Authors' Addresses: 11. Authors' Addresses:
Jean-Louis Le Roux (Editor) Jean-Louis Le Roux (Editor)
France Telecom France Telecom
2, avenue Pierre-Marzin 2, avenue Pierre-Marzin
22307 Lannion Cedex 22307 Lannion Cedex
FRANCE FRANCE
Email: jeanlouis.leroux@francetelecom.com Email: jeanlouis.leroux@francetelecom.com
 End of changes. 102 change blocks. 
250 lines changed or deleted 448 lines changed or added

This html diff was produced by rfcdiff 1.32. The latest version is available from http://www.levkowetz.com/ietf/tools/rfcdiff/