One document matched: draft-ietf-nsis-qspec-02.txt
Differences from draft-ietf-nsis-qspec-01.txt
Network Working Group Jerry Ash
Internet Draft AT&T
<draft-ietf-nsis-qspec-02.txt> Attila Bader
Expiration Date: June 2005 Ericsson
Cornelia Kappler
Siemens AG
December 2004
QoS-NSLP QSPEC Template
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of RFC 3668.
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/1id-abstracts.html.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
Copyright Notice
Copyright (C) The Internet Society (2004). All Rights Reserved.
Abstract
The QoS NSLP protocol is used to signal QoS reservations and is
independent of a specific QoS model such as IntServ or DiffServ.
Rather, all information specific to QoS models is encapsulated in a
separate object, the QSPEC. This draft defines a template for the
QSPEC, which contains both the QoS description and control
information specific to a given QoS model. The QSPEC format is
defined as are a number of generic and optional parameters.
Generic parameters provide a common language to be re-used in
several QoS models, which are derived initially from the IntServ
and DiffServ QoS models. Optional parameters aim to ensure the
extensibility of QoS NSLP to other QoS models.
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 1]
Internet Draft QoS-NSLP QSPEC Template December 2004
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Applicability . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1 Processing of QSPEC . . . . . . . . . . . . . . . . . . . . . 5
3.2 Generic Parameters . . . . . . . . . . . . . . . . . . . . . 6
3.3 Extensibility . . . . . . . . . . . . . . . . . . . . . . . . 6
4. QSPEC Format Overview . . . . . . . . . . . . . . . . . . . . 6
4.1 QSP Specific Control Information . . . . . . . . . . . . . . 7
4.2 QoS Description . . . . . . . . . . . . . . . . . . . . . . . 7
4.2.1 QoS Desired . . . . . . . . . . . . . . . . . . . . . . . . 8
4.2.2 QoS Available . . . . . . . . . . . . . . . . . . . . . . . 8
4.2.3 QoS Reserved . . . . . . . . . . . . . . . . . . . . . . 10
4.2.4 Minimum QoS . . . . . . . . . . . . . . . . . . . . . . . 10
5. QSPEC Functional Specification . . . . . . . . . . . . . . . 11
5.1 <Hop Count> Parameter . . . . . . . . . . . . . . . . . . . 11
5.2 <Excess Treatment> Parameter . . . . . . . . . . . . . . . 11
5.3 <NON QSP Hop> & <QSP Hops> Parameters . . . . . . . . . . . 11
5.4 <R> & <S> Parameters . . . . . . . . . . . . . . . . . . . 12
5.5 <Token Bucket> Parameters . . . . . . . . . . . . . . . . . 12
5.6 <QoS Class> Parameters . . . . . . . . . . . . . . . . . . 12
5.6.1 <PHB Class> Parameter . . . . . . . . . . . . . . . . . . 12
5.6.2 <Y.1541 QoS Class> Parameter . . . . . . . . . . . . . . 14
5.6.3 <DSTE Class Type> Parameter . . . . . . . . . . . . . . . 15
5.7 <Priority> Parameters . . . . . . . . . . . . . . . . . . . 15
5.7.1 <Preemption Priority> & <Defending Priority> Parameters . 15
5.7.2 <Reservation Priority> Parameter . . . . . . . . . . . . 15
5.8 <QoS Available> Parameters . . . . . . . . . . . . . . . . 16
5.8.1 <Available Bandwidth> Parameters . . . . . . . . . . . . 16
5.8.2 <Min Latency> Parameter . . . . . . . . . . . . . . . . . 17
5.8.3 <Ctot> <Dtot> <Csum> <Dsum> Parameters . . . . . . . . . 17
6. Security Considerations . . . . . . . . . . . . . . . . . . 18
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . 18
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 18
9. Intellectual Property Considerations . . . . . . . . . . . . 18
10. Normative References . . . . . . . . . . . . . . . . . . . 19
11. Informative References . . . . . . . . . . . . . . . . . . 19
12. Authors' Addresses . . . . . . . . . . . . . . . . . . . . 20
Appendix A Example Qspecs . . . . . . . . . . . . . . . . . . . 21
A.1 QSPEC for Admission Control for DiffServ . . . . . . . . . 21
A.2 QSPEC for IntServ Controlled Load Service . . . . . . . . . 21
A.3 QSPEC for IntServ Guaranteed Services . . . . . . . . . . . 22
Appendix B Example of NSLP QSPEC Operation . . . . . . . . . . 22
Appendix C QoS Models, QoS Signaling Policies and QSPECs . . . 24
Appendix D Mapping of QoS Desired, QoS Available, and QoS Reserved
of NSIS onto AdSpec, TSpec, and RSpec of RSVP IntServ . . . . . 24
Full Copyright Notice . . . . . . . . . . . . . . . . . . . . . 25
Disclaimer of Validity . . . . . . . . . . . . . . . . . . . . 25
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 2]
Internet Draft QoS-NSLP QSPEC Template December 2004
1. Introduction
The QoS NSLP establishes and maintains state at nodes along the path
of a data flow for the purpose of providing forwarding resources
(QoS) for that flow [QoS-SIG]. The design of QoS NSLP is
conceptually similar to RSVP [RSVP], and meets the requirements of
[NSIS-REQ].
QoS NSLP can signal for different QoS Models, i.e. QoS provisioning
methods or QoS architectures. It should be able to support, for
example, IntServ and signaling for DiffServ admission control, and
satisfy the need of more complex control planes such as defined in
[Q.2630, Y.1541]. The use of QoS NSLP to signal for a specific QoS
Model is called a 'QoS Signaling Policy' (QSP). Examples of different
QSPs for NSIS are specified in [Y.1541-QSP, INTSERV-QSP, RMD-QSP].
For more information on QoS Models and QSPs see Appendix B.
QSP-specific information is carried in the so-called QSPEC object,
which travels in QoS-NSLP messages. The format of the QSPEC object
is QSP specific. The QSPEC is opaque to QoS NSLP. It contains two
types of information: QSP Control Information and a QoS Description.
The QSP control information contains information not related to the
actual resource management but rather to message processing. An
example of QSP control information is the scope of the QSPEC. QSP
Control Information must not be confused with the Common Control
Information, which is a set of objects defined in QoS NSLP. Whereas
QSP Control Information is specific to the QSPEC, Common Control
Information is specific to the QoS NSLP message.
The QoS Description is composed of objects corresponding to the
TSpec, RSpec and AdSpec objects specified in RSVP. This is, the QSPEC
may contain a description of QoS desired and QoS reserved. It can
also collect information about available resources. Going beyond RSVP
functionality, the QoS Description also allows indicating a range of
acceptable QoS by defining an object denoting minimum QoS. Usage
of these objects is not bound to particular message types thus
allowing for flexibility. An object collecting information about
available resources may travel in any QoS NSLP message, for example
a QUERY message or a RESERVE message.
This draft provides a template for the QSPEC, which is needed in
order to help defining individual QSPs and in order to promote
interoperability between QoS models.
2. Terminology
Common NSLP Processing: Functions in a QNE that are related to NSLP
message processing (common for each QoS Model)
Generic-Mandatory Parameter: Parameter for which QNEs MUST provide
meaningful interpretations.
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 3]
Internet Draft QoS-NSLP QSPEC Template December 2004
Generic-Optional Parameter: QSPEC parameter for which QNEs SHOULD
provide meaningful interpretations when applicable to the underlying
technology.
Minimum QoS: Minimum QoS is a functionality that MAY be supported by
any QSP: Together with a description of desired QoS, it allows the
QNI to specify a QoS range, i.e. an upper and lower bound. If the
desired QoS is not available, QNFs are going to decrease the
reservation until the minimum QoS is hit.
QoS Description: Describes the actual QoS being reserved. May
contain the objects QoS Desired, QoS Available, QoS Reserved and
Minimum QoS. These objects are input or output parameters of the
Resource Management Function
QoS Available: Object containing parameters describing the
available resources. They are used to collect information along a
reservation path.
QoS Desired: Object containing parameters describing the desired
QoS and/or the traffic for which the sender request reservation.
QoS Model: A methodology to achieve QoS for a traffic flow, e.g.
IntServ Controlled Load.
QoS Reserved: Object containing parameters describing the reserved
resources and related QoS parameters (e.g. Slack Term)
QoS Signaling Policy (QSP): A signaling policy describing how to use
QoS NSLP to signal for a specific QoS Model
QSPEC Control Information: Control information that is specific to a
QSPEC, and processed in QSPEC-specific NSLP Processing.
QSPEC-specific NSLP Processing: Functions in a QNE that process QSP
Control Information and are specific to each QoS Model.
QSPEC: QSPEC is the object of QoS-NSLP containing all QoS Model
specific information.
QSPEC parameter: any parameter appearing in a QSPEC, for example,
scope of QSPEC or token bucket.
QSPEC object: Main building blocks of QoS Description containing
a parameter set that is input or output of a Resource Management
Function operation.
QSP-Specific Parameter: QSPEC parameter defined for a specific QSP
and for which QNEs SHOULD provide meaningful interpretations when
applicable to the underlying technology.
Resource Management Function: Functions that are related to resource
management, specific to a QoS Model. It processes QoS Description.
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 4]
Internet Draft QoS-NSLP QSPEC Template December 2004
Read-only Parameter: Parameter that is set by initiating or
responding QNE and is not changed during the processing of the QSPEC
along the path
Read-write Parameter: Parameter that can be changed during the
processing of the QSPEC by any QNE along the path
3. Applicability
3.1 Processing of QSPEC
The QSPEC is opaque to the QoS-NSLP processing. The QSPEC control
information is interpreted and perhaps modified by the QSPEC-specific
NSLP processing, and the QoS description is interpreted and may be
modified by the Resource Management Function (see Figure 1 and
description in [QoS-SIG]).
A domain that wishes to support QoS NSLP signaling decides on a
number of QoS Signaling Policies (QSPs) that will be supported by its
nodes. A QSP is a way of using QoS NSLP to achieve QoS reservations
over the domain. Examples of QSPs are IntServ, DiffServ, RMD, UMTS,
etc.
The definition of a QSP includes the specification of how the
Requested QoS resources will be described in the network and how they
will be managed by the Resource Management Function (RMF). For this
purpose, the QSP specifies a set of QoS specification (QSPEC)
parameters that describe the QoS traffic and a QoS resource control.
QSPEC parameters are conceptually organized in three levels:
generic-mandatory parameters, generic-optional parameters, and
QSP-specific parameters. These parameters form a tree structure with
increasing specificity from the root to the leaves, and are carried
in the QSPEC object in a QoS NSLP message.
In order to provide end-to-end interoperability, generic QSPEC
parameters are defined in a QSPEC template discussed in this
document. Generic-mandatory parameters MUST be understood by all QoS
NSLP compliant nodes. Generic-optional parameters SHOULD be used if
they are appropriate for the QSP in use in a certain domain.
Specification of additional generic QSPEC parameters requires
standards action, as defined in this document. QSP-specific
parameters are defined in separate QSP (informational) documents.
A QoS NSLP message can contains a stack of 1+n QSPECs. The top of the
Stack is the Initiator QSPEC. This is an immutable QSPEC provided by
the QNI which travels end-to-end, and therefore the stack always has
at least depth 1. In addition, the stack may contain n local QSPECs,
where n is the level of nested QSP regions in a domain. A QNE only
considers the topmost QSPEC at each of its interfaces.
The Initiator QSPEC contains up to three parts: generic mandatory
parameters, generic optional parameters and QSP-specific parameters
for up to two QSPs. The second set of QSP-specific parameters can be
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 5]
Internet Draft QoS-NSLP QSPEC Template December 2004
used, for example, in a remote access network. Local QSPECs have a
structure similar to the Initiator QSPEC, except they can only
contain QSP-specific parameters for a single QSP. They may be
pushed on the stack at the edge of a domain in order to describe the
requested resources in a domain-specific manner. Also, the local
QSPECs are popped from the stack at the edge of the domain. In most
cases, we expect the stack to be no deeper than 2.
3.2 Generic Parameters
The QSPEC template defines a format for the QSPEC, as well as a
number of generic-mandatory and generic-optional QSPEC parameters.
Generic parameters provide a common language for QSP developers to
build their QSPECs and are likely to be re-used in several QSPs.
All parameters used in DiffServ and IntServ QSPs are generic
parameters. A QSPEC is specific to a QSP and is identified by a QSP
ID carried in QoS NSLP.
As stated above, we define generic-mandatory parameters,
generic-optional parameters, and QSP-specific parameters. A QNI MUST
populate and a QNE resource management function (RMF)MUST provide a
meaningful interpretation of all generic-mandatory parameters for a
given QSP. A QNI SHOULD populate and a QNE RMF SHOULD provide a
meaningful interpretation of a generic-optional parameter if the
underlying technology supports it. A specific QSP may, however, only
use a subset or perhaps none of the generic-mandatory or
generic-optional QSPEC parameters. Furthermore, a QSP may define
additional parameters called QSP-specific parameters, which are
defined in separate Informational documents specific to a given QSP.
3.3 Extensibility
Additional generic-mandatory or generic-optional may need to be
defined in the future. This can be done by modification of this
document. Additional QSP-specific parameters are defined in separate
Informational documents specific to a given QSP.
4. QSPEC Format Overview
QSPEC = <QSPEC Control Information> <QoS Description>
As described above, the QSPEC object contains the actual resource
description (QoS description) as well as QSPEC control information.
Both QoS description and QSPEC control information may contain
read-write and read-only objects.
Read-write objects can be changed by any QNE, including by QoS NSIS
functions along the signaling path, whereas read-only objects are
fixed by the initiating QNE and/or responding QNEs. An example of a
read-write object is the QoS Available, which is updated by
intermediate QNEs. An example of a read-only object is QoS Desired
as sent by the QNI.
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 6]
Internet Draft QoS-NSLP QSPEC Template December 2004
4.1. QSP Specific Control Information
QSP specific control information is used for QSPEC-specific control
information and for specific signaling functions not defined in QoS-
NSLP. It enables building a new signaling policy within a QoS-NSLP
signaling framework, see for example [RMD-QSP].
Generic-Optional Parameter: <Hop Count>
This read-write hop count field limits the maximum number of QoS-NSLP
hops. <Hop Count> must not be confused with the scope of the QoS NSLP
message carrying the QSPEC. This scope would be coded in the Common
Control Information.
Generic-Optional Parameter: <Excess Treatment>
This read-write parameter describes how the QNE will process excess
traffic, that is, out-of-profile traffic. Excess traffic may be
dropped, shaped and/or remarked. The excess treatment parameter is
initially set by the QNI and adjusted as needed by QNEs.
4.2 QoS Description
The QoS Description is broken down into the following objects:
<QoS Description> = <QoS Desired> <QoS Available> <QoS Reserved>
<Minimum QoS>
Of these objects, QoS Desired and Minimum QoS are read-only, whereas
QoS Available and QoS Reserved are read-write. If it needs to be
ensured that QoS Desired and Minimum QoS are indeed not changed along
the path, it is possible to apply selective protection of these
objects only. The verification is based on cryptographic procedures.
On the QSPEC template level, the only restriction on object usage is
that <Minimum QoS> should always travel together with <QoS Available>
and/or <QoS Desired>. Otherwise there is no restriction on how many
of these objects a QSPEC may carry, nor what type of object is
carried in what type of QoS NSLP message. For example, in a
receiver-initiated reservation scenario, the initiating QNE may send
a QUERY carrying a <QoS Available> object to probe the available
resources on the path. The same QUERY may carry a <QoS Desired>
object. The responding QNE can re-use the latter objects in the
RESERVE message. The QoS NSLP and particularly the QSPs prescribe
how the objects in QSPECs are interpreted and used, and therefore
restrict this freedom.
The union of all the objects identified in this Section can provide
all functionality of the objects specified in RSVP IntServ. QoS
Desired may in fact just be a description of traffic to be sent, but
it may also include more parameters (e.g. delay) or signal for more
resources than those derived from an exact traffic description (e.g.
a token bucket with a higher peak rate). Furthermore all objects can
carry the same parameter types. Hence, a QNI could send a RESERVE
with QoS Desired contained a particular Average bandwidth, and at the
same time include a QoS Available Object for querying availability of
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 7]
Internet Draft QoS-NSLP QSPEC Template December 2004
this same parameter. If QoS Desired cannot be reserved, the QNR can
use the information Collected in QoS Available along the path to
signal back to the QNI a more promising value of QoS Desired. The
details of such Message exchanges are defined in [QoS-Sig].
4.2.1 <QoS Desired>
<QoS Desired> = <R> <Token Bucket> <QoS Class> <Priority>
Generic-Mandatory Parameters: <R>
Generic-Optional Parameters: <Token Bucket> <QoS Class> <Priority>
These parameters describe the resources the QNI desires to reserve
and hence this is a read-only object. QoS Desired may be an accurate
description of the traffic the QNI is going to inject into the
network. It may however also ask for more (or less) resources.
<R> = link bandwidth flow is entitled to [RFC 2212]
<Token Bucket> = <r> <b> <p> <m> <M> [RFC 2210]
<QoS Class> = <PHB Class> <Y.1541 QoS Class> <DSTE Class Type>
An application may like to reserve resources for packets with a
particular QoS class, e.g. a DiffServ per-hop behavior (PHB)
[DIFFSERV, DCLASS], or DiffServ-enabled MPLS traffic engineering
(DSTE) class type [DSTE].
<Priority> = <Reservation Priority> <Preemption Priority>
<Defending Priority>
<Reservation priority> is an essential way to differentiate flows for
emergency services, ETS, E911, etc., and assign them a higher
admission priority than normal priority flows and best-effort
priority flows. <Preemption Priority> is the priority of the new
flow compared with the defending priority of previously admitted
flows. Once a flow was admitted, the preemption priority becomes
irrelevant. <Defending Priority> is used to compare with the
preemption priority of new flows. For any specific flow, its
preemption priority must always be less than or equal to the
defending priority.
Appropriate security measures need to be taken to prevent abuse of
the <Priority> parameters. These are read-only parameters.
4.2.2 <QoS Available>
<QoS Available> = <NON QSP Hop> <QSP Hops> <Available Bandwidth> <Min
Latency> <M> <Ctot> <Dtot> <Csum> <Dsum> <Priority>
Generic-Mandatory Parameters: <NON QSP Hop> <QSP Hops>
<Available Bandwidth>
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 8]
Internet Draft QoS-NSLP QSPEC Template December 2004
Generic-Optional Parameters: <Min Latency> <Ctot> <Dtot> <Csum>
<Dsum>
These parameters describe the resources currently available on the
path and hence the object is read-write. They are defined in
[RFC 2210, 2212, 2215].
<NON QSP Hop> is a flag bit telling the QNR (or QNI in a RESPONSE
message) whether or not a completely reservation-capable path exists
between the QNI and QNR. If the QNR finds this bit set, at least one
QNE along the data transmission path between the QNI and QNR can not
provide QoS control services at all. If this bit is set, the values
of all other parameters in the <QoS Available> are unreliable.
<QSP Hops> indicates the number of hops in the NSLP aware network
which support a given QSP. The QNE MUST support and characterize the
service in conformance with the relevant QSP specification, and if it
does not it must correctly set the <NON QSP Hop> flag parameter. The
composition rule for this parameter is to increment the counter by
one at each QSP-aware hop. This quantity, when composed from the QNI
to QNR informs the QNR (or QNI in a RESPONSE message) of the number
of QSP-aware QNEs traversed along the path.
The <Available Bandwidth> parameter provides information about the
bandwidth available along the path followed by a data flow. The
local parameter is an estimate of the bandwidth the QNE has available
for packets following the path. Computation of the value of this
parameter should take into account all information available to the
QNE about the path, taking into consideration administrative and
policy controls on bandwidth, as well as physical resources. The
composition rule for this parameter is the MIN function. The composed
value is the minimum of the QNE's value and the previously composed
value. This quantity, when composed end-to-end, informs the QNR (or
QNI in a RESPONSE message) of the minimal bandwidth link along the
path from QNI to QNR.
The <Min Latency> parameter accumulates the latency of the packet
forwarding process associated with each QNE, where the latency is
defined to be the smallest possible packet delay added by each QNE.
This delay results from speed-of-light propagation delay, from packet
processing limitations, or both. It does not include any variable
queuing delay which may be present. Each QNE MUST add the
propagation delay of its outgoing link, which includes the QNR adding
the associated delay for the egress link. Furthermore, the QNI MUST
add the propagation delay of the ingress link. The composition rule
for the <Min Latency> parameter is summation with a clamp of
(2**32 - 1) on the maximum value. This quantity, when composed
end-to-end, informs the QNR (or QNI in a RESPONSE message) of the
minimal packet delay along the path from QNI to QNR. The purpose of
this parameter is to provide a minimum path latency for use with
services which provide estimates or bounds on additional path delay
[RFC 2212]. Together with the queuing delay bound, this parameter
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 9]
Internet Draft QoS-NSLP QSPEC Template December 2004
gives the application knowledge of both the minimum and maximum
packet delivery delay. Knowing both the minimum and maximum
latency experienced by data packets allows the receiving application
to know the bound on delay variation and de-jitter buffer
requirements.
Error terms C and D represent how the element's implementation of the
guaranteed service deviates from the fluid model. These two
parameters have an additive composition rule. The error term C is
the rate-dependent error term. It represents the delay a datagram in
the flow might experience due to the rate parameters of the flow.
The error term D is the rate-independent, per-element error term and
represents the worst case non-rate-based transit time variation
through the service element. If the composition function is applied
along the entire path to compute the end-to-end sums of C and D (Ctot
and Dtot) and the resulting values are then provided to the QNR (or
QNI in a RESPONSE message). Csum and Dsum are the sums of the
parameters C and D between the last reshaping point and the current
reshaping point.
Each QNE must inspect this object. If resources available to this QNE
are less than what <QoS Available> says currently, the QNE must adapt
it accordingly. Hence when the message arrives at the recipient of
the message, <QoS Available> reflects the bottleneck of the resources
currently available on a path. It can be used in a QUERY message,
for example, to collect the available resources along a data path.
4.2.3 <QoS Reserved>
<QoS Reserved> = <R> <S> <Token Bucket> <QoS Class> <Priority>
These parameters describe the QoS reserved by the QNEs down the
path. <R>, <Token Bucket>, <QoS Class> and <Priority> are defined
above.
Generic-Optional Parameter: <S> = slack term: difference between
desired delay and delay obtained by using reservation level R (used
to reduce resource reservation for flow) [RFC 2212]. This is a
read-write parameter.
4.2.4 <Minimum QoS>
<Minimum QoS> = <R> <Token Bucket> <QoS Class> <Priority>
<Minimum QoS> does not have an equivalent in RSVP. It allows the QNI
to define a range of acceptable QoS levels by including both the
desired QoS value and the minimum acceptable QoS in the same message.
It is an read-only object. The desired QoS is included with a <QoS
Desired> and/or a <QoS Available> object seeded to the desired QoS
value. The minimum acceptable QoS value is coded in the <Minimum QoS>
object. As the message travels towards the QNR, <QoS Available>
is updated by QNEs on the path. If its value drops below the value
of <Minimum QoS> the reservation failed and can be aborted. When
this method is employed the QNR SHOULD signal back to the QNI the
value <QoS Available> attained in the end, because the reservation
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 10]
Internet Draft QoS-NSLP QSPEC Template December 2004
may need to be adapted accordingly.
5. QSPEC Functional Specification
This Section defines the encodings of the QSPEC parameters and
control information defined in Section 4.
5.1 <Hop Count> Parameter
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
| Hop Count |
+-+-+-+-+-+-+-+-+
Hop Count: 8 bits
Indicates the maximum number of NSLP hops between the QNI and
QNR. Values of the composed parameter will range from 1 to 255,
limited by the bound on IP hop count.
5.2 <Excess Treatment> Parameter
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
| Excess |
| Treatment |
+-+-+-+-+-+-+-+-+
Excess Treatment: 8 bits
Indicates how the QNE should process out-of-profile traffic.
Allowed values are as follows:
0: drop
1: shape
2: remark
The excess treatment parameter is initially set by the QNI and
adjusted as needed by QNEs.
5.3 <NON QSP Hop> & <QSP Hops> Parameters [RFC 2210, 2215]
0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| NON QSP Hop | QSP Hops |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
NON QSP Hop: 8 bits
This field is set to 1 if a non QSP-aware QNE is encountered on
the path from the QNI to the QNR.
QSP Hops: 8 bits
Indicates the number of QSP hops between the QNI and QNR. Values
of the composed parameter will range from 1 to 255, limited by
the bound on IP hop count.
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 11]
Internet Draft QoS-NSLP QSPEC Template December 2004
5.4 <R> & <S> Parameters [RFC 2212]
The rate R MUST be nonnegative and is measured in bytes per second
and has the same range and suggested representation as the bucket and
peak rates of the <Token Bucket>. The rate term R can be represented
using single-precision IEEE floating point. Slack term S MUST be
hnonnegative and is measured in microseconds.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Data Rate [R] (32-bit IEEE floating point number) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Slack Term [S] (32-bit integer) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The Slack term, S, can be represented as a 32-bit integer. Its value
can range from 0 to (2**32)-1 microseconds.
5.5 <Token Bucket> Parameters [RFC 2215]
The <Token Bucket> parameters are represented by three floating point
numbers in single-precision IEEE floating point format followed by
two 32-bit integers in network byte order. The first floating point
value is the rate (r), the second floating point value is the bucket
size (b), the third floating point is the peak rate (p), the first
integer is the minimum policed unit (m), and the second integer is
the maximum datagram size (M).
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Token Bucket Rate [r] (32-bit IEEE floating point number) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Token Bucket Size [b] (32-bit IEEE floating point number) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Peak Data Rate [p] (32-bit IEEE floating point number) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Minimum Policed Unit [m] (32-bit integer) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Maximum Packet Size [M] (32-bit integer) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
When r, b, p, and R terms are represented as IEEE floating point
values, the sign bit MUST be zero (all values MUST be non-negative).
Exponents less than 127 (i.e., 0) are prohibited. Exponents greater
than 162 (i.e., positive 35) are discouraged, except for specifying a
peak rate of infinity. Infinity is represented with an exponent of
all ones (255) and a sign bit and mantissa of all zeroes.
5.6 <QoS Class> Parameters
5.6.1 <PHB Class> Parameter [DIFFSERV-CLASS]
Encoding of the DiffServ per-hop-behavior (PHB) class if as follows:
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 12]
Internet Draft QoS-NSLP QSPEC Template December 2004
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
| PHB Class |
+-+-+-+-+-+-+-+-+
PHB Class: 8 bits
Indicates the PHB class. Values currently allowed are 0, 1, 2,
3, ..., 20.
Encoding of the PHB Class parameter is taken from [DIFFSERV-CLASS]:
------------------------------------------------------------------
| Service |PHB Class| DSCP | Application |
| Class Name | (Name) | Value | Examples |
|===============+=========+=============+==========================|
|Administrative |0 (CS7) | 111000 | Heartbeats |
|---------------+---------+-------------+--------------------------|
|Network Control|1 (CS6) | 110000 | Network routing |
|---------------+---------+-------------+--------------------------|
|Telephony |2 (EF) | 101110 | IP Telephony bearer |
|---------------+---------+-------------+--------------------------|
|Signaling |3 (CS5) | 101000 | IP Telephony signaling |
|---------------+---------+-------------+--------------------------|
|Multimedia |4 (AF41) | 100010 | H.323/V2 video |
|Conferencing |5 (AF42) | 100100 | conferencing (elastic) |
| |6 (AF43) | 100110 | |
|---------------+---------+-------------+--------------------------|
|Real-time |7 (CS4) | 100000 | Video conferencing and |
|Interactive | | | Interactive gaming |
|---------------+---------+-------------+--------------------------|
|Multimedia |8 (AF31) | 011010 | Streaming video and |
|Streaming |9 (AF32) | 011100 | audio on demand |
| |10 (AF33)| 011110 | |
|---------------+---------+-------------+--------------------------|
|Broadcast Video|11 (CS3) | 011000 |Broadcast TV & live events|
|---------------+---------+-------------+--------------------------|
|Low Latency |12 (AF21)| 010010 |Client/server transactions|
|Data |13 (AF22)| 010100 |Web-based ordering |
| |14 (AF23)| 010110 | |
|---------------+---------+-------------+--------------------------|
|OAM |15 (CS2) | 010000 | Non-critical OAM&P |
|---------------+---------+-------------+--------------------------|
|High Throughput|16 (AF11)| 001010 | Store and forward |
|Data |17 (AF12)| 001100 | applications |
| |18 (AF13)| 001110 | |
|---------------+---------+-------------+--------------------------|
|Standard |19 (DF, | 000000 | Undifferentiated |
| | CS0) | | applications |
|---------------+---------+-------------+--------------------------|
|Low Priority |20 (CS1) | 001000 | Any flow that has no BW |
|Data | | | assurance |
------------------------------------------------------------------
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 13]
Internet Draft QoS-NSLP QSPEC Template December 2004
5.6.2 <Y.1541 QoS Class> Parameter [Y.1541]
Y.1541 QoS classes are defined as follows:
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
| Y.1541 |
| QoS Class |
+-+-+-+-+-+-+-+-+
Y.1541 QoS Class: 8 bits
Indicates the Y.1541 QoS Class. Values currently allowed are 0,
1, 2, 3, 4, 5.
Class 0:
Mean delay <= 100 ms, delay variation <= 50 ms, loss ratio <= 10-3.
Real-time, highly interactive applications, sensitive to jitter.
Application examples include VoIP, Video Teleconference.
Class 1:
Mean delay <= 400 ms, delay variation <= 50 ms, loss ratio <= 10-3.
Real-time, interactive applications, sensitive to jitter.
Application examples include VoIP, Video Teleconference.
Class 2:
Mean delay <= 100 ms, delay variation unspecified, loss ratio <=
10-3.
Highly interactive transaction data.
Application examples include signaling.
Class 3:
Mean delay <= 400 ms, delay variation unspecified, loss ratio <=
10-3.
Interactive transaction data.
Application examples include signaling.
Class 4:
Mean delay <= 1 sec, delay variation unspecified, loss ratio <= 10-3.
Low Loss Only applications.
Application examples include Short Transactions, Bulk Data, Video
Streaming.
Class 5:
Mean delay unspecified, delay variation unspecified, loss ratio
unspecified.
Unspecified applications.
Application examples include traditional applications of default IP
Networks.
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 14]
Internet Draft QoS-NSLP QSPEC Template December 2004
5.6.3 <DSTE Class Type> Parameter [DSTE]
DSTE class type is defined as follows:
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
| DSTE |
| Class Type |
+-+-+-+-+-+-+-+-+
DSTE Class Type: 8 bits
Indicates the DSTE class type. Values currently allowed are 0, 1,
2, 3, 4, 5, 6, 7.
5.7 Priority Parameters
5.7.1 <Preemption Priority> & <Defending Priority> Parameters
[RFC 3181]
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Preemption Priority | Defending Priority |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Preemption Priority: 16 bits (unsigned)
The priority of the new flow compared with the defending priority
of previously admitted flows. Higher values represent higher
priority.
Defending Priority: 16 bits (unsigned)
5.7.2 <Reservation Priority> Parameter [SIP-PRIORITY]
0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reservation | Reservation |
| Priority | Priority |
| Namespace | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
High priority flows, normal priority flows, and best-effort priority
flows can have access to resources depending on their {"Namespace",
"Reservation Priority"} combination as follows:
Reservation Priority Namespace: 8 bits
0 - dsn high priority
1 - drsn high priority
2 - q735 high priority
3 - ets high priority
4 - wps high priority
5 - normal priority
6 - best-effort priority
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 15]
Internet Draft QoS-NSLP QSPEC Template December 2004
Reservation Priority: 8 bits
Each namespace has a finite list of relative priority-values. Each
is listed here in the order of lowest priority to highest priority:
4 - dsn.routine
3 - dsn.priority
2 - dsn.immediate
1 - dsn.flash
0 - dsn.flash-override
5 - drsn.routine
4 - drsn.priority
3 - drsn.immediate
2 - drsn.flash
1 - drsn.flash-override
0 - drsn.flash-override-override
4 - q735.4
3 - q735.3
2 - q735.2
1 - q735.1
0 - q735.0
4 - ets.4
3 - ets.3
2 - ets.2
1 - ets.1
0 - ets.0
4 - wps.4
3 - wps.3
2 - wps.2
1 - wps.1
0 - wps.0
0 - normal.0
0 - best.effort.0
Note that additional work is needed to communicate these flow
priority values to bearer-level network elements
[VERTICAL-INTERFACE].
5.8 <QoS Available> Parameters
5.8.1 <Available Bandwidth> Parameter [RFC 2215]
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Path b/w estimate (32-bit IEEE floating point number) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Values of this parameter are measured in bytes per second. The
representation MUST be able to express values ranging from 1 byte per
second to 40 terabytes per second. For values of this parameter only
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 16]
Internet Draft QoS-NSLP QSPEC Template December 2004
valid non-negative floating point numbers are allowed. Negative
numbers (including "negative zero"), infinities, and NAN's are not
allowed.
A QNE MAY export a local value of zero for this parameter. A
network element or application receiving a composed value of zero for
this parameter must assume that the actual bandwidth available is
unknown.
5.8.2 <Min Latency> Parameter [RFC 2210, 2215]
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Minimum path latency (32-bit integer) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The composition rule for the <Min Latency> parameter is summation
with a clamp of (2**32 - 1) on the maximum value. The latencies are
reported in units of one microsecond. An individual QNE can advertise
a latency value between 1 and 2**28 (somewhat over two minutes) and
the total latency added across all QNEs can range as high as
(2**32)-2. If the sum of the different elements delays exceeds
(2**32)-2, the end-to-end advertised delay should be reported as
indeterminate. The distinguished value (2**32)-1 is taken to mean
indeterminate latency. A QNE which cannot accurately predict the
latency of packets it is processing should set its local parameter
to this value. Because the composition function limits the composed
sum to this value, receipt of this value at a network element or
application indicates that the true path latency is not known. This
may happen because one or more network elements could not supply a
value, or because the range of the composition calculation was
exceeded.
5.8.3 <Ctot> <Dtot> <Csum> <Dsum> Parameters [RFC 2210, 2212, 2215]
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| End-to-end composed value for C [Ctot] (32-bit integer) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| End-to-end composed value for D [Dtot] (32-bit integer) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Since-last-reshaping point composed C [Csum] (32-bit integer) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Since-last-reshaping point composed D [Dsum] (32-bit integer) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The error term C is measured in units of bytes. An individual QNE
can advertise a C value between 1 and 2**28 (a little over 250
megabytes) and the total added over all QNEs can range as high as
(2**32)-1. Should the sum of the different QNEs delay exceed
(2**32)-1, the end-to-end error term MUST be set to (2**32)-1. The
error term D is measured in units of one microsecond. An individual
QNE can advertise a delay value between 1 and 2**28 (somewhat over
two minutes) and the total delay added over all QNEs can range as
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 17]
Internet Draft QoS-NSLP QSPEC Template December 2004
high as (2**32)-1. Should the sum of the different QNEs delay
exceed (2**32)-1, the end-to-end delay MUST be set to (2**32)-1.
6. Security Considerations
The priority parameter raises possibilities for Theft of Service
Attacks because users could claim an emergency priority for their
flows without real need, thereby effectively preventing serious
emergency calls to get through. Several options exist for countering
such attacks, for example
- only some user groups (e.g. the police) are authorized to set the
emergency priority bit
- any user is authorized to employ the emergency priority bit for
particular destination addresses (e.g. police)
7. IANA Considerations
This section provides guidance to the Internet Assigned Numbers
Authority (IANA) regarding registration of values related to the
QSPEC template, in accordance with BCP 26 RFC 2434 [RFC2434].
[QoS-SIG] requires IANA to create a new registry for QoS Signaling
Policy Identifiers. The QoS Signaling Policy Identifier (QSP ID) is
a 32 bit value carried in a QSPEC object. The allocation policy for
new QSP IDs is TBD.
This document also defines 24 objects for the QSPEC Template, as
Detailed in Section 5. Values are to be assigned for them from the
GIMPS Object Type registry.
8. Acknowledgements
The authors would like to thank Robert Hancock, Sven van den
Bosch, Hannes Tschofenig, and Tom Phelan for their very helpful
suggestions.
9. Intellectual Property Considerations
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed
to pertain to the implementation or use of the technology described
in this document or the extent to which any license under such
rights might or might not be available; nor does it represent that
it has made any independent effort to identify any such rights.
Information on the procedures with respect to rights in RFC
documents can be found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use
of such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository
at http://www.ietf.org/ipr.
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 18]
Internet Draft QoS-NSLP QSPEC Template December 2004
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at ietf-
ipr@ietf.org.
10. Normative References
[DIFFSERV] S. Blake et. al., "An Architecture for Differentiated
Services", RFC 2475, December 1998.
[KEY] S. Bradner, "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997
[QoS-SIG] S. Van den Bosch et. al., "NSLP for Quality-of-Service
Signaling," work in progress.
[RFC2211] J. Wroclawski, "Specification of the Controlled-Load
Network Element Service", RFC 2211, Sept. 1997.
[RFC2212} Shenker, S., et. al., "Specification of Guaranteed Quality
of Service," September 1997.
[RFC2215] S. Shenker and J. Wroclawski, "General Characterization
Parameters for Integrated Service Network Elements", RFC 2215, Sept.
1997.
[RSVP] B. Braden et. al., "Resource ReSerVation Protocol (RSVP) --
Version 1 Functional Specification," RFC 2205, September 1997.
[RSVP-INTSERV] J. Wroclawski, "The Use of RSVP with IETF Integrated
Services", RFC 2210, September 1997.
11. Informative References
[DCLASS] Bernet Y., Format of the RSVP DCLASS Object, RFC 2996,
November 2000
[DIFFSERV-CLASS] Baker, F., et. al., "Configuration Guidelines
for DiffServ Service Classes," work in progress.
[DSTE] F. Le Faucheur et. al., Requirements for Support of
Differentiated Services-aware MPLS Traffic Engineering, RFC 3564,
July 2003
[INTSERV] B. Braden et. al., "Integrated Services in the Internet
Architecture: an Overview," RFC 1633, June 1994.
[INTSERV-QSP] C. Kappler, "A QoS Model for Signaling IntServ
Controlled-Load Service with NSIS," work in progress.
[NSIS-REQ] M. Brunner et. al., "Requirements for QoS Signaling
Protocols", work in progress.
[Q.2630] ITU-T Recommendation Q.2630.3: "AAL Type 2 Signaling
Protocol - Capability Set 3" Sep. 2003
[RMD-QSP] A. Bader, L. Westberg, G. Karagiannis, C. Kappler and T.
Phelan, " RMD-QSP: An NSIS QoS Signaling Policy model for Networks
Using Resource Management in Diffserv (RMD)," work in progress.
[SIP-PRIORITY] H. Schulzrinne, J. Polk, "Communications Resource
Priority for the Session Initiation Protocol(SIP)." work in
progress.
[VERTICAL-INTERFACE] M. Dolly, P. S. Tarapore, S. Sayers,
"Discussion on Associating of Control Signaling Messages with Media
Priority Levels," T1S1.7 & PRQC, October 2004.
[Y.1541] ITU-T Recommendation Y.1541, "Network Performance
Objectives for IP-Based Services," May 2002.
[Y.1541-QSP] J. Ash, et. al., "NSIS Network Service Layer Protocol
QoS Signaling Proof-of-Concept," work in progress.
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 19]
Internet Draft QoS-NSLP QSPEC Template December 2004
12. Authors' Addresses
Jerry Ash
AT&T
Room MT D5-2A01
200 Laurel Avenue
Middletown, NJ 07748, USA
Phone: +1-(732)-420-4578
Fax: +1-(732)-368-8659
Email: gash@att.com
Attila Bader
Traffic Lab
Ericsson Research
Ericsson Hungary Ltd.
Laborc u. 1 H-1037
Budapest Hungary
EMail: Attila.Bader@ericsson.com
Chuck Dvorak
AT&T
Room 2A37
180 Park Avenue, Building 2
Florham Park, NJ 07932
Phone: + 1 973-236-6700
Fax:+1 973-236-7453
E-mail: cdvorak@att.com
Yacine El Mghazli
Alcatel
Route de Nozay
91460 Marcoussis cedex
FRANCE
Phone: +33 1 69 63 41 87
Email: yacine.el_mghazli@alcatel.fr
Cornelia Kappler
Siemens AG
Siemensdamm 62
Berlin 13627
Germany
Email: cornelia.kappler@siemens.com
Georgios Karagiannis
University of Twente
P.O. BOX 217
7500 AE Enschede
The Netherlands
EMail: g.karagiannis@ewi.utwente.nl
Andrew McDonald
Siemens/Roke Manor Research
Roke Manor Research Ltd.
Romsey, Hants SO51 0ZN
UK
EMail: andrew.mcdonald@roke.co.uk
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 20]
Internet Draft QoS-NSLP QSPEC Template December 2004
Al Morton
AT&T
Room D3-3C06
200 S. Laurel Avenue
Middletown, NJ 07748
Phone: + 1 732 420-1571
Fax: +.1 732 368-1192
E-mail: acmorton@att.com
Percy Tarapore
AT&T
Room D1-33
200 S. Laurel Avenue
Middletown, NJ 07748
Phone: + 1 732 420-4172
E-mail: tarapore@.att.com
Lars Westberg
Ericsson Research
Torshamnsgatan 23
SE-164 80 Stockholm, Sweden
EMail: Lars.Westberg@ericsson.com
Appendix A: Example QSPECs
Note the mere definition of QSPECs is not sufficient for determining
how to signal for DiffServ and IntServ respectively. Rather, the
full QSP needs to be defined.
A.1 QSPEC for Admission Control for DiffServ
QSPEC for Diffserv QSP in general may be provided in future versions
of this draft. A QSPEC for a DiffServ QSP is included in [RMD-QSP].
A.2 QSPEC for IntServ Controlled Load Service
The QoS Model for IntServ Controlled Load is defined in [RFC2211].
The QSPEC can be derived from usage of RSVP to signal for this QoS
Model, as defined in [RSVP-INTSERV] and [RFC2215].
The QSPEC for IntServ Controlled Load is composed of the objects
<QoS Desired> and <QoS Available>, as well as <QoS Reserved>. Which
object is present in a particular QSPEC depends on the message
type (RESERVE, QUERY etc) in which the QSPEC travels. Details must
be provided in a corresponding QSP. Parameters in the QSPEC are as
follows:
<QoS Description> = <QoS Desired> <QoS Available> <QoS Reserved>
<QoS Desired> = <Token Bucket>
<QoS Available> = <non QSP hop> <QSP hops> <Available Bandwidth>
<Min Latency> <M>
<QoS Reserved> = <Token Bucket>
An IntServ over Diffserv QSPEC is
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 21]
Internet Draft QoS-NSLP QSPEC Template December 2004
<QoS Desired> = <Token Bucket>
<QoS Class> = <PHB Class>
<QoS Available> = <non QSP hop> <QSP hops> <Available Bandwidth>
<Min Latency> <M>
<QoS Reserved> = <Token Bucket>
Or a simple QSPEC for Diffserv requesting bandwidths for different
PHBs is
<QoS Desired> = <R>
<QoS class> = <PHB Class>
A.3 QSPEC for IntServ Guaranteed Services
The QoS Model is defined in [RFC 2212]. The required parameters to
achieve guarantied service with RSVP are specified in [RFC 2210] and
[RFC 2215].
The QSPEC for guarantied services is the following:
<QoS Description> = <QoS Desired> <QoS Available> <QoS Reserved>
<QoS Desired> = <Token Bucket>
This object contains token bucket parameters defined in [RFC 2210].
(equivalent to TSpec defined in RSVP).
<QoS Available> = <non QSP hop> <QSP hops> <Available Bw>
<Min Latency> <MTU> <Ctot> <Dtot> <Csum> <Dsum>
These parameters are defined in [RFC 2212] and [RFC 2215]. This
object is equivalent to AdSpec of RSVP.
<QoS Reserved> = <Token Bucket> <R> <S>
Requested Rate and Slack Term defined in [RFC 2212], equivalent to
RSpec of RSVP.
Note that the Guarantied Services QoS Model only works with receiver
initiated reservation signaling, because <R> and <S> are derived
from parameters contained in <QoS Available>, and may be updated on
the return paths.
Appendix B: Example of NSLP QSPEC Operation
This Appendix illustrates the operation and use of the QSPEC within
the NSLP. The example configuration looks like this:
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 22]
Internet Draft QoS-NSLP QSPEC Template December 2004
+----------+ /-------\ /--------\ /--------\
| Laptop | | Home | | Cable | | Diffserv |
| Computer |-----| Network |-----| Network |-----| Network |----+
+----------+ | No QSP | | DQOS QSP | | RMD QSP | |
\-------/ \--------/ \--------/ |
|
+-----------------------------------------------+
|
| /--------\ +----------+
| | "X"G | | Handheld |
+---| Wireless |-----| Device |
| XG QSP | +----------+
\--------/
In this configuration, a laptop computer and a handheld wireless
device are the end points for some application that has QoS
requirements. Assume that the two end points are stationary during
the application session. For this session, the laptop computer is
connected to a home network that has no QoS support. The home
network is connected to a CableLabs-type cable access network with
DQOS support. That network is connected to a Diffserv core network
that uses RMD. On the other side of the Diffserv core is a wireless
access network built on generation "X" technology with QoS support as
defined by generation "X". And finally the handheld endpoint is
connected to the wireless access network.
We assume that the Laptop is the QNI and Handheld Device is the QNR,
and the QNEs in between all implement NSLP/QSPEC. There are two ways
to signal the flow:
Option A. The Laptop-QNI discovers which QSPs are supported on the
data path by sending a QUERY message along the data path. The
RESPONSE message indicates the preferred QSP supported in the domains
along the path. The Laptop-QNI then knows that the RMD-QSP and
XG-QSP are in the path and stacks the appropriate generic parameters
needed by the RMD-QSPEC and XG-QSPEC in the RESERVE message. It can
also stack the QSP-specific parameters need by the XG-QSP in a second
QSPEC to be used only within the XG-QSP domain.
Option B. The QNI creates a reservation request and includes the
initiator QSPEC with the generic parameters. Each QNE extracts the
generic parameters it needs to implement the QSP within the domain.
For example, in the RMD domain the <R> parameter is extracted, or
alternatively it is translated based on <Token Bucket> parameters.
On the other hand, at the XG network ingress, a 'Local QoS Model'
and Local-QSPEC corresponding to the XG-QSP are generated according
to the procedures described in Section 4.5 of [QoS-SIG]. That is,
the XG-QNI must map between the two resource descriptions and
construct the appropriate second 'local' QSPEC object to be pushed on
top. This top QSPEC becomes the current QSPEC used within the XG-QSP
domain, that is, the translated QSPEC becomes the first QSPEC, and
the original initiator QSPEC is second. This saves the XG-QNEs the
trouble of re-translating the initiator QSPEC. At the egress edge of
the XG-QSP domain, the translated QSPEC is popped, and the initiator
QSPEC returns to the number 1 position. (Note that stand-along QNEs
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 23]
Internet Draft QoS-NSLP QSPEC Template December 2004
simply forward the initiator QSPEC, and the translated QSPEC (if any)
is only used within the QNE. Eventually the RESERVE request arrives
at the QNR.
Appendix C: QoS Models, QoS Signaling Policies and QSPECs
This Appendix gives a description of QoS Models, QSPs and QSPECs and
explains what is the relation between them. Once these descriptions
are contained in a stable form in the appropriate IDs this Appendix
will be removed.
QoS NSLP is a generic QoS Signaling Protocol that can signal for
many QoS Models. A QoS Model is a particular QoS provisioning method
or QoS architecture such a IntServ Controlled Load, Guaranteed
Service. DiffServ, or RMD for DiffServ.
The definition of the QoS Model is independent from the definition
of QoS NSLP. Existing QoS Models do not specify how to use QoS NSLP
to signal for them. Therefore, we need to define the QoS Signaling
Policy (QSP), specific to each QoS Model, which describes the QoS
Model specific signaling functions. QoS Signaling Policy are defined
for "Resource Management in DiffServ" in [RMD-QSP] and for IntServ
Controlled Load in [INTSERV-QSP].
A QSP should include the following information:
- Role of QNEs in this QoS Model:
E.g. location, frequency, statefulness...
- QSPEC Definition:
A QSP should specify the QSPEC, including generic and optional
parameters. Furthermore it needs to explain how generic parameters
not used in this QSP are mapped onto parameters defined therein.
- Message Format
Objects to be carried in RESERVE, QUERY RESPONSE and NOTIFY
- State Management
It describes how QSPEC info is treated and interpreted in the
Resource Management Function and QSP specific processing. E.g.
admission control, scheduling, policy control, QoS parameter
accumulation (e.g. delay)?
- Operation and Sequence of Events
Usage of QoS-NSLP messages to signal the QoS Model.
Appendix D: Mapping of QoS Desired, QoS Available and QoS Reserved of
NSIS onto AdSpec, TSpec and RSpec of RSVP IntServ
The union of QoS Desired, QoS Available and QoS Reserved can provide
all functionality of the objects specified in RSVP IntServ, however
it is difficult to provide an exact mapping.
In RSVP, the Sender TSpec specifies the traffic an application is
going to send (e.g. token bucket). The AdSpec can collect path
characteristics (e.g. delay). Both are issued by the sender. The
receiver sends the FlowSpec which includes a Receiver TSpec
describing the resources reserved using the same parameters as the
Sender TSpec, as well as a RSpec which provides additional IntServ
QoS Model specific parameters, e.g. Rate and Slack.
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 24]
Internet Draft QoS-NSLP QSPEC Template December 2004
The RSVP TSpec/AdSpec/RSpec seem quite tailored to
receiver-initiated signaling employed by RSVP, and the IntServ
QoS Model. E.g. to the knowledge of the authors it is not possible
for the sender to specify a desired maximum delay except
implicitly and mutably by seeding the AdSpec accordingly. Likewise,
the RSpec is only meaningfully sent in the receiver-issued RSVP
RESERVE message. For this reason our debate at this point lead us
to a slightly different mapping of necessary functionality to
objects, which should result in more flexible signaling models.
Full Copyright Statement
Copyright (C) The Internet Society (2004). This document is subject
to the rights, licenses and restrictions contained in BCP 78 and
except as set forth therein, the authors retain all their rights.
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Disclaimer of Validity
This document and the information contained herein are provided on
an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE
REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE
INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Ash, et. al. <draft-ietf-nsis-qspec-02.txt> [Page 25]
| PAFTECH AB 2003-2026 | 2026-04-22 11:48:44 |