RSVP Error Codes

Table 9.12 lists the error codes that appear in RESV-ERR messages.

Table 9.12 Error Codes and Values

Error Code

Description

00

Confirmation. Reserved for use in the ERROR_SPEC object of a RESV-CONF message. The Error Value will also be zero.

01

Admission control failure. Reservation request was rejected by admission control due to unavailable resources.
The 16 bits of the Error Value field are ssur, cccc cccc, and cccc, where the bits are:
ss = 00: Low-order 12 bits contain a globally-defined sub-code (values listed below).
ss = 10: Low-order 12 bits contain a organization-specific sub-code. RSVP is not expected to be able to interpret this except as a numeric value.
ss = 11: Low-order 12 bits contain a service-specific sub-code. RSVP is not expected to be able to interpret this except as a numeric value. Since the traffic control mechanism might substitute a different service, this encoding might include some representation of the service in use.
u = 0: RSVP rejects the message without updating local state.
u = 1: RSVP may use the message to update local state and then forward the message. This means that the message is informational.
r: Reserved bit, must be zero.
cccc cccc cccc: 12-bit code.
The following globally-defined sub-codes can appear in the low-order 12 bits when ssur = 0000:
Sub-code = 1: Delay bound cannot be met.
Sub-code = 2: Requested bandwidth unavailable
Sub-code = 3: MTU in flowspec larger than interface MTU.

02

Policy Control failure. Reservation or path message has been rejected for administrative reasons (for example, required credentials not submitted, insufficient quota or balance, or administrative preemption). This Error Code can appear in a PATH-ERR or RESV-ERR message. Contents of the Error Value field are to be determined in the future.

03

No path information for this RESV message. No path state for this session. RESV message cannot be forwarded.

04

No sender information for this RESV message. There is path state for this session, but it does not include the sender matching some flow descriptor contained in the RESV message. RESV message cannot be forwarded.

05

Conflicting reservation style. Reservation style conflicts with styles of existing reservation state. The Error Value field contains the low-order 16 bits of the Option Vector of the existing style with which the conflict occurred. This RESV message cannot be forwarded.

06

Unknown reservation style. Reservation style is unknown. This RESV message cannot be forwarded.

07

Conflicting destination ports. Sessions for same destination address and protocol have appeared with both zero and non-zero destination port fields. This Error Code can appear in a PATH-ERR or RESV-ERR message.

08

Conflicting sender ports Sender port is both zero and non-zero in PATH messages for the same session. This Error Code can appear only in a PATH-ERR message.

09, 10, 11

(reserved)

12

Service preempted. The service request defined by the STYLE object and the flow descriptor has been administratively preempted. For this Error Code, the 16 bits of the Error Value field are:
ssur cccc cccc cccc
The high-order bits ssur are as defined under Error Code 01. The globally-defined sub-codes that can appear in the low-order 12 bits when ssur = 0000 are to be defined in the future.

13

Unknown object class. Error Value contains 16-bit value composed of (Class-Num, C-Type) of unknown object. This error must be sent only if RSVP is going to reject the message, as determined by the high-order bits of the Class-Num. This Error Code can appear in a PathErr or ResvErr message.

14

Unknown object C-Type. Error Value contains 16-bit value composed of Class-Num or C-Type of object.

15-19

(reserved)

20

Reserved for API. Error Value field contains an API error code, for an API error that was detected asynchronously and must be reported via an upcall.

21

Traffic Control Error. Traffic Control call failed due to the format or contents of the parameters to the request. The RESV or PATH message that caused the call cannot be forwarded, and repeating the call is futile.
For this Error Code, the 16 bits of the Error Value field are:
ss00 cccc cccc cccc
The high-order bits ss are as defined under Error Code 01.
The following globally-defined sub-codes can appear in the low order 12 bits (cccc cccc cccc) when ss = 00:
Sub-code = 01: Service conflict. Trying to merge two incompatible service requests.
Sub-code = 02: Service unsupported. Traffic control can provide neither the requested service nor an acceptable replacement.
Sub-code = 03: Bad Flowspec value. Malformed or unreasonable request.
Sub-code = 04: Bad Tspec value. Malformed or unreasonable request.
Sub-code = 05: Bad Adspec value. Malformed or unreasonable request.

22

Traffic Control System error. A system error was detected and reported by the traffic control modules. The Error Value contains a system-specific value giving more information about the error. RSVP is not expected to be able to interpret this value.

23

RSVP System error. The Error Value field provides implementation-dependent information on the error. RSVP is not expected to be able to interpret this value.

In general, every RSVP message is rebuilt at each hop, and the node that creates an RSVP message is responsible for its correct construction. Similarly, each node is required to verify the correct construction of each RSVP message that it receives. If a programming error allows an RSVP to create a malformed message, the error is not generally reported to end systems in an ERROR_SPEC object; instead, the error is simply logged locally, and perhaps reported through network management mechanisms.

The only message formatting errors that are reported to end systems are those that can reflect version mismatches, and which the end system might be able to circumvent (for example, by falling back to a previous C-Type for an object; see code 13 and 14 above).

The choice of message formatting errors that an RSVP may detect and log locally is implementation-specific, but it typically includes the following:

  • Wrong-length message: RSVP Length field does not match message length.

  • Unknown or unsupported RSVP version.

  • Bad RSVP checksum.

  • INTEGRITY failure.

  • Illegal RSVP message type.

  • Illegal object length: not a multiple of 4, or less than 4.

  • Next hop/Previous hop address in HOP object is illegal.

  • Bad source port: Source port is non-zero in a filterspec or sender template for a session with destination port zero.

  • Required object class (specify) missing.

  • Illegal object class (specify) in this message type

  • Violation of required object order.

  • Flow descriptor count wrong for style or message type.

  • Logical Interface Handle invalid.

  • Unknown object Class-Num.

  • Destination address of RESV-CONF message does not match Receiver Address in the RESV_CONFIRM object it contains.