MPLS Working Group Liwen Wu, Pierrick Cheval Internet Draft Alcatel USA Expiration Date: May 1999 Pasi Vaananen Nokia November 1998 MPLS Extensions for Differential Services draft-wu-mpls-diff-ext-00.txt 0. Status of this Memo This document is an Internet-Draft. Internet-Drafts are working docu- ments 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), ftp.ietf.org (US East Coast), or ftp.isi.edu (US West Coast). 1. Abstract This document provides new message formats and the updates of the current MPLS LDP messages and MPLS RSVP messages to support the differentiated services (DiffServ). We first discuss the extension to the current MPLS architecture [MPLSARCH] to support differentiated services [DIFFARCH] over MPLS cloud. For a Behavior Aggregate (BA), we define "Behavior Aggregate Selector (BAS)" which related to the forwarding queue behavior, and define "Behavior Modifier (BM)" which related to the dropping behavior. Each DiffServ Per Hop Behavior (PHB) can be represented using either BAS only or combination of BAS and BM. In brief, we propose that all LSRs on the path of a single MPLS LSP apply the same Behavior Aggregate Selector (BAS) for the traffic Wu, Cheval, Vaananen [Page 1] Internet Draft draft-wu-mpls-diff-ext-00.txt November 1998 carried in this LSP, on the basis of behavior class selector that is specified as part of LSP set-up process. Behavior Modifier (BM), carried as part of label encapsulation header, is used to further modify the behavior selected by BAS. Behavior modifiers are carried as part of MPLS shim header, ATM cell header or Frame Relay header, and can be used to indicate, e.g. drop priority or congestion indication inside a single BAS. This proposal is not intended to prevent any potential future evolution that would accomodate multiple, different Behavior Aggregate Selectors (BAS) within a single LSP. 2. Introduction In an MPLS domain, when a stream of data traverses a same path, an Label Switch Path (LSP) can be established through MPLS signalling protocols. At the ingress Label Switch Router (LSR), the packet is assigned with a label and is transmitted downstream. At each LSR along the LSP, the label is used to forward the packet to the next hop. In a DiffServ domain, when a stream of data have a same forwarding behavior, packets belong to that stream are assigned with the same behavioral aggregate. At the ingress node the packet is classified and assigned with a Differentiated Services Code Point (DSCP). which represents a class of service. At each transit node, the destination address is used to decide the next hop. The DSCP is used to select the Per Hop Behaviour (PHB) that determines the queuing treatment and, in some cases, drop propability inside the queue for each packet. To combine the MPLS and Diffserv together, when a stream of data traverse the same path and is forwarded using same PHB, an LSP can be established, leading to selection of same queuing treatment in LSRs along the path. Each PHB is then mapped to the established BAS, or the combination of BAS (determined by label) and BM field, when drop priority or other treatment that modifies the forwarding treatment inside the queue is specified. The method and consequences of building an LSP which can support multiple BAS are for further study (FFS). 2.1 The Next Hop Label Forwarding Entry (NHLFE) As described in [MPLSARCH] document, The "Next Hop Label Forwarding Entry" (NHLFE) is used when forwarding a labeled packet. It contains Wu, Cheval, Vaananen [Page 2] Internet Draft draft-wu-mpls-diff-ext-00.txt November 1998 the following information: 1. the packet's next hop 2. the data link encapsulation to use when transmitting the packet 3. the way to encode the label stack when transmitting the packet 4. the operation to perform on the packet's label stack To combine MPLS and Diffserv, the NHLFE will be extended to include: 5. the packet's behavior aggregate selector, which determines the queuing treatment of the packet carried on this LSP. 2.2 Setting Up an LSP Which Support Differentiated Services As described in [MPLSARCH], an LSP can be established through "downstream-on-demand" or "downstream" label distribution. "Downstream-on-demand" means an upstream LSR explicitly requests from its next hop for a particular FEC, a label binding for that FEC, whereas "downstream" means an downstream LSR to distribute bindings to upstream LSRs that have not explicitly requested them. To support DiffServ, the Diffserv related behavioral aggregate attributes will be added to the MPLS label request messages and MPLS label binding messages. The detailed format of these messages will be explained later. The MPLS control application on each LSR along the LSP will process the new attributes and install the DiffServ forwarding behavior for that LSP. 2.3 Issues Related to Label-Merge In an MPLS domain, two or more LSPs can be merged into one LSP at one LSR. Here LSPs which carry certain Differentiated Service traffic can only be merged into one LSP, if they carry the traffic which belongs to the same behavioral aggregate. As of today, in differentiated service domain, there are 2 kinds of PHBs defined: -- EF PHB [DIFF_EF] The EF traffic is forwarded with low loss, low latency, low jitter. Wu, Cheval, Vaananen [Page 3] Internet Draft draft-wu-mpls-diff-ext-00.txt November 1998 The aggregate arrival rate that is associated with same egress interface in the node is always less than that interfaces configured minimum departure rate for EF PHB. Since EF traffic requires absolute bandwidth, when 2 EF traffic LSPs are merged using downstream-on-demand ordered mode, it is recommended the "brute force" method is used. The "brute force" mode means that at the merge point an updated label request message is sent all the way from the merge point to the egress LSR. Each LSR along the LSP must make sure the incoming EF traffic rate is less than the interface's configured EF minimum departure rate. -- AF PHB [DIFF_AF] As described in [DIFF_AF], Assured Forwarding (AF) PHB group provides forwarding of IP packets in N independent AF classes. Within each AF class, an IP packet is assigned one of M different levels of drop precedence. An IP packet that belongs to an AF class i and has drop precedence j is marked with the AF codepoint AFij, where 1 <= i <= N and 1 <= j <= M. Currently, four classes (N=4) with three levels of drop precedence in each class (M=3) are defined for general use. Two LSPs are allowed to be merged into one LSP only when 2 LSPs carry the traffic which has the same AF class. Since AF class traffic requires relative bandwidth, when 2 LSPs merged there is no need to send a new label request all the way down the egress node. The subject of AF traffic parameters is for furthur study (FFS). 2.4 Data Transfer in an MPLS LSP 2.4.1 Shim Header Encapsulation When MPLS shim header is used, the traffic carried through an MPLS LSP is wrapped with at least one MPLS shim header. In the shim header, there is a field currently specified as "Experimental Use". We propose to use this field to represent BM field, and specifically drop precedence level for AF traffic. Mapping from AF codepoints AFij to the BM field are as follows: Wu, Cheval, Vaananen [Page 4] Internet Draft draft-wu-mpls-diff-ext-00.txt November 1998 AF Class BM Fields: AFx1 ------------> 001 AFx2 ------------> 010 AFx3 ------------> 011 Traffic from more than one AF class AFij (where i is not equal ) MUST NOT be mapped onto same LSP. 2.4.2. ATM header encapsulation AF Class: CLP bit: AFx1 --> 0 AFx2 --> 1 AFx3 --> 1 AF aggregate class selection for ATM is performed by mapping the AFxj to desired ATM LSP, with appropriate traffic class and traffic parameters. ATM traffic class selection and parameter mapping is not discussed in this version of the document. 2.4.3. Frame Relay header encapsulation AF Class: DE bit: AFx1 --> 0 AFx2 --> 1 AFx3 --> 1 AF aggregate class selection for FR is performed by mapping the AFxj to desired FR LSP, with appropriate traffic traffic parameters. Frame relay parameter mapping is not discussed in this version of the document. 3. Message Format As of today, there are two signalling protocols proposed by MPLS working group: RSVP [MPLS_RSVP] and LDP [MPLS_LDP]. The following sections proposes the new messages and new objects for differentiated service support. 3.1 New RSVP Object Format The RSVP SENDER_TSPEC object is expanded to carry the information which PHB is used to forward the traffic. Wu, Cheval, Vaananen [Page 5] Internet Draft draft-wu-mpls-diff-ext-00.txt November 1998 3.1.1 SENDER_TSPEC Object for EF PHB DiffServ EF PHB, SENDER_TSPEC object: Class = 12, C-Type = 3 The format can be 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Length (bytes) | Class-Num | C-Type | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | The Committed Data Rate | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ -- The committed Data Rate, the peak rate that traffic is allowed to enter into the network. 3.1.2 SENDER_TSPEC Object for AF PHB DiffServ AF PHB, SENDER_TSPEC object: Class = 12, C-Type = 4 The format can be 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Length (bytes) | Class-Num | C-Type | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | The AF Class Number | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ -- The AF Class Number, which contains the AF class number for the traffic 3.2 New LDP Object Format 3.2.1 The New COS TLV for EF and AF PHBs COS TLV is expanded to contain the following values: Wu, Cheval, Vaananen [Page 6] Internet Draft draft-wu-mpls-diff-ext-00.txt November 1998 COS Name Type code Value EF PHB 0x02 4 octet which is the Committed Data Rate (CDR) AF PHB 0x03 1 octet, which can be class1, class2, class3, class4 3.2.2 The New LDP Label Re-request Message Format A new message, Label Re-request, is defined for renegotiating the bandwidth requirement of an established LSP. When 2 LSPs which carry the EF traffic merged at one LSR, an Label Re-Request message can be sent down from the merged point to the egress LSR. This Label Re- Request carries the aggregated Committed Data Rate of the 2 LSPs. The format of this Label Re-request is very similar to the Label Request message [MPLS_LDP]. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Label Re-Request (0x0406) | Message Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Message ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FEC-Request TLV 1 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FEC-Request TLV n | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Optional Parameters | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Message Id Four octet integer used to identify this message. FEC-Request TLV Each specifies an FEC for which a label mapping is requested. A FEC-Request TLV is a nested TLV that contains a FEC TLV, an optional COS TLV, and an optional Hop Count TLV. Wu, Cheval, Vaananen [Page 7] Internet Draft draft-wu-mpls-diff-ext-00.txt November 1998 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FEC-Request (0x0701) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FEC TLV | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | COS TLV (optional) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Hop Count TLV (optional) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The encoding for the FEC, COS, and Hop Count TLVs are specified in Section "Commonly Used TLVs". Optional Parameters No optional parameters are defined for the Label Request message. 4. Security The security issues will be discussed in the future version of this document. 5. Achnowledgments Thanks to Michel Henrion, Emmanuel Desmet, Bernard Sales, Christophe Boscher, Olivier Duroyon and Sudheer Dharanikota for their helpful review and feedback. 6. References [MPLSARCH] Rosen et al, "Multiprotocol Label Switching Architecture", working in progress, (draft-ietf-mpls-arch-02), July, 1998 [DIFFARCH] Blake et al, "An Architecture for Differentiated Services", working in progress, (draft-ietf-diffserv-arch-02.txt), October, 1998 [DIFF_AF] Heinanen et al, "Assured Forwarding PHB Group", working in progress, (draft-ietf-diffserv-af-02.txt), October, 1998 Wu, Cheval, Vaananen [Page 8] Internet Draft draft-wu-mpls-diff-ext-00.txt November 1998 [DIFF_EF] Jacobson et al, "An Expedited Forwarding PHB", working in progress, (draft-ietf-diffserv-phb-ef-00.txt), August, 1998 [MPLS_LDP] Andersson et al, "LDP Specification", working in progress, (draft-ietf-mpls-ldp-00.txt), August, 1998 [MPLS_RSVP] Swallow et al, "Extensions to RSVP for Traffic Engineering", working in progress, (draft-swallow-mpls-rsvp-trafeng- 00.txt), Auguest, 1998 7. Author Information Liwen Wu Email: liwen.wu@adn.alcatel.com Tel: 703-724-2619 44983 Knoll Square, Ashburn, VA 20147, USA Pierrick Cheval Email: pierrick.cheval@adn.alcatel.com Tel: 703-724-2080 44983 Knoll Square, Ashburn, VA 20147, USA Pasi Vannanen Email: pasi.vaananen@ntc.nokia.com Tel:781-238-4981 3 Burlington Woods Drive, Suite 250, Burlington, MA. 01803 Wu, Cheval, Vaananen [Page 9]