draft-ietf-pce-disco-proto-isis-05.txt   draft-ietf-pce-disco-proto-isis-06.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
Intended Status: Standards Track Intended Status: Standard Track
Expires: November 2007 J.P. Vasseur (Editor) Expires: December 2007 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
IS-IS protocol extensions for Path Computation Element (PCE) Discovery IS-IS protocol extensions for Path Computation Element (PCE) Discovery
draft-ietf-pce-disco-proto-isis-05.txt draft-ietf-pce-disco-proto-isis-06.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 Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 2, line 33 skipping to change at page 2, line 33
"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 [RFC2119]. document are to be interpreted as described in [RFC2119].
Table of Contents Table of Contents
1. Terminology.................................................3 1. Terminology.................................................3
2. Introduction................................................4 2. Introduction................................................4
3. Overview....................................................5 3. Overview....................................................5
3.1. PCE Information.............................................5 3.1. PCE Information.............................................5
3.1.1. PCE Discovery Information...................................5 3.1.1. PCE Discovery Information...................................5
3.1.2. PCE Congestion Information..................................6 3.1.2. PCE Overload Information....................................6
3.2. Flooding Scope..............................................6 3.2. Flooding Scope..............................................6
4. IS-IS Extensions............................................7 4. IS-IS Extensions............................................7
4.1. The IS-IS PCED Sub-TLV......................................7 4.1. The IS-IS PCED Sub-TLV......................................7
4.1.1. PCE-ADDRESS Sub-TLV.........................................8 4.1.1. PCE-ADDRESS Sub-TLV.........................................8
4.1.2. The PATH-SCOPE Sub-TLV......................................8 4.1.2. The PATH-SCOPE Sub-TLV......................................8
4.1.3. PCE-DOMAIN Sub-TLV.........................................10 4.1.3. PCE-DOMAIN Sub-TLV.........................................10
4.1.4. NEIG-PCE-DOMAIN Sub-TLV....................................11 4.1.4. NEIG-PCE-DOMAIN Sub-TLV....................................11
4.1.5. PCE-CAP-FLAGS Sub-TLV......................................11 4.1.5. PCE-CAP-FLAGS Sub-TLV......................................11
4.1.6. The CONGESTION Sub-TLV.....................................12 4.1.6. The OVERLOAD Sub-TLV.......................................12
5. Elements of Procedure......................................13 5. Elements of Procedure......................................13
5.1.1. CONGESTION Sub-TLV Specific Procedures.....................14 5.1.1. OVERLOAD Sub-TLV Specific Procedures.......................14
6. Backward Compatibility.....................................14 6. Backward Compatibility.....................................14
7. IANA Considerations........................................15 7. IANA Considerations........................................14
7.1. IS-IS Sub-TLV..............................................15 7.1. IS-IS Sub-TLV..............................................14
7.2. PCED Sub-TLVs registry.....................................15 7.2. PCED Sub-TLVs registry.....................................15
8. Security Considerations....................................15 8. Security Considerations....................................15
9. Manageability Considerations...............................16 9. Manageability Considerations...............................16
9.1. Control of Policy and Functions............................16 9.1. Control of Policy and Functions............................16
9.2. Information and Data Model.................................16 9.2. Information and Data Model.................................16
9.3. Liveness Detection and Monitoring..........................16 9.3. Liveness Detection and Monitoring..........................16
9.4. Verify Correct Operations..................................16 9.4. Verify Correct Operations..................................16
9.5. Requirements on Other Protocols and Functional 9.5. Requirements on Other Protocols and Functional
Components...............................................16 Components...............................................16
9.6. Impact on Network Operations...............................17 9.6. Impact on Network Operations...............................16
10. Acknowledgments............................................17 10. Acknowledgments............................................17
11. References.................................................17 11. References.................................................17
11.1. Normative References.......................................17 11.1. Normative References.......................................17
11.2. Informative References.....................................18 11.2. Informative References.....................................18
12. Editors' Addresses:........................................18 12. Editors' Addresses:........................................18
13. Contributors' Adresses:....................................18 13. Contributors' Adresses:....................................18
14. Intellectual Property Statement............................19 14. Intellectual Property Statement............................19
1. Terminology 1. Terminology
skipping to change at page 4, line 40 skipping to change at page 4, line 40
distinct capabilities. In such a context it is highly desirable to distinct capabilities. In such a context it is highly desirable to
have a mechanism for automatic and dynamic PCE discovery, which have a mechanism for automatic and dynamic PCE discovery, which
allows PCCs to automatically discover a set of PCEs, along with allows PCCs to automatically discover a set of PCEs, along with
additional information about each PCE that may be required for the additional information about each PCE that may be required for the
PCC to perform PCE selection. Additionally, it is valuable for a PCC PCC to perform PCE selection. Additionally, it is valuable for a PCC
to dynamically detect new PCEs or any modification of the PCE to dynamically detect new PCEs or any modification of the PCE
information. Detailed requirements for such a PCE discovery mechanism information. Detailed requirements for such a PCE discovery mechanism
are provided in [RFC4674]. are provided in [RFC4674].
Moreover, it may also be useful to discover when a PCE experiences Moreover, it may also be useful to discover when a PCE experiences
processing congestion and when it exits such a state, in order for processing overload and when it exits such a state, in order for the
the PCCs to take some appropriate actions (e.g. redirect their PCCs to take some appropriate actions (e.g. redirect their requests
requests to another PCE). Note that the PCE selection algorithm to another PCE). Note that the PCE selection algorithm applied by a
applied by a PCC is out of the scope of this document. PCC is out of the scope of this document.
When PCCs are LSRs participating in the IGP (OSPF, IS-IS), and PCEs When PCCs are LSRs participating in the IGP (OSPF, IS-IS), and PCEs
are either LSRs or servers also participating in the IGP, an are either LSRs or servers also participating in the IGP, an
effective mechanism for PCE discovery within an IGP routing domain effective mechanism for PCE discovery within an IGP routing domain
consists of utilizing IGP advertisements. consists of utilizing IGP advertisements.
This document defines IS-IS extensions to allow a PCE in an IS-IS This document defines IS-IS extensions to allow a PCE in an IS-IS
routing domain to advertise its location along with some information routing domain to advertise its location along with some information
useful to a PCC for PCE selection, so as to satisfy dynamic PCE useful to a PCC for PCE selection, so as to satisfy dynamic PCE
discovery requirements set forth in [RFC4674]. This document also discovery requirements set forth in [RFC4674]. This document also
defines extensions allowing a PCE in an IS-IS routing domain to defines extensions allowing a PCE in an IS-IS routing domain to
advertise its processing congestion state. advertise its processing congestion state.
Generic capability advertisement mechanisms for IS-IS are defined in Generic capability advertisement mechanisms for IS-IS are defined in
[IS-IS-CAP]. These allow a router to advertise its capabilities [IS-IS-CAP]. These allow a router to advertise its capabilities
within an IS-IS area or an entire IS-IS routing domain. This document within an IS-IS area or an entire IS-IS routing domain. This document
leverages this generic capability advertisement mechanism to fully leverages this generic capability advertisement mechanism to fully
satisfy the aforementioned dynamic PCE discovery requirements. satisfy the aforementioned dynamic PCE discovery requirements.
This document defines a new sub-TLV (named PCE Discovery (PCED) to be This document defines a new sub-TLV (named PCE Discovery (PCED)) to
carried within the IS-IS Router Capability TLV ([IS-IS-CAP]). be carried within the IS-IS Router Capability TLV ([IS-IS-CAP]).
The PCE information advertised is detailed in section 3. Protocol The PCE information advertised is detailed in section 3. Protocol
extensions and procedures are defined in section 4 and 5. extensions and procedures are defined in section 4 and 5.
This document does not define any new IS-IS elements of procedure.
The procedures defined in [IS-IS-CAP] MUST be used.
The IS-IS extensions defined in this document allow for PCE discovery The IS-IS extensions defined in this document allow for PCE discovery
within an IS-IS Routing domain. Solutions for PCE discovery across AS within an IS-IS Routing domain. Solutions for PCE discovery across AS
boundaries are beyond the scope of this document, and for further boundaries are beyond the scope of this document, and for further
study. study.
This document defines a set of sub-TLVs that are nested within each This document defines a set of sub-TLVs that are nested within each
other. When the degree of nesting TLVs is 2 (a TLV is carried within other. When the degree of nesting TLVs is 2 (a TLV is carried within
another TLV) the TLV carried within a TLV is called a sub-TLV. another TLV) the TLV carried within a TLV is called a sub-TLV.
Strictly speaking, when the degree of nesting is 3, a subsub-TLV is Strictly speaking, when the degree of nesting is 3, a subsub-TLV is
carried within a sub-TLV that is itself carried within a TLV. For the carried within a sub-TLV that is itself carried within a TLV. For the
sake of terminology simplicity, we refer to sub-TLV, a TLV carried sake of terminology simplicity, we refer to sub-TLV, a TLV carried
within a TLV regardless of the degree of nesting. within a TLV regardless of the degree of nesting.
3. Overview 3. Overview
3.1. PCE Information 3.1. PCE Information
The PCE information advertised via IS-IS falls into two categories: The PCE information advertised via IS-IS falls into two categories:
PCE Discovery information and PCE Congestion information. PCE Discovery information and PCE Overload information.
3.1.1. PCE Discovery Information 3.1.1. PCE Discovery Information
The PCE Discovery information is comprised of: The PCE Discovery information is comprised of:
- The PCE location: an IPv4 and/or IPv6 address that is used to reach - The PCE location: an IPv4 and/or IPv6 address that is used to reach
the PCE. It is RECOMMENDED to use an address that is always the PCE. It is RECOMMENDED to use an address that is always
reachable; reachable;
- The PCE path computation scope (i.e. inter-area, inter-AS, inter- - The PCE path computation scope (i.e. inter-area, inter-AS, inter-
skipping to change at page 6, line 20 skipping to change at page 6, line 15
Optional elements to describe more complex capabilities may also be Optional elements to describe more complex capabilities may also be
advertised. advertised.
PCE Discovery information is by nature fairly static and does not PCE Discovery information is by nature fairly static and does not
change with PCE activity. Changes in PCE Discovery information may change with PCE activity. Changes in PCE Discovery information may
occur as a result of PCE configuration updates, PCE occur as a result of PCE configuration updates, PCE
deployment/activation, PCE deactivation/suppression, or PCE failure. deployment/activation, PCE deactivation/suppression, or PCE failure.
Hence, this information is not expected to change frequently. Hence, this information is not expected to change frequently.
3.1.2. PCE Congestion Information 3.1.2. PCE Overload Information
The PCE Congestion information is optional and can be used to report The PCE Overload Information is optional and can be used to report
a PCE's processing congestion state along with an estimated a PCE's overload state in order to discourage the PCCs to send new
congestion duration. This is dynamic information, which may change path computation requests.
with PCE activity.
Procedures for a PCE to move from a processing congestion state to a A PCE may decide to clear the overload state according to local
non-congestion state are beyond the scope of this document, but the implementation triggers (e.g. CPU utilization, average queue length
rate at which a PCE Status change is advertised MUST NOT impact by below some pre-defined thresholds). The rate at which a PCE status
any means the IGP scalability. Particular attention should be given change is advertised MUST NOT impact by any means the IGP
on procedures to avoid state oscillations. scalability. Particular attention should be given on procedures to
avoid state oscillations.
3.2. Flooding Scope 3.2. Flooding Scope
The flooding scope for PCE information advertised through IS-IS can The flooding scope for PCE information advertised through IS-IS can
be a single L1 area, a L1 area and the L2 sub-domain, or the entire be a single L1 area, a L1 area and the L2 sub-domain, or the entire
IS-IS routing domain. IS-IS routing domain.
4. IS-IS Extensions 4. IS-IS Extensions
4.1. The IS-IS PCED Sub-TLV 4.1. The IS-IS PCED Sub-TLV
The IS-IS PCED sub-TLV is made of a set of non ordered sub-TLVs. The IS-IS PCED sub-TLV is made of a set of non ordered sub-TLVs.
The format of the IS-IS PCED sub-TLV and its sub-TLVs is identical to The format of the IS-IS PCED sub-TLV and its sub-TLVs is identical to
the TLV format used by the Traffic Engineering Extensions to IS-IS the TLV format used by the Traffic Engineering Extensions to IS-IS
[RFC3784]. That is, the TLV is composed of 1 octet for the type, 1 [RFC3784]. That is, the TLV is comprised of 1 octet for the type, 1
octet specifying the TLV length, and a value field. The Length field octet specifying the TLV length, and a value field. The Length field
defines the length of the value portion in bytes. defines the length of the value portion in octets.
The IS-IS PCED sub-TLV has the following format: The IS-IS PCED 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: Variable LENGTH: Variable
VALUE: set of sub-TLVs VALUE: set of sub-TLVs
Sub-TLVs types are under IANA control. Sub-TLVs types are under IANA control.
Currently six sub-TLVs are defined (suggested type values to be Currently six sub-TLVs are defined (suggested type values to be
skipping to change at page 7, line 27 skipping to change at page 7, line 27
The IS-IS PCED sub-TLV has the following format: The IS-IS PCED 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: Variable LENGTH: Variable
VALUE: set of sub-TLVs VALUE: set of sub-TLVs
Sub-TLVs types are under IANA control. Sub-TLVs types are under IANA control.
Currently six sub-TLVs are defined (suggested type values to be Currently six sub-TLVs are defined (suggested type values to be
assigned by IANA): assigned by IANA):
Sub-TLV type Length Name Sub-TLV type Length Name
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-DOMAIN sub-TLV 3 variable PCE-DOMAIN sub-TLV
4 variable NEIG-PCE-DOMAIN sub-TLV 4 variable NEIG-PCE-DOMAIN sub-TLV
5 variable PCE-CAP-FLAGS sub-TLV 5 variable PCE-CAP-FLAGS sub-TLV
6 1 CONGESTION sub-TLV 6 1 OVERLOAD sub-TLV
The PCE-ADDRESS and PATH-SCOPE sub-TLVs MUST always be present within The PCE-ADDRESS and PATH-SCOPE sub-TLVs MUST always be present within
the PCED sub-TLV. the PCED sub-TLV.
The PCE-DOMAIN and NEIG-PCE-DOMAIN sub-TLVs are optional. They The PCE-DOMAIN and NEIG-PCE-DOMAIN sub-TLVs are optional. They
MAY be present in the PCED sub-TLV to facilitate selection of inter- MAY be present in the PCED sub-TLV to facilitate selection of inter-
domain PCEs. domain PCEs.
The PCE-CAP-FLAGS sub-TLV is optional and MAY be present in the PCED The PCE-CAP-FLAGS sub-TLV is optional and MAY be present in the PCED
sub-TLV to facilitate the PCE selection process. sub-TLV to facilitate the PCE selection process.
The CONGESTION sub-TLV is optional and MAY be present in the PCED The OVERLOAD sub-TLV is optional and MAY be present in the PCED sub-
sub-TLV, to indicate a PCE's processing congestion state. TLV, to indicate a PCE's processing congestion state.
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 sub-TLV is carried within an IS-IS CAPABILITY TLV defined in The PCED sub-TLV is carried within an IS-IS CAPABILITY TLV defined in
[IS-IS-CAP]. [IS-IS-CAP].
The following sub-sections describe the sub-TLVs which may be carried The following sub-sections describe the sub-TLVs which may be carried
skipping to change at page 8, line 20 skipping to change at page 8, line 17
4.1.1. PCE-ADDRESS Sub-TLV 4.1.1. PCE-ADDRESS Sub-TLV
The PCE-ADDRESS sub-TLV specifies the IP address that can be The PCE-ADDRESS sub-TLV specifies the IP address that can be
used to reach the PCE. It is RECOMMENDED to make use of an address 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 sub-TLV. It MAY appear twice, when the PCE has both an IPv4 and PCED sub-TLV. It MAY appear twice, when the PCE has both an IPv4 and
IPv6 address. It MUST NOT appear more than once for the same address IPv6 address. It MUST NOT appear more than once for the same address
type. type. If it appears more than once only the first occurrence MUST be
processed and other MUST be ignored.
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: 5 for IPv4 address and 17 for IPv6 address LENGTH: 5 for IPv4 address and 17 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 bytes 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
4.1.2. The PATH-SCOPE Sub-TLV 4.1.2. The PATH-SCOPE Sub-TLV
The PATH-SCOPE sub-TLV indicates the PCE path computation scope, The PATH-SCOPE sub-TLV indicates the PCE path computation scope,
which refers to the PCE's ability to compute or take part in the which refers to the PCE's ability to compute or take part in 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 sub-TLV. There MUST be exactly one instance of the PATH-SCOPE PCED sub-TLV. There MUST be exactly one instance of the PATH-SCOPE
sub-TLV within each PCED sub-TLV. sub-TLV within each PCED sub-TLV. If it appears more than once only
the first occurrence MUST be processed and other MUST be ignored.
The PATH-SCOPE sub-TLV contains a set of bit flags indicating the The PATH-SCOPE sub-TLV contains a set of bit flags indicating the
supported path scopes, and four fields indicating PCE preferences. supported path scopes, and four fields indicating PCE preferences.
The PATH-SCOPE sub-TLV has the following format: The PATH-SCOPE sub-TLV has the following format:
TYPE: To be assigned by IANA (Suggested value =2) TYPE: To be assigned by IANA (Suggested value =2)
LENGTH: 3 LENGTH: 3
VALUE: This comprises a one-byte flags field where flag VALUE: This comprises a one-octet flags field where flag
represents a supported path scope, followed by a 2-bytes represents a supported path scope, followed by a 2-octets
preferences field indicating PCE preferences. preferences field indicating PCE preferences.
Here is the structure of the bits flag: Here is the structure of the bits flag:
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
|0|1|2|3|4|5|Res| |0|1|2|3|4|5|Res|
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Bit Path Scope Bit Path Scope
skipping to change at page 10, line 48 skipping to change at page 10, line 51
flooding scope is the entire routing domain (see section 5 for a flooding scope is the entire routing domain (see section 5 for a
discussion of how the flooding scope is set and interpreted). discussion of how the flooding scope is set and interpreted).
A PCED sub-TLV MAY include multiple PCE-DOMAIN sub-TLVs when the PCE A PCED sub-TLV MAY include multiple PCE-DOMAIN sub-TLVs when the PCE
has visibility in multiple PCE-Domains. has visibility in multiple PCE-Domains.
The PCE-DOMAIN sub-TLV has the following format: The PCE-DOMAIN sub-TLV has the following format:
TYPE: To be assigned by IANA (Suggested value =3) TYPE: To be assigned by IANA (Suggested value =3)
LENGTH: Variable LENGTH: Variable
VALUE: This comprises one octet indicating the domain-type (area ID VALUE: This is comprised of one octet indicating the domain-type
or AS Number) and a variable length IS-IS area ID or a 32 bits AS (area ID or AS Number) and a variable length IS-IS area ID or a 32
number, identifying a PCE-domain where the PCE has visibility. bits AS number, identifying a PCE-domain where the PCE has visibility.
Two domain types are defined: Two domain types are defined:
1 Area ID 1 Area ID
2 AS Number 2 AS Number
The Area ID is the area address as defined in [ISO]. The Area ID is the area address as defined in [ISO].
When coded in two bytes (which is the current defined format as the When coded in two octets (which is the current defined format as the
time of writing this document), the AS Number field MUST have its time of writing this document), the AS Number field MUST have its
left two bytes set to 0. left two octets set to 0.
4.1.4. NEIG-PCE-DOMAIN Sub-TLV 4.1.4. NEIG-PCE-DOMAIN Sub-TLV
The NEIG-PCE-DOMAIN sub-TLV specifies a neighbour PCE-domain (area, The NEIG-PCE-DOMAIN sub-TLV specifies a neighbour PCE-domain (area,
AS) toward which a PCE can compute paths. It means that the PCE can AS) toward which a PCE can compute paths. It means that the PCE can
take part in the computation of inter-domain TE LSPs whose path take part in the computation of inter-domain TE LSPs whose path
transits this neighbour PCE-domain. transits this neighbour PCE-domain.
A PCED sub-TLV MAY include several NEIG-PCE-DOMAIN sub-TLVs when the A PCED sub-TLV MAY include several NEIG-PCE-DOMAIN sub-TLVs when the
PCE can compute paths towards several neighbour PCE-domains. PCE can compute paths towards several neighbour PCE-domains.
skipping to change at page 11, line 36 skipping to change at page 11, line 40
or AS Number) and a variable length IS-IS area ID or a 32 bits AS or AS Number) and a variable length IS-IS area ID or a 32 bits AS
number, identifying a PCE-domain towards which the PCE can compute number, identifying a PCE-domain towards which the PCE can compute
paths. paths.
Two domain types are defined: Two domain types are defined:
1 Area ID 1 Area ID
2 AS Number 2 AS Number
The Area ID is the area address as defined in [ISO]. The Area ID is the area address as defined in [ISO].
When coded in two bytes (which is the current defined format as the When coded in two octets (which is the current defined format as the
time of writing this document), the AS Number field MUST have its time of writing this document), the AS Number field MUST have its
left two bytes set to 0. first two octets set to 0.
The NEIG-PCE-DOMAIN sub-TLV MUST be present if the R bit is set and The NEIG-PCE-DOMAIN sub-TLV MUST be present if the R bit is set and
the Rd bit is cleared, and/or, if the S bit is set and the Sd bit is the Rd bit is cleared, and/or, if the S bit is set and the Sd bit is
cleared. cleared.
4.1.5. PCE-CAP-FLAGS Sub-TLV 4.1.5. PCE-CAP-FLAGS Sub-TLV
The PCE-CAP-FLAGs sub-TLV is an optional sub-TLV used to indicate The PCE-CAP-FLAGs sub-TLV is an optional sub-TLV used to indicate
PCEP related capabilities. It MAY be present within the PCED sub-TLV. PCEP related capabilities. It MAY be present within the PCED sub-TLV.
It MUST NOT be present more than once.
It MUST NOT be present more than once. If it appears more than once
only the first occurrence MUST be processed and other MUST be ignored.
The value field of the PCE-CAP-FLAGS sub-TLV is made up of an array The value field of the PCE-CAP-FLAGS sub-TLV is made up of an array
of units of 32 bit flags numbered from the most significant as bit of units of 32 bit flags numbered from the most significant as bit
zero, where each bit represents one PCE capability. zero, where each bit represents one PCE capability.
The PCE-CAP-FLAGS sub-TLV has the following format: The PCE-CAP-FLAGS 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: Multiple of 4 LENGTH: Multiple of 4
VALUE: This contains an array of units of 32 bit flags numbered VALUE: This contains an array of units of 32 bit flags numbered
from the most significant as bit zero, where each bit from the most significant as bit zero, where each bit
represents one PCE capability. represents one PCE capability.
The PCE capability registry is managed by IANA, it is common The PCE capability registry is managed by IANA, it is common
with OSPF and defined in [PCED-OSPF]. with OSPF and defined in [PCED-OSPF].
Reserved bits SHOULD be set to zero on transmission and MUST be Reserved bits SHOULD be set to zero on transmission and MUST be
ignored on receipt. ignored on receipt.
4.1.6. The CONGESTION Sub-TLV 4.1.6. The OVERLOAD Sub-TLV
The CONGESTION sub-TLV is used to indicate that a PCE is experiencing The CONGESTION sub-TLV is used to indicate that a PCE is experiencing
a processing congestion state and may optionally include expected PCE a processing congestion state and may optionally include expected PCE
congestion duration. congestion duration.
The CONGESTION sub-TLV is optional, it MAY be carried within the PCED The CONGESTION sub-TLV is optional, it MAY be carried within the PCED
sub-TLV. It MUST NOT be present more than once. sub-TLV. It MUST NOT be present more than once. If it appears more
than once only the first occurrence MUST be processed and other MUST
be ignored.
The format of the CONGESTION sub-TLV is as follows: The format of the CONGESTION sub-TLV is as follows:
TYPE: To be assigned by IANA (Suggested value =6) TYPE: To be assigned by IANA (Suggested value =6)
LENGTH: 3 LENGTH: 1
VALUE: This comprises a one byte of bit flags indicating the VALUE: This comprises a one octet of bit flags indicating the
congestion status, followed by a 2-bytes field indicating the overload status. Currently only the first flag is defined.
congestion duration.
Here is the TLV structure Here is the TLV structure
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
|C| Reserved| Congestion Duration | |C| Reserved|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Value Value
-C bit: When set this indicates that the PCE is overloaded
-C bit: When set this indicates that the PCE is experiencing and cannot accept any new request. When cleared this
congestion and cannot accept any new request. When indicates that the PCE is not overloaded and can
cleared this indicates that the PCE is not accept new requests.
experiencing congestion and can accept new requests.
-Congestion Duration: 2-bytes, the estimated PCE congestion
duration in seconds.
When C is set and the Congestion Duration field is equal to 0, this
means that the Congestion Duration is unknown.
When C is cleared the Congestion Duration SHOULD be set to 0 and MUST
be ignored.
5. Elements of Procedure 5. Elements of Procedure
The PCED sub-TLV is advertised within an IS-IS Router Capability TLV The PCED sub-TLV is advertised within an IS-IS Router Capability TLV
defined in [IS-IS-CAP]. As such, elements of procedures are inherited defined in [IS-IS-CAP]. As such, elements of procedures are inherited
from those defined in [IS-IS-CAP]. from those defined in [IS-IS-CAP].
The flooding scope is controlled by the S flag in the IS-IS Router The flooding scope is controlled by the S flag in the IS-IS Router
Capability TLV (see [IS-IS-CAP]). When the scope of the PCED sub-TLV Capability TLV (see [IS-IS-CAP]). When the scope of the PCED sub-TLV
is area local it MUST be carried within an IS-IS Router Capability is area local it MUST be carried within an IS-IS Router Capability
skipping to change at page 13, line 31 skipping to change at page 13, line 30
local. local.
Note that a L1L2 node may include both in its L1 and L2 LSPs a PCED Note that a L1L2 node may include both in its L1 and L2 LSPs a PCED
TLV in a Router Capability TLV with the S bit cleared. This allows TLV in a Router Capability TLV with the S bit cleared. This allows
restricting the flooding scope to the L1 area and the L2 sub-domain. restricting the flooding scope to the L1 area and the L2 sub-domain.
An IS-IS router MUST originate a new IS-IS LSP whenever there is a An IS-IS router MUST originate a new IS-IS LSP whenever there is a
change in a PCED TLV associated with a PCE it advertises. change in a PCED TLV associated with a PCE it advertises.
When a PCE is deactivated, the IS-IS Router advertising this PCE MUST When a PCE is deactivated, the IS-IS Router advertising this PCE MUST
originate a new IS-IS LSP that does no longer include the originate a new IS-IS LSP that no longer includes the corresponding
corresponding PCED TLV. PCED TLV.
The PCE address(s), i.e. the address(s) indicated within the PCE The PCE address(s), i.e. the address(s) indicated within the PCE
ADDRESS sub-TLV, must be reachable via some prefix(es) advertised by ADDRESS sub-TLV, SHOULD be reachable via some prefix(es) advertised
IS-IS; this allows speeding up the detection of a PCE failure. Note by IS-IS; this allows speeding up the detection of a PCE failure.
that when the PCE address is no longer reachable, this means that the Note that when the PCE address is no longer reachable, this means
PCE node has failed or has been torn down, or that there is no longer that the PCE node has failed or has been torn down, or that there is
IP connectivity to the PCE node. no longer IP connectivity to the PCE node.
The PCED sub-TLV is OPTIONAL. When an IS-IS LSP does not contain any
PCED TLV, this means that the PCE information of that node is
unknown.
A change in PCED information MUST not trigger any SPF computation at A change in PCED information MUST not trigger any SPF computation at
a receiving router. a receiving router.
The way PCEs determine the information they advertise is out of the The way PCEs determine the information they advertise is out of the
scope of this document. Some information may be configured (e.g., scope of this document. Some information may be configured (e.g.,
address, preferences, scope) and other information may be address, preferences, scope) and other information may be
automatically determined by the PCE (e.g. areas of visibility). automatically determined by the PCE (e.g. areas of visibility).
5.1.1. CONGESTION Sub-TLV Specific Procedures 5.1.1. OVERLOAD Sub-TLV Specific Procedures
When a PCE enters into a processing congestion state, the conditions
of which are implementation dependent, a new IS-IS LSP with a
CONGESTION sub-TLV with the C bit set and optionally a non-null
expected congestion duration MAY be generated.
When a PCE exists from the processing congestion state, the When a PCE enters into an overload state, the conditions of which are
conditions of which are implementation dependent, two cases are implementation dependent, a new IS-IS LSP with an OVERLOAD sub-TLV
considered: with the C bit set MAY be generated.
- If the congestion duration in the previously originated
CONGESTION sub-TLV was null, a CONGESTION sub-TLV with the C bit
cleared SHOULD be generated;
- If the congestion duration in the previously originated
CONGESTION sub-TLV was non null, a CONGESTION sub-TLV with the C bit
cleared MAY be generated. Note that in some particular cases it may
be desired to originate a CONGESTION sub-TLV with the C bit cleared
if the congestion duration was over estimated.
The congestion duration allows a reduction in the amount of IS-IS When a PCE exists from an overload state, the conditions of which are
flooding, as only uncongested-to-congested state transitions are implementation dependent (e.g. CPU utilization, average queue length
advertised. below some pre-defined thresholds), a new IS-IS LSP with an OVERLOAD
sub-TLV with the C bit cleared SHOULD be generated, if an OVERLOAD
sub-TLV with the C bit set had previously been generated.
An IS-IS implementation SHOULD support an appropriate dampening A PCE implementation supporting the IS-IS extensions defined in this
algorithm so as to dampen flooding of PCE Congestion information in document SHOULD support an appropriate dampening algorithm so as to
order to not impact the IS-IS scalability. It is RECOMMENDED to dampen flooding of PCE Overload information in order to not impact
introduce some hysteresis for congestion state transition, so as to the IS-IS scalability. It is RECOMMENDED to introduce some hysteresis
avoid state oscillations that may impact IS-IS performance. For for overload state transition, so as to avoid state oscillations that
instance two thresholds MAY be configured: a resource congestion may impact IS-IS performance. For instance two thresholds MAY be
upper-threshold and a resource congestion lower-threshold. An LSR configured: an upper-threshold and a lower-threshold. An LSR enters
enters the congested state when the CPU load reaches the upper the overload state when the CPU load reaches the upper threshold and
threshold and leaves the congested state when the CPU load goes under leaves the overload state when the CPU load goes under the lower
the lower threshold. threshold.
Upon receipt of an updated CONGESTION sub-TLV a PCC should take Upon receipt of an updated OVERLOAD sub-TLV a PCC should take
appropriate actions. In particular, the PCC SHOULD stop sending appropriate actions. In particular, the PCC SHOULD stop sending
requests to a congested PCE, and SHOULD gradually start sending again requests to an overloaded PCE, and SHOULD gradually start sending
requests to a PCE that is no longer congested. again requests to a PCE that is no longer overloaded.
6. Backward Compatibility 6. Backward Compatibility
The PCED sub-TLV defined in this document does not introduce any The PCED sub-TLV defined in this document does not introduce any
interoperability issues. interoperability issues.
An IS-IS router not supporting the PCED sub-TLV will just silently An IS-IS router not supporting the PCED sub-TLV will just silently
ignore the TLV as specified in [IS-IS-CAP]. ignore the TLV as specified in [IS-IS-CAP].
7. IANA Considerations 7. IANA Considerations
skipping to change at page 15, line 17 skipping to change at page 15, line 5
7.1. IS-IS Sub-TLV 7.1. IS-IS Sub-TLV
Once a registry for the IS-IS Router Capability sub-TLVs, defined in Once a registry for the IS-IS Router Capability sub-TLVs, defined in
[IS-IS-CAP] has been assigned, IANA will assign a new sub-TLV code- [IS-IS-CAP] has been assigned, IANA will assign a new sub-TLV code-
point for the PCED sub-TLV carried within the Router Capability TLV. point for the PCED sub-TLV carried within the Router Capability TLV.
Value Sub-TLV References Value Sub-TLV References
----- -------- ---------- ----- -------- ----------
5 PCED sub-TLV (this document) 5 PCED sub-TLV (this document)
7.2. PCED Sub-TLVs Registry 7.2. PCED Sub-TLVs registry
The PCED sub-TLV referenced above is constructed from sub-TLVs. Each The PCED sub-TLV referenced above is constructed from sub-TLVs. Each
sub-TLV includes a 8-bit type identifier. sub-TLV includes a 8-bit type identifier.
The IANA is requested to create a new sub-registry of the IS-IS The IANA is requested to create a new sub-registry of the IS-IS
Router Capability sub-TLVs registry, named the "PCED sub-TLVs" Router Capability sub-TLVs registry, named the "PCED sub-TLVs"
registry, and manage sub-TLV type identifiers as follows: registry, and manage sub-TLV type identifiers as follows:
- sub-TLV Type - sub-TLV Type
- sub-TLV Name - sub-TLV Name
- Reference - Reference
This document defines five sub-TLVs as follows (suggested values): This document defines five sub-TLVs as follows (suggested values):
Sub-TLV Sub-TLV Sub-TLV Sub-TLV
Type Name References Type name References
----- -------- ---------- ----- -------- ----------
1 PCE-ADDRESS This document 1 PCE-ADDRESS This document
2 PATH-SCOPE This document 2 PATH-SCOPE This document
3 PCE-DOMAIN This document 3 PCE-DOMAIN This document
4 NEIG-PCE-DOMAIN This document 4 NEIG-PCE-DOMAIN This document
5 PCE-CAP-FLAGS This document 5 PCE-CAP-FLAGS This document
6 CONGESTION This document 6 OVERLOAD This document
New sub-TLV type values may be allocated only by an IETF Consensus New sub-TLV type values may be allocated only by an IETF Consensus
action. action.
8. Security Considerations 8. Security Considerations
This document defines IS-IS extensions for PCE discovery within an This document defines IS-IS extensions for PCE discovery within an
administrative domain. Hence the security of the PCE discovery relies administrative domain. Hence the security of the PCE discovery relies
on the security of IS-IS. on the security of IS-IS.
Mechanisms defined to ensure authenticity and integrity of IS-IS LSPs Mechanisms defined to ensure authenticity and integrity of IS-IS LSPs
[RFC3567], and their TLVs, can be used to secure the PCED sub-TLV as [RFC3567], and their TLVs, can be used to secure the PCED sub-TLV as
well. well.
IS-IS provides no mechanism for protecting the privacy of LSPs, and IS-IS provides no encryption mechanism for protecting the privacy of
in particular the privacy of the PCE discovery information. LSPs, and in particular the privacy of the PCE discovery information.
9. Manageability Considerations 9. Manageability Considerations
Manageability considerations for PCE Discovery are addressed in Manageability considerations for PCE Discovery are addressed in
section 4.10 of [RFC4674]. section 4.10 of [RFC4674].
9.1. Control of Policy and Functions 9.1. Control of Policy and Functions
Requirements on the configuration of PCE discovery parameters on PCCs Requirements on the configuration of PCE discovery parameters on PCCs
and PCEs are discussed in section 4.10.1 of [RFC4674]. and PCEs are discussed in section 4.10.1 of [RFC4674].
skipping to change at page 16, line 52 skipping to change at page 16, line 49
9.4. Verify Correct Operations 9.4. Verify Correct Operations
The correlation of information advertised against information The correlation of information advertised against information
received can be achieved by comparing the PCED information in the PCC received can be achieved by comparing the PCED information in the PCC
and in the PCE, which is stored in the PCED MIB [PCED-MIB]. The and in the PCE, which is stored in the PCED MIB [PCED-MIB]. The
number of dropped, corrupt, and rejected information elements are number of dropped, corrupt, and rejected information elements are
stored in the PCED MIB. stored in the PCED MIB.
9.5. Requirements on Other Protocols and Functional Components 9.5. Requirements on Other Protocols and Functional Components
The IS-IS extensions defined in this documents do not imply any The IS-IS extensions defined in this document do not imply any
requirement on other protocols. requirement on other protocols.
9.6. Impact on Network Operations 9.6. Impact on Network Operations
Frequent changes in PCE information, and particularly in PCE Frequent changes in PCE information, and particularly in PCE
congestion information, may have a significant impact on IS-IS and overload information, may have a significant impact on IS-IS and
might destabilize the operation of the network by causing the PCCs to might destabilize the operation of the network by causing the PCCs to
swap between PCEs. swap between PCEs.
As discussed in section 5.1, a PCE implementation SHOULD support an As discussed in section 5.1, a PCE implementation SHOULD support an
appropriate dampening algorithm so as to dampen IS-IS flooding in appropriate dampening algorithm so as to dampen IS-IS flooding in
order to not impact the IS-IS scalability. order to not impact the IS-IS scalability.
Also, as discussed in section 4.10.4 of [RFC4674], it MUST be Also, as discussed in section 4.10.4 of [RFC4674], it MUST be
possible to apply at least the following controls: possible to apply at least the following controls:
- Configurable limit on the rate of announcement of changed - Configurable limit on the rate of announcement of changed
parameters at a PCE. parameters at a PCE.
- Control of the impact on PCCs such as through discovery messages - Control of the impact on PCCs such as through discovery messages
rate-limiting. rate-limiting.
- Configurable control of triggers that cause a PCC to swap to - Configurable control of triggers that cause a PCC to swap to
another PCE. another PCE.
10. Acknowledgments 10. Acknowledgments
We would like to thank Lucy Wong, Adrian Farrel, Les Ginsberg, Mike We would like to thank Lucy Wong, Adrian Farrel, Les Ginsberg, Mike
Shand and Lou Berger for their useful comments and suggestions. Shand, Lou Berger, and David Ward, for their useful comments and
suggestions.
11. References 11. References
11.1. Normative References 11.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.
[ISO] "Intermediate System to Intermediate System Intra-Domain [ISO] "Intermediate System to Intermediate System Intra-Domain
Routeing Exchange Protocol for use in Conjunction with the Routeing Exchange Protocol for use in Conjunction with the
Protocol for Providing the Connectionless-mode Network Protocol for Providing the Connectionless-mode Network Service
Service (ISO 8473)", ISO DP 10589, February 1990. (ISO 8473)", ISO DP 10589, February 1990.
[RFC3784] Li, T., Smit, H., "IS-IS extensions for Traffic [RFC3784] Li, T., Smit, H., "IS-IS extensions for Traffic
Engineering", RFC 3784, June 2004. Engineering", RFC 3784, June 2004.
[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 router information", draft-ietf-isis-caps, work in progress.
progress.
[RFC3567] Li, T. and R. Atkinson, "Intermediate System to [RFC3567] Li, T. and R. Atkinson, "Intermediate System to
Intermediate System (IS-IS) Cryptographic Authentication", Intermediate System (IS-IS) Cryptographic Authentication", RFC 3567,
RFC 3567, July 2003. July 2003.
[PCED-OSPF] Le Roux, Vasseur, et al. "OSPF protocol extensions for [PCED-OSPF] Le Roux, Vasseur, et al. "OSPF protocol extensions for
Path Computation Element (PCE) Discovery", draft-ietf- Path Computation Element (PCE) Discovery", draft-ietf-pce-disco-
pce-disco-proto-ospf, work in progress. proto-ospf, work in progress.
11.2. Informative References 11.2. Informative References
[RFC4655] Farrel, A., Vasseur, J.P., Ash, J., "Path Computation
Element (PCE)-based Architecture", RFC4655, August 2006.
[RFC4657] Ash, J., Le Roux, J.L., "PCE Communication Protocol Generic [RFC4657] Ash, J., Le Roux, J.L., "PCE Communication Protocol Generic
Requirements", RFC4657, September 2006. Requirements", RFC4657, September 2006.
[RFC4674] Le Roux, J.L., et al. "Requirements for PCE discovery",
RFC4674, October 2006.
[PCEP] Vasseur, Le Roux, et al., "Path Computation Element (PCE) [PCEP] Vasseur, Le Roux, et al., "Path Computation Element (PCE)
communication Protocol (PCEP) - Version 1", draft-ietf-pce- communication Protocol (PCEP) - Version 1", draft-ietf-pce-pcep, work
pcep, work in progress. in progress.
[PCED-MIB] Stephan, E., "Definitions of Managed Objects for Path [PCED-MIB] Stephan, E., "Definitions of Managed Objects for Path
Computation Element Discovery", draft-ietf-pce-disc-mib, Computation Element Discovery", draft-ietf-pce-disc-mib, work in
work in progress. progress.
[RFC4655] Farrel, A., Vasseur, J.P., Ash, J., "Path Computation
Element (PCE)-based Architecture", RFC4655, august 2006.
[RFC4674] Le Roux, J.L., et al. "Requirements for PCE discovery",
RFC4674, October 2006.
12. Editors' Addresses: 12. Editors' 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@orange-ftgroup.com Email: jeanlouis.leroux@orange-ftgroup.com
 End of changes. 58 change blocks. 
142 lines changed or deleted 117 lines changed or added

This html diff was produced by rfcdiff 1.33. The latest version is available from http://tools.ietf.org/tools/rfcdiff/