Network Working Group Jerry Ash Internet Draft AT&T 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. [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 Parameter . . . . . . . . . . . . . . . . . . . 11 5.2 Parameter . . . . . . . . . . . . . . . 11 5.3 & Parameters . . . . . . . . . . . 11 5.4 & Parameters . . . . . . . . . . . . . . . . . . . 12 5.5 Parameters . . . . . . . . . . . . . . . . . 12 5.6 Parameters . . . . . . . . . . . . . . . . . . 12 5.6.1 Parameter . . . . . . . . . . . . . . . . . . 12 5.6.2 Parameter . . . . . . . . . . . . . . 14 5.6.3 Parameter . . . . . . . . . . . . . . . 15 5.7 Parameters . . . . . . . . . . . . . . . . . . . 15 5.7.1 & Parameters . 15 5.7.2 Parameter . . . . . . . . . . . . 15 5.8 Parameters . . . . . . . . . . . . . . . . 16 5.8.1 Parameters . . . . . . . . . . . . 16 5.8.2 Parameter . . . . . . . . . . . . . . . . . 17 5.8.3 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. [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. [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. [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. [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 = 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. [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: This read-write hop count field limits the maximum number of QoS-NSLP hops. 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: 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: = 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 should always travel together with and/or . 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 object to probe the available resources on the path. The same QUERY may carry a 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. [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 = Generic-Mandatory Parameters: Generic-Optional Parameters: 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. = link bandwidth flow is entitled to [RFC 2212] =

[RFC 2210] = 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]. = 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. 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. 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 parameters. These are read-only parameters. 4.2.2 = Generic-Mandatory Parameters: Ash, et. al. [Page 8] Internet Draft QoS-NSLP QSPEC Template December 2004 Generic-Optional Parameters: 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]. 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 are unreliable. 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 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 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 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 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. [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 says currently, the QNE must adapt it accordingly. Hence when the message arrives at the recipient of the message, 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 = These parameters describe the QoS reserved by the QNEs down the path. , , and are defined above. Generic-Optional Parameter: = 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 = 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 and/or a object seeded to the desired QoS value. The minimum acceptable QoS value is coded in the object. As the message travels towards the QNR, is updated by QNEs on the path. If its value drops below the value of the reservation failed and can be aborted. When this method is employed the QNR SHOULD signal back to the QNI the value attained in the end, because the reservation Ash, et. al. [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 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 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 & 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. [Page 11] Internet Draft QoS-NSLP QSPEC Template December 2004 5.4 & 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 . 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 Parameters [RFC 2215] The 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 Parameters 5.6.1 Parameter [DIFFSERV-CLASS] Encoding of the DiffServ per-hop-behavior (PHB) class if as follows: Ash, et. al. [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. [Page 13] Internet Draft QoS-NSLP QSPEC Template December 2004 5.6.2 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. [Page 14] Internet Draft QoS-NSLP QSPEC Template December 2004 5.6.3 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 & 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 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. [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 Parameters 5.8.1 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. [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 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 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 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. [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. [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. [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. [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 and , as well as . 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: = = = = An IntServ over Diffserv QSPEC is Ash, et. al. [Page 21] Internet Draft QoS-NSLP QSPEC Template December 2004 = = = = Or a simple QSPEC for Diffserv requesting bandwidths for different PHBs is = = 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: = = This object contains token bucket parameters defined in [RFC 2210]. (equivalent to TSpec defined in RSVP). = These parameters are defined in [RFC 2212] and [RFC 2215]. This object is equivalent to AdSpec of RSVP. = 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 and are derived from parameters contained in , 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. [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 parameter is extracted, or alternatively it is translated based on 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. [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. [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. [Page 25]