One document matched: draft-schulzrinne-nsis-casp-qos-01.txt
Differences from draft-schulzrinne-nsis-casp-qos-00.txt
Internet Engineering Task Force Working Group
Internet Draft H. Schulzrinne
Columbia U./Siemens/U. Goettingen/Siemens
draft-schulzrinne-nsis-casp-qos-01.txt
3 March 2003
Expires: September 2003
A Quality-of-Service Resource Allocation Client for CASP
STATUS OF THIS MEMO
This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Task
Force (IETF), its areas, and its working groups. Note that other groups
may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
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
http://www.ietf.org/ietf/1id-abstracts.txt
To view the list Internet-Draft Shadow Directories, see
http://www.ietf.org/shadow.html.
Abstract
Signaling resource reservations is one of the possible applications of
the Cross-Application Signaling Protocol (CASP). This document describes
a client protocol that supports per-flow resource reservation in both
sender- and receiver-directed modes operation.
H. Schulzrinne et. al. [Page 1]
Internet Draft CASP QoS 3 March 2003
1 Introduction
CASP-QOS is a client protocol for the Cross-Application Signaling
Protocol (CASP) [1]. It is one of a
family of CASP signaling client protocols (NSLPs) and offers per-flow
resource allocation and reservation.
CASP-QOS has the following properties:
Direction-neutral: The protocol supports both receiver-oriented and
sender-oriented reservations. In each mode, the non-reserving
side can suggest QoS parameters. For example, the data
receiver can send the first CASP message to indicate the range
of bandwidths and QoS parameters it is willing to tolerate,
but the data sender makes the actual reservation within that
range.
Bidirectional reservation: Bidirectional reservation refers to
three different modes of operation. In the first, there is a
single reservation message for both directions, i.e., a
traffic selector that specifies traffic flowing in both
directions, typically with reversed source and destination
address and port numbers. Such reservation is only feasible if
the route is symmetric. Its main advantage is atomicity, so
that a reservation in the forward direction is made only if
traffic in the backward direction can also be accomodated.
A second, looser form of bidirectional has messages from the
originator and the destination cause reservations to be set
up. As before, this requires symmetric routes for in-band
signaling messages and AS-symmetric routes for per-AS
reservation. As shown in [2], a majority of routes are not
symmetric at the AS level.
Thirdly, a reservation from the initiator may trigger an
independent signaling session from the responder to the
initiator. This mode works even if the data path is asymmetric
and requires no particular protocol support at the CASP
messaging layer.
CASP QOS supports all three modes.
Reservation range: To reduce the number of reservation message
exchanges, the bandwidth object contains a lower and upper
bandwidth range. Nodes attempt to reserve the highest amount
of resources below the maximum and update the amount
accordingly. Nodes with higher reservations than the path
H. Schulzrinne et. al. [Page 2]
Internet Draft CASP QoS 3 March 2003
minimum are updated on the return path.
Partial reservation: CASP-QOS messages can indicate whether they
are satisfied to obtain partial reservations, i.e.,
reservations that only succeed on some routers [3].
Query/reserve/commit mechanism: If desired, an end system can query
for available resources, reserve them and commit them. Only
committed resources can be used.
2 Operation
CASP-QOS defines five message types:
Query: The QUERY message determines if a particular path has
sufficient resources, but does not reserve or commit any
resources.
Reserve: The RESERVE message requests a particular reservation. It
generates a RESPONSE indicating the degree of success or
failure. It may request a COMMIT message. The RESERVE message
can also contain a response to an earlier reservation, thus
allowing bidirectional reservation with bifurcated paths in
one message exchange.
Commit: The COMMIT message commits resources reserved previously
with RESERVE if the reservation timestamp is the same as the
original reservation. If not, it creates and commits a new
reservation, removing the original one. A COMMIT message that
uses an existing reservation SHOULD NOT fail. Each COMMIT
message carries a BANDWIDTH object just in case it visits a
node that has not seen a RESERVE before.
Release: The RELEASE message releases all resources for this
session, regardless of the version. It generates a RESPONSE
indicating success or failure with the Status object.
Success: The SUCCESS response message indicates the requested
reservation has been succeeded (not needed if the destination
returns a Commit in response to a Reserve); includes sequence
number of Reserve or Commit.
Error: The ERROR response message indicates reservation has been
failed; may also release all resources already made for this
session. It includes a sequence number of the failed Reserve
or Commit message, and the node address where the Reserve or
Commit request failed.
H. Schulzrinne et. al. [Page 3]
Internet Draft CASP QoS 3 March 2003
There are two types of (QoS NSLP) states: Reserve state and Commit
state, established and refreshed by Reserve and Commit messages,
respectively. An Error message may remove both states, if a "removal"
indicator is provided.
Two examples for CASP-QoS operations are shown in Figure 1, where (a)
shows an example for sender-directed operations, while (b) illustrates a
possible handling of reservation failure and partial reservations.
3 Objects
CASP-QOS messages can carry objects described below.
3.1 Version (V)
The version indication is used to quickly determine which Resource
object is used in the session, and what semantics should be assumed for
that Resource object (FlowSpec).
3.2 Partial Reservation (P)
The Partial Reservation object describes how many failed reservations
are allowed before reservation attempts terminate. There are two up
counters that tally the number of routers where admission control
failed, including due to a failed admission control procedure, and the
number of routers where reservation could not be performed since the
node did not speak CASP or CASP-QOS. Two additional down counters are
set by the originating node to the maximum number of routers that can
fail or be indeterminate before the message fails.
4 Messages
The table below indicates which objects MAY (O), MUST NOT (--) or MUST
(M) appear in each message type.
Definitions of CASP-QoS message formats are give in Appendix A.
Object Abbr. Query Reserve Success Commit
Release Error
-------------------------------------------------------------------
Version V M M M -- M
Partial Reservation P O O -- O -- M
Bandwidth B M M -- M -- O
H. Schulzrinne et. al. [Page 4]
Internet Draft CASP QoS 3 March 2003
S NE(s) D S NE(s) NE D
| Reserve | | Reserve |
-------+--------------->|;initial +----------->|
^ | |;reservation| |;an NE can't offer
| | Success |;request | Error(R) | requested resources,
| |<---------------+ |<-----------|
| | |;reserved | |;it returns an Error
| | Commit | | |;with Removal flag on
| --+--------------->|;commit | . |;to remove resources
^ | |;the | . |;already reserved
R | | Success |;reservation| . |
| |<---------------+ | . |
| | | |;resources | |
| | | |;can be used| |;some time later, S
| R |. | | |;wants to reserve
V | |. Reserve | | Reserve(PR)|;if resource can be
------|-+--------------->| +----------->|;partially fulfilled
| | |;refresh | |
| | Success |;reserve | Success |
| |<---------------|;state |<-----------+
| | | | |;partial reservation
V | Commit | | Commit(PR) |;has been made
----+--------------->|;refresh +----------->|
| |;commit | |;commit the resources
| Success |;state | Success |;partially reserved
|<---------------+ |<-----------+
|. | | . |
|. Query | | . Query |
+--------------->|;query at |<-----------|;intermediate nodes
| |;any time | |;can also query
| Success |;is possible| Success |;resource status
|<---------------| +------------|;provided that
|. |;a report of| . |;it satisfies the
|. |;current | . |;security measures
|. |;available | . |
|. Release |;resources | . Release |
|--------------->| |----------->|;typically explicit
| |;finally | |;release message is
| Success |;release the| Success |;used; otherwise
|<---------------|;reserved |<-----------+;state will be
| |;resources | |;time out
a)Sender-directed reservation; b)Failure & partial reservations
Figure 1: Two CASP-QoS Examples
H. Schulzrinne et. al. [Page 5]
Internet Draft CASP QoS 3 March 2003
5 Resource Objects
A set of objects are used to request resources. Additional objects are
likely to be defined in the future. It is possible to include several
such objects if it is allowed for the CASP node to satisfy any one of
them, starting with the one listed first. The response indicates which
resource was used.
5.1 Bandwidth (B)
The Bandwidth object contains two bandwidth values, an upper and a lower
bound. Each node attempts to reserve the upper bound. If it obtains
resources that are below the upper bound and above the lower bound, it
updates the upper bound to that lower value. The return message then
updates all reservation to the upper bound seen by the destination.
Others have proposed a loss rate or explicit delay indication,
possibly with a violation probability. It is not clear that
there are scheduling and admission control mechanisms that can
usefully guarantee such behavior on a per-flow basis. Thus,
this memo does not include them.
5.2 PHB
The PHB object requests that traffic matching the traffic selector is
assigned a certain per-hop behavior, such as AF12 [4].
5.3 IntServ Flowspec
The IntServ Flowspec object describes reserved resources for Integrated
Services [5].
5.4 L2 Properties
The L2 object describes layer-two properties abstractly, such as "low
delay, but do not care about packet losses" or "high reliability". These
requests then set up specific link layer behavior. This feature
requires further study.
6 Local Information
Usually, QoS-related information is generated by a host and sent to a
peer representing the opposite terminating point of the path. The data
has significance all along the signalling path. CASP offers the
possibility to restrict the scope of signalling information to a section
of the path, e.g, to a specific AS or subnet within an AS. CASP-QoS
information can be added and deleted anywhere in the network. This path
H. Schulzrinne et. al. [Page 6]
Internet Draft CASP QoS 3 March 2003
is referred to as localized path. Local scoping has the advantage that
QoS signalling information can be limited to certain sections of the
path without the need for end-to-end transport. The localized path is
determined by a source node, which adds specific QoS signalling
information and a sink node, which deletes the data with local scope.
Authentication of source and sink node for the path segment is required
to enable message integrity for the carried QoS signalling data.
The transport of local information is useful for a number of
applications, some of which are enumerated below:
Authorization token: An authorization token is a CMS encapsulated
(digitally signed or encrypted) collection of objects. Such a
token can be included for example by a policy decision point
to allow other CASP nodes along the path (within the same
administrative domain) to execute policy based admission
control securely without need to retrigger a PEP<->PDP
communication. Furthermore linking authorization of protocols
is an other example. Protecting information which is relevant
and secured within a local domain only is possible.
DSCP (DiffServ codepoint): Specific codepoints may be used within
an AS for definition of a certain per-hop behaviour (PHB).
The codepoint may be set by an ingress router or by the end
host. The DSCP in this situation is valid within the local AS
and has to be mapped to a different value when entering the
next AS. A new mapping may be required because codepoint
values are used differently or there is no exact mapping of
the PHB between two neighbouring ASs.
Aggregation information: Information about the aggregation of
signalling state can be transferred between the aggregation
ingress and the aggregation egress point. This includes
information about granularity of aggregation and the role
(aggregation or de-aggregation) a node should act for a
specific flow
Reservation priority: Information about the reservation priority
may be shared along CASP-QoS capable nodes to determine the
priority of a resource reservation request in the packet
forwarding plane.
Accounting: Accounting and charging information (as authorization
tokens) can be distributed along the signaling path to enable
the creation of proper accounting records.
H. Schulzrinne et. al. [Page 7]
Internet Draft CASP QoS 3 March 2003
Operator information: Any kind of operator information may be
shared by CASP-QoS nodes along the signalling path.
There is an optional Local Object to carry local QoS information. Each
object carries an identification and a type indicator. The scope field
provides hints about the scope of the local data since the processing of
local data may depend on the current scope value. There is no syntax
definition for the object's data structure as part of the CASP-QoS
protocol. Following this concept much flexibility is given for the
syntax definition of local data, e.g the CASP-QoS protocol does not care
about the structuring of accounting information within a certain AS. As
well the determination of proper source and sink nodes for local data
has to be handled by some mechanism other than CASP-QoS.
Nesting of local information is possible, so that within a path segment
local data is transported and there is a further subsegment along the
same path which nests further local information. The local data is
associated with a scope level. Each CASP-QoS node depending on the value
of the scope has to decide whether it should process specific local data
or ignore it. With the example of nesting local information, the nested
path can be associated with a higher value for the scope field than the
original path. This way local data associated with the original path can
transparently pass the nested path. Each local object carries data for a
specific path or path segment avoiding the necessity to carry local data
with different scope in a single object.
7 Route Change and Mobility Considerations
The separation between M-layer state and C-layer state in CASP is
logically (and not physically). Hence a route change also requires to
create a new reservation along the new path until the merge point
(cross-over router) is reached. The separation between the Session ID
and the Traffic Selector enables the merge point to associate an
existing reservation with the Session ID provided by the incoming
signaling message. As a difference between a standard route change and a
mobility scenario the possibility of a Traffic Selector change should be
mentioned. Typically the former does not require signaling messages to
be forwarded beyond the merge point. The situation might be different in
case of mobility and the used Traffic Selector. Thus there is an
interaction with a micro/macro-mobility scheme. Using a micro-mobility
scheme which is able to trigger CASP would therefore further limit
double reservations and would speed the reservation setup time.
A signaling message initiator can request the deletion of the old
reservation (along the old path). deleting a reservation along an old
path might not always be desired. The initiator is thereby a CASP node
which detects the route change first. There are some reasons why such a
behavior might not be necessary or desired (for example bi-casting of
H. Schulzrinne et. al. [Page 8]
Internet Draft CASP QoS 3 March 2003
data traffic to both access routers).
Particularly of interest for Candidate Access Router (CAR) discovery is
the QUERY message which allows to discover the resource availability
information (and possibly reservations costs) along new candidate paths.
Subsequently a few basic mobility signaling message exchanges are
described. The first exchange covers a QoS reservation for upstream
traffic. Subsequently the implication for downstream traffic is
explained. Thereby the interworking with micro-mobility schemes is
briefly described based on Context Transfer and Hierarchical Mobile IP.
Figure 2 shows a message flow for an upstream reservation in CASP-QOS.
Initially a mobile node establishes state information (and a QoS
reservation) between the old access router (oAR) and the CN via several
routers along the path. The mobile node has obtained a care-of address
(oCoA) and might additionally have additional IP addresses for mobility
(e.g. home address). The implications of selecting a Traffic Selector
are discussed at the end of this section.
As soon as the mobile node detects a route change due to mobility (e.g.
based on a layer 2 trigger) mobility related protocols are triggered. A
CASP signaling message is required either triggered by the refresh timer
or by a mobility management component at the mobile node. The signaling
message establishes new state and a new reservation at the new access
router (because no existing state is found for the provided Session
Identifier). The signaling message is then forwarded until it reaches
the cross-over router (CR). The cross-over router is identified
automatically since it is the first node along the path where state
information identified with the provided Session ID exists. Security
issues (referred as Session/Reservation Ownership) are covered in [1]
since they are independent of a particular client layer protocol.
As previously mentioned it is possible (and sometimes desired) to remove
the old reservation. A dead-branch-removal flag allows the cross-over
router to trigger a RELEASE message along the old path. The signaling
message is then forwarded towards the CN. How far to forward depends on
the used Traffic Selector and on the micro-/macro-mobility scheme.
If reservations along the old path are not released then they time out
(soft-state principle). The lifetime of a reservation depends on the
selected refresh interval (lifetime) which is allowed to vary between
peers in the CASP chain.
Figure 3 shows a downstream reservation. Without mobility protocol
interaction data packets would simply follow the new path toward the new
care-of address. Hence the protocol interaction can be considered as a
H. Schulzrinne et. al. [Page 9]
Internet Draft CASP QoS 3 March 2003
<-- old path -->
oCoA +------------+
+-+ | Old Access | <
| | -------- | Router | --- > --- ^
+-+ | (oAR) | < Release
MN +------------+
|
| +-------+ +------+ < + -----+
| |HoA(MN)| | CR | --- > ---| CN |
V +-------+ +------+ < +------+
Query/Reserve /
nCoA ---> +------------+ /
+-+ | New Access | < /
| | -------- | Router | --- > ---/
+-+ | (nAR) | <
MN +------------+
<-- new path -->
Figure 2: Upstream Reservation due to Mobility
regular route change behavior. An interaction with a mobility protocol
would however enable a performance improvement. When a mobile node
transmits a Binding Update/Registration Request to update its mobility
binding for example at the MAP (in case of Hierarchical Mobile IP) then
such a message could be used to trigger a downstream reservation. As
described in the previous example the old reservation can also be
removed if desired. It is worth noting that the signaling message
exchange described in 2 cannot be used to trigger a downstream
reservation immediately since the two paths (and the cross-over point
for the upstream and the downstream traffic) might be different.
Figure 4 shows the implications for CASP when Context Transfer (CT) is
used. CT allows QoS and security state established at the old access
router to be forwarded to the new access router. Although various
performance improving techniques would be possible, a generic approach
would be to trigger the Context Transfer procedure and then to send a
CASP CREATE message to the new access router. Note that the new access
router could transmit this message on behalf of the mobile node.
Depending on the micro-mobility scheme and on the routes used by the
data traffic either a cross-over router appears somewhere along the path
(e.g. router R1) or in case of host-specific routes (and tunnels) which
forward traffic from the old to the new access router. CT would also
provide a simplification to the security aspects in the following three
H. Schulzrinne et. al. [Page 10]
Internet Draft CASP QoS 3 March 2003
+----+ +-----+
| MN +------------+ oAR +-----
+----+ +-----+
| Release
Movement <-----
|
|
|
| MN<->MAP +--+---+ + -----+
| Binding Update |----> | MAP +---------------+ CN |
| |-------- +--+---+ +------+
| |-------- /
v |------ /
+----+ +-----+ /
| MN +------------+ nAR +--------/
+----+ +-----+ Reserve
<------
Figure 3: Downstream Reservation due to Mobility
areas:
· Session Ownership would not cause problems for mobility in the
local domain since a proof of session ownership is possible by
comparing an incoming request from the mobile node with the
stored state at nAR in a similar manner as at oAR.
· The existing security association can be used without restarting
a new authentication and key agreement protocol run. This
provides performance improvements for mobility within an
administrative domain. A few IPSec Context Transfer protocol
proposals have already been proposed. Note that some adjustment
to a security association is necessary to reflect a new care-of
address.
· If a user was authorized for the indicated amount of resources
then it is fair to assume that this authorization is also valid
at other routers within the same domain. If the same amount of
resources are available at a different path might however be a
different issue. A query message could provide more information
about resource availability. Avoiding an other authorization step
with a possible involvement of a PDP, AAA and backend database is
likely to provide performance advantages.
H. Schulzrinne et. al. [Page 11]
Internet Draft CASP QoS 3 March 2003
+----+ +-----+
| MN +------------+ oAR +-----
+----+ +--+--+
| ^^
| ||
| ||
| ||
Movement Context
| Transfer +--+---+ + -----+
| || | R1 +---------------+ CN |
| || +--+---+ +------+
| || /
| || /
| || /
v vv /
+----+ +--+--+ /
| MN +------------+ nAR +-------/
+----+ +-----+
Figure 4: Context Transfer Implications
As a summary the goals of CASP (and NSIS in general) with regard to
mobility signaling can be characterized as follows:
· Whenever possible the signaling message exchange caused by
mobility should be kept local. This means that an end-to-end
state information update along the path should not be required.
· CASP is designed to work without requiring a specific micro-
and/or macro-mobility protocol. The protocol should therefore not
be strongly coupled with such a protocol. An interaction with
these protocols might be useful (as a trigger mechanism using an
API) to provide more efficient QoS reservations.
· Mobility management introduces elements and mechanisms which
modify routing. Hence it is important to have a mechanism which
allows Traffic Selector updates mid-path and mid-session.
· Avoiding double reservations between the cross-over router and
the correspondent node (for upstream reservations).
· Optionally removing a reservation between the cross-over router
and the old access router.
H. Schulzrinne et. al. [Page 12]
Internet Draft CASP QoS 3 March 2003
Finally it should be mentioned that the selection of Traffic Selector
values has some implications for signaling and security. If a regular
5-tuple is used then mobility is likely to require a signaling message
exchange along the path between the MN and the CN to adjust the Traffic
Selector. The same is true for a flow label and a regular end-to-end
IPSec protected data traffic. If macro- and/or micro-mobility scheme is
used and the Traffic Selector reflects this circumstance then a
signaling message exchange can be kept local. As noted in [6] an
adversary might use identity spoofing (in this case the header of ip
packets) to enable its own traffic to experience preferential treatment.
Marking of packets with DSCP is an extreme example which allows packet
treatment without having end point addresses in the identifier.
8 Security Considerations
CASP relies on the security mechanisms described in [1]. Securing the
messaging layer in a CASP peer-to-peer fashion is provided either by
IPsec or TLS. Non peer-to-peer protection of client layer objects is
provided by CMS which allows resource objects and related objects
defined in this document to be encapsulated and protected by CMS. Hence
no separate specification within CASP is necessary to describe the
format of these objects. This allows some flexibility in including
protected objects to link the authorization step of different protocols
(for example CASP and SIP) and to transport local information within
domains. The functionality described in [7] and [8] can be provided
without substantial protocol modification/extensions.
9 Open Issues
· CASP can use a Next object indicates the next request that the
receiver should generate if the request itself was successful.
For example, if a RESERVE message contains Next = COMMIT, the
receiver of the RESERVE commits the resources just reserved.
The Next request feature is a flexible concept. Is this degree of
flexibility desired?
· CASP can use a Priority object to indicate the priority of the
resource request. Depending on local policy, high-priority
requests may either be treated preferentially compared to those
with lower priority when queueing for resources or may be allowed
to preempt existing resource reservations with lower priority.
This facility may be used for emergency telecommunications
services. Local policy determines whether a particular user is
authorized to exercise a priority level.
· Advance reservation -- CASP-QOS allows to define the start and
end time of a resource reservation, to support advance
H. Schulzrinne et. al. [Page 13]
Internet Draft CASP QoS 3 March 2003
reservations. The Time object describes the time the resource
reservation is to be effective, expressed as a start and ending
time written in NTP time format. (TBD: One could express periodic
reservations in the style of iCal [9], but the complexity seems
unwarranted.) A start time of zero indicates an immediate start.
Note that the CASP state has to be maintained between the time
the first message is sent requesting the reservation and the end
of the reservation. A requestor SHOULD use a suitably long
lifetime. TBD: Should there be a notification to the initiator
at the beginning of the actual reservation that indicates a new,
lower refresh interval?
For resources related to conferences, it is often
insufficient to find out at the time of the conference
that resources are unavailable, after much effort has
been expended on agreeing on a common time. A reservation
for the first available time slot seems an attractive
service, but difficult to set up due to the need for
coordination.
· CASP-QOS, like CASP, can support source-specific multicast (SSM)
[10]. It does not support receiver diversity, reservation styles,
blockade states and NBMA next-hops. Note that some aspects of
reservation styles can be supported by appropriate traffic
selectors.
· Allow multiple types of resource objects in one request?
· Usage scenarios for non-repudiation need to be described.
· Interaction with accounting/charging and related protocols (for
example AAA) needs to be elaborated.
· Should there be a notification to indicate a change in refresh
interval?
· The usage of authorization tokens needs to be described in more
detail (message formats and an indication of useful objects).
· It might be useful to allow a traffic sink to ask the traffic
source to set up a resource reservation. The sink would send a
CASP request directly to the source, which would start a normal
CASP reservation. For some applications, this can be done
already, e.g., using SIP.
H. Schulzrinne et. al. [Page 14]
Internet Draft CASP QoS 3 March 2003
10 Acknowledgements
Robert Hancock provided useful feedback.
A CASP-QoS Message Formats
A CASP-QoS message consists of a common header, followed by a body
consisting of a variable number of variable-length objects, which are
identified as being of a particular type. The following subsections
define the format of the common header, the standard object header, and
the construction of CASP-QoS messages.
A.1 Common Header
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
+---------------+---------------+---------------+---------------+
| Length (bytes) |
+---------------+---------------+---------------+---------------+
|C R P U / / / /| Flow Identifier |
+---------------+---------------+---------------+---------------+
| |
+ +
| Flow |
+ Identifier +
| (continue, padded when necessary) |
+ +
| |
+---------------+---------------+---------------+---------------+
The fields in the common header are:
· Length. Indicates the length of the CASP message in bytes. This
includes the length of the common header (including the length
field itself).
· Flags: 8 bits
Currently four flags are defined:
- The Commit (C) bit indicates that the message receiver should
send back a Commit message in the opposite direction.
- The Removal (R) bit indicates that this message removes all
CASP-QoS state (Reserve and Commit states, if any) for the
H. Schulzrinne et. al. [Page 15]
Internet Draft CASP QoS 3 March 2003
CASP-QoS session. If not set, the message establishes or
refreshes CASP-QoS state.
- The Partial Reservation (P) bit requests that a partial
reservation is acceptable. If not set, the reservation from the
sender to the receiver should be tried if possible.
- The unsecure (U) (or "tainted") bit indicates that the message
has traversed a hop without channel security.
· Type: 8 bits The CASP-QoS message type. Currentl valid types are:
- Type 1: CASP-QoS Reserve Message
- Type 2: CASP-QoS Commit Message
- Type 3: CASP-QoS Release Message
- Type 4: CASP-QoS Success Message
- Type 5: CASP-QoS Error Message
· Flow Identifier
Contains information about the flow which should receive a
particular QoS treatment. It contains the IP addresses of the
data sender and data receiver, and possibly some additional
demultiplexing information (such as protocol type, source and
destination ports, SPI or flow label).
A.2 Object Formats
Each object consists of one or more 32-bit words with a one word header,
with the following format:
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
+---------------+---------------+---------------+---------------+
| Length (bytes) | Class-Num | C-Type |
+---------------+---------------+---------------+---------------+
| |
// (Object contents) //
| |
+---------------+---------------+---------------+---------------+
H. Schulzrinne et. al. [Page 16]
Internet Draft CASP QoS 3 March 2003
An object header has the following fields:
· Length: 16 bits
The length field contains the total object length in bytes,
including the object header.
· Class-Num: 8 bits
Identifies the object class; values of this field are to be
provided. Each object class has a name, which is always
capitalised in this document. A CASP-QoS implementation must
recognize the following classes:
- ERROR_NODE
Indicates the IPv4 or IPv6 address where a reservation failed.
- VERSION
Indicates which type of flowspec is used. This is used to
easily detect a new flowspecs, rather than including the
flowspec itself. Currently Version = 0 indicates IntServ
Flowspec.
- C-Type: 8 bits
Object type, unique within Class-Num. Values are to be defined
later.
- MINIMUM_FLOWSPEC
Indicates the minimum flowspec the application would accept.
- DESIRED_FLOWSPEC
Indicates the maximum possible flowspec the application would
desire.
The format of an IntServ Controlled Load FLOWSPEC is given as
follows. Note during a session, only one flowspec should be
included unless the user wants nodes to "upgrade" the reservation
if possible.
31 24 23 16 15 8 7 0
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
1 | 0 (a) | reserved | 7 (b) |
H. Schulzrinne et. al. [Page 17]
Internet Draft CASP QoS 3 March 2003
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
2 | 5 (c) |0| reserved | 6 (d) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
3 | 127 (e) | 0 (f) | 5 (g) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
4 | Token Bucket Rate [r] (32-bit IEEE floating point number) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
5 | Token Bucket Size [b] (32-bit IEEE floating point number) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
6 | Peak Data Rate [p] (32-bit IEEE floating point number) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
7 | Minimum Policed Unit [m] (32-bit integer) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
8 | Maximum Packet Size [M] (32-bit integer) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
(a) - Message format version number (0)
(b) - Overall length (7 words not including header)
(c) - Service header, service number 5 (Controlled-Load)
(d) - Length of controlled-load data, 6 words not including
per-service header
(e) - Parameter ID, parameter 127 (Token Bucket TSpec)
(f) - Parameter 127 flags (none set)
(g) - Parameter 127 length, 5 words not including per-service
header
B Authors' Address
Henning Schulzrinne
Dept. of Computer Science
Columbia University
1214 Amsterdam Avenue
New York, NY 10027
USA
EMail: schulzrinne@cs.columbia.edu
Hannes Tschofenig
Siemens AG
Otto-Hahn-Ring 6
81739 Munich
Germany
EMail: Hannes.Tschofenig@siemens.com
Xiaoming Fu
Institute for Informatics
University of Goettingen
H. Schulzrinne et. al. [Page 18]
Internet Draft CASP QoS 3 March 2003
Lotzestrasse 16-18
37083 Goettinge
Germany EMail: fu@cs.uni-goettingen.de
Jochen Eisl
Siemens AG
Otto-Hahn-Ring 6
81739 Munich
Germany
EMail: Jochen.Eisl@icn.siemens.de
C Bibliography
[1] H. Schulzrinne, H. Tschofenig, X. Fu, and A. McDonald, "Casp -
cross-application signaling protocol," internet draft, Internet
Engineering Task Force, 2003. Work in progress.
[2] L. Amini and H. Schulzrinne, "Observations from router-level
internet traces," in DIMACS Workshop on Internet and WWW Measurement,
Mapping and Modeling, (Piscataway, New Jersey) , Feb. 2002.
[3] P. Pan and H. Schulzrinne, "Processing overhead studies in resource
reservation protocols," in 17th International Teletraffic Congress ,
(Salvador da Bahia, Brazil), Sept. 2001.
[4] J. Heinanen, F. Baker, W. Weiss, and J. Wroclawski, "Assured
forwarding PHB group," RFC 2597, Internet Engineering Task Force, June
1999.
[5] J. Wroclawski, "The use of RSVP with IETF integrated services," RFC
2210, Internet Engineering Task Force, Sept. 1997.
[6] H. Tschofenig and D. Kroeselberg, "Security threats for nsis,"
internet draft, Internet Engineering Task Force, 2003. Work in
progress.
[7] L. Hamer, B. Gage, and H. Shieh, "Framework for session set-up with
media authorization," Internet Draft, Internet Engineering Task Force,
July 2002. Work in progress.
[8] L. Hamer, B. Gage, M. Broda, B. Kosinski, and H. Shieh, "Session
authorization for RSVP," Internet Draft, Internet Engineering Task
Force, July 2002. Work in progress.
[9] F. Dawson and D. Stenerson, "Internet calendaring and scheduling
core object specification (icalendar)," RFC 2445, Internet Engineering
Task Force, Nov. 1998.
H. Schulzrinne et. al. [Page 19]
Internet Draft CASP QoS 3 March 2003
[10] H. Holbrook and B. Cain, "Source-specific multicast for IP,"
Internet Draft, Internet Engineering Task Force, Feb. 2002. Work in
progress.
H. Schulzrinne et. al. [Page 20]
Internet Draft CASP QoS 3 March 2003
Table of Contents
1 Introduction . . . . . . . . . . . . . . . . . . . . . . 2
2 Operation . . . . . . . . . . . . . . . . . . . . . . . . 3
3 Objects . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.1 Version (V) . . . . . . . . . . . . . . . . . . . . . . . 4
3.2 Partial Reservation (P) . . . . . . . . . . . . . . . . . 4
4 Messages . . . . . . . . . . . . . . . . . . . . . . . . 4
5 Resource Objects . . . . . . . . . . . . . . . . . . . . 6
5.1 Bandwidth (B) . . . . . . . . . . . . . . . . . . . . . . 6
5.2 PHB . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5.3 IntServ Flowspec . . . . . . . . . . . . . . . . . . . . 6
5.4 L2 Properties . . . . . . . . . . . . . . . . . . . . . . 6
6 Local Information . . . . . . . . . . . . . . . . . . . . 6
7 Route Change and Mobility Considerations . . . . . . . . 8
8 Security Considerations . . . . . . . . . . . . . . . . . 13
9 Open Issues . . . . . . . . . . . . . . . . . . . . . . . 13
10 Acknowledgements . . . . . . . . . . . . . . . . . . . . 15
A CASP-QoS Message Formats . . . . . . . . . . . . . . . . 15
A.1 Common Header . . . . . . . . . . . . . . . . . . . . . . 15
A.2 Object Formats . . . . . . . . . . . . . . . . . . . . . 16
B Authors' Address . . . . . . . . . . . . . . . . . . . . 18
C Bibliography . . . . . . . . . . . . . . . . . . . . . . 19
H. Schulzrinne et. al. [Page 1]
| PAFTECH AB 2003-2026 | 2026-04-23 09:56:58 |