INTERNET-DRAFT Marty Borden, Bay Networks, Mark W. Garrett, Bellcore. September, 1996. Interoperation of Controlled-Load and Guaranteed-Service with ATM Status of this Memo This document is an Internet-Draft. 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.'' To learn the current status of any Internet-Draft, please check the ``1id-abstracts.txt'' listing contained in the Internet- Drafts Shadow Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe), munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or ftp.isi.edu (US West Coast). Abstract Service mappings are an important aspect of effective interoperation between Internet Integrated Services and ATM networks. Both Internet and ATM technologies have well-defined service architectures. In each, a small number of services are identified, with behavioral descriptions and related parameters to quantify network traffic and Quality of Service (QoS). This draft provides mappings between the services of each technology, in order to facilitate effective end-to-end Quality of Service in the case where ATM subnetwork technology occurs in the path between Internet end systems. Specifically, it identifies the types of ATM Virtual Circuits (VCs) which can be utilized for each of the two currently defined IP services. A detailed discussion is given of the accompanying parameters and options, and the interactions between the two models. Some of the text may be considered preliminary discussion and is expected to be refined as this draft evolves into a Borden, Garrett Expires March, 1997 [Page 1] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 proper specification. 1.0 Introduction We consider the problem of providing IP Integrated Services [RFC1633] with an ATM subnetwork. We assume the use of the rsvp protocol [RSVP] for IP-level resource reservation. In the ATM network, we consider ATM Forum UNI Signaling, versions 3.0, 3.1 and 4.0 [UNI3.0, UNI3.1, UNI4.0]. The latter uses the more complete service model of The ATM Forum's TM 4.0 specification [TM40, ATMsvc]. This is a complex problem with many facets. In this draft, we focus on the service types, parameters and signalling elements needed for service interoperation. The resulting service mappings can be used to provide effective end-to-end Quality of Service (QoS) for IP traffic that traverses ATM networks. The IP services considered are Guaranteed Service [GS] and Controlled Load Service [CLS]. We also treat the default Best Effort Service (BE) in parallel with these. Our recommendations for BE are intended to be consistent with RFC 1755 [RFC1755], which defines how ATM VCs can be used in support of normal BE IP service. The ATM services we consider are: CBR Constant Bit Rate rtVBR Real-time Variable Bit Rate nrtVBR Non-real-time Variable Bit Rate UBR Unspecified Bit Rate ABR Available Bit Rate In the case of UNI 3.0 and 3.1 signaling, where these service are not all clearly distinguishable, we identify equivalent services where possible. The service mappings which follow most naturally from their definitions are as follows: Guaranteed Service -> CBR or rtVBR Controlled Load -> nrtVBR or ABR (with a minimum cell rate) Best Effort -> UBR or ABR However, for completeness we provide detailed mappings for all service combinations and identify how each meets or fails to meet the requirements of the higher level IP services. A number of details, such as treatment of packets in excess of the flow traffic descriptor, make service mapping a complicated subject, which cannot be expressed briefly and accurately at the same time. Borden, Garrett Expires March, 1997 [Page 2] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 The remainder of this introduction provides a general discussion of the system configuration and other assumptions. Section 2 considers the relevant ATM protocol elements and their effects as related to Guaranteed, Controlled Load and Best Effort services (the latter being the default "service"). Section 3 discusses a number of important features of the IP services and how they can be handled on an ATM subnetwork. Section 4 gives detailed VC setup parameters for Guaranteed Service, and considers the effect of using each of the ATM service categories. Section 5 provides a similar treatment for Controlled Load Service. Section 6 considers Best Effort service. This document is only a part of the total solution to providing the interworking of IP integrated services with ATM subnetworks. We do not consider the important issues of when ATM VCs should be created or destroyed, how they should be used or coordinated, or of how routing -- QoS sensitive or not -- interacts with the use of VCs, especially in the case of multicast (or point-to-multipoint) flows. 1.1 General System Architecture The network architecture we consider is illustrated in Figure 1, below. An IP-attached host may send unicast datagrams to another host, or may use an IP multicast address to send packets to all of the hosts which have "joined" the multicast "tree". In either case, any destination host may use RSVP to establish resource reservation in routers along the internet path for the data flow. An ATM network lies in the path (chosen by the IP routing), and consists of one or many ATM switches. It uses VCs to provide both resources and QoS within the ATM cloud. These connections are set up, added to (in the case of multipoint trees), torn down, and controlled by the edge devices, which act as both IP routers and ATM interfaces, capable of initiating and managing VCs across the ATM user-to-network (UNI) interface. The edge devices are assumed to be fully functional in both the IP int-serv/RSVP protocols and the ATM UNI protocols, as well as translating between them. ATM Cloud ------------------ H ---\ ( ) /------- H H ---- R -- R -- E --( ATM SW -- ATM SW ) -- E -- R -- R -- H H ---/ | ( ) \ | ------------------ ------- H H ----------R Figure 1: Network Architecture with hosts (H), Routers (R) and Edge Devices (E). Borden, Garrett Expires March, 1997 [Page 3] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 The edge devices may be considered part of the IP internet or part of the ATM cloud, or both. This is not an issue since they must provide capabilities of both environments. The edge devices have normal RSVP capability to process RSVP messages, reserve resources, and maintain soft state (in the control path), and to classify and schedule packets (in the data path). They also have the normal ATM capabilities to initiate connections by signaling, and to accept or refuse connections signaled to them. They police and schedule cells going into the ATM cloud. An IP-level reservation (RESV message) triggers the edge device to translate the RSVP service requirements into ATM VC (UNI) semantics. A range of VC management policies are possible, which determine whether a flow should initiate a new VC or join an existing one. VCs are managed according to a combination of standards and local policy rules, which are specific to either the implementation (equipment) or the operator (network service provider). Point-to-multipoint connections within the ATM cloud can be used to support general IP multicast flows. In ATM, a point to multipoint connection can be controlled by the source (or root) node, or a leaf initiated join (LIJ) feature in ATM may be used. (Note, a longer section on VC management will be written, either in as part of this draft or another one from the issll working group at some point. Figure 2 shows the functions of an edge device, summarizing the work not part of IP or ATM abstractly as an InterWorking Function (IWF), and segregating the control and data planes. (Note: for expositional convenience, policy control and other control functions are included as part of the admission control in the diagram.) Borden, Garrett Expires March, 1997 [Page 4] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 IP ATM ____________________ | IWF | | | admission <--> | service mapping | <--> ATM control | VC management | signalling & | address resolution | admission |....................| control | | classification/ | ATM Adaption Layer | cell policing & <--> | Segmentation and | <--> scheduling/ scheduling | Reassembly | shaping | Buffering | ____________________ Figure 2: Edge Device Functions showing the IWF In the logical view of Figure 2, some functions, such as scheduling, are shown separately, since these functions are required of both the IP and ATM sides. However it may be possible in an integrated implementation to combine such functions. It is not possible to completely separate the service mapping and VC management functions. Several illustrative examples come to mind: (i) Multiple integrated-services flows may be aggregated to use one point-to-multipoint VC. In this case, we assume the IP flows are of the same service type and their parameters have been merged appropriately. (ii) The VC management function may choose to allocate extra resources in anticipation of further reservations or based on an empiric of changing TSpecs. In this case we can assume that the additional resources are still specifiable in the form of a TSpec, which can be mapped using the same algorithm. (iii) There must exist a path for best effort flows and for sending the rsvp control messages. How this interacts with the establishment of VCs for QoS traffic may alter the characteristics required of those VCs. Therefore, in discussing the service-mapping problem, we will assume that the VC management function of the IWF can always express its result in terms of an IP-level service with some QoS and TSpec. The service mapping algorithm, which is the subject of this draft, can then identify the appropriate VC parameters, whether the resulting action is initiation of a new VC, the addition/deletion of a leaf to an existing multipoint tree, or the modification of an existing VC to one of another description. Borden, Garrett Expires March, 1997 [Page 5] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 1.2 Related documents Earlier ATM Forum documents were called UNI 3.0 and UNI 3.1. The 3.1 release was used to correct errors and fix alignment with the ITU. Unfortunately UNI 3.0 and 3.1 are incompatible. However this is in terms of actual codepoints, not semantics. Therefore, descriptions of parameter values can generally be used for both. After 3.1, the ATM Forum decided to release documents separately for each technical subcommittee. The Traffic Management and Signalling 4.0 documents are available publically at ftp.atmforum.com/pub. We refer to the combination of traffic management and signalling as TM/UNI 4.0, although specific references may be made to the TM 4.0 specification or the UNI SIG 4.0 specification. Within the IETF area, related material includes: RSVP functional specification, Guaranteed Service specification, Controlled Load service specification, Int-serv data encoding specification, RFC 1577, RFC 1755, RFC 1821, draft-crawley-rsvp-over-atm, draft-birman-ipatm-rsvpatm, draft-onvural-srinivasan-rsvp-atm. 1.3 Abbreviations ABR Available Bit Rate BCOB Broadband Connection-Oriented Bearer Capability BCOB-{A,C,X} Bearer Class A, C, or X BE Best Effort BT Burst Tolerance CBR Constant Bit Rate CDV Cell Delay Variation CDVT Cell Delay Variation Tolerance CLS Controlled Load Service CLP Cell Loss Priority (bit) CLR Cell Loss Ratio CTD Cell Transfer Delay GS Guaranteed Service IWF Interworking Function MBS Maximum Burst Size MCR Minimum Cell Rate Borden, Garrett Expires March, 1997 [Page 6] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 PCR Peak Cell Rate SCR Sustained Cell Rate UBR Unspecified Bit Rate VBR Variable Bit Rate nrtVBR Non-real-time VBR rtVBR Real-time VBR 2.0 Discussion of Relevant ATM Protocol Features In this section, we discuss each of the items that must be specified in the setup of an ATM VC. For each of these we discuss which specified items and values may be most appropriate for each of the integrated services. The ATM Call Setup is sent by the edge device to the ATM network to establish end-to-end [ATM] service. This setup contains the following information. Service Category/Broadband Bearer Capability AAL Parameters Broadband Low Layer Information Calling and Called Party Addressing Information Traffic Descriptors QoS Parameters Additional Parameters of TM/UNI 4.0 We will discuss each of these, except addressing information, as they relate to the translation of GS and CLS to ATM services. Following the discussion of the service categories, we discuss the tagging and conformance definitions for IP and ATM, since the policing method is implicit in the call setup. We then continue with mappings of the other parameters and information elements. 2.1 Service Category and Bearer Capability The highest level of abstraction distinguishing features of ATM VCs is in the service category or bearer capability. Service categories were introduced in TM/UNI 4.0; previously the bearer capability was used to discriminate at this level. In each version of the ATM specifications, these indicate the general properties required of a VC: whether there is a real-time delay constraint, whether the traffic is constant or variable rate, the applicable traffic and QoS description parameters and (implicitly) the complexity of some supporting switch mechanisms. Borden, Garrett Expires March, 1997 [Page 7] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 For UNI 3.0 and UNI 3.1, there are only two distinct options for bearer capabilities (in our context): BCOB-A: constant rate, timing required, unicast/multipoint; BCOB-C: variable rate, timing not required, unicast/multipoint. There is a third capability, BCOB-X, but in the case of AAL5 (which we require -- see below) it can be used interchangeably and consistently with the above two capabilities. In TM/UNI 4.0 the service categories are: Constant Bit Rate (CBR) Real-time Variable Bit Rate (rtVBR) Non-real-time Variable Bit Rate (nrtVBR) Unspecified Bit Rate (UBR) Available Bit Rate (ABR) The first two of these are real-time services, so that rtVBR is new to TM/UNI 4.0. The ABR service is also new to TM/UNI 4.0. UBR exists in all specifications, except perhaps in name, through the ``best effort'' indication flag and/or the QoS Class 0. The encoding used in 4.0 is consistent with the earlier versions. For example, the Service Category is indicated solely by the combination of the Bearer Capabilty and the Best Effort indication flag. In principle, it is possible to support any forseeable service through the use of BCOB-A/CBR. This is because the CBR service is equivalent to having a ``pipe'' with specified bandwidth/timing. However, it may be desirable to make better use of the ATM network's resources by using other, less demanding, services when available. (See RFC 1821 for a discussion of this.) 2.1.1 Service Categories for Guaranteed Service There are two possible mappings for GS: CBR (BCOB-A) rtVBR GS requires real-time support, that is, timing is required. Thus in UNI 3.x, the bearer class BCOB-A (or an equivalent BCOB-X formulation) must be used. In TM/UNI 4.0 either of CBR or rtVBR is appropriate, the latter allowing the network to possibly take advantage of the statistical multiplexing gain of variable rate flows Borden, Garrett Expires March, 1997 [Page 8] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 and to use tagging (see section 2.2). Neither the BCOB-C bearer class, nor nrtVBR, UBR, ABR are matches for the GS service. These provide no delay estimates and one cannot expect low, predictable, or consistent delays. Specification of BCOB-A or CBR requires specification of a PCR. The PCR should be specified as the the token bucket rate parameter, with appropriate conversion from bytes to cells (accounting for overhead), of the GS TSpec. For both of these, the network provides a nominal clearing rate of PCR with jitter toleration (bucket size) CDVT, specified in a network specific manner (see below). Specification of rtVBR requires the specification of two rates, SCR and PCR. This models bursty traffic with specified peak and average rates. With rtVBR, it is appropriate to map the PCR to the line rate of incoming traffic and the SCR to the GS TSpec bucket rate. The ATM bucket sizes are CDVT, in a network specific manner, and CDVT+BT, respectively for the PCR and SCR parameters (see below). 2.1.2 Service Categories for Controlled Load There are three possible mappings for CLS: CBR (BCOB-A) ABR nrtVBR (BCOB-C) Note that under UNI 3.x, only the first and third choices are applicable. The first, with a CBR/BCOB-A connection, provides a higher level of QoS than is necessary, but it may be convenient to simply allocate a fixed-rate ``pipe'', which should be ubiquitously supported in ATM networks. However unless this is the only choice available, this will probably be wasteful of network resources. The ABR category with a positive MCR aligns with the CLS idea of ``best effort with floor.'' The ATM network agrees to forward cells with a rate of at least MCR, which should be directly converted from the token bucket rate of the TSpec. The bucket size parameter measures approximately the amount of buffer required at the IWF. The nrtVBR/BCOB-C category can also be used. It does introduce some unaligned complexity in the conformance definition (see section 2.2) by the use of two leaky buckets. The CLS rate parameter would correspond to the SCR, while the PCR should be set to the line rate, as for Guaranteed Service. Borden, Garrett Expires March, 1997 [Page 9] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 The remaining service categories are inappropriate for CLS. The rtVBR category adds complexity without providing useful features: there is no need for tightly constrained delays, and the double-rate traffic description is not needed. The UBR category does not provide enough capability for Controlled Load. The point of CLS is to allow an allocation of resources, which is facilitated by the token bucket traffic descriptor, and is unavailable in UBR. 2.1.3 Service Categories for Best Effort Any of the service categories has the capability to carry Best Effort service, but the natural service category is UBR (or, in UNI 3.x, BCOB-C or BCOB-X, with the best effort indicator flag). A CBR or rtVBR clearly could be used, and since the service is not real-time, a nrtVBR connection could also be used. In these cases the rate parameter used reflects a bandwidth allocation in support of the edge device's best effort connectivity to the far edge router. It would be normal for many flows to be aggregated on this connection; indeed, since Best Effort is the default IP behavior, the individual flows are not necessarily identified or accounted for. CBR may be a preferred solution in the case where best effort traffic is sufficiently highly aggregated that a simple fixed-rate pipe is efficient. An ABR connection could similarly be used to support Best Effort traffic. This is the purpose for which ABR was specifically designed. It is conceivable that a separate ABR connection would be made for different IP flows, although the normal case would probably have all IP Best Effort traffic with a common exit router sharing a single ABR connection. 2.2 Cell Loss Priority Bit, Tagging and Conformance Definitions An ATM header carries the Cell Loss Priority (CLP) bit. Cells with bit CLP=1 are said to have been tagged and have lower priority. This tagging may have been done by the source or an upstream switch. Options involving the use of tagging are decided at call setup time. A Conformance Definition is a rule that determines whether a cell is conforming to the traffic descriptor of the VC. The conformance definition is given in terms of a Generic Cell Rate Algorithm (GCRA), also known as a "leaky bucket" algorithm, for CBR and VBR services. (UBR and ABR have network-specific conformance definitions. Note, the term "compliance" in ATM is used to describe the behavior of a connection.) The network may tag cells which are non-conforming, rather than Borden, Garrett Expires March, 1997 [Page 10] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 dropping them only if the VC is set up to request tagging and the network supports the tagging option. When congestion occurs, a switch must attempt to discard tagged cells in preference to the discarding of CLP=0 cells. However, the mechanism for doing this is completely implementation specific. Tagged cells are treated with a behavior which is Best Effort in the sense that they are transported when bandwidth is available, queued when buffers are available, and dropped when the resources are overcommitted. Since GS and CLS services require excess traffic to be treated as Best Effort, the tagging option should always be chosen (if supported) in the VC setup as a means of ``downgrading'' nonconformant cells. However, we wish to point out that the term ``best effort'' seems to be used with two distinguishable meanings in the int-serv specs. The first interpretation is that of a service class that, in some typical scheduler implementations, would correspond to a separate queue. Placing excess traffic in best effort in this sense would be giving it lower delay priority. The other sense is more generic, meaning that the network would make a best effort to transport the traffic. A reasonable expectation is that a network with no contending traffic would transport the packet, while a very congested network would drop the packet. A packet that could be tagged with lower loss priority (such as the ATM CLP bit) would be more likely to be dropped, but would not normally be transported out of order with respect to the conforming portion of the flow. Such a mechanism would agree with the latter definition of best effort, but not the former. In TM/UNI 4.0 tagging does not apply to the CBR or ABR services. However, there are three conformance definitions of VBR service (for both rtVBR and nrtVBR) to consider. In VBR, only the conformance definition VBR.3 supports tagging and applies the GCRA with PCR to the aggregate CLP=0+1 cells, and another GCRA with SCR to the CLP=0 cells. Thus this conformance definition should always be used in support of IP integrated services. For UBR service, conformance definition UBR.2 supports the use of tagging, but a CLP=1 cell does not imply non-conformance; it may be a hint of network congestion. Once an ATM connection is established, the use of the conformance definition and resulting policing action is mandatory. Since the conformance algorithm operates on cells, when mapping rates and bucket sizes from IP services to corresponding ATM parameters, a correction needs to be made (at call setup time) for the ATM segmentation overhead. Unfortunately this overhead, as a ratio, depends on packet length, with the overhead largest for small packets. Thus the appropriate correction could be based on minimum packet size, expected packet size, or otherwise in a network specific manner, determined at the edge device IWF. Borden, Garrett Expires March, 1997 [Page 11] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 2.3 ATM Adaptation Layer The AAL type 5 encoding must be used, as specified in RFC 1483 and RFC 1755. AAL5 requires specification of the maximum SDU size in both the forward and reverse directions. Both GS and CLS specify a maximum packet size as part of the TSpec and this value shall be used as the maximum SDU in each direction for unicast connections, but only in one direction for point-to-multipoint connections, which are unidirectional. When more than one flow aggregated into a single VC, the TSpecs are merged to yield the largest packet size. In no case can this exceed 65535 (or, of course, the MTU of the link). 2.4 Broadband Low Layer Information The B-LLI Information Element is transferred transparently by the ATM network between the edge devices and is used to specify the encapsulation method. Multiple B-LLI IEs may be sent as part of negotiation. The default encapsulation LLC/SNAP must be supported as specified in RFC 1577 and RFC 1755. Additional encapsulations are discussed in RFC 1755 and we refer to the discussion there. 2.5 Traffic Descriptor The ATM traffic descriptor always contains specification of a peak cell rate (PCR) (in each direction). For variable rate services it also contains specification of a sustainable cell rate (SCR) and maximum burst size (MBS). The Best Effort indicators and Tagging indicators are also part of the traffic descriptors in the signalling sense. In UNI SIG 4.0 there is an additional parameter, the Frame Discard indicator in the traffic descriptor. The latter is used to indicate the request that if a cell is to be dropped, then all subsequent cells of a frame be dropped up to the End of Message (EOM) cell (AAL 5); see section 2.7. In ATM UNI SIG 4.0 there are also the notions of Alternative Traffic Descriptors and Minimal Traffic Descriptors. Alternative Traffic Descriptors enumerate other acceptable choices for traffic descriptors and do not seem to be relevant here. Minimal Traffic Descriptors are used in ``negotiation,'' a term which when interpreted colloquially will lead to confusion. Very roughly it works like this, e.g., for PCR. A minimal PCR and a requested PCR are signalled, the requested PCR being the usual item signalled, and the Borden, Garrett Expires March, 1997 [Page 12] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 minimal PCR being the absolute minimum that the source edge device will accept. When sensing the existence of both minimal and requested parameters, intermediate switches along the path may reduce the requested PCR to a comfortable level. If at any point the requested PCR falls below the minimal PCR then the call is cleared. This is a very rough sketch, but we do see potential to make use of Minimal Traffic Descriptors in future versions of this draft in order to present an acceptable range for parameters and have higher liklihood of call admission. Minimal Traffic Descriptors are not explored further in this version of the draft. The Traffic Management viewpoint, which we examine next, is more concerned with the value of the PCR, SCR and MBS parameters after call setup. PCR and CDVT are used in the CBR and VBR conformance definitions as parameters for a leaky bucket. However CDVT is not signalled and is determined by the network operator as a measure of the ``clumping'' done by the network. This makes it difficult to map any leaky bucket description of a TSpec to the PCR-CDVT leaky bucket. Additional buffering will be needed at the IWF to account for the depth of the bucket. The SCR and MBS are used with the VBR services. They are used in an implementation specific manner to allocate resources. The Burst Tolerance (BT) is derived from MBS (see TM 4.0) to be used in a second SCR-BT leaky bucket. Since both parameters are available to be signalled, this leaky bucket has the potential to be used in the same way as the integrated services bucket. Note that the segmentation overhead and minimum policed unit need to be taken into account when translating the bucket parameters. For Guaranteed Service there is a bucket rate, r and a service rate, R. The bucket rate describes the traffic, and can be used for policing, while the service rate (which cannot be smaller) is the allocated service rate. When mapping Guaranteed Service onto a rtVBR VC, the mapping is straightforward. The bucket rate maps to the SCR and the peak rate maps to PCR. The bucket depth parameter maps to MBS. The minimum policed unit may need to be taken into account when translating the leaky bucket parameters. Note that due to cell segmentation, the ATM traffic parameters will increase due to the additional headers. The minimum packet size can be used to identify the worst case situation. For GS over CBR, the bucket rate can be mapped to the PCR parameter. As noted above, the edge device may need to ensure that adequate buffering exists at the ATM network ingress to accommodate the TSpec bucket depth. If the available buffering is not sufficient, then a Borden, Garrett Expires March, 1997 [Page 13] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 VC may have to be set up using the IP peak rate parameter mapping to PCR. It is probably inadvisable to try to set the PCR to a value between the bucket rate and the peak rate, since such a value would depend on assumptions about the statistical properties of the source. Controlled Load service has a single bucket rate and corresponding depth parameter. The minimum policed unit and maximum packet size play the same roles in mapping parameters as for Guaranteed Service. When using nrtVBR, the bucket rate and depth map to SCR and MBS, while the PCR parameter can be set to the line rate as a worst case value. For ABR VCs, the bucket rate would be used to set the minimum cell rate (MCR) parameter. The bucket depth parameter does not map directly to a signalled ATM parameter, but the edge device should check that the buffering at the ATM ingress is sufficient to account for the size of bursts allowed by that parameter. Finally for CBR, the bucket rate sets the PCR, and again, the available buffering in the edge device must be adequate to accommodate possible bursts. For Best Effort service, there is no traffic description. The UBR service category allows negotiation of PCR, simply to identify to the source the smallest physical bottleneck along the path. 2.6 QoS Classes and Parameters In TM/UNI 4.0 the three QoS parameters may be individually signalled. These parameters are the Cell Loss Ratio (CLR), Cell Transfer Delay (CTD), and Cell Delay Variation (CDV). In UNI 3.x the setup message includes only the QoS Class, which is essentially an index to a network specific table of values for these three parameters. A network provider may choose to associate other parameters, such as Severely Errored Cell Block Ratio, but these are less well understood and accepted compared to the basic loss, delay and jitter parameters mentioned here. The ITU may include a standard set of parameter values for a number (probably four) of QoS classes. In that case, the network provider could define further network-specific QoS classes in addition. The problem of agreement between network providers as to the definition of QoS classes is completely unaddressed to date. We will adopt a convention expressed in UNI 3.x, that assumes that QoS class 1 is appropriate for low-delay, low-loss CBR connections, and QoS class 3 is appropriate for variable rate connections with loss and delay roughly appropriate for non- real-time data applications. Since no IP layer counterparts to these ATM QoS parameters exist in any of the IP services, they must be set by policy of the edge device. The QoS classes can be chosen relatively easily. QoS class Borden, Garrett Expires March, 1997 [Page 14] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 1 should be used with Guaranteed Service and QoS class 3 should be used with Controlled Load Service. Best Effort Service always gets QoS class 0, which is unspecified QoS by definition. There are two issues which amount to the same thing: First, the choice of individually signalled parameter values (under TM/UNI 4.0) for GS and CLS is the edge device policy. The second issue is choosing parameter values for the two QoS classes, which is the ATM network policy. If the same network operator controls both, then these problems are identical; if not, an agreement to make the values identical would be extremely desirable. Note that we have mapped QoS class 1 and 3 onto Guaranteed and Controlled Load service respectively. This is regardless of what service category is used. So when running CLS over a CBR pipe, it would not be inappropriate to use QoS class 3. This leaves the delay unspecified (or much looser than with QoS 1). These comments should be taken as preliminary, as these issues are far from clear, and industry consensus should be sought. 2.7 Additional Parameters -- Frame Discard Mode In TM/UNI 4.0 ATM allows the user to choose a mode where a dropped cell causes all cells up to the last remaining in the AAL5 PDU to be also dropped. This improves efficiency and the behavior of end-to- end protocols such as TCP, since the remaining cells of a damaged PDU are useless to the receiver. For IP over ATM, Frame Discard should always be used in both directions, if available, for all services. 3.0 Discussion of Miscellaneous Items 3.1 Units Conversion In the integrated services domain, buckets and rates are measured in bytes and bytes/sec, respectively, whereas for ATM, they are measured in cells and cells/sec. Packets are segmented into 53 byte cells of which the first 5 bytes are header information. For B = number of Bytes, C = number of cells, a rough approximation between the token bucket parameters (rate and bucket depth) is C = B/48. Borden, Garrett Expires March, 1997 [Page 15] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 This is actually a lower bound on C and does not take into account the extra padding at the end of a partially filled cell, or the 8 byte trailer in the last cell of an AAL5 encoding. The actual relationship between the number of cells and bytes of one packet is C = 1 + int(B/48) + x, where x = 1 if B mod 48 > 41 0 otherwise. where int() is the rounding down operation. The third term is 0 or 1 and is 1 only when the remainder of B/48 is 41 or more. (An additional cell is needed because the 41 bytes plus 8 byte trailer will not fit in a cell.) The above formula is not particularly amenable to engineering considerations. By equating the number of bytes before and after segmentation we have 48 C = B + 8 + A, where A is the additional padding used in the last 2 cells and has the range 0 <= A <= 47. From this we obtain a number of useful observations. For example, if one believes that the packet lengths are uniformly distributed mod 48, then on average, 48 C = B + 8 + 47/2, or C = B/48 + .65625. We can also make use of the upper bound on A to state that 48 C <= B + 55. This is true for any one packet. Considering the number of bytes in a stream of P packets, we have 48 C <= B + 55 P. The number of packets P may not be a readily available quantity. However, in terms of the minimum policed unit m, we know that P * m <= B. Hence P <= B/m and 48 C <= B ( 1 + 55/m). That is, C <= B/48 * (1 + 55/m). 4.0 Guaranteed Service over ATM This section describes how to create ATM VCs appropriately matched for Guaranteed Service. The key points differentiating among ATM choices are that real-time timing is required, that the data flow may have a variable rate, and that demotion of non-conforming traffic to best effort is desired. For this reason, we prefer a rtVBR service in which tagging is supported. Another good match is to use CBR with special handling of any non-conforming traffic. The encodings assume a point-to-multipoint connection. For a unicast connection, the backward parameters would be equal to the forward parameters. Borden, Garrett Expires March, 1997 [Page 16] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 4.1 Encoding GS as a real-time variable bit rate service AAL Type 5 Forward CPCS-SDU Size parameter M of TSpec Backward CPCS-SDU Size 0 Mode 1 (Message mode) Note 1 SSCS Type 0 (Null SSCS) Traffic Descriptor Forward PCR CLP=0+1 From TSpec peak rate Backward PCR CLP=0+1 0 Forward SCR CLP=0 From TSpec token bucket rate Backward SCR CLP=0 0 Forward MBS (CLP=0) From TSpec bucket size param Backward MBS (CLP=0) 0 BE indicator NOT included Forward Frame Discard bit 1 Note 2 Backward Frame Discard bit 1 Note 2 Tagging Forward bit 1 (Tagging requested) Note 2 Tagging Backward bit 0 (No Tagging) Note 2 Broadband Bearer Capability Bearer Class 16 (BCOB-X) Note 3 ATM Transfer Capability 9 Note 2 Traffic Type 010 (Variable Bit Rate) Timing Requirements 01 (Timing Required) Susceptible to Clipping 00 (Not susceptible) User Plane Configuration 01 (For pt-to-mpt) Broadband Low Layer Information Layer 2 protocol 12 (ISO 8802/2) Layer 3 protocol 204 (ISO/IEC TR 9577) QoS Class QoS Class Forward 1 Note 4 QoS Class Backward 1 Note 4 QoS Parameters Transit Delay 100ms Notes 2,5 Forward CLR (CLP=0) 1.0e-6 Notes 2,5 Backward CLR (CLP=0) 1.0e-6 Notes 2,5 Forward CDV 30ms Notes 2,5 Backward CDV 30ms Notes 2,5 Note 1: Only included for UNI 3.0. Borden, Garrett Expires March, 1997 [Page 17] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 Note 2: Only included in TM/UNI 4.0. Note 3: Value 1 (BCOB-A) can also be used. Note 4: Optional in TM/UNI 4.0. Note 5: Values chosen to initiate discussion. 4.2 Encoding GS as a constant bit rate service It is also possible to support GS using a CBR ``pipe.'' The advantage of this is that CBR is probably supported; the disadvantage is that data flows may not fill the pipe (utilization loss) and there is no tagging option available. AAL Type 5 Forward CPCS-SDU Size parameter M of TSpec Backward CPCS-SDU Size parameter M of TSpec Mode 1 (Message mode) Note 1 SSCS Type 0 (Null SSCS) Traffic Descriptor Forward PCR 0+1 From TSpec token bucket rate Backward PCR 0+1 0 BE indicator NOT included Forward Frame Discard bit 1 Note 2 Backward Frame Discard bit 1 Note 2 Tagging Forward bit 0 (No Tagging) Note 2 Tagging Backward bit 0 (No Tagging) Note 2 Broadband Bearer Capability Bearer Class 16 (BCOB-X) Note 3 ATM Transfer Capability 7 Note 2 Traffic Type 001 (Constant Bit Rate) Timing Requirements 01 (Timing Required) Susceptible to Clipping 00 (Not susceptible) User Plane Configuration 01 (For pt-to-mpt) Broadband Low Layer Information Layer 2 protocol 12 (ISO 8802/2) Layer 3 protocol 204 (ISO/IEC TR 9577) QoS Class QoS Class Forward 1 Note 4 QoS Class Backward 1 Note 4 QoS Parameters Borden, Garrett Expires March, 1997 [Page 18] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 Transit Delay 100ms Notes 2,5 Forward CLR (CLP=0) 1.0e-6 Notes 2,5 Backward CLR (CLP=0) 1.0e-6 Notes 2,5 Forward CDV 30ms Notes 2,5 Backward CDV 30ms Notes 2,5 Note 1: Only included for UNI 3.0. Note 2: Only included in TM/UNI 4.0. Note 3: Value 1 (BCOB-A) can also be used. Note 4: Optional in TM/UNI 4.0. Note 5: Values chosen to initiate discussion. 4.3 Encoding GS as a non-real-time variable bit rate service The remaining ATM service categories, including nrtVBR, do not provide delay guarantees and cannot be recommended as the best fits. However in some circumstances, the best fits may not be available. If nrtVBR is used, no hard delay can be given. However by using a variable rate service with low utilization, delay may be `reasonable', but not controlled. The encoding of GS as nrtVBR is the same as that for CL using nrtVBR, except that the Forward PCR would be derived from the Tspec peak rate. See section 5.2 below. 4.4 Encoding GS as an ABR service The authors feel that this is a very unlikely combination. The objective of the ABR service is to provide `low' loss rates which, via flow control, can result in delays. The introduction of delays is contrary to the point of GS. 4.5 Encoding GS as an UBR service The UBR service is the default lowest common denominator of the services. It cannot provide delay or loss guarantees. However if it is used for GS, it will be encoded in the same way as Best Effort over UBR, with the exception that the PCR would be determined from the peak rate of the Tspec. See section 5.1. Borden, Garrett Expires March, 1997 [Page 19] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 5.0 Controlled Load Service over ATM This section describes how to create ATM VCs appropriately matched for Controlled Load. CL traffic is partly delay tolerant and of variable rate. We see nrtVBR and ABR (for TM/UNI 4.0 only) as possible choices in supporting CL. Generally we prefer to use point-to-multipoint connections. However this is not yet available in ABR. Other than in ABR, the encodings assume a point-to-multipoint connection. For a unicast connection, the backward parameters would be equal to the forward parameters. 5.1 Encoding CL using an ABR service AAL Type 5 Forward CPCS-SDU Size parameter M of TSpec Backward CPCS-SDU Size parameter M of TSpec SSCS Type 0 (Null SSCS) Traffic Descriptor Forward PCR CLP=0+1 From line rate Backward PCR CLP=0+1 From line rate Forward MCR CLP 0+1 From TSpec token bucket rate Backward MCR CLP 0+1 From TSpec token bucket rate BE indicator NOT included Forward Frame Discard bit 1 Backward Frame Discard bit 1 Tagging Forward bit 0 (Tagging not requested) Tagging Backward bit 0 (Tagging not requested) Broadband Bearer Capability Bearer Class 16 (BCOB-X) Note 3 ATM Transfer Capability 12 Traffic Type 010 (Variable Bit Rate) Timing Requirements 10 (Timing Not Required) Susceptible to Clipping 00 (Not susceptible) User Plane Configuration 00 (For pt-to-pt) Broadband Low Layer Information Layer 2 protocol 12 (ISO 8802/2) Layer 3 protocol 204 (ISO/IEC TR 9577) QoS Class QoS Class Forward 3 Note 4 Borden, Garrett Expires March, 1997 [Page 20] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 QoS Class Backward 3 Note 4 ABR Setup Parameters For Further Study ABR Additional Parameters For Further Study Note 3: Value 3 (BCOB-C) can also be used. Note 4: Optional in TM/UNI 4.0. 5.2 Encoding CL using a non-real-time variable bit rate service AAL Type 5 Forward CPCS-SDU Size parameter M of TSpec Backward CPCS-SDU Size 0 Mode 1 (Message mode) Note 1 SSCS Type 0 (Null SSCS) Traffic Descriptor Forward PCR CLP=0+1 From line rate Backward PCR CLP=0+1 0 Forward SCR CLP=0 From TSpec token bucket rate Backward SCR CLP=0 0 Forward MBS (CLP=0) From TSpec bucket size param Backward MBS (CLP=0) 0 BE indicator NOT included Forward Frame Discard bit 1 Note 2 Backward Frame Discard bit 1 Note 2 Tagging Forward bit 1 (Tagging requested) Note 2 Tagging Backward bit 0 (No Tagging) Note 2 Broadband Bearer Capability Bearer Class 16 (BCOB-X) Note 3 ATM Transfer Capability Absent Note 2 Traffic Type 010 (Variable Bit Rate) Timing Requirements 10 (Timing Not Required) Susceptible to Clipping 00 (Not susceptible) User Plane Configuration 01 (For pt-to-mpt) Broadband Low Layer Information Layer 2 protocol 12 (ISO 8802/2) Layer 3 protocol 204 (ISO/IEC TR 9577) QoS Class Borden, Garrett Expires March, 1997 [Page 21] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 QoS Class Forward 3 Note 4 QoS Class Backward 3 Note 4 QoS Parameters Forward CLR (CLP=0) 1.0e-6 Notes 2,5 Backward CLR (CLP=0) 1.0e-6 Notes 2,5 Note 1: Only included for UNI 3.0. Note 2: Only included in TM/UNI 4.0. Note 3: Value 3 (BCOB-C) can also be used. Note 4: Optional in TM/UNI 4.0. Note 5: Values chosen to initiate discussion. 5.3 Encoding CL using a real-time variable bit rate service The encoding of CL using rtVBR imposes a hard limit on the delay, which is specified as an end-to-end delay in the ATM network. This is more stringent than the CL service specifies and may result in less utilization of the network. If rtVBR is used to encode CL, then the encoding is essentially the same as that for GS. The exceptions are that the Forward PCR is derived from the line rate and probably a different value of the transit delay and CDV will be specified. See section 3.1. 5.4 Encoding CL using a constant bit rate service The encoding of CL using CBR is more stringent than using rtVBR since it does not take into account the variable rate of the data. Consequently there may be even lower utilization of the network. To use CBR for CL, the same encoding as in section 3.2 would be used. However a different set of values of the QoS parameters will likely be used. 5.5 Encoding CL using a UBR service This encoding gives no QoS guarantees and would be done in the same way as for BE traffic. See section 5.1. Borden, Garrett Expires March, 1997 [Page 22] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 6.0 Best Effort Service over ATM This section describes how to create ATM VCs appropriately matched for Best Effort. The BE service does not need a reservation of resources. 5.1 Best Effort Service using UBR AAL Type 5 Forward CPCS-SDU Size MTU of link Backward CPCS-SDU Size MTU of link Mode 1 (Message mode) Note 1 SSCS Type 0 (Null SSCS) Traffic Descriptor Forward PCR CLP=0+1 From line rate Backward PCR CLP=0+1 0 BE indicator included Forward Frame Discard bit 1 Note 2 Backward Frame Discard bit 1 Note 2 Tagging Forward bit 1 (Tagging requested) Note 2 Tagging Backward bit 0 (no tagging) Note 2 Broadband Bearer Capability Bearer Class 16 (BCOB-X) Traffic Type 010 (Variable Bit Rate) Timing Requirements 10 (Timing not required) Susceptible to Clipping 00 (Not susceptible) User Plane Configuration 01 (For pt-to-mpt) Broadband Low Layer Information Layer 2 protocol 12 (ISO 8802/2) Layer 3 protocol 204 (ISO/IEC TR 9577) QoS Class QoS Class Forward 0 QoS Class Backward 0 Note 1: Only included for UNI 3.0. Note 2: Only included in TM/UNI 4.0. Borden, Garrett Expires March, 1997 [Page 23] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 1. REFERENCES [RFC1633] R. Braden, D. Clark and S. Shenker, "Integrated Services in the Internet Architecture: an Overview", RFC 1633, June 1994. [RFC1755] M. Perez, F. Liaw, A. Mankin, E. Hoffman, D. Grossman and A. Malis, "ATM Signlaing Support for IP over ATM", RFC 1755, Febru- ary 1995. [IPATM] M. Perez and A. Mankin, "ATM Signalling Support for IP over ATM - UNI 4.0 Update", Internet Draft, June 1996, [RFC1821] M. Borden, E. Crawley, B. Davie and S. Batsell, "Integration of Real-time Sevices in an IP-ATM Network Architecture", "IP Authentication Header", RFC 1821, August 1995. [RSVP]R. Braden, L. Zhang, S. Berson, S. Herzog and S. Jamin, "Resource ReSevVation Protocol (RSVP) - Version 1 Functional Specification", Internet Draft, May 1996, [GS] S. Shenker, C. Partridge and R. Guerin, "Specification of Guaranteed Quality of Service", Internet Draft, August 1996, [CLS]J. Wroclawski, "Specification of the Controlled-Load Network Element Service", Internet Draft, August 1996, draft-ietf- intserv-ctrl-load-svc-03.txt [USE-RSVP-IS] J. Wroclawski, "The Use of RSVP with IETF Integrated Services", Internet Draft, August 1996, [TEMPLATE] S. Shenker and J. Wroclawski, "Network Element Service Specifi- cation Template", Internet Draft, November 1995, [UNI3.0] The ATM Forum, "ATM User-Network Interface Specification, Ver- sion 3.0", Prentice Hall, Englewood Cliffs NJ, 1993. Borden, Garrett Expires March, 1997 [Page 24] INTERNET DRAFT Interoperation of CLS and GS with ATM September, 1996 [UNI3.1] The ATM Forum, "ATM User-Network Interface Specification, Ver- sion 3.1", Prentice Hall, Upper Saddle River NJ, 1995. [UNI4.0] The ATM Forum, "ATM User-Network Interface (UNI) Signalling Specification, Version 4.0", Prentice Hall, Upper Saddle River NJ, specification finalized July 1996; expected publication, late 1996; available at ftp://ftp.atmforum.com/pub. The ATM Forum, "ATM Traffic Management Specification, Version 4.0", Prentice Hall, Upper Saddle River NJ; specification finalized April 1996; expected publication, late 1996; available at ftp://ftp.atmforum.com/pub. [ATMsvc] M. W. Garrett, "A Service Architecture for ATM: From Applica- tions to Scheduling", IEEE Network Mag., Vol. 10, No. 3, pp. 6- 14, May 1996. Acknowledgements The authors would like to thank the members of the ISSLL working group for their input. In particular, thanks to Jon Bennett of Fore Systems. AUTHORS' ADDRESSES Marty Borden Mark W. Garrett Bay Networks Bellcore 3 Federal Street 445 South Street Billerica, MA 01821 Morristown, NJ 07960 USA USA phone: +1 508 436-3903 phone: +1 201 829-4439 email: mborden@baynetworks.com email: mwg@bellcore.com Borden, Garrett Expires March, 1997 [Page 25]