Francois Le Faucheur Cisco Systems, Inc. Waisum Lai AT&T Labs IETF Internet Draft Expires: December, 2003 Document: draft-ietf-tewg-diff-te-mam-00.txt June, 2003 Maximum Allocation Bandwidth Constraints Model for Diff-Serv-aware MPLS Traffic Engineering Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are Working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Abstract This document provides specification for one Bandwidth Constraints model for Diff-Serv-aware MPLS Traffic Engineering, which is referred to as the Maximum Allocation Model. Summary for Sub-IP related Internet Drafts RELATED DOCUMENTS: draft-ietf-tewg-diff-te-reqts-07.txt draft-ietf-tewg-diff-te-proto-04.txt WHERE DOES IT FIT IN THE PICTURE OF THE SUB-IP WORK This ID is a Working Group document of the TE Working Group. Le Faucheur 1 Maximum Allocation Model for DS-TE June 2003 WHY IS IT TARGETED AT THIS WG(s) TEWG is responsible for specifying protocol extensions for support of Diff-Serv-aware MPLS Traffic Engineering. JUSTIFICATION The TEWG charter states that "This will entail verification and review of the Diffserv requirements in the WG Framework document and initial specification of how these requirements can be met through use and potentially expansion of existing protocols." In line with this, the TEWG is specifying bandwidth constraints model for Diff-Serv-aware MPLS Traffic Engineering. This document specifies one particular bandwidth constraints model. Specification of Requirements 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 [RFC2119]. 1. Introduction [DSTE-REQ] presents the Service Providers requirements for support of Diff-Serv-aware MPLS Traffic Engineering (DS-TE). This includes the fundamental requirement to be able to enforce different bandwidth constraints for different classes of traffic. [DSTE-REQ] also defines the concept of Bandwidth Constraint Models for DS-TE and states that "The DS-TE technical solution MUST specify at least one bandwidth constraint model and MAY specify multiple Bandwidth Constraints models." This document provides a detailed description of one particular Bandwidth Constraint model for DS-TE which is introduced in [DSTE- REQ] and called the Maximum Allocation Model (MAM). [DSTE-PROTO] specifies the IGP and RSVP-TE signaling extensions for support of DS-TE. These extensions support MAM. 2. Definitions For readability a number of definitions from [DSTE-REQ] are repeated here: Class-Type (CT): the set of Traffic Trunks crossing a link that is governed by a specific set of Bandwidth Constraints. CT is used for the purposes of link bandwidth allocation, constraint based routing and admission control. A given Traffic Trunk belongs to the same CT on all links. Le Faucheur et. al 2 Maximum Allocation Model for DS-TE June 2003 TE-Class: A pair of: i. a Class-Type ii. a preemption priority allowed for that Class-Type. This means that an LSP transporting a Traffic Trunk from that Class-Type can use that preemption priority as the set-up priority, as the holding priority or both. "Reserved (CTc)": For a given Class-Type CTc ( 0 <= c <= MaxCT-1), let us define "Reserved(CTc)" as the sum of the bandwidth reserved by all established LSPs which belong to CTc. We also introduce the following definition: Reserved(CTb,q) : let us define "Reserved(CTb,q)" as the sum of the bandwidth reserved by all established LSPs which belong to CTb and have a holding priority of q. Note that if q and CTb do not form one of the 8 possible configured TE-Classes, then there can not be any established LSP which belong to CTb and have a holding priority of q, so in that case Reserved(CTb,q)=0. 3. Maximum Allocation Model Definition MAM is defined in the following manner: o Maximum Number of Bandwidth Constraints (MaxBC)= Maximum Number of Class-Types (MaxCT) = 8 o for each value of c in the range 0 <= c <= (MaxCT - 1): Reserved (CTc) <= BCc <= Max-Reservable-Bandwidth, o SUM (Reserved(CTc)) <= Max-Reservable-Bandwidth where the SUM is across all values of c in the range 0 <= c <= (MaxCT - 1) A DS-TE LSR implementing MAM MUST support enforcement of bandwidth constraints in compliance with this definition. To increase the degree of bandwidth sharing among the different CTs, the sum of bandwidth constraints may exceed the Maximum Reservable Bandwidth, so that the following relationship may hold true: o SUM (BCc) > Max-Reservable-Bandwidth, where the SUM is across all values of c in the range 0 <= c <= (MaxCT - 1) The sum of bandwidth constraints may also be equal to (or below) the Maximum Reservable Bandwidth. In that case, the Maximum Reservable Bandwidth does not actually constrain CT bandwidth reservations (in other words, the 3rd bullet item of the MAM definition above will never effectively come into play). This is because the 2nd bullet item of the MAM definition above implies that: SUM (reserved(CTc)) <= SUM (BCc) and we assume here that Le Faucheur et. al 3 Maximum Allocation Model for DS-TE June 2003 SUM (BCc) <= Maximum Reservable Bandwidth therefore, it will always be true that: SUM (Reserved(CTc)) <= Max-Reservable-Bandwidth. Both preemption within a Class-Type and across Class-Types is allowed. Where 8 Class-Types are active, the MAM bandwidth constraints can also be expressed in the following way: - All LSPs from CT7 use no more than BC7 - All LSPs from CT6 use no more than BC6 - All LSPs from CT5 use no more than BC5 - etc. - All LSPs from CT0 use no more than BC0 - All LSPs from all CTs collectively use no more than the Maximum Reservable Bandwidth Purely for illustration purposes, the diagram below represents MAM in a pictorial manner when 3 Class-Types are active: I----------------------------I <---BC0---> I I---------I I I I I I CT0 I I I I I I---------I I I I I I <-------BC1-------> I I-----------------I I I I I I CT1 I I I I I I-----------------I I I I I I <-----BC2-----> I I-------------I I I I I I CT2 I I I I I I-------------I I I I I CT0+CT1+CT2 I I I I----------------------------I <--Max Reservable Bandwidth--> Le Faucheur et. al 4 Maximum Allocation Model for DS-TE June 2003 (Note that, in this illustration, the sum BC0 + BC1 + BC2 exceeds the Max Reservable Bandwidth.) While more flexible/sophisticated Bandwidth Constraints models can be defined (and are indeed defined - see [DSTE-RDM]), the Maximum Allocation Model is attractive in some DS-TE environments for the following reasons: - Network administrators generally find MAM simple and intuitive - MAM matches simple bandwidth control policies that Network Administrators may want to enforce such as setting individual bandwidth constraint for a given type of traffic (aka. Class- Type) and simultaneously limit the aggregate of reserved bandwidth across all types of traffic. - MAM can be used in a way which ensures isolation across Class-Types, whether preemption is used or not. - MAM can simultaneously achieve isolation, bandwidth efficiency and protection against QoS degradation of the premium CT. - MAM only requires limited protocol extensions such as the ones defined in [DSTE-PROTO]. MAM may not be attractive in some DS-TE environments because: - MAM cannot simultaneously achieve isolation, bandwidth efficiency and protection against QoS degradation of CTs other than the Premium CT. Additional considerations on the properties of MAM and its comparison with RDM can be found in [BC-CONS] and [BC-MODEL]. As a very simple example usage of the MAM Model, a network administrator using one CT for Voice (CT1) and one CT for Data (CT0) might configure on a given 2.5 Gb/s link: - BC0 = 2 Gb/s (i.e. Data is limited to 2 Gb/s) - BC1 = 1 Gb/s (i.e. Voice is limited to 1 Gb/s) - Maximum Reservable Bandwidth = 2.5 Gb/s (i.e. aggregate Data + Voice is limited to 2.5 Gb/s) 4. Example Formulas for Computing "Unreserved TE-Class [i]" with Maximum Allocation Model As specified in [DSTE-PROTO], formulas for computing "Unreserved TE- Class [i]" MUST reflect all of the Bandwidth Constraints relevant to the CT associated with TE-Class[i], and thus, depend on the Bandwidth Constraints Model. Thus, a DS-TE LSR implementing MAM MUST reflect the MAM bandwidth constraints defined in section 3 above when computing "Unreserved TE-Class [i]". Le Faucheur et. al 5 Maximum Allocation Model for DS-TE June 2003 Keeping in mind, as explained in [DSTE-PROTO], that details of admission control algorithms as well as formulas for computing "Unreserved TE-Class [i]" are outside the scope of the IETF work, we provide in this section, for illustration purposes, an example of how values for the unreserved bandwidth for TE-Class[i] might be computed with MAM, assuming the basic admission control algorithm which simply deducts the exact bandwidth of any established LSP from all of the Bandwidth Constraints relevant to the CT associated with that LSP. Then: "Unreserved TE-Class [i]" = MIN [ [ BCc - SUM ( Reserved(CTc,q) ) ] for q <= p , [ Max-Res-Bw - SUM (Reserved(CTb,q)) ] for q <= p and 0 <= b <= 7, ] where: TE-Class [i] <--> < CTc , preemption p> in the configured TE-Class mapping. 5. Security Considerations Security considerations related to the use of DS-TE are discussed in [DSTE-PROTO]. Those apply independently of the Bandwidth Constraints model, including MAM specified in this document. 6. Acknowledgments A lot of the material in this document has been derived from ongoing discussions within the TEWG work. This involved many people including Jerry Ash and Dimitry Haskin. 7. Normative References [DSTE-REQ] Le Faucheur et al, Requirements for support of Diff-Serv- aware MPLS Traffic Engineering, draft-ietf-tewg-diff-te-reqts-07.txt, February 2003. [DSTE-PROTO] Le Faucheur et al, Protocol extensions for support of Diff-Serv-aware MPLS Traffic Engineering, draft-ietf-tewg-diff-te- proto-04.txt, June 2003 [RFC2119] S. Bradner, Key words for use in RFCs to Indicate Requirement Levels, RFC2119, March 1997. Le Faucheur et. al 6 Maximum Allocation Model for DS-TE June 2003 8. Informative References [BC-CONS] Le Faucheur, "Considerations on Bandwidth Constraints Model for DS-TE", draft-lefaucheur-tewg-russian-dolls-00.txt, June 2002. [BC-MODEL] Lai, "Bandwidth Constraints Models for DS-TE", draft-wlai-tewg-bcmodel-00.txt, June 2002. [DSTE-RDM] Le Faucheur et al., "Russian Dolls Bandwidth Constraints Model for Diff-Serv-aware MPLS Traffic Engineering", draft-ietf-tewg-diff-te-russian-03.txt, June 2003 [OSPF-TE] Katz et al., Traffic Engineering Extensions to OSPF, draft-katz-yeung-ospf-traffic-09.txt, October 2002. [ISIS-TE] Smit et al., IS-IS extensions for Traffic Engineering, draft-ietf-isis-traffic-04.txt, December 2002. [RSVP-TE] Awduche et al, "RSVP-TE: Extensions to RSVP for LSP Tunnels", RFC 3209, December 2001. [DIFF-MPLS] Le Faucheur et al, "MPLS Support of Diff-Serv", RFC3270, May 2002. [DSTE-MAR] Ash, G., "Max Allocation with Reservation Bandwidth Constraint Model for MPLS/DiffServ TE & Performance Comparisons", Work In Progress. 9. Authors' Address: Francois Le Faucheur Cisco Systems, Inc. Village d'Entreprise Green Side - Batiment T3 400, Avenue de Roumanille 06410 Biot-Sophia Antipolis France Phone: +33 4 97 23 26 19 Email: flefauch@cisco.com Wai Sum Lai AT&T Labs 200 Laurel Avenue Middletown, New Jersey 07748, USA Phone: (732) 420-3712 Email: wlai@att.com Le Faucheur et. al 7 Maximum Allocation Model for DS-TE June 2003 Appendix A - Addressing [DSTE-REQ] Scenarios This Appendix provides examples of how the Maximum Allocation Bandwidth Constraints model can be used to support each of the scenarios described in [DSTE-REQ]. 1. Scenario 1: Limiting Amount of Voice By configuring on every link: - Bandwidth Constraint 1 (for CT1=Voice) = "certain percentage" of link capacity - Bandwidth Constraint 0 (for CT0=Data) = link capacity (or a constraint specific to data traffic) - Max Reservable Bandwidth = link capacity By configuring: - every CT1/Voice TE-LSP with preemption =0 - every CT0/Data TE-LSP with preemption =1 DS-TE with the Maximum Allocation Model will address all the requirements: - amount of Voice traffic limited to desired percentage on every link - data traffic capable of using all remaining link capacity (or up to its own specific constraint) - voice traffic capable of preempting other traffic 2. Scenario 2: Maintain Relative Proportion of Traffic Classes By configuring on every link: - BC2 (for CT2) = e.g. 45% of link capacity - BC1 (for CT1) = e.g. 35% of link capacity - BC0 (for CT0) = e.g.100% of link capacity - Max Reservable Bandwidth = link capacity DS-TE with the Maximum Allocation Model will ensure that the amount of traffic of each Class Type established on a link is within acceptable levels as compared to the resources allocated to the corresponding Diff-Serv PHBs regardless of which order the LSPs are routed in, regardless of which preemption priorities are used by which LSPs and regardless of failure situations. By also configuring: - every CT2/Voice TE-LSP with preemption =0 - every CT1/Premium Data TE-LSP with preemption =1 - every CT0/Best-Effort TE-LSP with preemption =2 DS-TE with the Maximum Allocation Model will also ensure that: - CT2 Voice LSPs always have first preemption priority in order to use the CT2 capacity - CT1 Premium Data LSPs always have second preemption priority in order to use the CT1 capacity Le Faucheur et. al 8 Maximum Allocation Model for DS-TE June 2003 - Best-Effort can use up to link capacity whatever is left by CT2 and CT1. Optional automatic adjustment of Diff-Serv scheduling configuration could be used for maintaining very strict relationship between amount of established traffic of each Class Type and corresponding Diff-Serv resources. 3. Scenario 3: Guaranteed Bandwidth Services By configuring on every link: - BC1 (for CT1) = "given" percentage of link bandwidth (appropriate to achieve the QoS objectives of the Guaranteed Bandwidth service) - BC0 (for CT0=Data) = link capacity (or a constraint specific to data traffic) - Max Reservable Bandwidth = link capacity DS-TE with the Maximum Allocation Model will ensure that the amount of Guaranteed Bandwidth Traffic established on every link remains below the given percentage so that it will always meet its QoS objectives. At the same time it will allow traffic engineering of the rest of the traffic such that links can be filled up (or limited to the specific constraint for such traffic). Le Faucheur et. al 9