draft-ietf-mpls-cr-ldp-03.txt | draft-ietf-mpls-cr-ldp-04.txt | |||
---|---|---|---|---|
MPLS Working Group Bilel Jamoussi, Editor | MPLS Working Group Bilel Jamoussi, Editor | |||
Internet Draft Nortel Networks Corp. | Internet Draft Nortel Networks Corp. | |||
Expiration Date: March 2000 | Expiration Date: January 2001 | |||
September 1999 | ||||
O. Aboul-Magd, L. Andersson, P. Ashwood-Smith, | ||||
F. Hellstrand, K. Sundell, Nortel Networks Corp. | ||||
R. Callon, Juniper Networks. | ||||
R. Dantu, IPmobile | ||||
P. Doolan, T. Worster, Ennovate Networks Corp. | ||||
N. Feldman, IBM Corp. | ||||
A. Fredette, PhotonEx Corp. | ||||
M. Girish, Atoga Systems | ||||
E. Gray, Zaffire, Inc. | ||||
J. Halpern, Longitude Systems, Inc. | ||||
J. Heinanen, Telia Finland | ||||
T. Kilty, Newbridge Networks, Inc. | ||||
A. Malis, Vivace Networks | ||||
P. Vaananen, Nokia Telecommunications | ||||
L. Wu, Cisco Systems | ||||
July 2000 | ||||
Constraint-Based LSP Setup using LDP | Constraint-Based LSP Setup using LDP | |||
draft-ietf-mpls-cr-ldp-03.txt | draft-ietf-mpls-cr-ldp-04.txt | |||
Status of this Memo | Status of this Memo | |||
This document is an Internet-Draft and is in full conformance with | This document is an Internet-Draft and is in full conformance with | |||
all provisions of Section 10 of RFC2026. | all provisions of Section 10 of RFC2026. | |||
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 | |||
other groups may also distribute working documents as Internet- | other groups may also distribute working documents as Internet- | |||
Drafts. | Drafts. | |||
skipping to change at line 36 | skipping to change at line 54 | |||
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 | |||
Label Distribution Protocol (LDP) is defined in [1] for distribution | Label Distribution Protocol (LDP) is defined in [1] for distribution | |||
of labels inside one MPLS domain. One of the most important | of labels inside one MPLS domain. One of the most important | |||
services that may be offered using MPLS in general and LDP in | services that may be offered using MPLS in general and LDP in | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 1Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
particular is support for constraint-based routing of traffic across | particular is support for constraint-based routing of traffic across | |||
the routed network. Constraint-based routing offers the opportunity | the routed network. Constraint-based routing offers the opportunity | |||
to extend the information used to setup paths beyond what is | to extend the information used to setup paths beyond what is | |||
available for the routing protocol. For instance, an LSP can be | available for the routing protocol. For instance, an LSP can be | |||
setup based on explicit route constraints, QoS constraints, and | setup based on explicit route constraints, QoS constraints, and | |||
other constraints. Constraint-based routing (CR) is a mechanism used | other constraints. Constraint-based routing (CR) is a mechanism used | |||
to meet Traffic Engineering requirements that have been proposed by | to meet Traffic Engineering requirements that have been proposed by | |||
[2], [3] and [4]. These requirements may be met by extending LDP for | [2], [3] and [4]. These requirements may be met by extending LDP for | |||
support of constraint-based routed label switched paths (CR-LSPs). | support of constraint-based routed label switched paths (CR-LSPs). | |||
Other uses for CR-LSPs include MPLS-based VPNs. | Other uses for CR-LSPs include MPLS-based VPNs [5]. More information | |||
about the applicability of CR-LDP can be found in [6]. | ||||
This draft specifies mechanisms and TLVs for support of CR-LSPs | This draft specifies mechanisms and TLVs for support of CR-LSPs | |||
using LDP. | using LDP. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 1 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL | |||
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" | ||||
in this document are to be interpreted as described in RFC 2119 [7]. | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 2Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
Table of Contents | Table of Contents | |||
1. Introduction....................................................3 | 1. Introduction....................................................4 | |||
2. Constraint-based Routing Overview...............................3 | 2. Constraint-based Routing Overview...............................4 | |||
2.1 Strict and Loose Explicit Routes...............................4 | 2.1 Strict and Loose Explicit Routes...............................5 | |||
2.2 Traffic Characteristics........................................4 | 2.2 Traffic Characteristics........................................5 | |||
2.3 Pre-emption....................................................5 | 2.3 Pre-emption....................................................6 | |||
2.4 Route Pinning..................................................5 | 2.4 Route Pinning..................................................6 | |||
2.5 Resource Class.................................................5 | 2.5 Resource Class.................................................6 | |||
3. Solution Overview...............................................6 | 3. Solution Overview...............................................7 | |||
3.1 Required Messages and TLVs.....................................7 | 3.1 Required Messages and TLVs.....................................8 | |||
3.2 Label Request Message..........................................7 | 3.2 Label Request Message..........................................8 | |||
3.3 Label Mapping Message..........................................8 | 3.3 Label Mapping Message..........................................9 | |||
3.4 Notification Message...........................................8 | 3.4 Notification Message..........................................10 | |||
3.5 Release , Withdraw, and Abort Messages.........................9 | 3.5 Release , Withdraw, and Abort Messages........................10 | |||
4. Protocol Specification..........................................9 | 4. Protocol Specification.........................................10 | |||
4.1 Explicit Route TLV (ER-TLV)...................................10 | 4.1 Explicit Route TLV (ER-TLV)...................................11 | |||
4.2 Explicit Route Hop TLV (ER-Hop TLV)...........................10 | 4.2 Explicit Route Hop TLV (ER-Hop TLV)...........................11 | |||
4.3 Traffic Parameters TLV........................................11 | 4.3 Traffic Parameters TLV........................................12 | |||
4.3.1 Semantics...................................................13 | 4.3.1 Semantics...................................................14 | |||
4.3.1.1 Frequency.................................................13 | 4.3.1.1 Frequency.................................................14 | |||
4.3.1.2 Peak Rate.................................................13 | 4.3.1.2 Peak Rate.................................................14 | |||
4.3.1.3 Committed Rate............................................14 | 4.3.1.3 Committed Rate............................................15 | |||
4.3.1.4 Excess Burst Size.........................................14 | 4.3.1.4 Excess Burst Size.........................................15 | |||
4.3.1.5 Peak Rate Token Bucket....................................14 | 4.3.1.5 Peak Rate Token Bucket....................................15 | |||
4.3.1.6 Committed Data Rate Token Bucket..........................14 | 4.3.1.6 Committed Data Rate Token Bucket..........................15 | |||
4.3.1.7 Weight....................................................15 | 4.3.1.7 Weight....................................................16 | |||
4.3.2 Procedures..................................................15 | 4.3.2 Procedures..................................................16 | |||
4.3.2.1 Label Request Message.....................................15 | 4.3.2.1 Label Request Message.....................................16 | |||
4.3.2.2 Label Mapping Message.....................................16 | 4.3.2.2 Label Mapping Message.....................................17 | |||
4.3.2.3 Notification Message......................................16 | 4.3.2.3 Notification Message......................................17 | |||
4.4 Preemption TLV................................................16 | 4.4 Preemption TLV................................................17 | |||
4.5 LSPID TLV.....................................................17 | 4.5 LSPID TLV.....................................................18 | |||
4.6 Resource Class (Color) TLV....................................18 | 4.6 Resource Class (Color) TLV....................................20 | |||
4.7 ER-Hop semantics..............................................19 | 4.7 ER-Hop semantics..............................................20 | |||
4.7.1. ER-Hop 1: The IPv4 prefix..................................19 | 4.7.1. ER-Hop 1: The IPv4 prefix..................................20 | |||
4.7.2. ER-Hop 2: The IPv6 address.................................20 | 4.7.2. ER-Hop 2: The IPv6 address.................................21 | |||
4.7.3. ER-Hop 3: The autonomous system number....................20 | 4.7.3. ER-Hop 3: The autonomous system number....................22 | |||
4.7.4. ER-Hop 4: LSPID............................................21 | 4.7.4. ER-Hop 4: LSPID............................................22 | |||
4.8. Processing of the Explicit Route TLV.........................22 | 4.8. Processing of the Explicit Route TLV.........................23 | |||
4.8.1. Selection of the next hop..................................22 | 4.8.1. Selection of the next hop..................................23 | |||
4.8.2. Adding ER-Hops to the explicit route TLV...................23 | 4.8.2. Adding ER-Hops to the explicit route TLV...................25 | |||
4.9 Route Pinning TLV.............................................24 | 4.9 Route Pinning TLV.............................................25 | |||
4.10 CR-LSP FEC Element...........................................24 | 4.10 CR-LSP FEC Element...........................................26 | |||
4.11 Error subcodes...............................................25 | 4.11 TLV Type Summary.............................................26 | |||
5. Security.......................................................25 | 4.12 FEC Type Summary.............................................27 | |||
6. Acknowledgments................................................25 | 4.13 Status Code Summary..........................................27 | |||
7. Intellectual Property Consideration............................26 | 5. IANA Considerations............................................27 | |||
8. References.....................................................26 | 5.1 TLV Type Name Space...........................................27 | |||
9. Author's Addresses.............................................26 | 5.2 FEC Type Name Space...........................................27 | |||
Appendix A: CR-LSP Establishment Examples.........................29 | 5.3 Status Code Space.............................................27 | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 2 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 3Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | |||
A.1 Strict Explicit Route Example.................................29 | 6. Security.......................................................28 | |||
A.2 Node Groups and Specific Nodes Example........................30 | 7. Acknowledgments................................................28 | |||
Appendix B. QoS Service Examples..................................33 | 8. Intellectual Property Consideration............................28 | |||
B.1 Service Examples..............................................33 | 9. References.....................................................28 | |||
B.2 Establishing CR-LSP Supporting Real-Time Applications.........34 | 10. Author's Addresses............................................29 | |||
B.3 Establishing CR-LSP Supporting Delay Insensitive Applications.35 | Appendix A: CR-LSP Establishment Examples.........................31 | |||
Appendix C. LSP Modification Using CR-LDP.........................36 | A.1 Strict Explicit Route Example.................................31 | |||
C.1 Introduction..................................................36 | A.2 Node Groups and Specific Nodes Example........................32 | |||
C.2 Basic Procedure...............................................37 | Appendix B. QoS Service Examples..................................35 | |||
C.3 Priority Handling.............................................38 | B.1 Service Examples..............................................35 | |||
C.4 Modification Failure Case Handling............................39 | B.2 Establishing CR-LSP Supporting Real-Time Applications.........36 | |||
B.3 Establishing CR-LSP Supporting Delay Insensitive Applications.37 | ||||
1. Introduction | 1. Introduction | |||
The need for constraint-based routing (CR) in MPLS has been explored | The need for constraint-based routing (CR) in MPLS has been explored | |||
elsewhere [3], [2], and [4]. Explicit routing is a subset of the | elsewhere [3], [2], and [4]. Explicit routing is a subset of the | |||
more general constraint-based routing function. At the MPLS WG | more general constraint-based routing function. At the MPLS WG | |||
meeting held during the Washington IETF (December 1997) there was | meeting held during the Washington IETF (December 1997) there was | |||
consensus that LDP should support explicit routing of LSPs with | consensus that LDP should support explicit routing of LSPs with | |||
provision for indication of associated (forwarding) priority. In | provision for indication of associated (forwarding) priority. In | |||
the Chicago meeting (August 1998), a decision was made that support | the Chicago meeting (August 1998), a decision was made that support | |||
skipping to change at line 156 | skipping to change at line 183 | |||
Section 2 introduces the various constraints defined in this | Section 2 introduces the various constraints defined in this | |||
specification. Section 3 outlines the CR-LDP solution. Section 4 | specification. Section 3 outlines the CR-LDP solution. Section 4 | |||
defines the TLVs and procedures used to setup constraint-based | defines the TLVs and procedures used to setup constraint-based | |||
routed label switched paths. Appendix A provides several examples | routed label switched paths. Appendix A provides several examples | |||
of CR-LSP path setup. Appendix B provides Service Definition | of CR-LSP path setup. Appendix B provides Service Definition | |||
Examples. | Examples. | |||
2. Constraint-based Routing Overview | 2. Constraint-based Routing Overview | |||
Constraint-based routing is a mechanism that supports the Traffic | Constraint-based routing is a mechanism that supports the Traffic | |||
Engineering requirements defined in [4]. Explicit Routing is a | ||||
subset of the more general constraint-based routing where the | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 3 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 4Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | |||
Engineering requirements defined in [4]. Explicit Routing is a | ||||
subset of the more general constraint-based routing where the | ||||
constraint is the explicit route (ER). Other constraints are defined | constraint is the explicit route (ER). Other constraints are defined | |||
to provide a network operator with control over the path taken by an | to provide a network operator with control over the path taken by an | |||
LSP. This section is an overview of the various constraints | LSP. This section is an overview of the various constraints | |||
supported by this specification. | supported by this specification. | |||
2.1 Strict and Loose Explicit Routes | ||||
Like any other LSP a CR-LSP is a path through an MPLS network. The | Like any other LSP a CR-LSP is a path through an MPLS network. The | |||
difference is that while other paths are setup solely based on | difference is that while other paths are setup solely based on | |||
information in routing tables or from a management system, the | information in routing tables or from a management system, the | |||
constraint-based route is calculated at one point at the edge of | constraint-based route is calculated at one point at the edge of | |||
network based on criteria, including but not limited to routing | network based on criteria, including but not limited to routing | |||
information. The intention is that this functionality shall give | information. The intention is that this functionality shall give | |||
desired special characteristics to the LSP in order to better | desired special characteristics to the LSP in order to better | |||
support the traffic sent over the LSP. The reason for setting up CR- | support the traffic sent over the LSP. The reason for setting up CR- | |||
LSPs might be that one wants to assign certain bandwidth or other | LSPs might be that one wants to assign certain bandwidth or other | |||
Service Class characteristics to the LSP, or that one wants to make | Service Class characteristics to the LSP, or that one wants to make | |||
sure that alternative routes use physically separate paths through | sure that alternative routes use physically separate paths through | |||
the network. | the network. | |||
2.1 Strict and Loose Explicit Routes | ||||
An explicit route is represented in a Label Request Message as a | An explicit route is represented in a Label Request Message as a | |||
list of nodes or groups of nodes along the constraint-based route. | list of nodes or groups of nodes along the constraint-based route. | |||
When the CR-LSP is established, all or a subset of the nodes in a | When the CR-LSP is established, all or a subset of the nodes in a | |||
group may be traversed by the LSP. Certain operations to be | group may be traversed by the LSP. Certain operations to be | |||
performed along the path can also be encoded in the constraint-based | performed along the path can also be encoded in the constraint-based | |||
route. | route. | |||
The capability to specify, in addition to specified nodes, groups of | The capability to specify, in addition to specified nodes, groups of | |||
nodes, of which a subset will be traversed by the CR-LSP, allows the | nodes, of which a subset will be traversed by the CR-LSP, allows the | |||
system a significant amount of local flexibility in fulfilling a | system a significant amount of local flexibility in fulfilling a | |||
skipping to change at line 211 | skipping to change at line 238 | |||
To simplify the discussion, we call each group of nodes an abstract | To simplify the discussion, we call each group of nodes an abstract | |||
node. Thus, we can also say that a constraint-based route is a path | node. Thus, we can also say that a constraint-based route is a path | |||
including all of the abstract nodes, with the specified operations | including all of the abstract nodes, with the specified operations | |||
occurring along that path. | occurring along that path. | |||
2.2 Traffic Characteristics | 2.2 Traffic Characteristics | |||
The traffic characteristics of a path are described in the Traffic | The traffic characteristics of a path are described in the Traffic | |||
Parameters TLV in terms of a peak rate, committed rate, and service | Parameters TLV in terms of a peak rate, committed rate, and service | |||
granularity. The peak and committed rates describe the bandwidth | granularity. The peak and committed rates describe the bandwidth | |||
constraints of a path while the service granularity can be used to | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 4 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 5Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | |||
constraints of a path while the service granularity can be used to | ||||
specify a constraint on the delay variation that the CR-LDP MPLS | specify a constraint on the delay variation that the CR-LDP MPLS | |||
domain may introduce to a path's traffic. | domain may introduce to a path's traffic. | |||
2.3 Pre-emption | 2.3 Pre-emption | |||
CR-LDP signals the resources required by a path on each hop of the | CR-LDP signals the resources required by a path on each hop of the | |||
route. If a route with sufficient resources can not be found, | route. If a route with sufficient resources can not be found, | |||
existing paths may be rerouted to reallocate resources to the new | existing paths may be rerouted to reallocate resources to the new | |||
path. This is the process of path pre-emption. Setup and holding | path. This is the process of path pre-emption. Setup and holding | |||
priorities are used to rank existing paths (holding priority) and | priorities are used to rank existing paths (holding priority) and | |||
skipping to change at line 244 | skipping to change at line 271 | |||
pre-empt other paths. The exact rules determining bumping are an | pre-empt other paths. The exact rules determining bumping are an | |||
aspect of network policy. | aspect of network policy. | |||
The allocation of setup and holding priority values to paths is an | The allocation of setup and holding priority values to paths is an | |||
aspect of network policy. | aspect of network policy. | |||
The setup and holding priority values range from zero (0) to seven | The setup and holding priority values range from zero (0) to seven | |||
(7). The value zero (0) is the priority assigned to the most | (7). The value zero (0) is the priority assigned to the most | |||
important path. It is referred to as the highest priority. Seven (7) | important path. It is referred to as the highest priority. Seven (7) | |||
is the priority for the least important path. The use of default | is the priority for the least important path. The use of default | |||
priority values is an aspect of network policy. | priority values is an aspect of network policy. The recommended | |||
default value is (4). | ||||
The setupPriority of a CR-LSP should not be higher (numerically | The setupPriority of a CR-LSP should not be higher (numerically | |||
less) than its holdingPriority since it might bump an LSP and be | less) than its holdingPriority since it might bump an LSP and be | |||
bumped by the next _equivalent_ request. | bumped by the next _equivalent_ request. | |||
2.4 Route Pinning | 2.4 Route Pinning | |||
Route pinning is applicable to segments of an LSP that are loosely | Route pinning is applicable to segments of an LSP that are loosely | |||
routed - i.e. those segments which are specified with a next hop | routed - i.e. those segments which are specified with a next hop | |||
with the `L' bit set or where the next hop is an _abstract node_. A | with the _L_ bit set or where the next hop is an _abstract node_. A | |||
CR-LSP may be setup using route pinning if it is undesirable to | CR-LSP may be setup using route pinning if it is undesirable to | |||
change the path used by an LSP even when a better next hop becomes | change the path used by an LSP even when a better next hop becomes | |||
available at some LSR along the loosely routed portion of the LSP. | available at some LSR along the loosely routed portion of the LSP. | |||
2.5 Resource Class | 2.5 Resource Class | |||
The network operator may classify network resources in various ways. | The network operator may classify network resources in various ways. | |||
These classes are also known as _colors_ or _administrative groups_. | These classes are also known as _colors_ or _administrative groups_. | |||
When a CR-LSP is being established, it's necessary to indicate which | When a CR-LSP is being established, it's necessary to indicate which | |||
resource classes the CR-LSP can draw from. | resource classes the CR-LSP can draw from. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 5 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 6Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | |||
3. Solution Overview | 3. Solution Overview | |||
CR-LSP over LDP Specification is designed with the following goals: | CR-LSP over LDP Specification is designed with the following goals: | |||
1. Meet the requirements outlined in [4] for performing traffic | 1. Meet the requirements outlined in [4] for performing traffic | |||
engineering and provide a solid foundation for performing | engineering and provide a solid foundation for performing | |||
more general constraint-based routing. | more general constraint-based routing. | |||
2. Build on already specified functionality that meets the | 2. Build on already specified functionality that meets the | |||
skipping to change at line 316 | skipping to change at line 344 | |||
one or more CR-TLVs in the Label Request Message. This means | one or more CR-TLVs in the Label Request Message. This means | |||
that the LSR can still be configured for independent control | that the LSR can still be configured for independent control | |||
for LSPs established as a result of dynamic routing. However, | for LSPs established as a result of dynamic routing. However, | |||
when a Label Request Message includes one or more of the CR- | when a Label Request Message includes one or more of the CR- | |||
TLVs, then ordered control is used to setup the CR-LSP. Note | TLVs, then ordered control is used to setup the CR-LSP. Note | |||
that this is also true for the loosely routed parts of a CR- | that this is also true for the loosely routed parts of a CR- | |||
LSP. | LSP. | |||
- New status codes are defined to handle error notification for | - New status codes are defined to handle error notification for | |||
failure of established paths specified in the CR-TLVs. | failure of established paths specified in the CR-TLVs. | |||
Optional TLVs are not required in the CR-LDP messages for the | Optional TLVs MUST be implemented to be compliant with the protocol. | |||
messages to be compliant with the protocol. Optional parameters MAY | However, they are optionally carried in the CR-LDP messages to | |||
be required for a particular operation to work (or work correctly), | ||||
however. | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 6 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 7Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | |||
signal certain characteristics of the CR-LSP being established or | ||||
modified. | ||||
Examples of CR-LSP establishment are given in Appendix A to | Examples of CR-LSP establishment are given in Appendix A to | |||
illustrate how the mechanisms described in this draft work. | illustrate how the mechanisms described in this draft work. | |||
3.1 Required Messages and TLVs | 3.1 Required Messages and TLVs | |||
Any Messages, TLVs, and procedures not defined explicitly in this | Any Messages, TLVs, and procedures not defined explicitly in this | |||
document are defined in the LDP Specification [1]. The state | document are defined in the LDP Specification [1]. The reader can | |||
transitions, which relate to CR-LDP messages, can be found in [5]. | use [8] as an informational document about the state transitions, | |||
which relate to CR-LDP messages. | ||||
The following subsections are meant as a cross-reference to the [1] | The following subsections are meant as a cross-reference to the [1] | |||
document and indication of additional functionality beyond what's | document and indication of additional functionality beyond what's | |||
defined in [1] where necessary. | defined in [1] where necessary. | |||
Note that use of the Status TLV is not limited to Notification | ||||
messages as specified in Section 3.4.6 of [1]. A message other than | ||||
a Notification message may carry a Status TLV as an Optional | ||||
Parameter. When a message other than a Notification carries a | ||||
Status TLV the U-bit of the Status TLV should be set to 1 to | ||||
indicate that the receiver should silently discard the TLV if | ||||
unprepared to handle it. | ||||
3.2 Label Request Message | 3.2 Label Request Message | |||
The Label Request Message is as defined in 3.5.8 of [1] with the | The Label Request Message is as defined in 3.5.8 of [1] with the | |||
following modifications (required only if any of the CR-TLVs is | following modifications (required only if any of the CR-TLVs is | |||
included in the Label Request Message): | included in the Label Request Message): | |||
- Only a single FEC-TLV may be included in the Label Request | - The Label Request Message MUST include a single FEC-TLV | |||
Message. The CR-LSP FEC TLV should be used. | element. The CR-LSP FEC TLV element SHOULD be used. However, | |||
the other FEC-TLVs defined in [1] MAY be used instead for | ||||
certain applications. | ||||
- The Optional Parameters TLV includes the definition of any of | - The Optional Parameters TLV includes the definition of any of | |||
the Constraint-based TLVs specified in Section 4. | the Constraint-based TLVs specified in Section 4. | |||
- The Procedures to handle the Label Request Message are | - The Procedures to handle the Label Request Message are | |||
augmented by the procedures for processing of the CR-TLVs as | augmented by the procedures for processing of the CR-TLVs as | |||
defined in Section 4. | defined in Section 4. | |||
The encoding for the CR-LDP Label Request Message is as follows: | The encoding for the CR-LDP Label Request Message 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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0| Label Request (0x0401) | Message Length | | |0| Label Request (0x0401) | Message Length | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Message ID | | | Message ID | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 8Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
| FEC TLV | | | FEC TLV | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| LSPID TLV (CR-LDP, mandatory) | | | LSPID TLV (CR-LDP, mandatory) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ER-TLV (CR-LDP, optional) | | | ER-TLV (CR-LDP, optional) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Traffic TLV (CR-LDP, optional) | | | Traffic TLV (CR-LDP, optional) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Pinning TLV (CR-LDP, optional) | | | Pinning TLV (CR-LDP, optional) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Resource Class TLV (CR-LDP, optional) | | | Resource Class TLV (CR-LDP, optional) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Pre-emption TLV (CR-LDP, optional) | | | Pre-emption TLV (CR-LDP, optional) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 7 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
3.3 Label Mapping Message | 3.3 Label Mapping Message | |||
The Label Mapping Message is as defined in 3.5.7 of [1] with the | The Label Mapping Message is as defined in 3.5.7 of [1] with the | |||
following modifications: | following modifications: | |||
- Only a single Label-TLV may be included in the Label Mapping | - The Label Mapping Message MUST include a single Label-TLV. | |||
Message. | ||||
- The Label Mapping Message Procedures are limited to downstream | - The Label Mapping Message Procedures are limited to downstream | |||
on demand ordered control mode. | on demand ordered control mode. | |||
A Mapping message is transmitted by a downstream LSR to an upstream | A Mapping message is transmitted by a downstream LSR to an upstream | |||
LSR under one of the following conditions: | LSR under one of the following conditions: | |||
1. The LSR is the egress end of the CR-LSP and an upstream | 1. The LSR is the egress end of the CR-LSP and an upstream | |||
mapping has been requested. | mapping has been requested. | |||
skipping to change at line 415 | skipping to change at line 456 | |||
| Message ID | | | Message ID | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| FEC TLV | | | FEC TLV | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Label TLV | | | Label TLV | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Label Request Message ID TLV | | | Label Request Message ID TLV | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| LSPID TLV (CR-LDP, optional) | | | LSPID TLV (CR-LDP, optional) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 9Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
| Traffic TLV (CR-LDP, optional) | | | Traffic TLV (CR-LDP, optional) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
3.4 Notification Message | 3.4 Notification Message | |||
The Notification Message is as defined in Section 3.5.1 of [1] and | The Notification Message is as defined in Section 3.5.1 of [1] and | |||
the Status TLV encoding is as defined in Section 3.4.6 of [1]. | the Status TLV encoding is as defined in Section 3.4.6 of [1]. | |||
Establishment of an CR-LSP may fail for a variety of reasons. All | Establishment of an CR-LSP may fail for a variety of reasons. All | |||
such failures are considered advisory conditions and they are | such failures are considered advisory conditions and they are | |||
signaled by the Notification Message. | signaled by the Notification Message. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 8 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
Notification Messages carry Status TLVs to specify events being | Notification Messages carry Status TLVs to specify events being | |||
signaled. New status codes are defined in Section 4.11 to signal | signaled. New status codes are defined in Section 4.11 to signal | |||
error notifications associated with the establishment of a CR-LSP | error notifications associated with the establishment of a CR-LSP | |||
and the processing of the CR-TLV. | and the processing of the CR-TLV. | |||
The Notification Message may carry the LSPID TLV of the | The Notification Message MAY carry the LSPID TLV of the | |||
corresponding CR-LSP. | corresponding CR-LSP. | |||
Notification Messages MUST be forwarded toward the LSR originating | Notification Messages MUST be forwarded toward the LSR originating | |||
the Label Request at each hop and at any time that procedures in | the Label Request at each hop and at any time that procedures in | |||
this specification - or in [1] - specify sending of a Notification | this specification - or in [1] - specify sending of a Notification | |||
Message in response to a Label Request Message. | Message in response to a Label Request Message. | |||
The encoding of the notification message is as follows: | The encoding of the notification message is as follows: | |||
0 1 2 3 | 0 1 2 3 | |||
skipping to change at line 463 | skipping to change at line 505 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
3.5 Release , Withdraw, and Abort Messages | 3.5 Release , Withdraw, and Abort Messages | |||
The Label Release , Label Withdraw, and Label Abort Request Messages | The Label Release , Label Withdraw, and Label Abort Request Messages | |||
are used as specified in [1]. These messages may also carry the | are used as specified in [1]. These messages may also carry the | |||
LSPID TLV. | LSPID TLV. | |||
4. Protocol Specification | 4. Protocol Specification | |||
The Label Request Message defined in [1] optionally carries one or | The Label Request Message defined in [1] MUST carry the LSPID TLV | |||
more of the optional Constraint-based Routing TLVs (CR-TLVs) defined | and MAY carry one or more of the optional Constraint-based Routing | |||
in this section. If needed, other constraints can be supported later | TLVs (CR-TLVs) defined in this section. If needed, other constraints | |||
through the definition of new TLVs. In this specification, the | can be supported later through the definition of new TLVs. In this | |||
following TLVs are defined: | specification, the following TLVs are defined: | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 10Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
- Explicit Route TLV | - Explicit Route TLV | |||
- Explicit Route Hop TLV | - Explicit Route Hop TLV | |||
- Traffic Parameters TLV | - Traffic Parameters TLV | |||
- Preemption TLV | - Preemption TLV | |||
- LSPID TLV | - LSPID TLV | |||
- Route Pinning TLV | - Route Pinning TLV | |||
- Resource Class TLV | - Resource Class TLV | |||
- CR-LSP FEC TLV | - CR-LSP FEC TLV | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 9 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
4.1 Explicit Route TLV (ER-TLV) | 4.1 Explicit Route TLV (ER-TLV) | |||
The ER-TLV is an object that specifies the path to be taken by the | The ER-TLV is an object that specifies the path to be taken by the | |||
LSP being established. It is composed of one or more Explicit Route | LSP being established. It is composed of one or more Explicit Route | |||
Hop TLVs (ER-Hop TLVs) defined in Section 4.2. | Hop TLVs (ER-Hop TLVs) defined in Section 4.2. | |||
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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0|0| ER-TLV (0x0800) | Length | | |0|0| Type = 0x0800 | Length | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ER-Hop TLV 1 | | | ER-Hop TLV 1 | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ER-Hop TLV 2 | | | ER-Hop TLV 2 | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
~ ............ ~ | ~ ............ ~ | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| ER-Hop TLV n | | | ER-Hop TLV n | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Type | Type | |||
A two-byte field carrying the value of the ER-TLV type whichis | A fourteen-bit field carrying the value of the ER-TLV Type = | |||
0x800. | 0x0800. | |||
Length | Length | |||
Specifies the length of the value field in bytes. | Specifies the length of the value field in bytes. | |||
ER-Hop TLVs | ER-Hop TLVs | |||
One or more ER-Hop TLVs defined in Section 4.2. | One or more ER-Hop TLVs defined in Section 4.2. | |||
4.2 Explicit Route Hop TLV (ER-Hop TLV) | 4.2 Explicit Route Hop TLV (ER-Hop TLV) | |||
The contents of an ER-TLV are a series of variable length ER-Hop | The contents of an ER-TLV are a series of variable length ER-Hop | |||
TLVs. | TLVs. | |||
A node receiving a label request message including an ER-Hop type | A node receiving a label request message including an ER-Hop type | |||
that is not supported should not progress the label request message | that is not supported MUST not progress the label request message to | |||
to the downstream LSR and should send back a _No Route_ Notification | the downstream LSR and MUST send back a _No Route_ Notification | |||
Message. | Message. | |||
Each ER-Hop TLV has the form: | Each ER-Hop TLV has the form: | |||
0 1 2 3 | 0 1 2 3 | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 11Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0|0| ER-Hop-Type | Length | | |0|0| Type | Length | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|L| Content // | | |L| Content // | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
ER-Hop Type | ER-Hop Type | |||
A fourteen-bit field carrying the type of the ER-Hop contents. | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 10 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | Currently defined values are: | |||
A fourteen-bit field indicating the type of contents of the ER- | ||||
Hop. Currently defined values are: | ||||
Value Type | Value Type | |||
----- ------------------------ | ------ ------------------------ | |||
0x801 IPv4 prefix | 0x0801 IPv4 prefix | |||
0x802 IPv6 prefix | 0x0802 IPv6 prefix | |||
0x803 Autonomous system number | 0x0803 Autonomous system number | |||
0x804 LSPID | 0x0804 LSPID | |||
Length | Length | |||
Specifies the length of the value field in bytes. | Specifies the length of the value field in bytes. | |||
L bit | L bit | |||
The L bit in the ER-Hop is a one-bit attribute. If the L bit | The L bit in the ER-Hop is a one-bit attribute. If the L bit | |||
is set, then the value of the attribute is _loose._ Otherwise, | is set, then the value of the attribute is _loose._ Otherwise, | |||
the value of the attribute is _strict._ For brevity, we say | the value of the attribute is _strict._ For brevity, we say | |||
that if the value of the ER-Hop attribute is loose then it is a | that if the value of the ER-Hop attribute is loose then it is a | |||
_loose ER-Hop._ Otherwise, it's a _strict ER-Hop._ Further, | _loose ER-Hop._ Otherwise, it's a _strict ER-Hop._ Further, | |||
skipping to change at line 579 | skipping to change at line 621 | |||
4.3 Traffic Parameters TLV | 4.3 Traffic Parameters TLV | |||
The following sections describe the CR-LSP Traffic Parameters. The | The following sections describe the CR-LSP Traffic Parameters. The | |||
required characteristics of a CR-LSP are expressed by the Traffic | required characteristics of a CR-LSP are expressed by the Traffic | |||
Parameter values. | Parameter values. | |||
A Traffic Parameters TLV, is used to signal the Traffic Parameter | A Traffic Parameters TLV, is used to signal the Traffic Parameter | |||
values. The Traffic Parameters are defined in the subsequent | values. The Traffic Parameters are defined in the subsequent | |||
sections. | sections. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 12Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
The Traffic Parameters TLV contains a Flags field, a Frequency, a | The Traffic Parameters TLV contains a Flags field, a Frequency, a | |||
Weight, and the five Traffic Parameters PDR, PBS, CDR, CBS, EBS. | Weight, and the five Traffic Parameters PDR, PBS, CDR, CBS, EBS. | |||
The Traffic Parameters TLV is shown below: | The Traffic Parameters TLV is shown below: | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 11 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0|0| Traf. Param. TLV (0x0810)| Length | | |0|0| Type = 0x0810 | Length = 24 | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Flags | Frequency | Reserved | Weight | | | Flags | Frequency | Reserved | Weight | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Peak Data Rate (PDR) | | | Peak Data Rate (PDR) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Peak Burst Size (PBS) | | | Peak Burst Size (PBS) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Committed Data Rate (CDR) | | | Committed Data Rate (CDR) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Committed Burst Size (CBS) | | | Committed Burst Size (CBS) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Excess Burst Size (EBS) | | | Excess Burst Size (EBS) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Type | Type | |||
A fourteen-bit field carrying the value of the ER-TLV type | A fourteen-bit field carrying the value of the Traffic | |||
which is 0x810. | Parameters TLV Type = 0x0810. | |||
Length | Length | |||
Specifies the length of the value field in bytes. | Specifies the length of the value field in bytes = 24. | |||
Flags | Flags | |||
The Flags field is shown below: | The Flags field is shown below: | |||
+--+--+--+--+--+--+--+--+ | +--+--+--+--+--+--+--+--+ | |||
| Res |F6|F5|F4|F3|F2|F1| | | Res |F6|F5|F4|F3|F2|F1| | |||
+--+--+--+--+--+--+--+--+ | +--+--+--+--+--+--+--+--+ | |||
Res - These bits are reserved. | Res - These bits are reserved. | |||
Zero on transmission. | Zero on transmission. | |||
skipping to change at line 631 | skipping to change at line 673 | |||
F2 - Corresponds to the PBS. | F2 - Corresponds to the PBS. | |||
F3 - Corresponds to the CDR. | F3 - Corresponds to the CDR. | |||
F4 - Corresponds to the CBS. | F4 - Corresponds to the CBS. | |||
F5 - Corresponds to the EBS. | F5 - Corresponds to the EBS. | |||
F6 - Corresponds to the Weight. | F6 - Corresponds to the Weight. | |||
Each flag Fi is a Negotiable Flag corresponding to a Traffic | Each flag Fi is a Negotiable Flag corresponding to a Traffic | |||
Parameter. The Negotiable Flag value zero denotes NotNegotiable | Parameter. The Negotiable Flag value zero denotes NotNegotiable | |||
and value one denotes Negotiable. | and value one denotes Negotiable. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 12 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
Frequency | Frequency | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 13Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
The Frequency field is coded as an 8 bit unsigned integer with | The Frequency field is coded as an 8 bit unsigned integer with | |||
the following code points defined: | the following code points defined: | |||
0- Unspecified | 0- Unspecified | |||
1- Frequent | 1- Frequent | |||
2- VeryFrequent | 2- VeryFrequent | |||
3-255 - Reserved | 3-255 - Reserved | |||
Reserved - Zero on transmission. Ignored on receipt. | Reserved - Zero on transmission. Ignored on receipt. | |||
Weight | Weight | |||
skipping to change at line 684 | skipping to change at line 727 | |||
granularity. | granularity. | |||
4.3.1.2 Peak Rate | 4.3.1.2 Peak Rate | |||
The Peak Rate defines the maximum rate at which traffic SHOULD be | The Peak Rate defines the maximum rate at which traffic SHOULD be | |||
sent to the CR-LSP. The Peak Rate is useful for the purpose of | sent to the CR-LSP. The Peak Rate is useful for the purpose of | |||
resource allocation. If resource allocation within the MPLS domain | resource allocation. If resource allocation within the MPLS domain | |||
depends on the Peak Rate value then it should be enforced at the | depends on the Peak Rate value then it should be enforced at the | |||
ingress to the MPLS domain. | ingress to the MPLS domain. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 13 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
The Peak Rate is defined in terms of the two Traffic Parameters PDR | The Peak Rate is defined in terms of the two Traffic Parameters PDR | |||
and PBS, see section 4.3.1.5 below. | and PBS, see section 4.3.1.5 below. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 14Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
4.3.1.3 Committed Rate | 4.3.1.3 Committed Rate | |||
The Committed Rate defines the rate that the MPLS domain commits to | The Committed Rate defines the rate that the MPLS domain commits to | |||
be available to the CR-LSP. | be available to the CR-LSP. | |||
The Committed Rate is defined in terms of the two Traffic Parameters | The Committed Rate is defined in terms of the two Traffic Parameters | |||
CDR and CBS, see section 4.3.1.6 below. | CDR and CBS, see section 4.3.1.6 below. | |||
4.3.1.4 Excess Burst Size | 4.3.1.4 Excess Burst Size | |||
skipping to change at line 738 | skipping to change at line 781 | |||
in excess of the peak rate. | in excess of the peak rate. | |||
The actual implementation of an LSR doesn't need to be modeled | The actual implementation of an LSR doesn't need to be modeled | |||
according to the above formal token bucket specification. | according to the above formal token bucket specification. | |||
4.3.1.6 Committed Data Rate Token Bucket | 4.3.1.6 Committed Data Rate Token Bucket | |||
The committed rate of a CR-LSP is specified in terms of a token | The committed rate of a CR-LSP is specified in terms of a token | |||
bucket C with rate CDR. The extent by which the offered rate | bucket C with rate CDR. The extent by which the offered rate | |||
exceeds the committed rate MAY be measured in terms of another token | exceeds the committed rate MAY be measured in terms of another token | |||
bucket E, which also operates at rate CDR. The maximum size of the | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 14 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 15Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | |||
bucket E, which also operates at rate CDR. The maximum size of the | ||||
token bucket C is CBS and the maximum size of the token bucket E is | token bucket C is CBS and the maximum size of the token bucket E is | |||
EBS. | EBS. | |||
The token buckets C and E are initially (at time 0) full, i.e., the | The token buckets C and E are initially (at time 0) full, i.e., the | |||
token count Tc(0) = CBS and the token count Te(0) = EBS. | token count Tc(0) = CBS and the token count Te(0) = EBS. | |||
Thereafter, the token counts Tc and Te are updated CDR times per | Thereafter, the token counts Tc and Te are updated CDR times per | |||
second as follows: | second as follows: | |||
- If Tc is less than CBS, Tc is incremented by one, else | - If Tc is less than CBS, Tc is incremented by one, else | |||
- if Te is less then EBS, Te is incremented by one, else | - if Te is less then EBS, Te is incremented by one, else | |||
skipping to change at line 791 | skipping to change at line 834 | |||
4.3.2 Procedures | 4.3.2 Procedures | |||
4.3.2.1 Label Request Message | 4.3.2.1 Label Request Message | |||
If an LSR receives an incorrectly encoded Traffic Parameters TLV in | If an LSR receives an incorrectly encoded Traffic Parameters TLV in | |||
which the value of PDR is less than the value of CDR then it MUST | which the value of PDR is less than the value of CDR then it MUST | |||
send a Notification Message including the Status code _Traffic | send a Notification Message including the Status code _Traffic | |||
Parameters Unavailable_ to the upstream LSR from which it received | Parameters Unavailable_ to the upstream LSR from which it received | |||
the erroneous message. | the erroneous message. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 15 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
If a Traffic Parameter is indicated as Negotiable in the Label | If a Traffic Parameter is indicated as Negotiable in the Label | |||
Request Message by the corresponding Negotiable Flag then an LSR MAY | Request Message by the corresponding Negotiable Flag then an LSR MAY | |||
replace the Traffic Parameter value with a smaller value. | replace the Traffic Parameter value with a smaller value. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 16Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
If the Weight is indicated as Negotiable in the Label Request | If the Weight is indicated as Negotiable in the Label Request | |||
Message by the corresponding Negotiable Flag then an LSR may replace | Message by the corresponding Negotiable Flag then an LSR may replace | |||
the Weight value with a lower value (down to 0). | the Weight value with a lower value (down to 0). | |||
If, after possible Traffic Parameter negotiation, an LSR can support | If, after possible Traffic Parameter negotiation, an LSR can support | |||
the CR-LSP Traffic Parameters then the LSR MUST reserve the | the CR-LSP Traffic Parameters then the LSR MUST reserve the | |||
corresponding resources for the CR-LSP. | corresponding resources for the CR-LSP. | |||
If, after possible Traffic Parameter negotiation, an LSR cannot | If, after possible Traffic Parameter negotiation, an LSR cannot | |||
support the CR-LSP Traffic Parameters then the LSR MUST send a | support the CR-LSP Traffic Parameters then the LSR MUST send a | |||
skipping to change at line 843 | skipping to change at line 886 | |||
release any resources that it possibly had reserved for the CR-LSP. | release any resources that it possibly had reserved for the CR-LSP. | |||
In addition, on receiving a Notification Message from a Downstream | In addition, on receiving a Notification Message from a Downstream | |||
LSR that is associated with a Label Request from an upstream LSR, | LSR that is associated with a Label Request from an upstream LSR, | |||
the local LSR MUST propagate the Notification message using the | the local LSR MUST propagate the Notification message using the | |||
procedures in [1]. | procedures in [1]. | |||
4.4 Preemption TLV | 4.4 Preemption TLV | |||
The defualt value of the setup and holding priorities should be in | The defualt value of the setup and holding priorities should be in | |||
the middle of the range (e.g., 4) so that this feature can be turned | the middle of the range (e.g., 4) so that this feature can be turned | |||
on gradually in an operational network by increasing or decerasing | on gradually in an operational network by increasing or decreasing | |||
the priority starting at the middle of the range. | the priority starting at the middle of the range. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 16 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 17Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | |||
Since the Preemption TLV is an optional TLV, LSPs that are setup | ||||
without an explicitly signaled preemption TLV SHOULD be treated as | ||||
LSPs with the default setup and holding priorities (e.g., 4). | ||||
When an established LSP is preempted, the LSR that initiates the | ||||
preemption sends a Withdraw Message upstream and a Release Message | ||||
downstream. | ||||
When an LSP in the process of being established (outstanding Label | ||||
Request without getting a Label Mapping back) is preempted, the LSR | ||||
that initiates the preemption, sends a Notification Message upstream | ||||
and an Abort Message downstream. | ||||
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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0|0| Preemption-TLV (0x0820) | Length | | |0|0| Type = 0x0820 | Length = 4 | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| SetPrio | HoldPrio | Reserved | | | SetPrio | HoldPrio | Reserved | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Type | Type | |||
A fourteen-bit field carrying the value of the Preemption-TLV | A fourteen-bit field carrying the value of the Preemption-TLV | |||
type which is 0x820. | Type = 0x0820. | |||
Length | Length | |||
Specifies the length of the value field in bytes. | Specifies the length of the value field in bytes = 4. | |||
Reserved | Reserved | |||
Zero on transmission. Ignored on receipt. | Zero on transmission. Ignored on receipt. | |||
SetPrio | SetPrio | |||
A SetupPriority of value zero (0) is the priority assigned to | A SetupPriority of value zero (0) is the priority assigned to | |||
the most important path. It is referred to as the highest | the most important path. It is referred to as the highest | |||
priority. Seven (7) is the priority for the least important | priority. Seven (7) is the priority for the least important | |||
path. The higher the setup priority, the more paths CR-LDP can | path. The higher the setup priority, the more paths CR-LDP can | |||
bump to set up the path. The default value should be 4. | bump to set up the path. The default value should be 4. | |||
skipping to change at line 888 | skipping to change at line 944 | |||
The higher the holding priority, the less likely it is for CR- | The higher the holding priority, the less likely it is for CR- | |||
LDP to reallocate its bandwidth to a new path. | LDP to reallocate its bandwidth to a new path. | |||
4.5 LSPID TLV | 4.5 LSPID TLV | |||
LSPID is a unique identifier of a CR-LSP within an MPLS network. | LSPID is a unique identifier of a CR-LSP within an MPLS network. | |||
The LSPID is composed of the ingress LSR Router ID (or any of its | The LSPID is composed of the ingress LSR Router ID (or any of its | |||
own Ipv4 addresses) and a Locally unique CR-LSP ID to that LSR. | own Ipv4 addresses) and a Locally unique CR-LSP ID to that LSR. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 18Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
The LSPID is useful in network management, in CR-LSP repair, and in | The LSPID is useful in network management, in CR-LSP repair, and in | |||
using an already established CR-LSP as a hop in an ER-TLV. | using an already established CR-LSP as a hop in an ER-TLV. | |||
An _action indicator flag_ is carried in the LSPID TLV. This _action | An _action indicator flag_ is carried in the LSPID TLV. This _action | |||
indicator flag_ indicates explicitly the action that should be taken | indicator flag_ indicates explicitly the action that should be taken | |||
if the LSP already exists on the LSR receiving the message. | if the LSP already exists on the LSR receiving the message. | |||
After a CR-LSP is set up, its bandwidth reservation may need to be | After a CR-LSP is set up, its bandwidth reservation may need to be | |||
changed by the network operator, due to the new requirements for the | changed by the network operator, due to the new requirements for the | |||
traffic carried on that CR-LSP. The _action indicator flag_ is used | traffic carried on that CR-LSP. The _action indicator flag_ is used | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 17 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
indicate the need to modify the bandwidth and possibly other | indicate the need to modify the bandwidth and possibly other | |||
parameters of an established CR-LSP without service interruption. | parameters of an established CR-LSP without service interruption. | |||
This feature has application in dynamic network resources management | This feature has application in dynamic network resources management | |||
where traffic of different priorities and service classes is | where traffic of different priorities and service classes is | |||
involved. | involved. | |||
The procedure for the code point _modify_ is defined in Appendix C. | The procedure for the code point _modify_ is defined in [9]. The | |||
The procedures for other flags are FFS. | procedures for other flags are FFS. | |||
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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0|0| LSPID-TLV (0x0821) | Length | | |0|0| Type = 0x0821 | Length = 4 | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Reserved |ActFlg | Local CR-LSP ID | | | Reserved |ActFlg | Local CR-LSP ID | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Ingress LSR Router ID | | | Ingress LSR Router ID | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Type | Type | |||
A fourteen-bit field carrying the value of the LSPID-TLV type | A fourteen-bit field carrying the value of the LSPID-TLV | |||
which is 0x821. | Type = 0x0821. | |||
Length | Length | |||
Specifies the length of the value field in bytes. | Specifies the length of the value field in bytes = 4. | |||
ActFlg | ActFlg | |||
Action Indicator Flag: A 4-bit field that indicates explicitly | Action Indicator Flag: A 4-bit field that indicates explicitly | |||
the action that should be taken if the LSP already exists on | the action that should be taken if the LSP already exists on | |||
the LSR receiving the message. A set of indicator code points | the LSR receiving the message. A set of indicator code points | |||
is proposed as follows: | is proposed as follows: | |||
0000: indicates initial LSP setup | 0000: indicates initial LSP setup | |||
0001: indicates modify LSP | 0001: indicates modify LSP | |||
Reserved | Reserved | |||
Zero on transmission. Ignored on receipt. | Zero on transmission. Ignored on receipt. | |||
Local CR-LSP ID | Local CR-LSP ID | |||
The Local LSP ID is an identifier of the CR-LSP locally unique | The Local LSP ID is an identifier of the CR-LSP locally unique | |||
within the Ingress LSR originating the CR-LSP. | within the Ingress LSR originating the CR-LSP. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 19Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
Ingress LSR Router ID | Ingress LSR Router ID | |||
An LSR may use any of its own IPv4 addresses in this field. | An LSR may use any of its own IPv4 addresses in this field. | |||
4.6 Resource Class (Color) TLV | 4.6 Resource Class (Color) TLV | |||
The Resource Class as defined in [4] is used to specify which links | The Resource Class as defined in [4] is used to specify which links | |||
are acceptable by this CR-LSP. This information allows for the | are acceptable by this CR-LSP. This information allows for the | |||
network's topology to be pruned. | network's topology to be pruned. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 18 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0|0| ResCls-TLV (0x0822) | Length | | |0|0| Type = 0x0822 | Length = 4 | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| RsCls | | | RsCls | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Type | Type | |||
A fourteen-bit field carrying the value of the ResCls-TLV type | A fourteen-bit field carrying the value of the ResCls-TLV Type | |||
which is 0x822. | = 0x0822. | |||
Length | Length | |||
Specifies the length of the value field in bytes. | Specifies the length of the value field in bytes = 4. | |||
RsCls | RsCls | |||
The Resource Class bit mask indicating which of the 32 | The Resource Class bit mask indicating which of the 32 | |||
_administrative groups_ or _colors_ of links the CR-LSP can | _administrative groups_ or _colors_ of links the CR-LSP can | |||
traverse. | traverse. | |||
4.7 ER-Hop semantics | 4.7 ER-Hop semantics | |||
4.7.1. ER-Hop 1: The IPv4 prefix | 4.7.1. ER-Hop 1: The IPv4 prefix | |||
The abstract node represented by this ER-Hop is the set of nodes, | The abstract node represented by this ER-Hop is the set of nodes, | |||
which have an IP address, which lies within this prefix. Note that | which have an IP address, which lies within this prefix. Note that | |||
a prefix length of 32 indicates a single IPv4 node. | a prefix length of 32 indicates a single IPv4 node. | |||
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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0|0| 0x801 | Length | | |0|0| Type = 0x0801 | Length = 8 | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|L| Reserved | PreLen | | |L| Reserved | PreLen | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| IPv4 Address (4 bytes) | | | IPv4 Address (4 bytes) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Type | Type | |||
IPv4 Address 0x801 | A fourteen-bit field carrying the value of the ER-Hop 1, IPv4 | |||
Address, Type = 0x0801 | ||||
Length | Length | |||
Specifies the length of the value field in bytes. | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 20Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
Specifies the length of the value field in bytes = 8. | ||||
L Bit | L Bit | |||
Set to indicate Loose hop. | Set to indicate Loose hop. | |||
Cleared to indicate a strict hop. | Cleared to indicate a strict hop. | |||
Reserved | Reserved | |||
Zero on transmission. Ignored on receipt. | Zero on transmission. Ignored on receipt. | |||
PreLen | PreLen | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 19 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
Prefix Length 1-32 | Prefix Length 1-32 | |||
IP Address | IP Address | |||
A four-byte field indicating the IP Address. | A four-byte field indicating the IP Address. | |||
4.7.2. ER-Hop 2: The IPv6 address | 4.7.2. ER-Hop 2: The IPv6 address | |||
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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0|0| 0x802 | Length | | |0|0| 0x0802 | Length = 20 | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|L| Reserved | PreLen | | |L| Reserved | PreLen | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| IPV6 address | | | IPV6 address | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| IPV6 address (continued) | | | IPV6 address (continued) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| IPV6 address (continued) | | | IPV6 address (continued) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| IPV6 address (continued) | | | IPV6 address (continued) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Type | Type | |||
0x802 IPv6 address | A fourteen-bit field carrying the value of the ER-Hop 2, IPv6 | |||
Address, Type = 0x0802 | ||||
Length | Length | |||
Specifies the length of the value field in bytes. | Specifies the length of the value field in bytes = 20. | |||
L Bit | L Bit | |||
Set to indicate Loose hop. | Set to indicate Loose hop. | |||
Cleared to indicate a strict hop. | Cleared to indicate a strict hop. | |||
Reserved | Reserved | |||
Zero on transmission. Ignored on receipt. | Zero on transmission. Ignored on receipt. | |||
PreLen | PreLen | |||
Prefix Length 1-128 | Prefix Length 1-128 | |||
IPv6 address | IPv6 address | |||
A 128-bit unicast host address. | A 128-bit unicast host address. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 21Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
4.7.3. ER-Hop 3: The autonomous system number | 4.7.3. ER-Hop 3: The autonomous system number | |||
The abstract node represented by this ER-Hop is the set of nodes | The abstract node represented by this ER-Hop is the set of nodes | |||
belonging to the autonomous system. | belonging to the autonomous system. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 20 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0|0| 0x803 | Length | | |0|0| 0x0803 | Length = 4 | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|L| Reserved | AS Number | | |L| Reserved | AS Number | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Type | Type | |||
AS Number 0x803 | A fourteen-bit field carrying the value of the ER-Hop 3, AS | |||
Number, Type = 0x0803 | ||||
Length | Length | |||
Specifies the length of the value field in bytes. | Specifies the length of the value field in bytes = 4. | |||
L Bit | L Bit | |||
Set to indicate Loose hop. | Set to indicate Loose hop. | |||
Cleared to indicate a strict hop. | Cleared to indicate a strict hop. | |||
Reserved | Reserved | |||
Zero on transmission. Ignored on receipt. | Zero on transmission. Ignored on receipt. | |||
AS Number | AS Number | |||
Autonomous System number | Autonomous System number | |||
skipping to change at line 1102 | skipping to change at line 1160 | |||
the next ER-Hop after the loosely specified CR-LSP segment. Use of | the next ER-Hop after the loosely specified CR-LSP segment. Use of | |||
the LSPID Hop in this scenario eliminates the need for ER-Hops to | the LSPID Hop in this scenario eliminates the need for ER-Hops to | |||
keep the entire remaining ER-TLV at each LSR that is at either | keep the entire remaining ER-TLV at each LSR that is at either | |||
(upstream or downstream) end of a loosely specified CR-LSP segment | (upstream or downstream) end of a loosely specified CR-LSP segment | |||
as part of its state information. This is due to the fact that the | as part of its state information. This is due to the fact that the | |||
upstream LSR needs only to keep the next ER-Hop and the LSPID and | upstream LSR needs only to keep the next ER-Hop and the LSPID and | |||
the downstream LSR needs only to keep the LSPID in order for each | the downstream LSR needs only to keep the LSPID in order for each | |||
end to be able to recognize that the same LSP is being identified. | end to be able to recognize that the same LSP is being identified. | |||
If the LSPID Hop is not the last hop in an ER-TLV, the LSR must | If the LSPID Hop is not the last hop in an ER-TLV, the LSR must | |||
forward the remaining ER-TLV in a Label Request message, using the | ||||
CR-LSP specified by the LSPID, to the LSR that is the CR-LSP's | ||||
egress. That LSR will continue processing of the CR-LSP Label | ||||
Request Message. The result is a tunneled, or stacked, CR-LSP. | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 21 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 22Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | |||
remove the LSP-ID Hop and forward the remaining ER-TLV in a Label | ||||
Request message using an LDP session established with the LSR that | ||||
is the specified CR-LSP's egress. That LSR will continue processing | ||||
of the CR-LSP Label Request Message. The result is a tunneled, or | ||||
stacked, CR-LSP. | ||||
To support labels negotiated for tunneled CR-LSP segments, an LDP | ||||
session is required [1] between tunnel end points - possibly using | ||||
the existing CR-LSP. Use of the existence of the CR-LSP in lieu of | ||||
a session, or other possible session-less approaches, is FFS. | ||||
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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0|0| 0x804 | Length | | |0|0| 0x0804 | Length = 8 | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|L| Reserved | Local LSPID | | |L| Reserved | Local LSPID | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Ingress LSR Router ID | | | Ingress LSR Router ID | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Type | Type | |||
LSPID 0x804 | A fourteen-bit field carrying the value of the ER-Hop 4, LSPID, | |||
Type = 0x0804 | ||||
Length | Length | |||
Specifies the length of the value field in bytes. | Specifies the length of the value field in bytes = 8. | |||
L Bit | L Bit | |||
Set to indicate Loose hop. | Set to indicate Loose hop. | |||
Cleared to indicate a strict hop. | Cleared to indicate a strict hop. | |||
Reserved | Reserved | |||
Zero on transmission. Ignored on receipt. | Zero on transmission. Ignored on receipt. | |||
Local LSPID | Local LSPID | |||
A 2 byte field indicating the LSPID which is unique with | A 2 byte field indicating the LSPID which is unique with | |||
skipping to change at line 1148 | skipping to change at line 1214 | |||
4.8. Processing of the Explicit Route TLV | 4.8. Processing of the Explicit Route TLV | |||
4.8.1. Selection of the next hop | 4.8.1. Selection of the next hop | |||
A Label Request Message containing an explicit route TLV must | A Label Request Message containing an explicit route TLV must | |||
determine the next hop for this path. Selection of this next hop | determine the next hop for this path. Selection of this next hop | |||
may involve a selection from a set of possible alternatives. The | may involve a selection from a set of possible alternatives. The | |||
mechanism for making a selection from this set is implementation | mechanism for making a selection from this set is implementation | |||
dependent and is outside of the scope of this specification. | dependent and is outside of the scope of this specification. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 23Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
Selection of particular paths is also outside of the scope of this | Selection of particular paths is also outside of the scope of this | |||
specification, but it is assumed that each node will make a best | specification, but it is assumed that each node will make a best | |||
effort attempt to determine a loop-free path. Note that such best | effort attempt to determine a loop-free path. Note that such best | |||
efforts may be overridden by local policy. | efforts may be overridden by local policy. | |||
To determine the next hop for the path, a node performs the | To determine the next hop for the path, a node performs the | |||
following steps: | following steps: | |||
1. The node receiving the Label Request Message must first | 1. The node receiving the Label Request Message must first | |||
evaluate the first ER-Hop. If the L bit is not set in the | evaluate the first ER-Hop. If the L bit is not set in the | |||
first ER-Hop and if the node is not part of the abstract node | first ER-Hop and if the node is not part of the abstract node | |||
described by the first ER-Hop, it has received the message in | described by the first ER-Hop, it has received the message in | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 22 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
error, and should return a _Bad Initial ER-Hop_ error. If the | error, and should return a _Bad Initial ER-Hop_ error. If the | |||
L bit is set and the local node is not part of the abstract | L bit is set and the local node is not part of the abstract | |||
node described by the first ER-Hop, the node selects a next | node described by the first ER-Hop, the node selects a next | |||
hop that is along the path to the abstract node described by | hop that is along the path to the abstract node described by | |||
the first ER-Hop. If there is no first ER-Hop, the message is | the first ER-Hop. If there is no first ER-Hop, the message is | |||
also in error and the system should return a _Bad Explicit | also in error and the system should return a _Bad Explicit | |||
Routing TLV_ error using a Notification Message sent upstream. | Routing TLV_ error using a Notification Message sent upstream. | |||
2. If there is no second ER-Hop, this indicates the end of the | 2. If there is no second ER-Hop, this indicates the end of the | |||
explicit route. The explicit route TLV should be removed from | explicit route. The explicit route TLV should be removed from | |||
skipping to change at line 1204 | skipping to change at line 1270 | |||
5.a If the second ER-Hop is a strict ER-Hop, then there is | 5.a If the second ER-Hop is a strict ER-Hop, then there is | |||
an error and the node should return a _Bad Strict Node_ | an error and the node should return a _Bad Strict Node_ | |||
error. | error. | |||
5.b Otherwise, if the second ER-Hop is a loose ER-Hop, then | 5.b Otherwise, if the second ER-Hop is a loose ER-Hop, then | |||
the node selects any next hop that is along the path to the | the node selects any next hop that is along the path to the | |||
next abstract node. If no path exists within the MPLS | next abstract node. If no path exists within the MPLS | |||
domain, then there is an error, and the node should return a | domain, then there is an error, and the node should return a | |||
_Bad loose node_ error. | _Bad loose node_ error. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 24Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
6. Finally, the node replaces the first ER-Hop with any ER-Hop | 6. Finally, the node replaces the first ER-Hop with any ER-Hop | |||
that denotes an abstract node containing the next hop. This | that denotes an abstract node containing the next hop. This | |||
is necessary so that when the explicit route is received by | is necessary so that when the explicit route is received by | |||
the next hop, it will be accepted. | the next hop, it will be accepted. | |||
7. Progress the Label Request Message to the next hop. | 7. Progress the Label Request Message to the next hop. | |||
4.8.2. Adding ER-Hops to the explicit route TLV | 4.8.2. Adding ER-Hops to the explicit route TLV | |||
After selecting a next hop, the node may alter the explicit route in | After selecting a next hop, the node may alter the explicit route in | |||
the following ways. | the following ways. | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 23 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | ||||
If, as part of executing the algorithm in section 4.8.1, the | If, as part of executing the algorithm in section 4.8.1, the | |||
explicit route TLV is removed, the node may add a new explicit route | explicit route TLV is removed, the node may add a new explicit route | |||
TLV. | TLV. | |||
Otherwise, if the node is a member of the abstract node for the | Otherwise, if the node is a member of the abstract node for the | |||
first ER-Hop, then a series of ER-Hops may be inserted before the | first ER-Hop, then a series of ER-Hops may be inserted before the | |||
first ER-Hop or may replace the first ER-Hop. Each ER-Hop in this | first ER-Hop or may replace the first ER-Hop. Each ER-Hop in this | |||
series must denote an abstract node that is a subset of the current | series must denote an abstract node that is a subset of the current | |||
abstract node. | abstract node. | |||
skipping to change at line 1239 | skipping to change at line 1305 | |||
series of ER-Hops may be inserted prior to the first ER-Hop. | series of ER-Hops may be inserted prior to the first ER-Hop. | |||
4.9 Route Pinning TLV | 4.9 Route Pinning TLV | |||
Section 2.4 describes the use of route pinning. The encoding of the | Section 2.4 describes the use of route pinning. The encoding of the | |||
Route Pinning TLV is as follows: | Route Pinning 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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0|0| 0x823 | Length | | |0|0| Type = 0x0823 | Length = 4 | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|P| Reserved | | |P| Reserved | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Type | Type | |||
Pinning-TLV type 0x823 | A fourteen-bit field carrying the value of the Pinning-TLV | |||
Type = 0x0823 | ||||
Length | Length | |||
Specifies the length of the value field in bytes. | Specifies the length of the value field in bytes = 4. | |||
P Bit | P Bit | |||
The P bit is set to 1 to indicate that route pinning is | The P bit is set to 1 to indicate that route pinning is | |||
requested. | requested. | |||
The P bit is set to 0 to indicate that route pinning is not | The P bit is set to 0 to indicate that route pinning is not | |||
requested | requested | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 25Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
Reserved | Reserved | |||
Zero on transmission. Ignored on receipt. | Zero on transmission. Ignored on receipt. | |||
4.10 CR-LSP FEC Element | 4.10 CR-LSP FEC Element | |||
A new FEC element is introduced in this specification to support CR- | A new FEC element is introduced in this specification to support CR- | |||
LSPs. This new FEC element does not preclude the use of other FECs | LSPs. A FEC TLV containing a FEC of Element type CR-LSP (0x04) is a | |||
elements (Type=0x01, 0x02, 0x03) defined in the LDP spec in CR-LDP | CR-LSP FEC TLV. The CR-LSP FEC Element is an opaque FEC to be used | |||
messages. The CR-LDP FEC Element is an opaque FEC to be used only in | only in Messages of CR-LSPs. | |||
Messages of CR-LSPs. | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 24 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | A single FEC element MUST be included in the Label Request Message. | |||
The FEC Element SHOULD be the CR-LSP FEC Element. However, one of | ||||
the other FEC elements (Type=0x01, 0x02, 0x03) defined in [1] MAY be | ||||
in CR-LDP messages instead of the CR-LSP FEC Element for certain | ||||
applications. A FEC TLV containing a FEC of Element type CR-LSP | ||||
(0x04) is a CR-LSP FEC TLV. | ||||
FEC Element Type Value | FEC Element Type Value | |||
Type name | Type name | |||
CR-LSP 0x04 No value; i.e., 0 value octets; | CR-LSP 0x04 No value; i.e., 0 value octets; | |||
The CR-LSP FEC TLV encoding is as follows: | The CR-LSP FEC TLV encoding 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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|0|0| FEC(0x0100) | Length | | |0|0| Type = 0x0100 | Length = 1 | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| CR-LSP (4) | | | CR-LSP (4) | | |||
+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
Type | Type | |||
FEC TLV type 0x0100 | A fourteen-bit field carrying the value of the FEC TLV | |||
Type = 0x0100 | ||||
Length | Length | |||
Specifies the length of the value field in bytes. | Specifies the length of the value field in bytes = 1. | |||
CR-LSP FEC Element Type | CR-LSP FEC Element Type | |||
0x04 | 0x04 | |||
4.11 Error subcodes | 4.11 TLV Type Summary | |||
In the processing described above, certain errors need to be | TLV Type | |||
reported as part of the Notification Message. This section defines | -------------------------------------- ---------- | |||
the status codes for the errors described in this specification. | Explicit Route TLV 0x0800 | |||
Ipv4 Prefix ER-Hop TLV 0x0801 | ||||
Ipv6 Prefix ER-Hop TLV 0x0802 | ||||
Autonomous System Number ER-Hop TLV 0x0803 | ||||
LSP-ID ER-Hop TLV 0x0804 | ||||
Traffic Parameters TLV 0x0810 | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 26Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
Preemption TLV 0x0820 | ||||
LSPID TLV 0x0821 | ||||
Resource Class TLV 0x0822 | ||||
Route Pinning TLV 0x0823 | ||||
4.12 FEC Type Summary | ||||
FEC Element TLV Type | ||||
-------------------------------------- ---------- | ||||
CR-LSP FEC Element TLV 0x0100 | ||||
4.13 Status Code Summary | ||||
Status Code Type | Status Code Type | |||
-------------------------------------- ---------- | -------------------------------------- ---------- | |||
Bad Explicit Routing TLV Error 0x44000001 | Bad Explicit Routing TLV Error 0x44000001 | |||
Bad Strict Node Error 0x44000002 | Bad Strict Node Error 0x44000002 | |||
Bad Loose Node Error 0x44000003 | Bad Loose Node Error 0x44000003 | |||
Bad Initial ER-Hop Error 0x44000004 | Bad Initial ER-Hop Error 0x44000004 | |||
Resource Unavailable 0x44000005 | Resource Unavailable 0x44000005 | |||
Traffic Parameters Unavailable 0x44000006 | Traffic Parameters Unavailable 0x44000006 | |||
Setup Abort (Label Request Aborted in [1]) 0x04000015 | LSP Preempted 0x44000007 | |||
Modify Request Not Supported 0x44000008 | Modify Request Not Supported 0x44000008 | |||
Setup Abort (Label Request Aborted in [1]) 0x04000015 | ||||
5. Security | 5. IANA Considerations | |||
Pre-emption has to be controlled by the MPLS domain. | CR-LDP defines the following name spaces, which require management: | |||
Resource reservation requires the LSRs to have an LSP admission | - TLV types. | |||
control function. | - FEC types. | |||
- Status codes. | ||||
Traffic Engineered LSPs can bypass normal routing. | The following sections provide guidelines for managing these name | |||
spaces. | ||||
6. Acknowledgments | 5.1 TLV Type Name Space | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 25 Internet Draft Constraint-Based LSP Setup using LDP September, 1999 | TLV types in the range 0x0800 - 0x08FF are allocated to CR-LDP base | |||
protocol. Following the policies outlined in [IANA], TLV types in | ||||
this range are allocated through an IETF Consensus action. | ||||
5.2 FEC Type Name Space | ||||
FEC Type 100 is allocated to CR-LDP. | ||||
5.3 Status Code Space | ||||
The range for Status Codes is 0x44000000 - 0x440000FF. | ||||
Following the policies outlined in [IANA], Status Codes in the range | ||||
0x44000000 - 0x440000FF are allocated through an IETF Consensus | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 27Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
action. | ||||
6. Security | ||||
CR-LDP inherits the same security mechanism described in Section 4.0 | ||||
of [1] to protect against the introduction of spoofed TCP segments | ||||
into LDP session connection streams. | ||||
7. Acknowledgments | ||||
The messages used to signal the CR-LSP setup are based on the work | The messages used to signal the CR-LSP setup are based on the work | |||
done by the [1] team. | done by the [1] team. | |||
The authors would also like to acknowledge the careful review and | The authors would also like to acknowledge the careful review and | |||
comments of Ken Hayward, Greg Wright, Geetha Brown, Brian Williams, | comments of Ken Hayward, Greg Wright, Geetha Brown, Brian Williams, | |||
Paul Beaubien, Matthew Yuen, Liam Casey, Ankur Anand, Adrian Farrel. | Paul Beaubien, Matthew Yuen, Liam Casey, Ankur Anand, Adrian Farrel. | |||
7. Intellectual Property Consideration | 8. Intellectual Property Consideration | |||
The IETF has been notified of intellectual property rights claimed | The IETF has been notified of intellectual property rights claimed | |||
in regard to some or all of the specification contained in this | in regard to some or all of the specification contained in this | |||
document. For more information consult the online list of claimed | document. For more information consult the online list of claimed | |||
rights. | rights. | |||
8. References | 9. References | |||
1 Andersson et al, "Label Distribution Protocol Specification" | 1 Andersson et al, "Label Distribution Protocol Specification" | |||
work in progress (draft-ietf-mpls-ldp-05), June 1999. | work in progress (draft-ietf-mpls-ldp-08), June 2000. | |||
2 Callon et al, "Framework for Multiprotocol Label Switching", | 2 Callon et al, "Framework for Multiprotocol Label Switching", | |||
work in progress (draft-ietf-mpls-framework-05), September 1999. | work in progress (draft-ietf-mpls-framework-05), September 1999. | |||
3 Rosen et al, "Multiprotocol Label Switching Architecture", | 3 Rosen et al, "Multiprotocol Label Switching Architecture", | |||
work in progress (draft-ietf-mpls-arch-06), September 1999. | work in progress (draft-ietf-mpls-arch-06), August 1999. | |||
4 Awduche et al, "Requirements for Traffic Engineering Over | 4 Awduche et al, "Requirements for Traffic Engineering Over | |||
MPLS", RFC 2702, September 1999. | MPLS", RFC 2702, September 1999. | |||
5 L. Wu, et. al., "LDP State Machine" work in progress | 5 B. Gleeson, et. al., "A Framework for IP Based Virtual Private | |||
(draft-ietf-mpls-ldp-state-00), Feb 1999. | Networks", RFC 2764, February 2000. | |||
9. Author's Addresses | 6 B. Jamoussi, et. al., _Applicability Statement for CR-LDP_, work | |||
in progress, (draft-ietf-mpls-crldp-applic-01), June 2000. | ||||
7 S. Bradner, "Key words for use in RFCs to Indicate Requirement | ||||
Levels_, RFC 2119, March 1997. | ||||
8 L. Wu, et. al., "LDP State Machine", work in progress, | ||||
(draft-ietf-mpls-ldp-state-03), January 2000. | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 28Internet Draft Constraint-Based LSP Setup using LDP July, 2000 | ||||
9 J. Ash, et. al., "LSP Modification Using CR-LDP", work in | ||||
progress, (draft-ietf-mpls-crlsp-modify-01), February 2000. | ||||
10. Author's Addresses | ||||
Osama S. Aboul-Magd Loa Andersson | Osama S. Aboul-Magd Loa Andersson | |||
Nortel Networks Nortel Networks | Nortel Networks Nortel Networks | |||
P O Box 3511 Station C S:t Eriksgatan 115 | P O Box 3511 Station C S:t Eriksgatan 115 | |||
Ottawa, ON K1Y 4H7 PO Box 6701 | Ottawa, ON K1Y 4H7 PO Box 6701 | |||
Canada 113 85 Stockholm | Canada 113 85 Stockholm | |||
Phone: +1 613 763-5827 Tel: +46 8 508 835 00 | Phone: +1 613 763-5827 Tel: +46 8 508 835 00 | |||
Osama@nortelnetworks.com Fax: +46 8 508 835 01 | Osama@nortelnetworks.com Fax: +46 8 508 835 01 | |||
Loa_andersson@nortelnetworks.com | Loa_andersson@nortelnetworks.com | |||
Peter Ashwood-Smith Ross Callon | Peter Ashwood-Smith Ross Callon | |||
Nortel Networks IronBridge Networks | Nortel Networks Juniper Networks | |||
P O Box 3511 Station C 55 Hayden Avenue, | P O Box 3511 Station C 1194 North Mathilda Avenue, | |||
Ottawa, ON K1Y 4H7 Lexington, MA 02173 | Ottawa, ON K1Y 4H7 Sunnyvale, CA 94089 | |||
Canada Phone: +1-781-402-8017 | Canada 978-692-6724 | |||
Phone: +1 613 763-4534 Rcallon@ironbridgenetworks.com | Phone: +1 613 763-4534 rcallon@juniper.net | |||
Petera@nortelnetworks.com | Petera@nortelnetworks.com | |||
Ram Dantu Paul Doolan | Ram Dantu Paul Doolan | |||
Alcatel USA Inc. Ennovate Networks | IPmobile Ennovate Networks | |||
1651 North Glenville, Suite 216 330 Codman Hill Rd | ||||
Jamoussi, et. al. draft-ietf-mpls-crldp-03.txt 26 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | Richardson, TX 75081 Marlborough MA 01719 | |||
+1-972-234-6070 extension 211 Phone: 978-263-2002 | ||||
IP Competence Center 330 Codman Hill Rd | rdantu@ipmobile.com Pdoolan@ennovatenetworks.com | |||
1201 E. Campbell Road.,446-315 Marlborough MA 01719 | ||||
Richadson, TX USA., 75081-2206 Phone: 978-263-2002 | ||||
Phone: 972 996 2938 Pdoolan@ennovatenetworks.com | ||||
Fax: 972 996 5902 | ||||
Ram.dantu@alcatel.com | ||||
Nancy Feldman Andre Fredette | Nancy Feldman Andre Fredette | |||
IBM Corp. Nortel Networks | IBM Corp. PhotonEx Corporation | |||
17 Skyline Drive 600 Technology Park Drive | 17 Skyline Drive 135 South Road | |||
Hawthorne NY 10532 Billerica, MA 01821 | Hawthorne NY 10532 Bedford, MA 01730 | |||
Phone: 914-784-3254 978-288-8524 | Phone: 914-784-3254 email: fredette@photonex.com | |||
Nkf@us.ibm.com Fredette@nortelnetworks.com | Nkf@us.ibm.com phone: 781-275-8500 | |||
Eric Gray Joel M. Halpern | Eric Gray Joel M. Halpern | |||
Lucent Technologies, Inc Institutional Venture Partners | Zaffire, Inc Longitude Systems, Inc. | |||
1600 Osgood St. 650-926-5633 | 2630 Orchard Parkway, 1319 Shepard Road | |||
North Andover, MA 01847 Joel@mcquillan.com | San Jose, CA 95134-2020 Sterling, VA 20164 | |||
Phone: 603-659-3386 | Phone: 408-894-7362 703-433-0808 x207 | |||
Ewgray@lucent.com | egray@zaffire.com joel@longsys.com | |||
Juha Heinanen Fiffi Hellstrand | Juha Heinanen Fiffi Hellstrand | |||
Telia Finland, Inc. Ericsson Telecom AB | Telia Finland, Inc. Nortel Networks | |||
Myyrmaentie 2 S-126 25 STOCKHOLM | Myyrmaentie 2 S:t Eriksgatan 115 | |||
01600 VANTAA Sweden | 01600 VANTAA PO Box 6701, 113 85 Stockholm | |||
Finland Tel: +46 8 719 4933 | Finland Sweden | |||
Tel: +358 41 500 4808 Etxfiff@etxb.ericsson.se | Tel: +358 41 500 4808 +46705593687 | |||
Jh@telia.fi | Jh@telia.fi fiffi@nortelnetworks.com | |||
Jamoussi, et. al. draft-ietf-mpls-crldp-04.txt 29Internet Draft Constraint-Based LSP Setup using LDP July 2000 | ||||
Bilel Jamoussi Timothy E. Kilty | Bilel Jamoussi Timothy E. Kilty | |||
Nortel Networks Corp. Northchurch Communications | Nortel Networks Corp. Newbridge Networks, Inc. | |||
600 Technology Park Drive 5 Corporate Drive, | 600 Technology Park Drive 5 Corporate Drive | |||
Billerica, MA 01821 Andover, MA 018110 | Billerica, MA 01821 Andover, MA 01810 | |||
USA phone: 978 691-4656 | USA USA | |||
Phone: +1 978 288-4506 Tkilty@northc.com | Phone: +1 978 288-4506 phone: 978 691-4656 | |||
Jamoussi@nortelnetworks.com | Jamoussi@nortelnetworks.com tkilty@northchurch.net | |||
Andrew G. Malis Muckai K Girish | Andrew G. Malis Muckai K Girish | |||
Ascend Communications, Inc. SBC Technology Resources, | Vivace Networks Atoga Systems | |||
1 Robbins Road 4698 Willow Road | 2730 Orchard Parkway 49026 Milmont Drive | |||
Westford, MA 01886 Pleasanton, CA 94588 | San Jose, CA 95134 Fremont, CA 94538 | |||
Phone: 978 952-7414 Phone: (925) 598-1263 | Andy.Malis@vivacenetworks.com E-mail: muckai@atoga.com | |||
fax: 978 392-2074 Fax: (925) 598-1321 | Tel: +1 408 383 7223 | |||
Malis@ascend.com Mgirish@tri.sbc.com | Fax: +1 408 904 4748 | |||
Kenneth Sundell Pasi Vaananen | Kenneth Sundell Pasi Vaananen | |||
Nortel Networks Nokia Telecommunications | Nortel Networks Nokia Telecommunications | |||
S:t Eriksgatan 115 3 Burlington Woods Drive, | S:t Eriksgatan 115 3 Burlington Woods Drive, | |||
PO Box 6701 Burlington, MA 01803 | PO Box 6701 Burlington, MA 01803 | |||
113 85 Stockholm Phone: +1-781-238-4981 | 113 85 Stockholm Phone: +1-781-238-4981 | |||
Tel: +46 8 508 835 00 Pasi.vaanenen@ntc.nokia.com | Tel: +46 8 508 835 00 pasi.vaananen@nokia.com | |||
Fax: +46 8 508 835 01 | Fax: +46 8 508 835 01 | |||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 27 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | ||||
Ksundell@nortelnetworks.com | Ksundell@nortelnetworks.com | |||
Tom Worster Liwen Wu | Tom Worster Liwen Wu | |||
Nokia Alcatel U.S.A | Ennovate Networks Cisco Systems | |||
3 Burlington Woods Dr. 44983 Knoll Square | 60 Codman Hill Rd 250 Apollo Drive | |||
Suite 250 Ashburn, Va. 20147 | Boxborough Chelmsford, MA. 01824 | |||
Burlington MA 01803 USA Phone: (703) 724-2619 | MA 01719 Tel: 978-244-3087. | |||
+1 617 247 2624 FAX: (703) 724-2005 | tworster@ennovatenetworks.com liwwu@cisco.com | |||
Tom.worster@nokia.com Liwen.wu@and.alcatel.com | ||||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 28 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | Jamoussi, et. al. draft-ietf-mpls-cr-ldp-04.txt 30Internet Draft Constraint-Based LSP Setup using LDP July 2000 | |||
Appendix A: CR-LSP Establishment Examples | Appendix A: CR-LSP Establishment Examples | |||
A.1 Strict Explicit Route Example | A.1 Strict Explicit Route Example | |||
This appendix provides an example for the setup of a strictly routed | This appendix provides an example for the setup of a strictly routed | |||
CR-LSP. In this example, a specific node represents each abstract | CR-LSP. In this example, a specific node represents each abstract | |||
node. | node. | |||
The sample network used here is a four node network with two edge | The sample network used here is a four node network with two edge | |||
skipping to change at line 1498 | skipping to change at line 1627 | |||
Also, LSR2 is not a member of the abstract node described by the | Also, LSR2 is not a member of the abstract node described by the | |||
first ER-Hop <b>. | first ER-Hop <b>. | |||
Finally, the first ER-Hop <b> is a strict hop. | Finally, the first ER-Hop <b> is a strict hop. | |||
Therefore, processing section 4.8.2 does not result in the insertion | Therefore, processing section 4.8.2 does not result in the insertion | |||
of new ER-Hops. The selection of the next hop has been already done | of new ER-Hops. The selection of the next hop has been already done | |||
is step 4 of Section 4.8.1 and the processing of the ER-TLV is | is step 4 of Section 4.8.1 and the processing of the ER-TLV is | |||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 29 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | Jamoussi, et. al. draft-ietf-mpls-cr-ldp-04.txt 31Internet Draft Constraint-Based LSP Setup using LDP July 2000 | |||
completed at LSR2. In this case, the Label Request Message including | completed at LSR2. In this case, the Label Request Message including | |||
the ER-TLV <b, c> is progressed by LSR2 to LSR3. | the ER-TLV <b, c> is progressed by LSR2 to LSR3. | |||
At LSR3, a similar processing to the ER-TLV takes place except that | At LSR3, a similar processing to the ER-TLV takes place except that | |||
the incoming ER-TLV = <b, c> and the outgoing ER-TLV is <c>. | the incoming ER-TLV = <b, c> and the outgoing ER-TLV is <c>. | |||
At LSR4, the following processing of section 4.8.1 takes place: | At LSR4, the following processing of section 4.8.1 takes place: | |||
1) The node LSR4 is part of the abstract node described by the | 1) The node LSR4 is part of the abstract node described by the | |||
skipping to change at line 1553 | skipping to change at line 1682 | |||
The ingress LSR uses information provided by the management system | The ingress LSR uses information provided by the management system | |||
or the application and possibly also information from the routing | or the application and possibly also information from the routing | |||
database to calculate the explicit route and to create the Label | database to calculate the explicit route and to create the Label | |||
Request Message. | Request Message. | |||
The Label request message carries together with other necessary | The Label request message carries together with other necessary | |||
information an ER-TLV defining the explicitly routed path. In our | information an ER-TLV defining the explicitly routed path. In our | |||
example the list of hops in the ER-Hop TLV is supposed to contain an | example the list of hops in the ER-Hop TLV is supposed to contain an | |||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 30 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | Jamoussi, et. al. draft-ietf-mpls-cr-ldp-04.txt 32Internet Draft Constraint-Based LSP Setup using LDP July 2000 | |||
abstract node representing a group of nodes, an abstract node | abstract node representing a group of nodes, an abstract node | |||
representing a specific node, another abstract node representing a | representing a specific node, another abstract node representing a | |||
group of nodes, and an abstract node representing a specific egress | group of nodes, and an abstract node representing a specific egress | |||
point. | point. | |||
In--{Group 1}--{Specific A}--{Group 2}--{Specific Out: B} | In--{Group 1}--{Specific A}--{Group 2}--{Specific Out: B} | |||
The ER-TLV contains four ER-Hop TLVs: | The ER-TLV contains four ER-Hop TLVs: | |||
1. An ER-Hop TLV that specifies a group of LSR valid for the | 1. An ER-Hop TLV that specifies a group of LSR valid for the | |||
skipping to change at line 1606 | skipping to change at line 1735 | |||
is not the specific node (A) in the second ER-Hop TLV. | is not the specific node (A) in the second ER-Hop TLV. | |||
Further it realizes that the specific node (A) is one of its | Further it realizes that the specific node (A) is one of its | |||
next hops. | next hops. | |||
5. It removes the first ER-Hop TLVs and sends a Label Request | 5. It removes the first ER-Hop TLVs and sends a Label Request | |||
Message to the specific node (A). | Message to the specific node (A). | |||
6. The specific node (A) recognizes itself in the first ER-Hop | 6. The specific node (A) recognizes itself in the first ER-Hop | |||
TLV. Removes the specific ER-Hop TLV. | TLV. Removes the specific ER-Hop TLV. | |||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 31 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | Jamoussi, et. al. draft-ietf-mpls-cr-ldp-04.txt 33Internet Draft Constraint-Based LSP Setup using LDP July 2000 | |||
7. It sends a Label Request Message to a node that is a member | 7. It sends a Label Request Message to a node that is a member | |||
of the group (Group 2) indicated in the ER-Hop TLV. | of the group (Group 2) indicated in the ER-Hop TLV. | |||
8. The node that receives the message identifies itself as part | 8. The node that receives the message identifies itself as part | |||
of the group indicated in the first ER-Hop TLV, further it | of the group indicated in the first ER-Hop TLV, further it | |||
realizes that the specific egress node (B) is one of its | realizes that the specific egress node (B) is one of its | |||
next hops. | next hops. | |||
9. It sends a Label Request Message to the specific egress node | 9. It sends a Label Request Message to the specific egress node | |||
skipping to change at line 1620 | skipping to change at line 1749 | |||
8. The node that receives the message identifies itself as part | 8. The node that receives the message identifies itself as part | |||
of the group indicated in the first ER-Hop TLV, further it | of the group indicated in the first ER-Hop TLV, further it | |||
realizes that the specific egress node (B) is one of its | realizes that the specific egress node (B) is one of its | |||
next hops. | next hops. | |||
9. It sends a Label Request Message to the specific egress node | 9. It sends a Label Request Message to the specific egress node | |||
(B). | (B). | |||
10.The specific egress node (B) recognizes itself as the egress | 10.The specific egress node (B) recognizes itself as the egress | |||
for the CR-LSP, it returns a Label Mapping Message, that | for the CR-LSP, it returns a Label Mapping Message, that | |||
will traverse the same path as the Label Request Message in | will traverse the same path as the Label Request Message in | |||
the opposite direction. | the opposite direction. | |||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 32 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | Jamoussi, et. al. draft-ietf-mpls-cr-ldp-04.txt 34Internet Draft Constraint-Based LSP Setup using LDP July 2000 | |||
Appendix B. QoS Service Examples | Appendix B. QoS Service Examples | |||
B.1 Service Examples | B.1 Service Examples | |||
Construction of an end-to-end service is the result of the rules | Construction of an end-to-end service is the result of the rules | |||
enforced at the edge and the treatment that packets receive at the | enforced at the edge and the treatment that packets receive at the | |||
network nodes. The rules define the traffic conditioning actions | network nodes. The rules define the traffic conditioning actions | |||
that are implemented at the edge and they include policing with | that are implemented at the edge and they include policing with | |||
pass, mark, and drop capabilities. The edge rules are expected tobe | pass, mark, and drop capabilities. The edge rules are expected tobe | |||
skipping to change at line 1680 | skipping to change at line 1808 | |||
ATM-VBR.3(nrt) PCR CDVT SCR MBS 0 Unspecified drop>PCR | ATM-VBR.3(nrt) PCR CDVT SCR MBS 0 Unspecified drop>PCR | |||
mark>SCR,MBS | mark>SCR,MBS | |||
ATM-UBR PCR CDVT - - 0 Unspecified drop>PCR | ATM-UBR PCR CDVT - - 0 Unspecified drop>PCR | |||
ATM-GFR.1 PCR CDVT MCR MBS 0 Unspecified drop>PCR | ATM-GFR.1 PCR CDVT MCR MBS 0 Unspecified drop>PCR | |||
ATM-GFR.2 PCR CDVT MCR MBS 0 Unspecified drop>PCR | ATM-GFR.2 PCR CDVT MCR MBS 0 Unspecified drop>PCR | |||
mark>MCR,MFS | mark>MCR,MFS | |||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 33 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | Jamoussi, et. al. draft-ietf-mpls-cr-ldp-04.txt 35Internet Draft Constraint-Based LSP Setup using LDP July 2000 | |||
int-serv-CL p m r b 0 Frequent drop>p | int-serv-CL p m r b 0 Frequent drop>p | |||
drop>r,b | drop>r,b | |||
S= User specified | S= User specified | |||
In the above table, the DS refers to a delay sensitive service where | In the above table, the DS refers to a delay sensitive service where | |||
the network commits to deliver with high probability user datagrams | the network commits to deliver with high probability user datagrams | |||
at a rate of PDR with minimum delay and delay requirements. | at a rate of PDR with minimum delay and delay requirements. | |||
Datagrams in excess of PDR will be discarded. | Datagrams in excess of PDR will be discarded. | |||
skipping to change at line 1732 | skipping to change at line 1860 | |||
the edge. The specification of those actions is expected to be a | the edge. The specification of those actions is expected to be a | |||
part of the service level agreement (SLA) negotiation and is not | part of the service level agreement (SLA) negotiation and is not | |||
included in the signaling protocol. For DS service, the edge action | included in the signaling protocol. For DS service, the edge action | |||
is to drop packets that exceed the PDR and the PBS specifications. | is to drop packets that exceed the PDR and the PBS specifications. | |||
The signaling message will be sent in the direction of the ER path | The signaling message will be sent in the direction of the ER path | |||
and the LSP is established following the normal LDP procedures. Each | and the LSP is established following the normal LDP procedures. Each | |||
LSR applies its admission control rules. If sufficient resources are | LSR applies its admission control rules. If sufficient resources are | |||
not available and the parameter values are subject to negotiation, | not available and the parameter values are subject to negotiation, | |||
then the LSR could negotiate down the PDR, the PBS, or both. | then the LSR could negotiate down the PDR, the PBS, or both. | |||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 34 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | Jamoussi, et. al. draft-ietf-mpls-cr-ldp-04.txt 36Internet Draft Constraint-Based LSP Setup using LDP July 2000 | |||
The new parameter values are echoed back in the Label Mapping | The new parameter values are echoed back in the Label Mapping | |||
Message. LSRs might need to re-adjust their resource reservations | Message. LSRs might need to re-adjust their resource reservations | |||
based on the new traffic parameter values. | based on the new traffic parameter values. | |||
B.3 Establishing CR-LSP Supporting Delay Insensitive Applications | B.3 Establishing CR-LSP Supporting Delay Insensitive Applications | |||
In this example we assume that a throughput sensitive (TS) service | In this example we assume that a throughput sensitive (TS) service | |||
is requested. For resource allocation the user assigns values for | is requested. For resource allocation the user assigns values for | |||
PDR, PBS, CDR, and CBS. The negotiation flag is set if the traffic | PDR, PBS, CDR, and CBS. The negotiation flag is set if the traffic | |||
skipping to change at line 1763 | skipping to change at line 1891 | |||
high discard precedence values for all packets that exceed CDR and | high discard precedence values for all packets that exceed CDR and | |||
the CBS. The edge rules will also include dropping of packets that | the CBS. The edge rules will also include dropping of packets that | |||
conform to neither PDR nor PBS. | conform to neither PDR nor PBS. | |||
Each LSR of the LSP is expected to run its admission control rules | Each LSR of the LSP is expected to run its admission control rules | |||
and negotiate traffic parameters down if sufficient resources do not | and negotiate traffic parameters down if sufficient resources do not | |||
exist. The new parameter values are echoed back in the Label Mapping | exist. The new parameter values are echoed back in the Label Mapping | |||
Message. LSRs might need to re-adjust their resources based on the | Message. LSRs might need to re-adjust their resources based on the | |||
new traffic parameter values. | new traffic parameter values. | |||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 35 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | Jamoussi, et. al. draft-ietf-mpls-cr-ldp-04.txt 37Internet Draft Constraint-Based LSP Setup using LDP July 2000 | |||
Appendix C. LSP Modification Using CR-LDP | ||||
After a CR-LSP is set up, its bandwidth reservation may need to be | ||||
changed by the network operator, due to the new requirements for the | ||||
traffic carried on that CR-LSP. This contribution presents an | ||||
approach to modify the bandwidth and possibly other parameters of an | ||||
established CR-LSP using CR-LDP without service interruption. The | ||||
LSP modification feature can be supported by CR-LDP with a minor | ||||
extension of an _action indicator flag_. This feature has | ||||
application in dynamic network resources management where traffic of | ||||
different priorities and service classes is involved. | ||||
Conventions used in this Appendix: | ||||
L: LSP (Label Switched Path) | ||||
Lid: LSPID (LSP Identifier) | ||||
T: Traffic Parameters | ||||
R: LSR (Label Switching Router) | ||||
FTN: FEC To NHLFE | ||||
FEC: Forwarding Equivalence Class | ||||
NHLFE: Next Hop Label Forwarding Entity | ||||
TLV: Type Length Value | ||||
C.1 Introduction | ||||
Consider an LSP L1 that has been established with its set of traffic | ||||
parameters T0. A certain amount of bandwidth is reserved along the | ||||
path of L1. Consider then that some changes are required on L1. For | ||||
example, the bandwidth of L1 needs to be increased to accommodate | ||||
the increased traffic on L1. Or the SLA associated with L1 needs to | ||||
be modified because a different service class is desired. The | ||||
network operator, in these cases, would like to modify the | ||||
characteristics of L1, for example, to change its traffic parameter | ||||
set from T0 to T1, without releasing the LSP L1 to interrupt the | ||||
service. In some other cases, network operators may want to reroute | ||||
a CR-LSP to a different path for either improved performance or | ||||
better network resource utilization. In all these cases, LSP | ||||
modification is required. In section C.2 below, a method to modify | ||||
an active LSP using CR-LDP is presented. The concept of LSPID in CR- | ||||
LDP is used to achieve the LSP modification, without releasing the | ||||
LSP and interrupting the service and, without double booking the | ||||
bandwidth. Only a minimum extension on CR-LDP, an action indication | ||||
flag of _modify_ is needed in order to explicitly specify the | ||||
behavior, and allow the existing LSPID to support other networking | ||||
capabilities in the future. Section 4.5 specifies the action | ||||
indication flag of _modify_ for CR-LDP. An example is described to | ||||
demonstrate an application of the presented method in dynamically | ||||
managing network bandwidth requirements without interrupting | ||||
service. | ||||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 36 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | ||||
C.2 Basic Procedure | ||||
LSP modification can only be allowed when the LSP is already set up | ||||
and active. That is, modification is not defined nor allowed during | ||||
the LSP establishment or label release/withdraw phases. Only | ||||
modification requested by the ingress LSR of the LSP is considered | ||||
in this draft for CR-LSP. Ingress LSR cannot modify an LSP before a | ||||
previous modification procedure is completed. | ||||
Assume that CR-LSP L1 is set up with LSPID L-id1, which is unique in | ||||
the MPLS network. The ingress LSR R1 of L1 has in its FTN (FEC To | ||||
NHLFE) table FEC1 -> Label A mapping where A is the outgoing label | ||||
for LSP L1. To modify the characteristics of L1, R1 sends a Label | ||||
Request Message. In the messages, the TLVs will have the new | ||||
requested values, and the LSPID TLV is included which indicates the | ||||
value of L-id1. The Traffic Parameters TLV, the ER-TLV, the Resource | ||||
Class (color) TLV and the Preemption TLV can have values different | ||||
from those in the original Label Request Message, which has been | ||||
used to set up L1 earlier. Thus, L1 can be changed in its bandwidth | ||||
request (traffic parameter TLV), its traffic service class (traffic | ||||
parameter TLV), the route it traverses (ER TLV) and its setup and | ||||
holding (Preemption TLV) priorities. The ingress LSR R1 now still | ||||
has the entry in FTN as FEC1 -> Label A. R1 is waiting to establish | ||||
another entry for FEC1. | ||||
When an LSR Ri along the path of L1 receives the Label Request | ||||
message, its behavior is the same as that of receiving any Label | ||||
request message. The only extension is that Ri examines the LSPID | ||||
carried in the Label Request Message, L-id1 and identifies if it | ||||
already has L-id1. If Ri does not have L-id1, Ri behaves the same as | ||||
receiving a new Label Request message. If Ri already has L-id1, Ri | ||||
takes the newly received Traffic Parameter TLV and computes the new | ||||
bandwidth required and derives the new service class. Compared with | ||||
the already reserved bandwidth for L-id1, Ri now reserves only the | ||||
difference of the bandwidth requirements. This prevents Ri from | ||||
doing bandwidth double booking. If a new service class is requested, | ||||
Ri also prepares to receive the traffic on L1 in, perhaps a | ||||
different type of queue, just the same as handling it for a Label | ||||
Request Message. Ri assigns a new label for the Label Request | ||||
Message. | ||||
When the Label Mapping message is received, two sets of labels exist | ||||
for the same LSPID. Then the ingress LSR R1 will have two outgoing | ||||
labels, A and B, associated with the same FEC, where B is the new | ||||
outgoing label received for LSP L1. The ingress LSR R1 can now | ||||
activate the new entry in FTN, FEC1 - > Label B. This means that R1 | ||||
swaps traffic on L1 to the new label _B_ (_new_ path) for L1. The | ||||
packets can now be sent with the new label B, with the new set of | ||||
traffic parameters if any, on a new path, that is, if a new path is | ||||
requested in the Label Request Message for the modification. All the | ||||
other LSRs along the path will start to receive the incoming packets | ||||
with the new label. For the incoming new label, the LSR has already | ||||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 37 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | ||||
established its mapping to the new outgoing label. Thus, the packets | ||||
will be sent out with the new outgoing label. The LSRs do not have | ||||
to implement new procedures to track the new and old | ||||
characteristics of the LSP. | ||||
The ingress LSR R1 then starts to release the original label A for | ||||
LSP L1. The Label Release Message is sent by R1 towards the down | ||||
stream LSRs. The Release message carries the LSPID of L-id1 and the | ||||
Label TLV to indicate which label is to be released. The Release | ||||
Message is propagated to the egress LSR to release the original | ||||
labels previously used for L1. Upon receiving the Label Release | ||||
Message, LSR R1 examines the LSPID, L-id1 and finds out that the L- | ||||
id1 has still another set of label (incoming/outgoing) under it. | ||||
Thus, the old label is released without releasing the resource in | ||||
use. That is, if the bandwidth has been decreased for L1, the delta | ||||
bandwidth is released. Otherwise, no bandwidth is released. This | ||||
modification procedure can not only be applied to modify the traffic | ||||
parameters and/or service class of an active LSP, but also to | ||||
reroute an existing LSP, and/or change its setup/holding priority if | ||||
desired. After the release procedure, the modification of the LSP is | ||||
completed. | ||||
The method described above follows the normal behavior of Label | ||||
Request / Mapping / Notification / Release /Withdraw procedure of a | ||||
CR-LDP operated LSR with a specific action taken on LSPID. If Label | ||||
Withdraw Message is used to withdraw a label associated with an | ||||
LSPID, the Label TLV should be included to specify which label to | ||||
withdraw. Since the LSPID can also be used for other feature | ||||
support, an action indication flag of _modify_ assigned to the LSPID | ||||
would explicitly explain the action/semantics that should be | ||||
associated with the messaging procedure. The details of this flag | ||||
are addressed in Section 4.5. | ||||
C.3 Priority Handling | ||||
When sending a Label Request Message for an active LSP L1 to request | ||||
changes, the setup priority used in the label Request Message can be | ||||
different from the one used in the previous Label Request Message, | ||||
effectively indicating the priority of this _modification_ request. | ||||
Network operators can use this feature to decide what priority is to | ||||
be assigned to a modification request, based on their | ||||
policies/algorithms and other traffic situations in the network. For | ||||
example, the priority for modification can be determined by the | ||||
priority of the customer/LSP. If a customer has exceeded the | ||||
reserved bandwidth of its VPN LSP tunnel by too much, the | ||||
modification request's priority may be given higher. | ||||
The Label Request message for the modification of an active LSP can | ||||
also be sent with a holding priority different from its previous | ||||
one. This effectively changes the holding priority of the LSP. Upon | ||||
receiving a Label Request Message that requests a new holding | ||||
priority, the LSR assigns the new holding priority to the bandwidth. | ||||
That is, the new holding priority is assigned to both the existing | ||||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 38 Internet Draft Constraint-Based LSP Setup using LDP August, 1999 | ||||
incoming / outgoing labels and the new labels to be established for | ||||
the LSPID in question. In this way self-bumping is prevented. | ||||
C.4 Modification Failure Case Handling | ||||
A modification attempt may fail due to insufficient resource or | ||||
other situations. A Notification message is sent back to the ingress | ||||
LSR R1 to indicate the failure of Label Request Message that | ||||
intended to modify the LSP. Retry may be attempted if desired by the | ||||
network operator. | ||||
If the LSP on the original path failed when a modification attempt | ||||
is in progress, the attempt should be aborted by using the Label | ||||
Abort Request message as specified in LDP draft. | ||||
Full Copyright Statement | Full Copyright Statement | |||
_Copyright c The Internet Society (date). All Rights Reserved. This | _Copyright c The Internet Society (date). All Rights Reserved. This | |||
document and translations of it may be copied and furnished to | document and translations of it may be copied and furnished to | |||
others, and derivative works that comment on or otherwise explain it | others, and derivative works that comment on or otherwise explain it | |||
or assist in its implementation may be prepared, copied, published | or assist in its implementation may be prepared, copied, published | |||
and distributed, in whole or in part, without restriction of any | and distributed, in whole or in part, without restriction of any | |||
kind, provided that the above copyright notice and this paragraph | kind, provided that the above copyright notice and this paragraph | |||
are included on all such copies and derivative works. However, this | are included on all such copies and derivative works. However, this | |||
document itself may not be modified in any way, such as by removing | document itself may not be modified in any way, such as by removing | |||
the copyright notice or references to the Internet Society or other | the copyright notice or references to the Internet Society or other | |||
Internet organizations, except as needed for the purpose of | Internet organizations, except as needed for the purpose of | |||
developing Internet standards in which case the procedures for | developing Internet standards in which case the procedures for | |||
copyrights defined in the Internet Standards process must be | copyrights defined in the Internet Standards process must be | |||
followed, or as required to translate it into languages other than | followed, or as required to translate it into languages other than | |||
English. | English. | |||
The limited permissions granted above are perpetual and will not be | The limited permissions granted above are perpetual and will not be | |||
revoked by the Internet Society or its successors or assigns. | revoked by the Internet Society or its successors or assigns. | |||
Jamoussi, et. al. draft-ietf-mpls-cr-ldp-03.txt 39 | Jamoussi, et. al. draft-ietf-mpls-cr-ldp-04.txt 38 | |||
End of changes. | ||||
This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/ |