IETF Internet Draft NSIS Working Group Jerry Ash Internet Draft AT&T Attila Bader Expiration Date: August 2005 Ericsson Cornelia Kappler Siemens AG February 2005 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 (2005). All Rights Reserved. Abstract The QoS NSLP protocol is used to signal QoS reservations and is independent of a specific QoS model (QOSM) such as IntServ or DiffServ. Rather, all information specific to a QOSM is encapsulated in a separate object, the QSPEC. This draft defines a template for the QSPEC, which contains both the QoS description and QSPEC control information. The QSPEC format is defined, as are a number of QSPEC parameters. The QSPEC parameters provide a common language to be re-used in several QOSMs, which are derived initially from the IntServ and DiffServ QOSMs. To a certain extent QSPEC parameters ensure interoperability of QOSMs. Optional QSPEC parameters aim to ensure the extensibility of QoS NSLP to other QOSMs in the future. The node initiating the NSIS signaling adds an Initiator QSPEC that must not be removed, thereby ensuring the intention of the NSIS initiator is preserved along the signaling path. Ash, et. al. [Page 1] Internet Draft QoS-NSLP QSPEC Template February 2005 Table of Contents 1. Conventions Used in This Document . . . . . . . . . . . . . 3 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . 4 4. QSPEC Parameters, Processing, & Extensibility . . . . . . . 5 4.1 QSPEC Parameters . . . . . . . . . . . . . . . . . . . . 5 4.2 QSPEC Processing . . . . . . . . . . . . . . . . . . . . 5 4.3 Example of NSLP QSPEC Operation . . . . . . . . . . . . 6 4.4 Treatment of Mandatory & Optional QSPEC Parameters . . . 8 4.5 QSPEC Extensibility. . . . . . . . . . . . . . . . . . . 8 5. QSPEC Format Overview . . . . . . . . . . . . . . . . . . . 9 5.1 QSPEC Control Information . . . . . . . . . . . . . . . 9 5.2 QoS Description . . . . . . . . . . . . . . . . . . . . 10 5.2.1 QoS Desired . . . . . . . . . . . . . . . . . . . 10 5.2.2 QoS Available . . . . . . . . . . . . . . . . . . 11 5.2.3 QoS Reserved . . . . . . . . . . . . . . . . . . . 13 5.2.4 Minimum QoS . . . . . . . . . . . . . . . . . . . 13 6. QSPEC Functional Specification . . . . . . . . . . . . . . . 13 6.1 General QSPEC Formats . . . . . . . . . . . . . . . . . 13 6.2 Parameter . . . . . . . . . . . . . . . 14 6.3 & Parameters . . . . . . . . 14 6.4 Parameter . . . . . . . . . . . . . . 15 6.5 & Parameters . . . . . . . . . . . . . . 15 6.6 Parameters . . . . . . . . . . . . . . . 15 6.7 Parameters . . . . . . . . . . . . . . . . . 16 6.7.1 Parameter . . . . . . . . . . . . . . 16 6.7.2 Parameter . . . . . . . . . . . 16 6.7.3 Parameter . . . . . . . . . . . 17 6.8 Parameters . . . . . . . . . . . . . . . . . 17 6.8.1 & Parameters . . . . . . . . . . . . . . . . . . . . 17 6.8.2 Parameter . . . . . . . . . 18 6.9 Parameters . . . . . . . . . . . . . . . 19 6.9.1 Parameter . . . . . . . . . . . . . 19 6.9.2 Parameter . . . . . . . . . . . . . 19 6.9.3 Parameter . . . . . . . . . . . . . . . 20 6.9.4 Parameters . . . . . . 20 7. Security Considerations . . . . . . . . . . . . . . . . . . 21 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . 21 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 21 10. Intellectual Property Considerations . . . . . . . . . . . 21 11. Normative References . . . . . . . . . . . . . . . . . . . 22 12. Informative References . . . . . . . . . . . . . . . . . . 22 13. Authors' Addresses . . . . . . . . . . . . . . . . . . . . 23 Appendix A Example QSPECs . . . . . . . . . . . . . . . . . . . 24 A.1 QSPEC for Admission Control for DiffServ . . . . . . . . . 24 A.2 QSPEC for IntServ Controlled Load Service . . . . . . . . . 24 A.3 QSPEC for IntServ Guaranteed Services . . . . . . . . . . . 25 Appendix B QoS Models and QSPECs . . . . . . . . . . . . . . . 25 Appendix C Mapping of QoS Desired, QoS Available, and QoS Reserved of NSIS onto AdSpec, TSpec, and RSpec of RSVP IntServ. 26 Full Copyright Notice . . . . . . . . . . . . . . . . . . . . . 27 Disclaimer of Validity . . . . . . . . . . . . . . . . . . . . 27 Ash, et. al. [Page 2] Internet Draft QoS-NSLP QSPEC Template February 2005 1. Conventions Used in This Document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. 2. 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 [RFC2205], and meets the requirements of [RFC3726]. A QoS-enabled domain supports a particular QoS model (QOSM), which is a methodology to achieve QoS for a traffic flow that incorporates QoS provisioning methods and a QoS architecture. A QOSM defines the behavior of the resource management function (RMF), including inputs and outputs, and how QSPEC information is interpreted on traffic description, resources required, resources available, and control information required by the RMF. A QOSM also specifies a set of mandatory and optional QSPEC parameters that describe the QoS and how resources will be managed by the RMF. QoS NSLP can support signaling for different QOSMs, such as for IntServ, DiffServ admission control, and those specified in [Y.1541-QOSM, INTSERV-QOSM, RMD-QOSM]. For more information on QOSMs see Appendix B. One of the major differences between RSVP and QoS-NSLP is that QoS-NSLP supports signaling for different QOSMs along the data path, all with one signaling message. For example, the data path may start in a domain supporting DiffServ and end in a domain supporting Y.1541. However, because some typical QoS parameters are standardized and can be reused in different QOSMs, some degree of interoperability between QOSMs exists. The QSPEC object travels in QoS-NSLP messages and is opaque to the QoS NSLP. The content of the QSPEC object is QOSM specific. Since QoS-NSLP signaling operation can be different for different QOSMs, the QSPEC contains two kinds of information, QSPEC control information and QoS description. QSPEC control information contains parameters that governs the RMF. An example of QSPEC control information is how the excess traffic is treated in the RMF queuing functions. The QoS description is composed of objects loosely 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. Ash, et. al. [Page 3] Internet Draft QoS-NSLP QSPEC Template February 2005 3. Terminology Mandatory QSPEC parameter: QSPEC parameter that a QNI SHOULD populate if applicable to the underlying QOSM and a QNE MUST interpret, if populated. Minimum QoS: Minimum QoS is a functionality that MAY be supported by any QNE. 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, QNEs are going to decrease the reservation until the minimum QoS is hit. Optional QSPEC parameter: QSPEC parameter that a QNI SHOULD populate if applicable to the underlying QOSM, and a QNE SHOULD interpret if populated and applicable to the QOSM(s) supported by the QNE. (A QNE MAY ignore if it does not support a QOSM needing the optional QSPEC parameter). QNE: QoS NSIS Entity, a node supporting QoS NSLP. QNI: QoS NSIS Initiator, a node initiating QoS NSLP signaling. QNR: QoS NSIS Receiver, a node terminating QoS NSLP signaling. QoS Description: Describes the actual QoS in objects QoS Desired, QoS Available, QoS Reserved, and Minimum QoS. These objects are input or output parameters of the RMF. In a valid QSPEC, at least one object of the type QoS Desired, QoS Available or QoS Reserved MUST be included. 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 for which the sender requests reservation. QoS Model (QOSM): A methodology to achieve QoS for a traffic flow, e.g., IntServ Controlled Load. Specifies a set of mandatory and optional QSPEC parameters that describe the QoS and how resources will be managed by the RMF. QoS Reserved: Object containing parameters describing the reserved resources and related QoS parameters, for example, bandwidth. QSPEC Control Information: Control information that is specific to a QSPEC, and contains parameters that govern the RMF. QSPEC: QSPEC is the object of QoS-NSLP containing all QOSM specific information. QSPEC parameter: Any parameter appearing in a QSPEC; includes both QoS description and QSPEC control information parameters, for example, bandwidth, token bucket, and excess treatment parameters. Ash, et. al. [Page 4] Internet Draft QoS-NSLP QSPEC Template February 2005 QSPEC object: Main building blocks of QoS Description containing a parameter set that is input or output of an RMF operation. Resource Management Function (RMF): Functions that are related to resource management, specific to a QOSM. It processes the QoS description parameters and QSPEC control parameters. 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. 4. QSPEC Parameters, Processing, & Extensibility 4.1 QSPEC Parameters The definition of a QOSM includes the specification of how the requested QoS resources will be described and how they will be managed by the RMF. For this purpose, the QOSM specifies a set of QSPEC parameters that describe the QoS and QoS resource control in the RMF. A given QOSM defines which of the mandatory and optional QSPEC parameters it uses, and it MAY define additional optional QSPEC parameters. Mandatory and optional QSPEC parameters provide a common language for QOSM developers to build their QSPECs and are likely to be re-used in several QOSMs. Mandatory and optional QSPEC parameters are defined in this document, and additional optional QSPEC parameters can be defined in separate documents. Specification of additional optional QSPEC parameters requires standards action, as defined in Section 4.5. 4.2 QSPEC Processing The QSPEC is opaque to the QoS-NSLP processing. The QSPEC control information and the QoS description are interpreted and MAY be modified by the RMF in a QNE (see description in [QoS-SIG]). A QoS-enabled domain supports a particular QOSM, e.g. DiffServ. If this domain supports QoS-NSLP signaling, its QNEs MUST support the DiffServ QOSM. The QNEs MAY also support additional QOSMs. A QoS NSLP message can contains a stack of 1+n QSPECs. The first on the stack is the Initiator QSPEC. This is a QSPEC provided by the QNI, which travels end-to-end, and therefore the stack always has at least depth 1. QSPEC parameters MUST NOT be deleted from or added to the Initiator QSPEC. In addition, the stack MAY contain n Local QSPECs stacked on top of the Initiator QSPEC, where n is the level of nested QOSM regions. In most cases, we expect the QSPEC stack to be no deeper than 2. A QNE only considers the topmost QSPEC. At the ingress edge of a local QoS domain, a Local QSPEC MAY be pushed on the stack in order to describe the requested resources in a domain-specific manner. Also, the Local QSPECs are popped from the stack at the egress edge of the local QoS domain. Ash, et. al. [Page 5] Internet Draft QoS-NSLP QSPEC Template February 2005 This draft provides a template for the QSPEC, which is needed in order to help defining individual QOSMs and in order to promote interoperability between QOSMs. Figure 1 illustrates how the QSPEC is composed of QSPEC control information and QoS description. QoS description in turn is composed of up to four objects (not all of them need to be present), namely QoS desired, QoS available, QoS reserved and Minimum QoS. Each of these objects, as well as QSPEC control information, consists of a number of mandatory and optional QSPEC parameters. +-----------------------+----------------------------------------+ | QSPEC control info | QoS description | +-----------------------+----------------------------------------+ \________________ ______________________/ V +----------+-----------+----------+-------+ |QoS Desir.|QoS Avail. |QoS Rsrv. |Min QoS| +----------+-----------+----------+-------+ \__________ ___________/\_____ ____/\___ ______/\___ _____/\__ ___/ V V V V V +-------------+... +-------------+... |QSPEC para. 1| |QSPEC para. n| +-------------+... +-------------+... Figure 1: Structure of the QSPEC The Initiator QSPEC additionally MAY contain optional QSPEC parameters in each object and in the QSPEC control information, as illustrated in Figure 2. +---------------+------------------------------+------------------------ -+ |QSPEC Object ID| Mandatory QSPEC Parameters |Optional QSPEC Parameters| +---------------+------------------------------+------------------------ -+ Figure 2: Structure of Initiator & Local QSPEC Objects & Control Information 4.3 Example of NSLP/QSPEC Operation This Section illustrates the operation and use of the QSPEC within the NSLP. The example configuration in shown in Figure 3. Ash, et. al. [Page 6] Internet Draft QoS-NSLP QSPEC Template February 2005 +----------+ /-------\ /--------\ /--------\ | Laptop | | Home | | Cable | | Diffserv | | Computer |-----| Network |-----| Network |-----| Network |----+ +----------+ | No QOSM | |DQOS QOSM | | RMD QOSM | | \-------/ \--------/ \--------/ | | +-----------------------------------------------+ | | /--------\ +----------+ | | "X"G | | Handheld | +---| Wireless |-----| Device | | XG QOSM | +----------+ \--------/ Figure 3: Example Configuration to Illustrate NSLP/QSPEC Operation 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 dynamic QoS (DQOS) support, such as specified in the 'CMS to CMS Signaling Specification' [CMSS] for cable access networks. That network is connected to a Diffserv core network that uses the RMD QOSM. 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. The QNI will populate an Initiator QSPEC to achieve the QoS desired on the path. There are two cases to consider: Case 1) The QNI knows, either by discovery or configuration, the QOSMs supported in the downstream domains, and populates the appropriate mandatory and optional QSPEC parameters to achieve the QNI's desired QoS. Case 2) The QNI does not know which QOSMs are supported in the downstream domains, and populates appropriate mandatory and optional QSPEC parameters so that downstream QNEs can interpret the parameters to achieve the QNI's desired QoS. In case 1, the Laptop-QNI discovers which QOSMs are supported on the data path by sending a QUERY message along the data path. The RESPONSE message indicates the preferred QOSM supported in the domains along the path. The Laptop-QNI then knows that the RMD-QOSM and XG-QOSM are in the path and populates the appropriate mandatory and optional QSPEC parameters needed by the RMD-QSPEC and XG-QSPEC in the Initiator QSPEC sent in the RESERVE message. In case 2, the QNI populates mandatory and optional QSPEC parameters to ensure correct treatment of its traffic in domains down the path. Since the QNI does not know the QOSM used in downstream domains, it Ash, et. al. [Page 7] Internet Draft QoS-NSLP QSPEC Template February 2005 includes values for all mandatory and optional QSPEC parameters it cares about. For example, if the QNI wants to achieve IntServ-like QoS guarantees, it would include parameters for IntServ Guaranteed Service. Since these parameters give a very precise description of what is desired, QNEs can do their best to satisfy the request. If the QNI thinks DiffServ priority treatment would be sufficient, it just includes the appropriate DiffServ parameters, for example, it identifies the EF PHB in the parameters. In both cases, each QNE on the path reads and interprets the parameters in the Initiator QSPEC that it needs to implement the QOSM within its domain. For example, at the RMD and XG network ingress, a Local QSPEC corresponding to the RMD-QOSM and XG-QOSM are generated, respectively, according to the procedures described in Section 4.5 of [QoS-SIG]. That is, the RMD-QNI and XG-QNI must map the mandatory and optional QSPEC parameters contained in the Initiator QSPEC into the appropriate Local QSPEC objects to be pushed on top of the Initiator QSPEC within the RMD and XG domains, respectively. For example, in the RMD domain the parameter is read if available from the Initiator QSPEC, or alternatively it interprets the needed bandwidth parameter based on parameters in the Initiator QSPEC. This top Local QSPEC becomes the current QSPEC used within the RMD and XG domain, that is, the translated Initiator QSPEC becomes the first (Local) QSPEC, and the Initiator QSPEC is second. This saves the QNEs within the RMD and XG domains the trouble of re-translating the Initiator QSPEC. At the egress edge of the RMD and XG domains, the translated QSPEC is popped, and the Initiator QSPEC returns to the number one position. Eventually the RESERVE request arrives at the QNR. 4.4 Treatment of QSPEC Parameters Mandatory and optional QSPEC parameters are defined in this document and are applicable to a number of QOSMs. Mandatory QSPEC parameters are treated as follows: o A QNI SHOULD populate mandatory QSPEC parameters if applicable to the underlying QOSM. o QNEs MUST interpret mandatory QSPEC parameters, if populated. Optional QSPEC parameters are treated as follows: o A QNI SHOULD populate optional QSPEC parameters if applicable to the underlying QOSM. o QNEs SHOULD interpret optional QSPEC parameters, if populated and applicable to the QOSM(s) supported by the QNE. (A QNE MAY ignore if it does not support a QOSM needing the optional QSPEC parameter). 4.5 QSPEC Extensibility Additional optional QSPEC parameters MAY need to be defined in the future. Additional optional QSPEC parameters are defined in separate Informational documents specific to a given QOSM. Ash, et. al. [Page 8] Internet Draft QoS-NSLP QSPEC Template February 2005 5. 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, whereas read-only objects are fixed by the QNI and/or QNR. An example of a read-write object is , which is updated by intermediate QNEs. An example of a read-only object is as sent by the QNI. Note that all QSPEC parameters defined in the following Sections are mandatory QSPEC parameters unless specifically designated as optional QSPEC parameters. 5.1. QSPEC Control Information QSPEC control information is used for signaling QOSM RMF functions not defined in QoS-NSLP. It enables building new RMF functions required by a QOSM within a QoS-NSLP signaling framework, see for example [RMD-QOSM] and [Y.1541-QOSM]. = This is a read-write object. 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 support QoS-NSLP/QSPEC at all. If this bit is set, the values of all other parameters in the are unreliable. parameter indicates the number of QoS NSLP peers along the path the QNE MUST support and characterize the service in conformance with the relevant QoS-NSLP/QSPEC 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 QoS-NSLP/QSPEC-aware hop. This quantity, when composed from the QNI to QNR, informs the QNR (or QNI in a RESPONSE message) of the number of QoS-NSLP/QSPEC-aware QNEs traversed along the path. In a local QSPEC, and refer to the NSLP nodes of the local QOSM. parameter limits the maximum number of QoS-NSLP hops. If is reached, the NSLP message SHOULD be terminated. 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. Ash, et. al. [Page 9] Internet Draft QoS-NSLP QSPEC Template February 2005 5.2 QoS Description The QoS Description is broken down into the following objects: = Of these objects, QoS desired, QoS available and QoS reserved MUST be supported by QNEs. Minimum QoS MAY be supported. 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 QNI 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. A QNI could send a RESERVE with containing a particular parameter, and at the same time include a object for querying availability of this same parameter. If cannot be reserved, the QNR can use the information collected in along the path to signal back to the QNI a more promising value of . The details of such message exchanges are defined in [QoS-Sig]. The QoS NSLP and particularly the QOSMs prescribe how the objects in QSPECs are interpreted and used, and therefore MAY restrict this freedom. 5.2.1 = These parameters describe the resources the QNI desires to reserve and hence this is a read-only object. includes a description of the traffic the QNI is going to inject into the network. = = link bandwidth needed by flow [RFC 2212, RFC 2215] =

[RFC 2210] = An application MAY like to reserve resources for packets with a particular QoS class, e.g. a DiffServ per-hop behavior (PHB) [RFC2475], or DiffServ-enabled MPLS traffic engineering (DSTE) class type [RFC3564]. Ash, et. al. [Page 10] Internet Draft QoS-NSLP QSPEC Template February 2005 = 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. 5.2.2 = , , , , , , and are optional QSPEC parameters. These parameters describe the resources currently available on the path and hence the object is read-write. Each QNE MUST inspect this object, and 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. The parameters are defined in [RFC 2210, 2212, 2215]. The parameters provide information, for example, 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 Ash, et. al. [Page 11] Internet Draft QoS-NSLP QSPEC Template February 2005 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 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. The parameter accumulates the jitter of the packet forwarding process associated with each QNE, where the jitter is defined to be the nominal jitter added by each QNE. IP packet jitter, or delay variation, is defined in RFC 3393 [RFC3393], Section 4.6 (Type-P-One-way-peak-to-peak-ipdv), where the suggested evaluation interval is 1 minute. Note that the method to estimate peak-to-peak IP delay variation without active measurements requires more study. This jitter results from packet processing limitations, and includes any variable queuing delay which may be present. Each QNE MUST add the jitter of its outgoing link, which includes the QNR adding the associated jitter for the egress link. Furthermore, the QNI MUST add the jitter of the ingress link. The composition rule for the parameter is summation of a large percentage of the peak-to-peak variation with a clamp on the maximum value (note that the methods of accumulation and estimation of nominal QNE jitter is under study). This quantity, when composed end-to-end, informs the QNR (or QNI in a RESPONSE message) of the nominal packet jitter along the path from QNI to QNR. The purpose of this parameter is to provide a nominal path jitter for use with services that provide estimates or bounds on additional path delay [RFC 2212]. Together with the and the queuing delay bound, this parameter gives the application knowledge of the typical packet delivery delay variation. The parameter accumulates the bit error rate (BER) of the packet forwarding process associated with each QNE, where the BER is defined to be the smallest possible BER added by each QNE. Each QNE MUST add the BER of its outgoing link, which includes the QNR adding the associated BER for the egress link. Furthermore, the QNI MUST add the BER of the ingress link. The composition rule for the parameter is summation with a clamp on the maximum value (this assumes sufficiently low BER values such that summation error is not significant). This quantity, when composed end-to-end, informs the QNR (or QNI in a RESPONSE message) of the minimal packet BER along the path from QNI to QNR. As with , the method to estimate requires more study. , , , : 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 Ash, et. al. [Page 12] Internet Draft QoS-NSLP QSPEC Template February 2005 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 ( and ) and the resulting values are then provided to the QNR (or QNI in a RESPONSE message). and are the sums of the parameters C and D between the last reshaping point and the current reshaping point. 5.2.3 = These parameters describe the QoS reserved by the QNEs down the path, and hence the object is read-write. , and are defined above. = slack term: difference between desired delay and delay obtained by using bandwidth reservation (used to reduce resource reservation for flow) [RFC 2212]. 5.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 a 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 MAY be 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 MAY need to be adapted accordingly. Future versions of this document will describe how can be used by the QNI to send a discrete set of desired parameters. 6. QSPEC Functional Specification This Section defines the encodings of the QSPEC parameters and QSPEC control information defined in Section 4. We first give the general QSPEC formats and then the formats of the QSPEC objects. 6.1 General QSPEC Formats: Note: This section is in a first draft state and further work is needed to define exact formats of objects. Ash, et. al. [Page 13] Internet Draft QoS-NSLP QSPEC Template February 2005 Type: QSPEC Length: Variable Value: This object contains a 2 byte QOSM ID and variable length QSPEC information, which is QOSM specific. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | QOSM ID | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Object ID | Parameter ID | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ // Parameter Values // +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Object ID | Parameter ID | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ // Parameter Values // +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ .... Object ID: 0: control information 1: QoS Desired 2: QoS Available 3: QoS Reserved 4: Min QoS 6.2 & Parameters [RFC 2210, 2215] 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | NON NSLP Hop | NSLP Hops | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ NON NSLP Hop: 8 bits This field is set to 1 if a non NSLP-aware QNE is encountered on the path from the QNI to the QNR. NSLP Hops: 8 bits Indicates the number of NSLP hops between the QNI and QNR. Values of the composed parameter will range from 1 to 255, limited by the bound specified by the parameter. 6.3 Parameter 0 1 2 3 4 5 6 7 +-+-+-+-+-+-+-+-+ | Max NSLP Hops | +-+-+-+-+-+-+-+-+ Max NSLP Hops: 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. The default value of is 255. Ash, et. al. [Page 14] Internet Draft QoS-NSLP QSPEC Template February 2005 6.4 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. 6.5 & Parameters [RFC 2212, RFC 2215] The parameter 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 . can be represented using single-precision IEEE floating point. 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 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. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Bandwidth (32-bit IEEE floating point number) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Slack Term [S] (32-bit integer) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Slack term S MUST be nonnegative and is measured in microseconds. The Slack term, S, can be represented as a 32-bit integer. Its value can range from 0 to (2**32)-1 microseconds. 6.6 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). Ash, et. al. [Page 15] Internet Draft QoS-NSLP QSPEC Template February 2005 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 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. 6.7 Parameters 6.7.1 Parameter [RFC 3170] As prescribed in RFC 3170, the encoding for a single PHB is the recommended DSCP value for that PHB, left-justified in the 16 bit field, with bits 6 through 15 set to zero. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | DSCP | 0 0 0 0 0 0 0 0 0 0 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ The registries needed to use RFC 3140 already exist, see [DSCP- REGISTRY, PHBID-CODES-REGISTRY]. Hence, no new registry needs to be created for this purpose. 6.7.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. Ash, et. al. [Page 16] Internet Draft QoS-NSLP QSPEC Template February 2005 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. 6.7.3 Parameter [RFC3564] 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. 6.8 Priority Parameters 6.8.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. Ash, et. al. [Page 17] Internet Draft QoS-NSLP QSPEC Template February 2005 Defending Priority: 16 bits (unsigned) 6.8.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 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 Ash, et. al. [Page 18] Internet Draft QoS-NSLP QSPEC Template February 2005 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]. 6.9 Parameters 6.9.1 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 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 that 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. 6.9.2 Parameter 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 Jitter (32-bit integer) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The composition rule for the parameter is summation with a clamp of (2**32 - 1) on the maximum value. The jitters are reported in units of one microsecond. An individual QNE can advertise a jitter value between 1 and 2**28 (somewhat over two minutes) and the total jitter 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 jitter SHOULD be reported as Ash, et. al. [Page 19] Internet Draft QoS-NSLP QSPEC Template February 2005 indeterminate. The distinguished value (2**32)-1 is taken to mean indeterminate jitter. A QNE which cannot accurately predict the jitter 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 jitter 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. 6.9.3 Parameter 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 Bit Error Rate (32-bit integer) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The composition rule for the parameter is summation with a clamp of 10^-2 on the maximum value. The BERs are reported in units of 10^-11. An individual QNE can advertise a BER value between 1 and 2**28 and the total BER 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 BER SHOULD be reported as indeterminate. The distinguished value (2**32)-1 is taken to mean indeterminate BER. A QNE which cannot accurately predict the BER 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 BER 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. 6.9.4 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 high as (2**32)-1. Should the sum of the different QNEs delay Ash, et. al. [Page 20] Internet Draft QoS-NSLP QSPEC Template February 2005 exceed (2**32)-1, the end-to-end delay MUST be set to (2**32)-1. 7. 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) 8. 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 (QOSM ID) is a 32 bit value carried in a QSPEC object. The allocation policy for new QOSM 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. 9. Acknowledgements The authors would like to thank David Black, Robert Hancock, Dave Oran, Tom Phelan, Hannes Tschofenig, and Sven van den Bosch, for their very helpful suggestions. 10. 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. The IETF invites any interested party to bring to its attention any Ash, et. al. [Page 21] Internet Draft QoS-NSLP QSPEC Template February 2005 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. 11. Normative References [DSCP-REGISTRY] http://www.iana.org/assignments/dscp-registry [PHBID-CODES-REGISTRY] http://www.iana.org/assignments/phbid-codes [QoS-SIG] S. Van den Bosch et. al., "NSLP for Quality-of-Service Signaling," work in progress. [RFC2119] S. Bradner, "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2205] B. Braden et. al., "Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification," RFC 2205, September 1997. [RFC2210] J. Wroclawski, "The Use of RSVP with IETF Integrated Services", RFC 2210, September 1997. [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. [RFC2475] S. Blake et. al., "An Architecture for Differentiated Services", RFC 2475, December 1998. 12. Informative References [CMSS] "PacketCable (TM) CMS to CMS Signaling Specification, PKT-SP-CMSS-103-040402, April 2004. [DIFFSERV-CLASS] Baker, F., et. al., "Configuration Guidelines for DiffServ Service Classes," work in progress. [INTSERV-QOSM] C. Kappler, "A QoS Model for Signaling IntServ Controlled-Load Service with NSIS," work in progress. [Q.2630] ITU-T Recommendation Q.2630.3: "AAL Type 2 Signaling Protocol - Capability Set 3" Sep. 2003 [RFC1633] B. Braden et. al., "Integrated Services in the Internet Architecture: an Overview," RFC 1633, June 1994. [RFC3393] C. Demichelis, P. Chimento, "IP Packet Delay Variation Metric for IP Performance Metrics (IPPM), RFC 3393, November 2002. [RFC3564] F. Le Faucheur et. al., Requirements for Support of Differentiated Services-aware MPLS Traffic Engineering, RFC 3564, July 2003 [RFC3726] M. Brunner et. al., "Requirements for Signaling Protocols", RFC 3726, April 2004. [RMD-QOSM] A. Bader, L. Westberg, G. Karagiannis, C. Kappler and T. Phelan, " RMD-QOSM: 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. Ash, et. al. [Page 22] Internet Draft QoS-NSLP QSPEC Template February 2005 [Y.1541] ITU-T Recommendation Y.1541, "Network Performance Objectives for IP-Based Services," May 2002. [Y.1541-QOSM] J. Ash, et. al., "NSIS Network Service Layer Protocol QoS Signaling Proof-of-Concept," work in progress. 13. 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 Ash, et. al. [Page 23] Internet Draft QoS-NSLP QSPEC Template February 2005 Andrew McDonald Siemens/Roke Manor Research Roke Manor Research Ltd. Romsey, Hants SO51 0ZN UK EMail: andrew.mcdonald@roke.co.uk 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 QOSM needs to be defined. A.1 QSPEC for Admission Control for DiffServ QSPEC for Diffserv QOSM in general may be provided in future versions of this draft. A QSPEC for a DiffServ QOSM is included in [RMD-QOSM]. 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 [RFC2210] 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 QOSM. Parameters in the QSPEC are as follows: Ash, et. al. [Page 24] Internet Draft QoS-NSLP QSPEC Template February 2005 = = = = = An IntServ over Diffserv QSPEC is = = = = = 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 guaranteed 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 the AdSpec of RSVP. = Requested Rate and Slack Term defined in [RFC 2212], equivalent to RSpec of RSVP. Note that the Guaranteed 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: QoS Models and QSPECs This Appendix gives a description of QoS Models 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 Ash, et. al. [Page 25] Internet Draft QoS-NSLP QSPEC Template February 2005 will be removed. QoS NSLP is a generic QoS signaling protocol that can signal for many QOSMs. A QOSM is a particular QoS provisioning method or QoS architecture such as IntServ Controlled Load or Guaranteed Service, DiffServ, or RMD for DiffServ. The definition of the QOSM is independent from the definition of QoS NSLP. Existing QOSMs do not specify how to use QoS NSLP to signal for them. Therefore, we need to define the QOSM specific signaling functions, as [RMD-QOSM], [INTSERV-QOSM], and [Y.1541-QOSM]. A QOSM SHOULD include the following information: - Role of QNEs in this QOSM: E.g. location, frequency, statefulness... - QSPEC Definition: A QOSM SHOULD specify the QSPEC, including QSPEC parameters. Furthermore it needs to explain how QSPEC parameters not used in this QOSM 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 RMF and QOSM 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 QOSM. Appendix C: 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. 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 discussion at this point leads us to a slightly different mapping of necessary functionality to objects, which should result in more flexible signaling models. Ash, et. al. [Page 26] Internet Draft QoS-NSLP QSPEC Template February 2005 Full Copyright Statement Copyright (C) The Internet Society (2005). 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 27]