draft-ietf-mpls-3209-patherr-06.txt | rfc5711.txt | |||
---|---|---|---|---|
Networking Working Group JP. Vasseur, Ed. | Internet Engineering Task Force (IETF) JP. Vasseur, Ed. | |||
Internet-Draft George. Swallow | Request for Comments: 5711 G. Swallow | |||
Intended status: Standards Track Cisco Systems, Inc | Updates: 3209 Cisco Systems, Inc. | |||
Expires: April 1, 2010 Ina. Minei | Category: Standards Track I. Minei | |||
Juniper Networks | ISSN: 2070-1721 Juniper Networks | |||
September 28, 2009 | January 2010 | |||
Node behavior upon originating and receiving Resource ReserVation | ||||
Protocol (RSVP) Path Error message | ||||
draft-ietf-mpls-3209-patherr-06.txt | ||||
Status of this Memo | Node Behavior upon Originating and Receiving Resource Reservation | |||
Protocol (RSVP) Path Error Messages | ||||
This Internet-Draft is submitted to IETF in full conformance with the | Abstract | |||
provisions of BCP 78 and BCP 79. | ||||
Internet-Drafts are working documents of the Internet Engineering | The aim of this document is to describe a common practice with regard | |||
Task Force (IETF), its areas, and its working groups. Note that | to the behavior of nodes that send and receive a Resource Reservation | |||
other groups may also distribute working documents as Internet- | Protocol (RSVP) Traffic Engineering (TE) Path Error messages for a | |||
Drafts. | preempted Multiprotocol Label Switching (MPLS) or Generalized MPLS | |||
(GMPLS) Traffic Engineering Label Switched Path (TE LSP). (For | ||||
reference to the notion of TE LSP preemption, see RFC 3209.) This | ||||
document does not define any new protocol extensions. | ||||
Internet-Drafts are draft documents valid for a maximum of six months | Status of This Memo | |||
and may be updated, replaced, or obsoleted by other documents at any | ||||
time. It is inappropriate to use Internet-Drafts as reference | ||||
material or to cite them other than as "work in progress." | ||||
The list of current Internet-Drafts can be accessed at | This is an Internet Standards Track document. | |||
http://www.ietf.org/ietf/1id-abstracts.txt. | ||||
The list of Internet-Draft Shadow Directories can be accessed at | This document is a product of the Internet Engineering Task Force | |||
http://www.ietf.org/shadow.html. | (IETF). It represents the consensus of the IETF community. It has | |||
received public review and has been approved for publication by the | ||||
Internet Engineering Steering Group (IESG). Further information on | ||||
Internet Standards is available in Section 2 of RFC 5741. | ||||
This Internet-Draft will expire on April 1, 2010. | Information about the current status of this document, any errata, | |||
and how to provide feedback on it may be obtained at | ||||
http://www.rfc-editor.org/info/rfc5711. | ||||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2009 IETF Trust and the persons identified as the | Copyright (c) 2010 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents in effect on the date of | Provisions Relating to IETF Documents | |||
publication of this document (http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info) in effect on the date of | |||
Please review these documents carefully, as they describe your rights | publication of this document. Please review these documents | |||
and restrictions with respect to this document. | carefully, as they describe your rights and restrictions with respect | |||
to this document. Code Components extracted from this document must | ||||
Abstract | include Simplified BSD License text as described in Section 4.e of | |||
the Trust Legal Provisions and are provided without warranty as | ||||
The aim of this document is to describe a common practice with regard | described in the Simplified BSD License. | |||
to the behavior of a node sending a Resource ReserVation Protocol | ||||
(RSVP) Traffic Engineering (TE) Path Error message and to the | ||||
behavior of a node receiving an RSVP Path Error message for a | ||||
preempted Multi-Protocol Label Switching (MPLS) and Generalized MPLS | ||||
(GMPLS) Traffic Engineering Label Switched Path (TE LSP). This | ||||
document does not define any new protocol extensions. | ||||
Requirements Language | ||||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | ||||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | ||||
document are to be interpreted as described in RFC 2119 [RFC2119]. | ||||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction ....................................................3 | |||
2. Protocol behavior . . . . . . . . . . . . . . . . . . . . . . . 3 | 1.1. Requirements Language ......................................3 | |||
2.1. Behavior at Detecting Nodes . . . . . . . . . . . . . . . . 4 | 2. Protocol Behavior ...............................................3 | |||
2.2. Behavior at Receiving Nodes . . . . . . . . . . . . . . . . 4 | 2.1. Behavior at Detecting Nodes ................................4 | |||
2.3. Data Plane Behavior . . . . . . . . . . . . . . . . . . . . 5 | 2.2. Behavior at Receiving Nodes ................................5 | |||
3. RSVP PathErr Messages For a Preempted TE LSP . . . . . . . . . 5 | 2.3. Data-Plane Behavior ........................................5 | |||
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5 | 3. RSVP PathErr Messages for a Preempted TE LSP ....................5 | |||
5. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 | 4. Security Considerations .........................................5 | |||
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6 | 5. Acknowledgements ................................................6 | |||
7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 | 6. References ......................................................6 | |||
7.1. Normative References . . . . . . . . . . . . . . . . . . . 6 | 6.1. Normative References .......................................6 | |||
7.2. Informative References . . . . . . . . . . . . . . . . . . 6 | 6.2. Informative References .....................................6 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 6 | ||||
1. Introduction | 1. Introduction | |||
The aim of this document is to describe a common practice with regard | The aim of this document is to describe a common practice with regard | |||
to the behavior of a node sending a Resource ReserVation Protocol | to the behavior of a node sending a Resource Reservation Protocol | |||
(RSVP) Traffic Engineering (TE) Path Error message and to the | (RSVP) Traffic Engineering (TE) Path Error message and to the | |||
behavior of a node receiving an RSVP Path Error message for a | behavior of a node receiving an RSVP Path Error message for a | |||
preempted Multi-Protocol Label Switching (MPLS) and Generalized MPLS | preempted Multiprotocol Label Switching (MPLS) and Generalized MPLS | |||
(GMPLS) Traffic Engineering Label Switched Path (TE LSP) (for | (GMPLS) Traffic Engineering Label Switched Path (TE LSP). (For | |||
reference to the notion of TE LSP preemption see [RFC3209]). | reference to the notion of TE LSP preemption, see [RFC3209]). | |||
[RFC2205] defines two RSVP error message types: PathErr and ResvErr | [RFC2205] defines two RSVP error message types: PathErr and ResvErr | |||
that are generated when an error occurs. Path Error Messages | that are generated when an error occurs. Path Error messages | |||
(PathErr) are used to report errors and travel upstream toward the | (PathErr) are used to report errors and travel upstream toward the | |||
head-end of the flow. Resv Error messages (ResvErr) travel | head-end of the flow. Resv Error messages (ResvErr) travel | |||
downstream toward the tail-end of the flow. | downstream toward the tail-end of the flow. | |||
This document describes only PathErr message processing for the | This document describes only PathErr message processing for the | |||
specific case of a preempted Traffic Engineering Label Switched Path | specific case of a preempted TE LSP, where the term preemption is | |||
(TE LSP) where the term preemption is defined in [RFC3209]. | defined in [RFC3209]. | |||
2. Protocol behavior | 1.1. Requirements Language | |||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | ||||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | ||||
document are to be interpreted as described in RFC 2119 [RFC2119]. | ||||
2. Protocol Behavior | ||||
PathErr messages are routed hop-by-hop using the path state | PathErr messages are routed hop-by-hop using the path state | |||
established when a Path message is routed through the network from | established when a Path message is routed through the network from | |||
the head-end to its tail-end. | the head-end to its tail-end. | |||
As stated in [RFC2205], PathErr messages do not modify the state of | As stated in [RFC2205], PathErr messages do not modify the state of | |||
any node through which they pass; they are only reported to the head- | any node through which they pass; they are only reported to the head- | |||
end of the TE LSP (Traffic Engineering Label Switched Path). | end of the TE LSP (Traffic Engineering Label Switched Path). | |||
The format of the PathErr message is defined in Section 3. of | The format of the PathErr message is defined in Section 3. of | |||
[RFC2205]. | [RFC2205]. | |||
The ERROR_SPEC object includes the IP address of the node that | The ERROR_SPEC object includes the IP address of the node that | |||
detected the error (Error Node Address), and specifies the error | detected the error (Error Node Address), and specifies the error | |||
through two fields. The Error Code field encodes the category of the | through two fields. The Error Code field encodes the category of the | |||
error, for example, Policy Control Failure or Unknown object class. | error, for example, Policy Control Failure or Unknown object class. | |||
The Error Value field qualifies the error code to indicate the error | The Error Value field qualifies the error code to indicate the error | |||
with more precision. [RFC3209] extends RSVP as defined in [RFC2205] | with more precision. [RFC3209] extends RSVP as defined in [RFC2205] | |||
for the management of Multi-Protocol Label Switching (MPLS) Traffic | for the management of MPLS-TE LSPs. [RFC3209] specifies several | |||
Engineered Label Switched Paths (TE-LSPs). [RFC3209] specifies | additional conditions that trigger the sending of a RSVP PathErr | |||
several additional conditions that trigger the sending of a RSVP | message for which new error codes and error values have been defined | |||
PathErr message for which new error codes and error values have been | that extend the list defined in [RFC2205]. The exact circumstances | |||
defined that extend the list defined in [RFC2205]. The exact | under which a TE LSP is preempted and such PathErr messages are sent | |||
circumstances under which a TE LSP is preempted and such PathErr | are defined in [RFC3209] and will not be repeated here. | |||
messages are sent are defined in Section 2.2 of [RFC3209] and will | ||||
not be repeated here. | ||||
Values for the Error Code and Error Value fields defined in | Values for the Error Code and Error Value fields defined in | |||
[RFC2205], [RFC3209], and other documents are maintained in a | [RFC2205], [RFC3209], and other documents are maintained in a | |||
registry by the IANA. | registry by the IANA. | |||
The error conditions fall into two categories: | The error conditions fall into two categories: | |||
o Fatal errors represent disruptive conditions for a TE LSP, | o Fatal errors represent disruptive conditions for a TE LSP. | |||
o Non-fatal errors are non-disruptive conditions which have occurred | o Non-fatal errors are non-disruptive conditions that have occurred | |||
for this TE LSP | for this TE LSP. | |||
PathErr messages may be used in two circumstances: | PathErr messages may be used in two circumstances: | |||
o During TE LSP establishment, | o during TE LSP establishment, and | |||
o After a TE LSP has been successfully established. | o after a TE LSP has been successfully established. | |||
Nodal behavior is dependent on which combination of the four cases | Nodal behavior is dependent on which combination of the four cases | |||
listed above applies. The following sections describe the expected | listed above applies. The following sections describe the expected | |||
behavior at nodes that perform a preemption action for a TE LSP (and | behavior at nodes that perform a preemption action for a TE LSP (and | |||
therefore report using error PathErr messages), and at nodes that | therefore report using error PathErr messages), and at nodes that | |||
receive PathErr messages. This text is a clarification and re- | receive PathErr messages. This text is a clarification and | |||
statement of the procedures set out in [RFC3209] and does not define | restatement of the procedures set out in [RFC3209] and does not | |||
any new behavior. | define any new behavior. | |||
2.1. Behavior at Detecting Nodes | 2.1. Behavior at Detecting Nodes | |||
In the case of fatal errors ("Hard Preemption" see section 4.7.3 of | In the case of fatal errors ("Hard Preemption"; see Section 4.7.3 of | |||
[RFC3209]), the detecting node SHOULD send a PathErr message | [RFC3209] ), the detecting node MUST send a PathErr message reporting | |||
reporting the error condition, and clears the corresponding Path and | the error condition, and MUST clear the corresponding Path and Resv | |||
Resv (control plane) states. A direct implication is that the data | (control plane) states. A direct implication is that the data-plane | |||
plane resources of such a TE LSP are also released, thus resulting in | resources of such a TE LSP are also released, thus resulting in | |||
traffic disruption. It should be noted, however, that in fatal error | traffic disruption. It should be noted, however, that in fatal error | |||
cases, the LSP has usually already failed in the data plane, and | cases, the LSP has usually already failed in the data plane, and | |||
traffic has already been disrupted. When the error arises during LSP | traffic has already been disrupted. When the error arises during LSP | |||
establishment, the implications are different to when it arises on an | establishment, the implications are different to when it arises on an | |||
active LSP since no traffic flows until the LSP has been fully | active LSP since no traffic flows until the LSP has been fully | |||
established. In the case of non-fatal errors, the detecting node | established. In the case of non-fatal errors, the detecting node | |||
should send a PathErr message, and must not clear control plane or | should send a PathErr message, and must not clear control plane or | |||
data plane state. | data plane state. | |||
2.2. Behavior at Receiving Nodes | 2.2. Behavior at Receiving Nodes | |||
Nodes that receive PathErr messages are all of the nodes along the | Nodes that receive PathErr messages are all of the nodes along the | |||
path of the TE LSP upstream of the node that detected the error. | path of the TE LSP upstream of the node that detected the error. | |||
This includes the head-end node. In accordance with [RFC2205] | This includes the head-end node. In accordance with Section 3.7.1 of | |||
Section 3.7.1, a node receiving a PathErr message takes no action | [RFC2205], a node receiving a PathErr message takes no action upon | |||
upon it and consequently it must not clear Path or Resv control plane | it, and consequently the node must not clear Path or Resv control- | |||
or data plane state. This is true regardless of whether the error | plane or data-plane state. This is true regardless of whether the | |||
condition reported by the PathErr is fatal or non-fatal. RSVP states | error condition reported by the PathErr is fatal or non-fatal. RSVP | |||
should only be affected upon receiving a PathTear or ResvTear | states should only be affected upon receiving a PathTear or ResvTear | |||
message, or in the event of a Path or Resv state timeout. Further | message, or in the event of a Path or Resv state timeout. Further | |||
discussion of the processing of these events is outside the scope of | discussion of the processing of these events is outside the scope of | |||
this document. | this document. | |||
Note that [RFC3473] defines a Path_State_Removed flag in the | Note that [RFC3473] defines a Path_State_Removed flag in the | |||
ERROR_SPEC object carried on a PathErr message. This field may be | ERROR_SPEC object carried on a PathErr message. This field may be | |||
set to change the behavior of upstream nodes that receive the PathErr | set to change the behavior of upstream nodes that receive the PathErr | |||
message. When set, the flag indicates that the message sender has | message. When set, the flag indicates that the message sender has | |||
removed Path state (and any associated Resv and data plane state) for | removed Path state (and any associated Resv and data-plane state) for | |||
the TE LSP. The message receiver should do likewise before | the TE LSP. The message receiver should do likewise before | |||
forwarding the message, but may retain state and clear the flag | forwarding the message, but may retain state and clear the flag | |||
before forwarding the message. | before forwarding the message. | |||
2.3. Data Plane Behavior | 2.3. Data-Plane Behavior | |||
Any node clearing either or both the Path or the Resv state of a TE | Any node clearing either or both the Path or the Resv state of a TE | |||
LSP MUST also free up the data plane resources allocated to the | LSP MUST also free up the data-plane resources allocated to the | |||
corresponding TE LSP. | corresponding TE LSP. | |||
3. RSVP PathErr Messages For a Preempted TE LSP | 3. RSVP PathErr Messages for a Preempted TE LSP | |||
Two Error-code have been defined to report a preempted TE LSP: | Two Error Codes have been defined to report a preempted TE LSP: | |||
o As defined in [RFC2750]:Error Code=2: "Policy Control Failure", | o As defined in [RFC2750]: Error Code=2: "Policy Control Failure", | |||
Error Value=5 "Flow was preempted" | Error Value=5: "Flow was preempted" | |||
o As defined in [RFC2205], Error Code=12: "Service preempted" | o As defined in [RFC2205], Error Code=12: "Service preempted" | |||
In both cases, these are fatal errors. | They are both fatal errors. | |||
4. IANA Considerations | ||||
This document does not define any new protocol extensions and thus no | ||||
action is requested to IANA. | ||||
5. Security Considerations | 4. Security Considerations | |||
This document does not define any new procedures, but clarifies those | This document does not define any new procedures, but clarifies those | |||
defined in other documents where security considerations are already | defined in other documents where security considerations are already | |||
specified in [RFC3209] and [RFC3473]. This document does not raise | specified in [RFC3209] and [RFC3473]. This document does not raise | |||
specific security issues beyond those of existing MPLS-TE. By | specific security issues beyond those of existing MPLS-TE. By | |||
clarifying the procedures, this document reduces the security risk | clarifying the procedures, this document reduces the security risk | |||
introduced by non-conformant implementations. See | introduced by non-conformant implementations. See [SEC_FMWK] for | |||
[I-D.ietf-mpls-mpls-and-gmpls-security-framework] for further | further discussion of MPLS security issues. | |||
discussion of MPLS security issues. | ||||
6. Acknowledgements | 5. Acknowledgements | |||
The author would like to thank Carol Iturralde, Ashok Narayanan, Rom | The authors would like to thank Carol Iturralde, Ashok Narayanan, Rom | |||
Reuther and Reshad Rahman. | Reuther, and Reshad Rahman. | |||
7. References | 6. References | |||
7.1. Normative References | 6.1. Normative References | |||
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Requirement Levels", BCP 14, RFC 2119, March 1997. | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
[RFC2205] Braden, B., Zhang, L., Berson, S., Herzog, S., and S. | [RFC2205] Braden, B., Zhang, L., Berson, S., Herzog, S., and S. | |||
Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1 | Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1 | |||
Functional Specification", RFC 2205, September 1997. | Functional Specification", RFC 2205, September 1997. | |||
[RFC2750] Herzog, S., "RSVP Extensions for Policy Control", | [RFC2750] Herzog, S., "RSVP Extensions for Policy Control", | |||
RFC 2750, January 2000. | RFC 2750, January 2000. | |||
[RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., | [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., | |||
and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP | and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP | |||
Tunnels", RFC 3209, December 2001. | Tunnels", RFC 3209, December 2001. | |||
[RFC3473] Berger, L., "Generalized Multi-Protocol Label Switching | [RFC3473] Berger, L., "Generalized Multi-Protocol Label Switching | |||
(GMPLS) Signaling Resource ReserVation Protocol-Traffic | (GMPLS) Signaling Resource ReserVation Protocol-Traffic | |||
Engineering (RSVP-TE) Extensions", RFC 3473, January 2003. | Engineering (RSVP-TE) Extensions", RFC 3473, | |||
January 2003. | ||||
7.2. Informative References | 6.2. Informative References | |||
[I-D.ietf-mpls-mpls-and-gmpls-security-framework] | [SEC_FMWK] Fang, L., Ed., "Security Framework for MPLS and GMPLS | |||
Fang, L. and M. Behringer, "Security Framework for MPLS | Networks", Work in Progress, October 2009. | |||
and GMPLS Networks", | ||||
draft-ietf-mpls-mpls-and-gmpls-security-framework-06 (work | ||||
in progress), July 2009. | ||||
Authors' Addresses | Authors' Addresses | |||
JP Vasseur (editor) | JP Vasseur (editor) | |||
Cisco Systems, Inc | Cisco Systems, Inc. | |||
1414 Massachusetts Avenue | 1414 Massachusetts Avenue | |||
Boxborough, MA 01719 | Boxborough, MA 01719 | |||
USA | USA | |||
Email: jpv@cisco.com | EMail: jpv@cisco.com | |||
George Swallow | George Swallow | |||
Cisco Systems, Inc | Cisco Systems, Inc. | |||
1414 Massachusetts Avenue | 1414 Massachusetts Avenue | |||
Boxborough, MA 01719 | Boxborough, MA 01719 | |||
USA | USA | |||
Email: swallow@cisco.com | EMail: swallow@cisco.com | |||
Ina Minei | Ina Minei | |||
Juniper Networks | Juniper Networks | |||
1194 North Mathilda Ave. | 1194 North Mathilda Ave. | |||
Sunnyvale, 94089 | Sunnyvale, CA 94089 | |||
USA | ||||
Email: ina@juniper.net | EMail: ina@juniper.net | |||
End of changes. 50 change blocks. | ||||
141 lines changed or deleted | 125 lines changed or added | |||
This html diff was produced by rfcdiff 1.37b. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |