User-Defined Errors for RSVP
RFC 5284
Network Working Group G. Swallow
Request for Comments: 5284 Cisco Systems, Inc.
Category: Standards Track A. Farrel
Old Dog Consulting
August 2008
User-Defined Errors for RSVP
Status of This Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Abstract
The Resource ReserVation Protocol (RSVP) defines an ERROR_SPEC object
for communicating errors. That object has a defined format that
permits the definition of 256 error codes. As RSVP has been
developed and extended, the convention has been to be conservative in
defining new error codes. Further, no provision for user-defined
errors exists in RSVP.
This document defines a USER_ERROR_SPEC to be used in addition to the
ERROR_SPEC to carry additional user information related to errors.
1. Introduction
The Resource ReserVation Protocol (RSVP) [RFC2205] defines an
ERROR_SPEC object for communicating errors. That object has a
defined format that permits the definition of 256 error codes. As
RSVP has been developed and extended, the convention has been to be
conservative in communicating errors. Further, no provision for user
defined errors exists in RSVP.
When developing extensions to RSVP, it is often useful for those
implementing to define error messages to aid both in the initial
debugging and in testing against older versions or other
implementations.
This document defines a new RSVP object to permit user-defined errors
to be communicated. This will enable organizations to define errors
that they can use for internal development. These error values could
also be shared with the community at large to aid in promoting
interoperability between diverse implementations.
Swallow & Farrel Standards Track [Page 1]
RFC 5284 User-Defined Errors for RSVP August 2008
RSVP PathErr and ResvErr messages require the presence of an
ERROR_SPEC object ([RFC2205]). [RFC3473] defines the Notify message
that also requires the presence of an ERROR_SPEC object. In order to
not change the mandatory contents of these messages, this document
defines a new error code value that indicates that the new object is
present and carries a user-defined error code.
Note that the ResvConf message defined in [RFC2205] also carries an
ERROR_SPEC object. But this usage of the object does not carry
meaningful Error Codes or Error Values and so the extensions defined
in this document are not applicable to that message.
1.1. Conventions
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. User-Defined Error
A new Error Code is defined for use in an ERROR_SPEC object.
Error Code = 33: User Error Spec
This error code is used to signal the presence of a
USER_ERROR_SPEC. One Error Value is defined as follows.
Error Value 0 = Further details in User Error Spec
Further error values may be defined in future specifications.
When sending this error code, a USER_ERROR_SPEC object MUST be
included in the PathErr, ResvErr, or Notify message.
3. USER_ERROR_SPEC Class
A new RSVP object class called USER_ERROR_SPEC is defined. To
support backwards compatibility, its class number is in the range
192-247. As defined in [RFC2205], implementations that do not
understand such an object will forward it unmodified.
USER_ERROR_SPEC object: Class = 194, C-Type = 1
Swallow & Farrel Standards Track [Page 2]
RFC 5284 User-Defined Errors for RSVP August 2008
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
+---------------+---------------+---------------+---------------+
| Enterprise Number |
+---------------+---------------+---------------+---------------+
| Sub Org | Err Desc Len | User Error Value |
+---------------+---------------+---------------+---------------+
| |
~ Error Description ~
| |
Show full document text