Node Behavior upon Originating and Receiving Resource Reservation Protocol (RSVP) Path Error Messages
What routers should do when they send or receive an RSVP-TE PathErr message about a preempted label switched path.
Vasseur, JP., Ed., Swallow, G., and I. Minei, "Node Behavior upon Originating and Receiving Resource Reservation Protocol (RSVP) Path Error Messages", RFC 5711, DOI 10.17487/RFC5711, January 2010, <https://www.rfc-editor.org/info/rfc5711>.
@misc{rfc5711,
series = {Request for Comments},
number = 5711,
howpublished = {RFC 5711},
publisher = {RFC Editor},
doi = {10.17487/RFC5711},
url = {https://www.rfc-editor.org/info/rfc5711},
author = {JP. Vasseur and G. Swallow and I. Minei},
title = {{Node Behavior upon Originating and Receiving Resource Reservation Protocol (RSVP) Path Error Messages}},
pagetotal = 7,
year = 2010,
month = jan,
} RFC text
Contents
Internet Engineering Task Force (IETF) JP. Vasseur, Ed.
Request for Comments: 5711 G. Swallow
Updates: 3209 Cisco Systems, Inc.
Category: Standards Track I. Minei
ISSN: 2070-1721 Juniper Networks
January 2010
Node Behavior upon Originating and Receiving Resource Reservation
Protocol (RSVP) Path Error Messages
Abstract
The aim of this document is to describe a common practice with regard
to the behavior of nodes that send and receive a Resource Reservation
Protocol (RSVP) Traffic Engineering (TE) Path Error messages for a
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.
Status of This Memo
This is an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force
(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.
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 (c) 2010 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction ....................................................3
1.1. Requirements Language ......................................3
2. Protocol Behavior ...............................................3
2.1. Behavior at Detecting Nodes ................................4
2.2. Behavior at Receiving Nodes ................................5
2.3. Data-Plane Behavior ........................................5
3. RSVP PathErr Messages for a Preempted TE LSP ....................5
4. Security Considerations .........................................5
5. Acknowledgements ................................................6
6. References ......................................................6
6.1. Normative References .......................................6
6.2. Informative References .....................................6
1. Introduction
The aim of this document is to describe a common practice with regard
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 Multiprotocol Label Switching (MPLS) and Generalized MPLS
(GMPLS) Traffic Engineering Label Switched Path (TE LSP). (For
reference to the notion of TE LSP preemption, see [RFC3209]).
[RFC2205] defines two RSVP error message types: PathErr and ResvErr
that are generated when an error occurs. Path Error messages
(PathErr) are used to report errors and travel upstream toward the
head-end of the flow. Resv Error messages (ResvErr) travel
downstream toward the tail-end of the flow.
This document describes only PathErr message processing for the
specific case of a preempted TE LSP, where the term preemption is
defined in [RFC3209].
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
established when a Path message is routed through the network from
the head-end to its tail-end.
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-
end of the TE LSP (Traffic Engineering Label Switched Path).
The format of the PathErr message is defined in Section 3. of
[RFC2205].
The ERROR_SPEC object includes the IP address of the node that
detected the error (Error Node Address), and specifies the error
through two fields. The Error Code field encodes the category of the
error, for example, Policy Control Failure or Unknown object class.
The Error Value field qualifies the error code to indicate the error
with more precision. [RFC3209] extends RSVP as defined in [RFC2205]
for the management of MPLS-TE LSPs. [RFC3209] specifies several
additional conditions that trigger the sending of a RSVP PathErr
message for which new error codes and error values have been defined
that extend the list defined in [RFC2205]. The exact circumstances
under which a TE LSP is preempted and such PathErr messages are sent
are defined in [RFC3209] and will not be repeated here.
Values for the Error Code and Error Value fields defined in
[RFC2205], [RFC3209], and other documents are maintained in a
registry by the IANA.
The error conditions fall into two categories:
o Fatal errors represent disruptive conditions for a TE LSP.
o Non-fatal errors are non-disruptive conditions that have occurred
for this TE LSP.
PathErr messages may be used in two circumstances:
o during TE LSP establishment, and
o after a TE LSP has been successfully established.
Nodal behavior is dependent on which combination of the four cases
listed above applies. The following sections describe the expected
behavior at nodes that perform a preemption action for a TE LSP (and
therefore report using error PathErr messages), and at nodes that
receive PathErr messages. This text is a clarification and
restatement of the procedures set out in [RFC3209] and does not
define any new behavior.
2.1. Behavior at Detecting Nodes
In the case of fatal errors ("Hard Preemption"; see Section 4.7.3 of
[RFC3209] ), the detecting node MUST send a PathErr message reporting
the error condition, and MUST clear the corresponding Path and Resv
(control plane) states. A direct implication is that the data-plane
resources of such a TE LSP are also released, thus resulting in
traffic disruption. It should be noted, however, that in fatal error
cases, the LSP has usually already failed in the data plane, and
traffic has already been disrupted. When the error arises during LSP
establishment, the implications are different to when it arises on an
active LSP since no traffic flows until the LSP has been fully
established. In the case of non-fatal errors, the detecting node
should send a PathErr message, and must not clear control plane or
data plane state.
2.2. Behavior at Receiving Nodes
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.
This includes the head-end node. In accordance with Section 3.7.1 of
[RFC2205], a node receiving a PathErr message takes no action upon
it, and consequently the node must not clear Path or Resv control-
plane or data-plane state. This is true regardless of whether the
error condition reported by the PathErr is fatal or non-fatal. RSVP
states should only be affected upon receiving a PathTear or ResvTear
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
this document.
Note that [RFC3473] defines a Path_State_Removed flag in the
ERROR_SPEC object carried on a PathErr message. This field may be
set to change the behavior of upstream nodes that receive the PathErr
message. When set, the flag indicates that the message sender has
removed Path state (and any associated Resv and data-plane state) for
the TE LSP. The message receiver should do likewise before
forwarding the message, but may retain state and clear the flag
before forwarding the message.
2.3. Data-Plane Behavior
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
corresponding TE LSP.
3. RSVP PathErr Messages for 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",
Error Value=5: "Flow was preempted"
o As defined in [RFC2205], Error Code=12: "Service preempted"
They are both fatal errors.
4. Security Considerations
This document does not define any new procedures, but clarifies those
defined in other documents where security considerations are already
specified in [RFC3209] and [RFC3473]. This document does not raise
specific security issues beyond those of existing MPLS-TE. By
clarifying the procedures, this document reduces the security risk
introduced by non-conformant implementations. See [SEC_FMWK] for
further discussion of MPLS security issues.
5. Acknowledgements
The authors would like to thank Carol Iturralde, Ashok Narayanan, Rom
Reuther, and Reshad Rahman.
6. References
6.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2205] Braden, B., Zhang, L., Berson, S., Herzog, S., and S.
Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1
Functional Specification", RFC 2205, September 1997.
[RFC2750] Herzog, S., "RSVP Extensions for Policy Control",
RFC 2750, January 2000.
[RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
Tunnels", RFC 3209, December 2001.
[RFC3473] Berger, L., "Generalized Multi-Protocol Label Switching
(GMPLS) Signaling Resource ReserVation Protocol-Traffic
Engineering (RSVP-TE) Extensions", RFC 3473,
January 2003.
6.2. Informative References
[SEC_FMWK] Fang, L., Ed., "Security Framework for MPLS and GMPLS
Networks", Work in Progress, October 2009.
Authors' Addresses
JP Vasseur (editor)
Cisco Systems, Inc.
1414 Massachusetts Avenue
Boxborough, MA 01719
USA
EMail: jpv@cisco.com
George Swallow
Cisco Systems, Inc.
1414 Massachusetts Avenue
Boxborough, MA 01719
USA
EMail: swallow@cisco.com
Ina Minei
Juniper Networks
1194 North Mathilda Ave.
Sunnyvale, CA 94089
USA
EMail: ina@juniper.net
AI ELI5
On this page
§1Purpose and Scope
This document describes common practice for a node that sends an RSVP-TE Path Error message, and for a node that receives one, when a Multiprotocol Label Switching (MPLS) or Generalized MPLS (GMPLS) traffic engineering label switched path (TE LSP) has been preempted. Preemption is defined in RFC 3209.
It covers only PathErr processing for that case. It does not define any new protocol extensions, and it updates RFC 3209 by clarification and restatement of procedures already set out there.
The document is a rule reminder for routers. It says what to do when a path is taken away to give room to a more important one.
§2PathErr and Fatal Versus Non-Fatal Errors
RFC 2205 defines two RSVP error messages. PathErr messages travel upstream toward the head-end of the flow. ResvErr messages travel downstream toward the tail-end. PathErr messages are routed hop by hop using the path state set up when the Path message went from head-end to tail-end, and they do not modify the state of nodes they pass through.
The ERROR_SPEC object holds the address of the node that detected the error, an Error Code for the category and an Error Value that qualifies it. Values are kept in an IANA registry.
Errors are either fatal, meaning disruptive for the TE LSP, or non-fatal, meaning non-disruptive. PathErr can occur during LSP establishment or after the LSP is established.
An error note goes backwards along the path toward where it started. Some problems are big and stop everything, while others are small and the path keeps working.
§2.1Behavior at the Detecting Node
For a fatal error, called Hard Preemption in Section 4.7.3 of RFC 3209, the detecting node MUST send a PathErr message and MUST clear the corresponding Path and Resv control-plane state. That also releases the data-plane resources, which disrupts traffic. The RFC notes that in fatal cases the LSP has usually already failed in the data plane. During establishment no traffic flows yet, so the effect differs from an active LSP.
For a non-fatal error, the detecting node should send a PathErr message and must not clear control-plane or data-plane state.
The router that has to bump a path tells everyone upstream, and then tears down its own record of that path. If the problem is only a warning, it sends the note but leaves everything running.
§2.2Behavior at Receiving Nodes and the Data Plane
Every node upstream of the detecting node, including the head-end, receives the PathErr. Following RFC 2205, a receiving node takes no action on it and must not clear Path or Resv control-plane or data-plane state, whether the error is fatal or not. RSVP state should only change on a PathTear or ResvTear message, or when Path or Resv state times out.
RFC 3473 defines a Path_State_Removed flag in the ERROR_SPEC object. When set, it says the sender removed Path state and associated state. The receiver should do the same before forwarding, but may keep state and clear the flag before forwarding.
Any node that clears Path state, Resv state or both MUST also free the data-plane resources of that TE LSP.
Routers that only hear the note do not tear anything down on their own. They wait for a proper teardown message or for the record to time out, unless the note carries a special flag asking them to clean up too.
| Node | Error type | Path and Resv state |
|---|---|---|
| Detecting node | Fatal (hard preemption) | MUST send PathErr and MUST clear |
| Detecting node | Non-fatal | Should send PathErr; must not clear |
| Receiving node | Fatal or non-fatal | Takes no action; must not clear |
§3Error Codes for a Preempted LSP
Two error codes report a preempted TE LSP, and both are fatal errors.
There are two official labels for the note that says a path was bumped. Both mean a serious problem.
§4Security Considerations
The document defines no new procedures. It clarifies procedures from other documents whose security considerations are already given in RFC 3209 and RFC 3473, and it raises no specific security issues beyond those of existing MPLS-TE. By making the procedures clearer, it reduces the security risk introduced by non-conformant implementations.
Nothing new is added, so nothing new can go wrong. Clearer rules also mean fewer routers doing the wrong thing by mistake.