APPENDIX A. Object Definitions C-Types are defined for the two Internet address families IPv4 and IPv6. To accommodate other address families, additional C-Types could easily be defined. These definitions are contained as an Appendix, to ease updating. All unused fields should be sent as zero and ignored on receipt. A.1 SESSION Class SESSION Class = 1. o IPv4/UDP SESSION object: Class = 1, C-Type = 1 +-------------+-------------+-------------+-------------+ | IPv4 DestAddress (4 bytes) | +-------------+-------------+-------------+-------------+ | Protocol Id | Flags | DstPort | +-------------+-------------+-------------+-------------+ o IPv6/UDP SESSION object: Class = 1, C-Type = 2 +-------------+-------------+-------------+-------------+ | | + + | | + IPv6 DestAddress (16 bytes) + | | + + | | +-------------+-------------+-------------+-------------+ | Protocol Id | Flags | DstPort | +-------------+-------------+-------------+-------------+ DestAddress The IP unicast or multicast destination address of the session. This field must be non-zero. Protocol Id The IP Protocol Identifier for the data flow. This field must be non-zero.
Flags
0x01 = E_Police flag
The E_Police flag is used in Path messages to determine
the effective "edge" of the network, to control traffic
policing. If the sender host is not itself capable of
traffic policing, it will set this bit on in Path
messages it sends. The first node whose RSVP is capable
of traffic policing will do so (if appropriate to the
service) and turn the flag off.
DstPort
The UDP/TCP destination port for the session. Zero may be
used to indicate `none'.
Other SESSION C-Types could be defined in the future to
support other demultiplexing conventions in the transport-
layer or application layer.
A.2 RSVP_HOP Class RSVP_HOP class = 3. o IPv4 RSVP_HOP object: Class = 3, C-Type = 1 +-------------+-------------+-------------+-------------+ | IPv4 Next/Previous Hop Address | +-------------+-------------+-------------+-------------+ | Logical Interface Handle | +-------------+-------------+-------------+-------------+ o IPv6 RSVP_HOP object: Class = 3, C-Type = 2 +-------------+-------------+-------------+-------------+ | | + + | | + IPv6 Next/Previous Hop Address + | | + + | | +-------------+-------------+-------------+-------------+ | Logical Interface Handle | +-------------+-------------+-------------+-------------+ This object carries the IP address of the interface through which the last RSVP-knowledgeable hop forwarded this message. The Logical Interface Handle (LIH) is used to distinguish logical outgoing interfaces, as discussed in Sections 3.3 and 3.9. A node receiving an LIH in a Path message saves its value and returns it in the HOP objects of subsequent Resv messages sent to the node that originated the LIH. The LIH should be identically zero if there is no logical interface handle.
A.3 INTEGRITY Class INTEGRITY class = 4. See [Baker96]. A.4 TIME_VALUES Class TIME_VALUES class = 5. o TIME_VALUES Object: Class = 5, C-Type = 1 +-------------+-------------+-------------+-------------+ | Refresh Period R | +-------------+-------------+-------------+-------------+ Refresh Period The refresh timeout period R used to generate this message; in milliseconds.
A.5 ERROR_SPEC Class ERROR_SPEC class = 6. o IPv4 ERROR_SPEC object: Class = 6, C-Type = 1 +-------------+-------------+-------------+-------------+ | IPv4 Error Node Address (4 bytes) | +-------------+-------------+-------------+-------------+ | Flags | Error Code | Error Value | +-------------+-------------+-------------+-------------+ o IPv6 ERROR_SPEC object: Class = 6, C-Type = 2 +-------------+-------------+-------------+-------------+ | | + + | | + IPv6 Error Node Address (16 bytes) + | | + + | | +-------------+-------------+-------------+-------------+ | Flags | Error Code | Error Value | +-------------+-------------+-------------+-------------+ Error Node Address The IP address of the node in which the error was detected. Flags 0x01 = InPlace This flag is used only for an ERROR_SPEC object in a ResvErr message. If it on, this flag indicates that there was, and still is, a reservation in place at the failure point. 0x02 = NotGuilty This flag is used only for an ERROR_SPEC object in a ResvErr message, and it is only set in the interface to
the receiver application. If it on, this flag indicates
that the FLOWSPEC that failed was strictly greater than
the FLOWSPEC requested by this receiver.
Error Code
A one-octet error description.
Error Value
A two-octet field containing additional information about the
error. Its contents depend upon the Error Type.
The values for Error Code and Error Value are defined in Appendix
B.
A.6 SCOPE Class SCOPE class = 7. This object contains a list of IP addresses, used for routing messages with wildcard scope without loops. The addresses must be listed in ascending numerical order. o IPv4 SCOPE List object: Class = 7, C-Type = 1 +-------------+-------------+-------------+-------------+ | IPv4 Src Address (4 bytes) | +-------------+-------------+-------------+-------------+ // // +-------------+-------------+-------------+-------------+ | IPv4 Src Address (4 bytes) | +-------------+-------------+-------------+-------------+ o IPv6 SCOPE list object: Class = 7, C-Type = 2 +-------------+-------------+-------------+-------------+ | | + + | | + IPv6 Src Address (16 bytes) + | | + + | | +-------------+-------------+-------------+-------------+ // // +-------------+-------------+-------------+-------------+ | | + + | | + IPv6 Src Address (16 bytes) + | | + + | | +-------------+-------------+-------------+-------------+
A.7 STYLE Class STYLE class = 8. o STYLE object: Class = 8, C-Type = 1 +-------------+-------------+-------------+-------------+ | Flags | Option Vector | +-------------+-------------+-------------+-------------+ Flags: 8 bits (None assigned yet) Option Vector: 24 bits A set of bit fields giving values for the reservation options. If new options are added in the future, corresponding fields in the option vector will be assigned from the least-significant end. If a node does not recognize a style ID, it may interpret as much of the option vector as it can, ignoring new fields that may have been defined. The option vector bits are assigned (from the left) as follows: 19 bits: Reserved 2 bits: Sharing control 00b: Reserved 01b: Distinct reservations 10b: Shared reservations 11b: Reserved 3 bits: Sender selection control 000b: Reserved 001b: Wildcard 010b: Explicit
011b - 111b: Reserved
The low order bits of the option vector are determined by the
style, as follows:
WF 10001b
FF 01010b
SE 10010b
A.8 FLOWSPEC Class FLOWSPEC class = 9. o Reserved (obsolete) flowspec object: Class = 9, C-Type = 1 o Inv-serv Flowspec object: Class = 9, C-Type = 2 The contents and encoding rules for this object are specified in documents prepared by the int-serv working group [RFC 2210].
A.9 FILTER_SPEC Class FILTER_SPEC class = 10. o IPv4 FILTER_SPEC object: Class = 10, C-Type = 1 +-------------+-------------+-------------+-------------+ | IPv4 SrcAddress (4 bytes) | +-------------+-------------+-------------+-------------+ | ////// | ////// | SrcPort | +-------------+-------------+-------------+-------------+ o IPv6 FILTER_SPEC object: Class = 10, C-Type = 2 +-------------+-------------+-------------+-------------+ | | + + | | + IPv6 SrcAddress (16 bytes) + | | + + | | +-------------+-------------+-------------+-------------+ | ////// | ////// | SrcPort | +-------------+-------------+-------------+-------------+ o IPv6 Flow-label FILTER_SPEC object: Class = 10, C-Type = 3 +-------------+-------------+-------------+-------------+ | | + + | | + IPv6 SrcAddress (16 bytes) + | | + + | | +-------------+-------------+-------------+-------------+ | /////// | Flow Label (24 bits) | +-------------+-------------+-------------+-------------+ SrcAddress The IP source address for a sender host. Must be non-zero.
SrcPort
The UDP/TCP source port for a sender, or zero to indicate
`none'.
Flow Label
A 24-bit Flow Label, defined in IPv6. This value may be used
by the packet classifier to efficiently identify the packets
belonging to a particular (sender->destination) data flow.
A.10 SENDER_TEMPLATE Class SENDER_TEMPLATE class = 11. o IPv4 SENDER_TEMPLATE object: Class = 11, C-Type = 1 Definition same as IPv4/UDP FILTER_SPEC object. o IPv6 SENDER_TEMPLATE object: Class = 11, C-Type = 2 Definition same as IPv6/UDP FILTER_SPEC object. o IPv6 Flow-label SENDER_TEMPLATE object: Class = 11, C-Type = 3 A.11 SENDER_TSPEC Class SENDER_TSPEC class = 12. o Intserv SENDER_TSPEC object: Class = 12, C-Type = 2 The contents and encoding rules for this object are specified in documents prepared by the int-serv working group. A.12 ADSPEC Class ADSPEC class = 13. o Intserv ADSPEC object: Class = 13, C-Type = 2 The contents and format for this object are specified in documents prepared by the int-serv working group.
A.13 POLICY_DATA Class POLICY_DATA class = 14. o Type 1 POLICY_DATA object: Class = 14, C-Type = 1 The contents of this object are for further study.
A.14 Resv_CONFIRM Class RESV_CONFIRM class = 15. o IPv4 RESV_CONFIRM object: Class = 15, C-Type = 1 +-------------+-------------+-------------+-------------+ | IPv4 Receiver Address (4 bytes) | +-------------+-------------+-------------+-------------+ o IPv6 RESV_CONFIRM object: Class = 15, C-Type = 2 +-------------+-------------+-------------+-------------+ | | + + | | + IPv6 Receiver Address (16 bytes) + | | + + | | +-------------+-------------+-------------+-------------+
APPENDIX B. Error Codes and Values The following Error Codes may appear in ERROR_SPEC objects and be passed to end systems. Except where noted, these Error Codes may appear only in ResvErr messages. o Error Code = 00: Confirmation This code is reserved for use in the ERROR_SPEC object of a ResvConf message. The Error Value will also be zero. o Error Code = 01: Admission Control failure Reservation request was rejected by Admission Control due to unavailable resources. For this Error Code, the 16 bits of the Error Value field are: ssur cccc cccc 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 may include some representation of the service in use. u = 0: RSVP rejects the message without updating local state. u = 1: RSVP may use message to update local state and forward the message. This means that the message is informational.
r: Reserved bit, should be zero.
cccc cccc cccc: 12 bit code.
The following globally-defined sub-codes may 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.
o Error Code = 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 may appear in a PathErr or ResvErr message.
Contents of the Error Value field are to be determined in the
future.
o Error Code = 03: No path information for this Resv message.
No path state for this session. Resv message cannot be
forwarded.
o Error Code = 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.
o Error Code = 05: Conflicting reservation style
Reservation style conflicts with style(s) 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.
o Error Code = 06: Unknown reservation style
Reservation style is unknown. This Resv message cannot be
forwarded.
o Error Code = 07: Conflicting dest ports
Sessions for same destination address and protocol have appeared
with both zero and non-zero dest port fields. This Error Code
may appear in a PathErr or ResvErr message.
o Error Code = 08: Conflicting sender ports
Sender port is both zero and non-zero in Path messages for the
same session. This Error Code may appear only in a PathErr
message.
o Error Code = 09, 10, 11: (reserved)
o Error Code = 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
Here the high-order bits ssur are as defined under Error Code
01. The globally-defined sub-codes that may appear in the low-
order 12 bits when ssur = 0000 are to be defined in the future.
o Error Code = 13: Unknown object class
Error Value contains 16-bit value composed of (Class-Num, C-
Type) of unknown object. This error should 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 may appear in a PathErr
or ResvErr message.
o Error Code = 14: Unknown object C-Type
Error Value contains 16-bit value composed of (Class-Num, C-
Type) of object.
o Error Code = 15-19: (reserved)
o Error Code = 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.
o Error Code = 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 would be
futile.
For this Error Code, the 16 bits of the Error Value field are:
ss00 cccc cccc cccc
Here the high-order bits ss are as defined under Error Code 01.
The following globally-defined sub-codes may 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.
o Error Code = 22: Traffic Control System error
A system error was detected and reported by the traffic control
modules. The Error Value will contain a system-specific value
giving more information about the error. RSVP is not expected
to be able to interpret this value.
o Error Code = 23: RSVP System error
The Error Value field will provide 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 it receives. Should a programming
error allow 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 may reflect version mismatches, and which the end
system might be able to circumvent, e.g., by falling back to a
previous CType 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 will typically include
the following:
o Wrong-length message: RSVP Length field does not match message
length.
o Unknown or unsupported RSVP version.
o Bad RSVP checksum
o INTEGRITY failure
o Illegal RSVP message Type
o Illegal object length: not a multiple of 4, or less than 4.
o Next hop/Previous hop address in HOP object is illegal.
o Bad source port: Source port is non-zero in a filter spec or
sender template for a session with destination port zero.
o Required object class (specify) missing
o Illegal object class (specify) in this message type.
o Violation of required object order
o Flow descriptor count wrong for style or message type
o Logical Interface Handle invalid
o Unknown object Class-Num.
o Destination address of ResvConf message does not match Receiver
Address in the RESV_CONFIRM object it contains.
APPENDIX C. UDP Encapsulation An RSVP implementation will generally require the ability to perform "raw" network I/O, i.e., to send and receive IP datagrams using protocol 46. However, some important classes of host systems may not support raw network I/O. To use RSVP, such hosts must encapsulate RSVP messages in UDP. The basic UDP encapsulation scheme makes two assumptions: 1. All hosts are capable of sending and receiving multicast packets if multicast destinations are to be supported. 2. The first/last-hop routers are RSVP-capable. A method of relaxing the second assumption is given later. Let Hu be a "UDP-only" host that requires UDP encapsulation, and Hr a host that can do raw network I/O. The UDP encapsulation scheme must allow RSVP interoperation among an arbitrary topology of Hr hosts, Hu hosts, and routers. Resv, ResvErr, ResvTear, and PathErr messages are sent to unicast addresses learned from the path or reservation state in the node. If the node keeps track of which previous hops and which interfaces need UDP encapsulation, these messages can be sent using UDP encapsulation when necessary. On the other hand, Path and PathTear messages are sent to the destination address for the session, which may be unicast or multicast. The tables in Figures 13 and 14 show the basic rules for UDP encapsulation of Path and PathTear messages, for unicast DestAddress and multicast DestAddress, respectively. The other message types, which are sent unicast, should follow the unicast rules in Figure 13. Under the `RSVP Send' columns in these figures, the notation is `mode(destaddr, destport)'; destport is omitted for raw packets. The `Receive' columns show the group that is joined and, where relevant, the UDP Listen port. It is useful to define two flavors of UDP encapsulation, one to be sent by Hu and the other to be sent by Hr and R, to avoid double processing by the recipient. In practice, these two flavors are distinguished by differing UDP port numbers Pu and Pu'.
The following symbols are used in the tables.
o D is the DestAddress for the particular session.
o G* is a well-known group address of the form 224.0.0.14, i.e., a
group that is limited to the local connected network.
o Pu and Pu' are two well-known UDP ports for UDP encapsulation of
RSVP, with values 1698 and 1699.
o Ra is the IP address of the router interface `a'.
o Router interface `a' is on the local network connected to Hu and
Hr.
o
The following notes apply to these figures:
[Note 1] Hu sends a unicast Path message either to the destination
address D, if D is local, or to the address Ra of the first-hop
router. Ra is presumably known to the host.
[Note 2] Here D is the address of the local interface through
which the message arrived.
[Note 3] This assumes that the application has joined the group D.
UNICAST DESTINATION D:
RSVP RSVP
Node Send Receive
___ _____________ _______________
Hu UDP(D/Ra,Pu) UDP(D,Pu)
[Note 1] and UDP(D,Pu')
[Note 2]
Hr Raw(D) Raw()
and if (UDP) and UDP(D, Pu)
then UDP(D,Pu') [Note 2]
(Ignore Pu')
R (Interface a):
Raw(D) Raw()
and if (UDP) and UDP(Ra, Pu)
then UDP(D,Pu') (Ignore Pu')
Figure 13: UDP Encapsulation Rules for Unicast Path and Resv Messages
MULTICAST DESTINATION D:
RSVP RSVP
Node Send Receive
___ _____________ _________________
Hu UDP(G*,Pu) UDP(D,Pu')
[Note 3]
and UDP(G*,Pu)
Hr Raw(D,Tr) Raw()
and if (UDP) and UDP(G*,Pu)
then UDP(D,Pu') (Ignore Pu')
R (Interface a):
Raw(D,Tr) Raw()
and if (UDP) and UDP(G*,Pu)
then UDP(D,Pu') (Ignore Pu')
Figure 14: UDP Encapsulation Rules for Multicast Path Messages
A router may determine if its interface X needs UDP encapsulation by
listening for UDP-encapsulated Path messages that were sent to either
G* (multicast D) or to the address of interface X (unicast D). There
is one failure mode for this scheme: if no host on the connected
network acts as an RSVP sender, there will be no Path messages to
trigger UDP encapsulation. In this (unlikely) case, it will be
necessary to explicitly configure UDP encapsulation on the local
network interface of the router.
When a UDP-encapsulated packet is received, the IP TTL is not
available to the application on most systems. The RSVP process that
receives a UDP-encapsulated Path or PathTear message should therefore
use the Send_TTL field of the RSVP common header as the effective
receive TTL. This may be overridden by manual configuration.
We have assumed that the first-hop RSVP-capable router R is on the
directly-connected network. There are several possible approaches if
this is not the case.
1. Hu can send both unicast and multicast sessions to UDP(Ra,Pu)
with TTL=Ta
Here Ta must be the TTL to exactly reach R. If Ta is too small,
the Path message will not reach R. If Ta is too large, R and
succeeding routers may forward the UDP packet until its hop
count expires. This will turn on UDP encapsulation between
routers within the Internet, perhaps causing bogus UDP traffic.
The host Hu must be explicitly configured with Ra and Ta.
2. A particular host on the LAN connected to Hu could be designated
as an "RSVP relay host". A relay host would listen on (G*,Pu)
and forward any Path messages directly to R, although it would
not be in the data path. The relay host would have to be
configured with Ra and Ta.
APPENDIX D. Glossary o Admission control A traffic control function that decides whether the packet scheduler in the node can supply the requested QoS while continuing to provide the QoS requested by previously-admitted requests. See also "policy control" and "traffic control". o Adspec An Adspec is a data element (object) in a Path message that carries a package of OPWA advertising information. See "OPWA". o Auto-refresh loop An auto-refresh loop is an error condition that occurs when a topological loop of routers continues to refresh existing reservation state even though all receivers have stopped requesting these reservations. See section 3.4 for more information. o Blockade state Blockade state helps to solve a "killer reservation" problem. See sections 2.5 and 3.5, and "killer reservation". o Branch policing Traffic policing at a multicast branching point on an outgoing interface that has "less" resources reserved than another outgoing interface for the same flow. See "traffic policing". o C-Type The class type of an object; unique within class-name. See "class-name". o Class-name The class of an object. See "object". o DestAddress The IP destination address; part of session identification. See "session".
o Distinct style
A (reservation) style attribute; separate resources are reserved
for each different sender. See also "shared style".
o Downstream
Towards the data receiver(s).
o DstPort
The IP (generalized) destination port used as part of a session.
See "generalized destination port".
o Entry policing
Traffic policing done at the first RSVP- (and policing-) capable
router on a data path.
o ERROR_SPEC
Object that carries the error report in a PathErr or ResvErr
message.
o Explicit sender selection
A (reservation) style attribute; all reserved senders are to be
listed explicitly in the reservation message. See also
"wildcard sender selection".
o FF style
Fixed Filter reservation style, which has explicit sender
selection and distinct attributes.
o FilterSpec
Together with the session information, defines the set of data
packets to receive the QoS specified in a flowspec. The
filterspec is used to set parameters in the packet classifier
function. A filterspec may be carried in a FILTER_SPEC or
SENDER_TEMPLATE object.
o Flow descriptor
The combination of a flowspec and a filterspec.
o Flowspec
Defines the QoS to be provided for a flow. The flowspec is used
to set parameters in the packet scheduling function to provide
the requested quality of service. A flowspec is carried in a
FLOWSPEC object. The flowspec format is opaque to RSVP and is
defined by the Integrated Services Working Group.
o Generalized destination port
The component of a session definition that provides further
transport or application protocol layer demultiplexing beyond
DestAddress. See "session".
o Generalized source port
The component of a filter spec that provides further transport
or application protocol layer demultiplexing beyond the sender
address.
o GLB
Greatest Lower Bound
o Incoming interface
The interface on which data packets are expected to arrive, and
on which Resv messages are sent.
o INTEGRITY
Object of an RSVP control message that contains cryptographic
data to authenticate the originating node and to verify the
contents of an RSVP message.
o Killer reservation problem
The killer reservation problem describes a case where a receiver
attempting and failing to make a large QoS reservation prevents
smaller QoS reservations from being established. See Sections
2.5 and 3.5 for more information.
o LIH
The LIH (Logical Interface Handle) is used to help deal with
non-RSVP clouds. See Section 2.9 for more information.
o Local repair
Allows RSVP to rapidly adapt its reservations to changes in
routing. See Section 3.6 for more information.
o LPM
Local Policy Module. the function that exerts policy control.
o LUB
Least Upper Bound.
o Merge policing
Traffic policing that takes place at data merge point of a
shared reservation.
o Merging
The process of taking the maximum (or more generally the least
upper bound) of the reservations arriving on outgoing
interfaces, and forwarding this maximum on the incoming
interface. See Section 2.2 for more information.
o MTU
Maximum Transmission Unit.
o Next hop
The next router in the direction of traffic flow.
o NHOP
An object that carries the Next Hop information in RSVP control
messages.
o Node
A router or host system.
o Non-RSVP clouds
Groups of hosts and routers that do not run RSVP. Dealing with
nodes that do not support RSVP is important for backwards
compatibility. See section 2.9.
o Object
An element of an RSVP control message; a type, length, value
triplet.
o OPWA
Abbreviation for "One Pass With Advertising". Describes a
reservation setup model in which (Path) messages sent downstream
gather information that the receiver(s) can use to predict the
end-to-end service. The information that is gathered is called
an advertisement. See also "Adspec".
o Outgoing interface
Interface through which data packets and Path messages are
forwarded.
o Packet classifier
Traffic control function in the primary data packet forwarding
path that selects a service class for each packet, in accordance
with the reservation state set up by RSVP. The packet
classifier may be combined with the routing function. See also
"traffic control".
o Packet scheduler
Traffic control function in the primary data packet forwarding
path that implements QoS for each flow, using one of the service
models defined by the Integrated Services Working Group. See
also " traffic control".
o Path state
Information kept in routers and hosts about all RSVP senders.
o PathErr
Path Error RSVP control message.
o PathTear
Path Teardown RSVP control message.
o PHOP
An object that carries the Previous Hop information in RSVP
control messages.
o Police
See traffic policing.
o Policy control
A function that determines whether a new request for quality of
service has administrative permission to make the requested
reservation. Policy control may also perform accounting (usage
feedback) for a reservation.
o Policy data
Data carried in a Path or Resv message and used as input to
policy control to determine authorization and/or usage feedback
for the given flow.
o Previous hop
The previous router in the direction of traffic flow. Resv
messages flow towards previous hops.
o ProtocolId
The component of session identification that specifies the IP
protocol number used by the data stream.
o QoS
Quality of Service.
o Reservation state
Information kept in RSVP-capable nodes about successful RSVP
reservation requests.
o Reservation style
Describes a set of attributes for a reservation, including the
sharing attributes and sender selection attributes. See Section
1.3 for details.
o Resv message
Reservation request RSVP control message.
o ResvConf
Reservation Confirmation RSVP control message, confirms
successful installation of a reservation at some upstream node.
o ResvErr
Reservation Error control message, indicates that a reservation
request has failed or an active reservation has been preempted.
o ResvTear
Reservation Teardown RSVP control message, deletes reservation
state.
o Rspec
The component of a flowspec that defines a desired QoS. The
Rspec format is opaque to RSVP and is defined by the Integrated
Services Working Group of the IETF.
o RSVP_HOP
Object of an RSVP control message that carries the PHOP or NHOP
address of the source of the message.
o Scope
The set of sender hosts to which a given reservation request is
to be propagated.
o SE style
Shared Explicit reservation style, which has explicit sender
selection and shared attributes.
o Semantic fragmentation
A method of fragmenting a large RSVP message using information
about the structure and contents of the message, so that each
fragment is a logically complete RSVP message.
o Sender template
Parameter in a Path message that defines a sender; carried in a
SENDER_TEMPLATE object. It has the form of a filter spec that
can be used to select this sender's packets from other packets
in the same session on the same link.
o Sender Tspec
Parameter in a Path message, a Tspec that characterizes the
traffic parameters for the data flow from the corresponding
sender. It is carried in a SENDER_TSPEC object.
o Session
An RSVP session defines one simplex unicast or multicast data
flow for which reservations are required. A session is
identified by the destination address, transport-layer protocol,
and an optional (generalized) destination port.
o Shared style
A (reservation) style attribute: all reserved senders share the
same reserved resources. See also "distinct style".
o Soft state
Control state in hosts and routers that will expire if not
refreshed within a specified amount of time.
o STYLE
Object of an RSVP message that specifies the desired reservation
style.
o Style
See "reservation style"
o TIME_VALUES
Object in an RSVP control message that specifies the time period
timer used for refreshing the state in this message.
o Traffic control
The entire set of machinery in the node that supplies requested
QoS to data streams. Traffic control includes packet
classifier, packet scheduler, and admission control functions.
o Traffic policing
The function, performed by traffic control, of forcing a given
data flow into compliance with the traffic parameters implied by
the reservation. It may involve dropping non-compliant packets
or sending them with lower priority, for example.
o TSpec
A traffic parameter set that describes a flow. The format of a
Tspec is opaque to RSVP and is defined by the Integrated Service
Working Group.
o UDP encapsulation
A way for hosts that cannot use raw sockets to participate in
RSVP by encapsulating the RSVP protocol (raw) packets in
ordinary UDP packets. See Section APPENDIX C for more
information.
o Upstream
Towards the traffic source. RSVP Resv messages flow upstream.
o WF style
Wildcard Filter reservation style, which has wildcard sender
selection and shared attributes.
o Wildcard sender selection
A (reservation) style attribute: traffic from any sender to a
specific session receives the same QoS. See also "explicit
sender selection".
References [Baker96] Baker, F., "RSVP Cryptographic Authentication", Work in Progress. [RFC 1633] Braden, R., Clark, D., and S. Shenker, "Integrated Services in the Internet Architecture: an Overview", RFC 1633, ISI, MIT, and PARC, June 1994. [FJ94] Floyd, S. and V. Jacobson, "Synchronization of Periodic Routing Messages", IEEE/ACM Transactions on Networking, Vol. 2, No. 2, April, 1994. [RFC 2207] Berger, L. and T. O'Malley, "RSVP Extensions for IPSEC Data Flows", RFC 2207, September 1997. [RFC 2113] Katz, D., "IP Router Alert Option", RFC 2113, cisco Systems, February 1997. [RFC 2210] Wroclawski, J., "The Use of RSVP with Integrated Services", RFC 2210, September 1997. [PolArch96] Herzog, S., "Policy Control for RSVP: Architectural Overview". Work in Progress. [OPWA95] Shenker, S. and L. Breslau, "Two Issues in Reservation Establishment", Proc. ACM SIGCOMM '95, Cambridge, MA, August 1995. [RSVP93] Zhang, L., Deering, S., Estrin, D., Shenker, S., and D. Zappala, "RSVP: A New Resource ReSerVation Protocol", IEEE Network, September 1993. Security Considerations See Section 2.8.
Authors' Addresses Bob Braden USC Information Sciences Institute 4676 Admiralty Way Marina del Rey, CA 90292 Phone: (310) 822-1511 EMail: Braden@ISI.EDU Lixia Zhang UCLA Computer Science Department 4531G Boelter Hall Los Angeles, CA 90095-1596 USA Phone: 310-825-2695 EMail: lixia@cs.ucla.edu Steve Berson USC Information Sciences Institute 4676 Admiralty Way Marina del Rey, CA 90292 Phone: (310) 822-1511 EMail: Berson@ISI.EDU Shai Herzog IBM T. J. Watson Research Center P.O Box 704 Yorktown Heights, NY 10598 Phone: (914) 784-6059 EMail: Herzog@WATSON.IBM.COM Sugih Jamin University of Michigan CSE/EECS 1301 Beal Ave. Ann Arbor, MI 48109-2122 Phone: (313) 763-1583 EMail: jamin@EECS.UMICH.EDU