draft-ietf-mpls-diff-ext-08.txt   draft-ietf-mpls-diff-ext-09.txt 
skipping to change at line 14 skipping to change at line 14
Bruce Davie Bruce Davie
Cisco Systems Cisco Systems
Shahram Davari Shahram Davari
PMC-Sierra Inc. PMC-Sierra Inc.
Pasi Vaananen Pasi Vaananen
Nokia Nokia
Ram Krishnan Ram Krishnan
Lucent Technologies Axiowave Networks
Pierrick Cheval Pierrick Cheval
Alcatel Alcatel
Juha Heinanen Juha Heinanen
Telia Finland Telia Finland
IETF Internet Draft IETF Internet Draft
Expires: August, 2001 Expires: September, 2001
Document: draft-ietf-mpls-diff-ext-08.txt February, 2001 Document: draft-ietf-mpls-diff-ext-09.txt April, 2001
MPLS Support of Differentiated Services MPLS Support of Differentiated Services
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026. all provisions of Section 10 of RFC2026.
Internet-Drafts are Working documents of the Internet Engineering Internet-Drafts are Working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at line 50 skipping to change at line 50
at any time. It is inappropriate to use Internet-Drafts as reference at any time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
Le Faucheur, et. al 1 Le Faucheur, et. al 1
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
Abstract Abstract
This document defines a flexible solution for support of This document defines a flexible solution for support of
Differentiated Services (Diff-Serv) over Multi-Protocol Label Differentiated Services (Diff-Serv) over Multi-Protocol Label
Switching (MPLS) networks. Switching (MPLS) networks.
This solution allows the MPLS network administrator to select how This solution allows the MPLS network administrator to select how
Diff-Serv Behavior Aggregates (BAs) are mapped onto Label Switched Diff-Serv Behavior Aggregates (BAs) are mapped onto Label Switched
Paths (LSPs) so that he/she can best match the Diff-Serv, Traffic Paths (LSPs) so that he/she can best match the Diff-Serv, Traffic
skipping to change at line 105 skipping to change at line 105
This document specifies a solution for supporting the Diff-Serv This document specifies a solution for supporting the Diff-Serv
Behavior Aggregates whose corresponding PHBs are currently defined Behavior Aggregates whose corresponding PHBs are currently defined
(in [DIFF_HEADER], [DIFF_AF], [DIFF_EF]) over an MPLS network. This (in [DIFF_HEADER], [DIFF_AF], [DIFF_EF]) over an MPLS network. This
solution also offers flexibility for easy support of PHBs that may solution also offers flexibility for easy support of PHBs that may
be defined in the future. be defined in the future.
As mentioned in [DIFF_HEADER], "Service providers are not required As mentioned in [DIFF_HEADER], "Service providers are not required
Le Faucheur et. al 2 Le Faucheur et. al 2
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
to use the same node mechanisms or configurations to enable service to use the same node mechanisms or configurations to enable service
differentiation within their networks, and are free to configure the differentiation within their networks, and are free to configure the
node parameters in whatever way that is appropriate for their node parameters in whatever way that is appropriate for their
service offerings and traffic engineering objectives". Thus, the service offerings and traffic engineering objectives". Thus, the
solution defined in this document gives Service Providers solution defined in this document gives Service Providers
flexibility in selecting how Diff-Serv classes of service are Routed flexibility in selecting how Diff-Serv classes of service are Routed
or Traffic Engineered within their domain (e.g. separate classes of or Traffic Engineered within their domain (e.g. separate classes of
services supported via separate LSPs and Routed separately, all services supported via separate LSPs and Routed separately, all
classes of service supported on the same LSP and Routed together). classes of service supported on the same LSP and Routed together).
skipping to change at line 161 skipping to change at line 161
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in
this document are to be interpreted as described in RFC 2119. this document are to be interpreted as described in RFC 2119.
The reader is assumed to be familiar with the terminology of The reader is assumed to be familiar with the terminology of
[MPLS_ARCH], [MPLS_ENCAPS], [MPLS_ATM] and [MPLS_FR] including the [MPLS_ARCH], [MPLS_ENCAPS], [MPLS_ATM] and [MPLS_FR] including the
following: following:
EXP EXPerimental (bits) EXP EXPerimental (bits)
Le Faucheur et. al 3 Le Faucheur et. al 3
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
FEC Forwarding Equivalency Class FEC Forwarding Equivalency Class
FTN FEC-To-NHLFE Map FTN FEC-To-NHLFE Map
ILM Incoming Label Map ILM Incoming Label Map
LC-ATM Label Switching Controlled-ATM (interface) LC-ATM Label Switching Controlled-ATM (interface)
LC-FR Label Switching Controlled-Frame Relay (interface) LC-FR Label Switching Controlled-Frame Relay (interface)
skipping to change at line 216 skipping to change at line 216
are applied to the Behavior Aggregate(s) belonging to a are applied to the Behavior Aggregate(s) belonging to a
given OA. For example, AF1x is a PSC comprising the given OA. For example, AF1x is a PSC comprising the
AF11, AF12 and AF13 PHBs. EF is an example of PSC AF11, AF12 and AF13 PHBs. EF is an example of PSC
comprising a single PHB, the EF PHB. comprising a single PHB, the EF PHB.
The following acronyms are also used: The following acronyms are also used:
CLP Cell Loss Priority CLP Cell Loss Priority
Le Faucheur et. al 4 Le Faucheur et. al 4
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
DE Discard Eligibility DE Discard Eligibility
SNMP Simple Network Management Protocol SNMP Simple Network Management Protocol
Finally, the following acronyms are defined in this specification: Finally, the following acronyms are defined in this specification:
E-LSP EXP-Inferred-PSC LSP E-LSP EXP-Inferred-PSC LSP
L-LSP Label-Only-Inferred-PSC LSP L-LSP Label-Only-Inferred-PSC LSP
1.2 EXP-Inferred-PSC LSPs (E-LSP) 1.2 EXP-Inferred-PSC LSPs (E-LSP)
A single LSP can be used to support up to eight BAs of a given FEC, A single LSP can be used to support one or more OAs. Such LSPs can
regardless of how many OAs these BAs span. With such LSPs, the EXP support up to eight BAs of a given FEC, regardless of how many OAs
field of the MPLS Shim Header is used by the LSR to determine the these BAs span. With such LSPs, the EXP field of the MPLS Shim
PHB to be applied to the packet. This includes both the PSC and the Header is used by the LSR to determine the PHB to be applied to the
drop preference. packet. This includes both the PSC and the drop preference.
We refer to such LSPs as "EXP-inferred-PSC LSPs" (E-LSP), since the We refer to such LSPs as "EXP-inferred-PSC LSPs" (E-LSP), since the
PSC of a packet transported on this LSP depends on the EXP field PSC of a packet transported on this LSP depends on the EXP field
value for that packet. value for that packet.
The mapping from EXP field to PHB (ie to PSC and drop precedence) The mapping from EXP field to PHB (ie to PSC and drop precedence)
for a given such LSP, is either explicitly signaled at label set-up for a given such LSP, is either explicitly signaled at label set-up
or relies on a pre-configured mapping. or relies on a pre-configured mapping.
Detailed operations of E-LSPs are specified in section 3 below. Detailed operations of E-LSPs are specified in section 3 below.
skipping to change at line 271 skipping to change at line 271
since the PSC can be fully inferred from the label without any other since the PSC can be fully inferred from the label without any other
information (e.g. regardless of the EXP field value). Detailed information (e.g. regardless of the EXP field value). Detailed
operations of L-LSPs are specified in section 4 below. operations of L-LSPs are specified in section 4 below.
1.4 Overall Operations 1.4 Overall Operations
For a given FEC, and unless media specific restrictions apply as For a given FEC, and unless media specific restrictions apply as
identified in the sections 7, 8 and 9 below, this specification identified in the sections 7, 8 and 9 below, this specification
Le Faucheur et. al 5 Le Faucheur et. al 5
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
allows any one of the following combinations within an MPLS Diff- allows any one of the following combinations within an MPLS Diff-
Serv domain: Serv domain:
- zero or any number of E-LSPs, and - zero or any number of E-LSPs, and
- zero or any number of L-LSPs. - zero or any number of L-LSPs.
The network administrator selects the actual combination of LSPs The network administrator selects the actual combination of LSPs
from the set of allowed combinations and selects how the Behavior from the set of allowed combinations and selects how the Behavior
Aggregates are actually transported over this combination of LSPs, Aggregates are actually transported over this combination of LSPs,
in order to best match his/her environment and objectives in terms in order to best match his/her environment and objectives in terms
skipping to change at line 327 skipping to change at line 327
1.6 Bandwidth Reservation for E-LSPs and L-LSPs 1.6 Bandwidth Reservation for E-LSPs and L-LSPs
Regardless of which label binding protocol is used, E-LSPs and Regardless of which label binding protocol is used, E-LSPs and
L-LSPs may be established without bandwidth reservation or with L-LSPs may be established without bandwidth reservation or with
bandwidth reservation. bandwidth reservation.
Establishing an E-LSP or L-LSP with bandwidth reservation means that Establishing an E-LSP or L-LSP with bandwidth reservation means that
bandwidth requirements for the LSP are signaled at LSP establishment bandwidth requirements for the LSP are signaled at LSP establishment
Le Faucheur et. al 6 Le Faucheur et. al 6
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
time. Such signaled bandwidth requirements may be used by LSRs at time. Such signaled bandwidth requirements may be used by LSRs at
establishment time to perform admission control of the signaled LSP establishment time to perform admission control of the signaled LSP
over the Diff-Serv resources provisioned (e.g. via configuration, over the Diff-Serv resources provisioned (e.g. via configuration,
SNMP or policy protocols) for the relevant PSC(s). Such signaled SNMP or policy protocols) for the relevant PSC(s). Such signaled
bandwidth requirements may also be used by LSRs at establishment bandwidth requirements may also be used by LSRs at establishment
time to perform adjustment to the Diff-Serv resources associated time to perform adjustment to the Diff-Serv resources associated
with the relevant PSC(s) (e.g. adjust PSC scheduling weight). with the relevant PSC(s) (e.g. adjust PSC scheduling weight).
Note that establishing an E-LSP or L-LSP with bandwidth reservation Note that establishing an E-LSP or L-LSP with bandwidth reservation
does not mean that per-LSP scheduling is necessarily required. Since does not mean that per-LSP scheduling is required. Since E-LSPs and
E-LSPs and L-LSPs are specified in this document for support of L-LSPs are specified in this document for support of Differentiated
Differentiated Services, the required forwarding treatment Services, the required forwarding treatment (scheduling and drop
(scheduling and drop policy) is defined by the appropriate Diff-Serv policy) is defined by the appropriate Diff-Serv PHB. This forwarding
PHB. This forwarding treatment MUST be applied by the LSR at the treatment MUST be applied by the LSR at the granularity of the BA
granularity of the BA and MUST be compliant with the relevant PHB and MUST be compliant with the relevant PHB specification.
specification.
When bandwidth requirements are signaled at establishment of an When bandwidth requirements are signaled at establishment of an
L-LSP, the signaled bandwidth is obviously associated with the L-LSP, the signaled bandwidth is obviously associated with the
L-LSP's PSC. Thus, LSRs which use the signaled bandwidth to perform L-LSP's PSC. Thus, LSRs which use the signaled bandwidth to perform
admission control may perform admission control over Diff-Serv admission control may perform admission control over Diff-Serv
resources which are dedicated to the PSC (e.g. over the bandwidth resources which are dedicated to the PSC (e.g. over the bandwidth
guaranteed to the PSC through its scheduling weight). guaranteed to the PSC through its scheduling weight).
When bandwidth requirements are signaled at establishment of an When bandwidth requirements are signaled at establishment of an
E-LSP, the signaled bandwidth is associated collectively to the E-LSP, the signaled bandwidth is associated collectively to the
skipping to change at line 380 skipping to change at line 379
clearly depends on the forwarded packet's Behavior Aggregate. Also, clearly depends on the forwarded packet's Behavior Aggregate. Also,
since the IP DS field of a forwarded packet may not be directly since the IP DS field of a forwarded packet may not be directly
visible to an LSR, the way to determine the PHB to be applied to a visible to an LSR, the way to determine the PHB to be applied to a
received packet and to encode the PHB into a transmitted packet is received packet and to encode the PHB into a transmitted packet is
different than a non-MPLS Diff-Serv Router. different than a non-MPLS Diff-Serv Router.
Thus, in order to describe Label Forwarding by Diff-Serv LSRs, we Thus, in order to describe Label Forwarding by Diff-Serv LSRs, we
model the LSR Diff-Serv label switching behavior as comprising four model the LSR Diff-Serv label switching behavior as comprising four
stages: stages:
- Incoming PHB Determination (A) - Incoming PHB Determination (A)
- Outgoing PHB Determination with Optional Traffic Conditioning(B)
Le Faucheur et. al 7 Le Faucheur et. al 7
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
- Outgoing PHB Determination with Optional Traffic Conditioning(B)
- Label Forwarding (C) - Label Forwarding (C)
- Encoding of Diff-Serv information into Encapsulation Layer (EXP, - Encoding of Diff-Serv information into Encapsulation Layer (EXP,
CLP, DE, User_Priority) (D) CLP, DE, User_Priority) (D)
Each stage is described in more details in the following sections. Each stage is described in more details in the following sections.
Obviously, to enforce the Diff-Serv service differentiation the LSR Obviously, to enforce the Diff-Serv service differentiation the LSR
MUST also apply the forwarding treatment corresponding to the MUST also apply the forwarding treatment corresponding to the
Outgoing PHB. Outgoing PHB.
skipping to change at line 438 skipping to change at line 437
PHB Determination considering a given received label stack entry PHB Determination considering a given received label stack entry
and/or received incoming MPLS encapsulation information depending on and/or received incoming MPLS encapsulation information depending on
the incoming LSP type and depending on the incoming MPLS the incoming LSP type and depending on the incoming MPLS
encapsulation. encapsulation.
Section 2.6 provides the details of which label stack entry to Section 2.6 provides the details of which label stack entry to
consider for the Incoming PHB Determination depending on the consider for the Incoming PHB Determination depending on the
supported Diff-Serv tunneling mode. supported Diff-Serv tunneling mode.
Le Faucheur et. al 8 Le Faucheur et. al 8
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
2.2.2 Incoming PHB Determination Considering IP Header 2.2.2 Incoming PHB Determination Considering IP Header
Section 2.6 provides the details of when the IP Header is to be Section 2.6 provides the details of when the IP Header is to be
considered for incoming PHB determination depending on the supported considered for incoming PHB determination depending on the supported
Diff-Serv tunneling model. In those cases where the IP header is to Diff-Serv tunneling model. In those cases where the IP header is to
be used, this stage operates exactly as with a non-MPLS IP Diff-Serv be used, this stage operates exactly as with a non-MPLS IP Diff-Serv
Router and uses the DS field to determine incoming PHB. Router and uses the DS field to determine incoming PHB.
2.3 Outgoing PHB Determination With Optional Traffic Conditioning 2.3 Outgoing PHB Determination With Optional Traffic Conditioning
skipping to change at line 493 skipping to change at line 492
Serv Context is stored in the NHLFE for each outgoing label which is Serv Context is stored in the NHLFE for each outgoing label which is
swapped or pushed. swapped or pushed.
This Diff-Serv Context information is populated into the ILM and the This Diff-Serv Context information is populated into the ILM and the
FTN at label establishment time. FTN at label establishment time.
If the label corresponds to an E-LSP for which no EXP<-->PHB mapping If the label corresponds to an E-LSP for which no EXP<-->PHB mapping
has been explicitly signaled at LSP setup, the `supported PHBs' is has been explicitly signaled at LSP setup, the `supported PHBs' is
Le Faucheur et. al 9 Le Faucheur et. al 9
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
populated with the set of PHBs of the preconfigured populated with the set of PHBs of the preconfigured
EXP<-->PHB Mapping, which is discussed below in section 3.2.1. EXP<-->PHB Mapping, which is discussed below in section 3.2.1.
If the label corresponds to an E-LSP for which an EXP<-->PHB mapping If the label corresponds to an E-LSP for which an EXP<-->PHB mapping
has been explicitly signaled at LSP setup, the `supported PHBs' is has been explicitly signaled at LSP setup, the `supported PHBs' is
populated with the set of PHBs of the signaled EXP<-->PHB mapping. populated with the set of PHBs of the signaled EXP<-->PHB mapping.
If the label corresponds to an L-LSP, the `supported PHBs' is If the label corresponds to an L-LSP, the `supported PHBs' is
populated with the set of PHBs forming the PSC that is signaled at populated with the set of PHBs forming the PSC that is signaled at
skipping to change at line 549 skipping to change at line 548
Serv information in the transmitted packet (e.g. MPLS Shim EXP, ATM Serv information in the transmitted packet (e.g. MPLS Shim EXP, ATM
CLP, Frame Relay DE, 802.1 User_Priority). CLP, Frame Relay DE, 802.1 User_Priority).
2.5.1 Encoding Diff-Serv Information Into Transmitted Label Entry 2.5.1 Encoding Diff-Serv Information Into Transmitted Label Entry
Sections 3.5 and 4.5 provide the details on how to perform Diff-Serv Sections 3.5 and 4.5 provide the details on how to perform Diff-Serv
information encoding into a given transmitted label stack entry information encoding into a given transmitted label stack entry
and/or transmitted MPLS encapsulation information depending on the and/or transmitted MPLS encapsulation information depending on the
Le Faucheur et. al 10 Le Faucheur et. al 10
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
corresponding outgoing LSP type and depending on the MPLS corresponding outgoing LSP type and depending on the MPLS
encapsulation. encapsulation.
Section 2.6 provides the details of which label stack entry to Section 2.6 provides the details of which label stack entry to
perform Diff-Serv information encoding into depending on the perform Diff-Serv information encoding into depending on the
supported Diff-Serv tunneling mode. supported Diff-Serv tunneling mode.
2.5.2 Encoding Diff-Serv Information Into Transmitted IP Header 2.5.2 Encoding Diff-Serv Information Into Transmitted IP Header
skipping to change at line 605 skipping to change at line 604
obviously not an issue at all. In situations where this obviously not an issue at all. In situations where this
information is meaningful at the LSP Egress, then it must information is meaningful at the LSP Egress, then it must
somehow be carried in some other means. somehow be carried in some other means.
The two conceptual models for Diff-Serv tunneling over IP Tunnels The two conceptual models for Diff-Serv tunneling over IP Tunnels
defined in [DIFF_TUNNEL] are applicable and useful to Diff-Serv over defined in [DIFF_TUNNEL] are applicable and useful to Diff-Serv over
MPLS but their respective detailed operations is somewhat different MPLS but their respective detailed operations is somewhat different
over MPLS. These two models are the Pipe Model and the Uniform over MPLS. These two models are the Pipe Model and the Uniform
Le Faucheur et. al 11 Le Faucheur et. al 11
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
Model. Their operations over MPLS are specified in the following Model. Their operations over MPLS are specified in the following
sections. Discussion and definition of alternative tunneling models sections. Discussion and definition of alternative tunneling models
are outside the scope of this specification. are outside the scope of this specification.
2.6.2 Pipe Model 2.6.2 Pipe Model
With the Pipe Model, MPLS tunnels (aka LSPs) are used to hide the With the Pipe Model, MPLS tunnels (aka LSPs) are used to hide the
intermediate MPLS nodes between LSP Ingress and Egress from the intermediate MPLS nodes between LSP Ingress and Egress from the
Diff-Serv perspective. Diff-Serv perspective.
skipping to change at line 658 skipping to change at line 657
Diff-Serv forwarding treatment (i.e. actual PHB) Diff-Serv forwarding treatment (i.e. actual PHB)
I represents the LSP ingress node I represents the LSP ingress node
E represents the LSP egress node E represents the LSP egress node
With the Pipe Model, the "LSP Diff-Serv Information" needs to be With the Pipe Model, the "LSP Diff-Serv Information" needs to be
conveyed to LSP Egress so that it applies its forwarding treatment conveyed to LSP Egress so that it applies its forwarding treatment
based on it. The "Tunneled Diff-Serv information" also needs to be based on it. The "Tunneled Diff-Serv information" also needs to be
conveyed to the LSP Egress so it can be conveyed further downstream. conveyed to the LSP Egress so it can be conveyed further downstream.
Le Faucheur et. al 12 Le Faucheur et. al 12
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
Since both Diff-Serv information need to be conveyed to the LSP Since both Diff-Serv information need to be conveyed to the LSP
Egress, the Pipe Model operates only without PHP. Egress, the Pipe Model operates only without PHP.
The Pipe Model is particularly appropriate to environments in which: The Pipe Model is particularly appropriate to environments in which:
- the cloud upstream of the incoming interface of the LSP Ingress - the cloud upstream of the incoming interface of the LSP Ingress
and the cloud downstream of the outgoing interface of the LSP and the cloud downstream of the outgoing interface of the LSP
Egress are in Diff-Serv domains which use a common set of Diff- Egress are in Diff-Serv domains which use a common set of Diff-
Serv service provisioning policies and PHB definitions, while Serv service provisioning policies and PHB definitions, while
the LSP spans one (or more) Diff-Serv domain(s) which use(s) a the LSP spans one (or more) Diff-Serv domain(s) which use(s) a
skipping to change at line 714 skipping to change at line 713
- when performing a push operation for the considered LSP, the - when performing a push operation for the considered LSP, the
LSR: LSR:
o encodes Diff-Serv Information corresponding to the o encodes Diff-Serv Information corresponding to the
OUTGOING PHB in the transmitted label entry corresponding OUTGOING PHB in the transmitted label entry corresponding
to the pushed label. to the pushed label.
o encodes Diff-Serv Information corresponding to the o encodes Diff-Serv Information corresponding to the
INCOMING PHB in the encapsulated header (swapped label INCOMING PHB in the encapsulated header (swapped label
entry or IP header). entry or IP header).
Le Faucheur et. al 13 Le Faucheur et. al 13
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
- when performing a swap-only operation for the considered LSP, - when performing a swap-only operation for the considered LSP,
the LSR encodes Diff-Serv Information in the transmitted label the LSR encodes Diff-Serv Information in the transmitted label
entry that contains the swapped label entry that contains the swapped label
- when performing a pop operation for the considered LSP, the LSR - when performing a pop operation for the considered LSP, the LSR
does not perform Encoding of Diff-Serv Information into the does not perform Encoding of Diff-Serv Information into the
header exposed by the pop operation (i.e. the LSR leaves the header exposed by the pop operation (i.e. the LSR leaves the
exposed header "as is"). exposed header "as is").
2.6.2.1 Short Pipe Model 2.6.2.1 Short Pipe Model
skipping to change at line 767 skipping to change at line 766
=========== LSP ============================> =========== LSP ============================>
---Swap--(M)--...--Swap------ ---Swap--(M)--...--Swap------
/ (outer header) \ / (outer header) \
(M) (M) (M) (M)
/ \ / \
>--(m)-Push.................(m).............Pop-(m)--E--(m)--> >--(m)-Push.................(m).............Pop-(m)--E--(m)-->
I (inner header) P (M*) I (inner header) P (M*)
Le Faucheur et. al 14 Le Faucheur et. al 14
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
(M) represents the "LSP Diff-Serv information" (M) represents the "LSP Diff-Serv information"
(m) represents the "Tunneled Diff-Serv information" (m) represents the "Tunneled Diff-Serv information"
(*) The Penultimate LSR considers the LSP Diff-Serv information (*) The Penultimate LSR considers the LSP Diff-Serv information
received in the outer header (i.e. before the pop) in order to received in the outer header (i.e. before the pop) in order to
apply its Diff-Serv forwarding treatment (i.e. actual PHB) apply its Diff-Serv forwarding treatment (i.e. actual PHB)
I represents the LSP ingress node I represents the LSP ingress node
P represents the LSP penultimate node P represents the LSP penultimate node
E represents the LSP egress node E represents the LSP egress node
skipping to change at line 822 skipping to change at line 821
which is used to do the actual forwarding. In particular, when a which is used to do the actual forwarding. In particular, when a
pop operation is to be performed for the considered LSP, the LSR pop operation is to be performed for the considered LSP, the LSR
performs Incoming PHB Determination AFTER the pop. performs Incoming PHB Determination AFTER the pop.
For support of the Short Pipe Model over a given LSP with PHP, an For support of the Short Pipe Model over a given LSP with PHP, an
LSR performs Incoming PHB Determination and Diff-Serv information LSR performs Incoming PHB Determination and Diff-Serv information
Encoding in the same manner as without PHP with the following Encoding in the same manner as without PHP with the following
exceptions: exceptions:
Le Faucheur et. al 15 Le Faucheur et. al 15
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
- the Penultimate LSR performs Incoming PHB Determination - the Penultimate LSR performs Incoming PHB Determination
considering the outer label entry in the received label stack. considering the outer label entry in the received label stack.
In other words, when a pop operation is to be performed for the In other words, when a pop operation is to be performed for the
considered LSP, the Penultimate LSR performs Incoming PHB considered LSP, the Penultimate LSR performs Incoming PHB
Determination BEFORE the pop. Determination BEFORE the pop.
Note that the behavior of the Penultimate LSR in the Short Pipe Mode Note that the behavior of the Penultimate LSR in the Short Pipe Mode
with PHP, is identical to the behavior of the LSP Egress in the Pipe with PHP, is identical to the behavior of the LSP Egress in the Pipe
Mode (necessarily without PHP). Mode (necessarily without PHP).
skipping to change at line 876 skipping to change at line 875
Operation of the Uniform Model with PHP is illustrated below : Operation of the Uniform Model with PHP is illustrated below :
========== LSP =========================> ========== LSP =========================>
---Swap-(M)-...-Swap------ ---Swap-(M)-...-Swap------
/ (outer header) \ / (outer header) \
(M) (M) (M) (M)
/ \ / \
Le Faucheur et. al 16 Le Faucheur et. al 16
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
>--(M)--Push..............(x)............Pop-(M)--E--(M)-> >--(M)--Push..............(x)............Pop-(M)--E--(M)->
I (inner header) P I (inner header) P
(M) represents the Meaningful Diff-Serv information encoded in the (M) represents the Meaningful Diff-Serv information encoded in the
corresponding header. corresponding header.
(x) represents non-meaningful Diff-Serv information. (x) represents non-meaningful Diff-Serv information.
I represents the LSP ingress node I represents the LSP ingress node
P represents the LSP penultimate node P represents the LSP penultimate node
E represents the LSP egress node E represents the LSP egress node
skipping to change at line 931 skipping to change at line 930
"Set of PHB-->Encaps mappings" for the label corresponding to "Set of PHB-->Encaps mappings" for the label corresponding to
the exposed header (or the PHB-->DSCP mapping) in order to the exposed header (or the PHB-->DSCP mapping) in order to
perform Diff-Serv Information Encoding. Methods for providing perform Diff-Serv Information Encoding. Methods for providing
this mapping awareness are outside the scope of this this mapping awareness are outside the scope of this
specification. As an example, the "PHB-->DSCP mapping" may be specification. As an example, the "PHB-->DSCP mapping" may be
locally configured. As another example, in some environments, it locally configured. As another example, in some environments, it
may be appropriate for the Penultimate LSR to assume that the may be appropriate for the Penultimate LSR to assume that the
"Set of PHB-->Encaps mappings" to be used for the outgoing label "Set of PHB-->Encaps mappings" to be used for the outgoing label
Le Faucheur et. al 17 Le Faucheur et. al 17
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
in the exposed header is the "Set of PHB-->Encaps mappings" that in the exposed header is the "Set of PHB-->Encaps mappings" that
would be used by the LSR if the LSR was not doing PHP. would be used by the LSR if the LSR was not doing PHP.
Note also that this specification assumes that the Penultimate Note also that this specification assumes that the Penultimate
LSR does not perform label swapping over the label entry exposed LSR does not perform label swapping over the label entry exposed
by the pop operation (and in fact that it does not even look at by the pop operation (and in fact that it does not even look at
the exposed label). Consequently, restrictions may apply to the the exposed label). Consequently, restrictions may apply to the
Diff-Serv Information Encoding that can be performed by the Diff-Serv Information Encoding that can be performed by the
Penultimate LSR. For example, this specification does not allow Penultimate LSR. For example, this specification does not allow
situations where the Penultimate LSR pops a label corresponding situations where the Penultimate LSR pops a label corresponding
skipping to change at line 987 skipping to change at line 986
/ \ / \
Push(2).................(2)Pop Push(2).................(2)Pop
/ (outer header) \ / (outer header) \
/ \ / \
>>---Push(1)........................(1)Pop-->> >>---Push(1)........................(1)Pop-->>
(inner header) (inner header)
(1) Tunneling Model 1 (1) Tunneling Model 1
Le Faucheur et. al 18 Le Faucheur et. al 18
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
(2) Tunneling Model 2 (2) Tunneling Model 2
Tunneling Model 2 may be the same as or may be different to Tunneling Model 2 may be the same as or may be different to
Tunneling Model 1. Tunneling Model 1.
For a given LSP of level N, the LSR must perform the Incoming PHB For a given LSP of level N, the LSR must perform the Incoming PHB
Determination and the Diff-Serv information Encoding as specified in Determination and the Diff-Serv information Encoding as specified in
section 2.6.2, 2.6.2.1 and 2.6.3 according to the Tunneling Model of section 2.6.2, 2.6.2.1 and 2.6.3 according to the Tunneling Model of
this level N LSP and independently of the Tunneling Model of other this level N LSP and independently of the Tunneling Model of other
level LSPs. level LSPs.
skipping to change at line 1039 skipping to change at line 1038
is populated as per the signaled EXP<-->PHB mapping. is populated as per the signaled EXP<-->PHB mapping.
3.2.1 Preconfigured EXP<-->PHB mapping 3.2.1 Preconfigured EXP<-->PHB mapping
LSRs supporting E-LSPs which use the preconfigured EXP<-->PHB LSRs supporting E-LSPs which use the preconfigured EXP<-->PHB
mapping must allow local configuration of this EXP<-->PHB mapping. mapping must allow local configuration of this EXP<-->PHB mapping.
This mapping applies to all the E-LSPs established on this LSR This mapping applies to all the E-LSPs established on this LSR
without a mapping explicitly signaled at set-up time. without a mapping explicitly signaled at set-up time.
Le Faucheur et. al 19 Le Faucheur et. al 19
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
The preconfigured EXP<-->PHB mapping must either be consistent at The preconfigured EXP<-->PHB mapping must either be consistent at
every E-LSP hop throughout the MPLS Diff-Serv domain spanned by the every E-LSP hop throughout the MPLS Diff-Serv domain spanned by the
LSP or appropriate remarking of the EXP field must be performed by LSP or appropriate remarking of the EXP field must be performed by
the LSR whenever a different preconfigured mapping is used on the the LSR whenever a different preconfigured mapping is used on the
ingress and egress interfaces. ingress and egress interfaces.
In case, the preconfigured EXP<-->PHB mapping has not actually been In case, the preconfigured EXP<-->PHB mapping has not actually been
configured by the Network Administrator, the LSR should use a configured by the Network Administrator, the LSR should use a
default preconfigured EXP<-->PHB mapping which maps all EXP values default preconfigured EXP<-->PHB mapping which maps all EXP values
skipping to change at line 1094 skipping to change at line 1093
If the label corresponds to an E-LSP for which an EXP<-->PHB mapping If the label corresponds to an E-LSP for which an EXP<-->PHB mapping
has been explicitly signaled at LSP setup, the `PHB-->EXP mapping' has been explicitly signaled at LSP setup, the `PHB-->EXP mapping'
is populated as per the signaled EXP<-->PHB mapping. is populated as per the signaled EXP<-->PHB mapping.
3.4.2 `PHB-->CLP mapping' 3.4.2 `PHB-->CLP mapping'
If the LSP is egressing over an ATM interface which is not label If the LSP is egressing over an ATM interface which is not label
switching controlled, then one `PHB-->CLP mapping' is added to the switching controlled, then one `PHB-->CLP mapping' is added to the
Le Faucheur et. al 20 Le Faucheur et. al 20
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
`Set of PHB-->Encaps mappings' for this outgoing LSP. This `Set of PHB-->Encaps mappings' for this outgoing LSP. This
`PHB-->CLP mapping' is populated in the following way: `PHB-->CLP mapping' is populated in the following way:
- it is a function of the PHBs supported on this LSP, and may use - it is a function of the PHBs supported on this LSP, and may use
the relevant mapping entries for these PHBs from the the relevant mapping entries for these PHBs from the
Default PHB-->CLP Mapping defined in section 3.4.2.1. Other Default PHB-->CLP Mapping defined in section 3.4.2.1. Other
mappings than the one defined in section 3.4.2.1 may be used. In mappings than the one defined in section 3.4.2.1 may be used. In
particular, if a mapping from PHBs to CLP is standardized in the particular, if a mapping from PHBs to CLP is standardized in the
future for operations of Diff-Serv over ATM, such standardized future for operations of Diff-Serv over ATM, such standardized
mapping may then be used. mapping may then be used.
skipping to change at line 1150 skipping to change at line 1149
if a mapping from PHBs to DE is standardized in the future for if a mapping from PHBs to DE is standardized in the future for
operations of Diff-Serv over Frame Relay, such standardized operations of Diff-Serv over Frame Relay, such standardized
mapping may then be used. mapping may then be used.
Notice that in this case the `Set of PHB-->Encaps mappings' contains Notice that in this case the `Set of PHB-->Encaps mappings' contains
both a `PHB-->EXP mapping' and a `PHB-->DE mapping'. both a `PHB-->EXP mapping' and a `PHB-->DE mapping'.
3.4.3.1 Default PHB-->DE Mapping 3.4.3.1 Default PHB-->DE Mapping
Le Faucheur et. al 21 Le Faucheur et. al 21
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
PHB DE Bit PHB DE Bit
DF ----> 0 DF ----> 0
CSn ----> 0 CSn ----> 0
AFn1 ----> 0 AFn1 ----> 0
AFn2 ----> 1 AFn2 ----> 1
AFn3 ----> 1 AFn3 ----> 1
EF ----> 0 EF ----> 0
skipping to change at line 1205 skipping to change at line 1204
3.5.1 `PHB-->EXP mapping' 3.5.1 `PHB-->EXP mapping'
If the `Set of PHB-->Encaps mappings' contains a mapping of the form If the `Set of PHB-->Encaps mappings' contains a mapping of the form
`PHB-->EXP mapping', then the LSR: `PHB-->EXP mapping', then the LSR:
- determines the value to be written in the EXP field of the - determines the value to be written in the EXP field of the
corresponding level label entry by looking up the "outgoing PHB" corresponding level label entry by looking up the "outgoing PHB"
in this PHB-->EXP mapping table. in this PHB-->EXP mapping table.
Le Faucheur et. al 22 Le Faucheur et. al 22
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
3.5.2 `PHB-->CLP mapping' 3.5.2 `PHB-->CLP mapping'
If the `Set of PHB-->Encaps mappings' contains a mapping of the form If the `Set of PHB-->Encaps mappings' contains a mapping of the form
`PHB-->CLP mapping', then the LSR: `PHB-->CLP mapping', then the LSR:
- determines the value to be written in the CLP field of the ATM - determines the value to be written in the CLP field of the ATM
encapsulation header, by looking up the "outgoing PHB" in this encapsulation header, by looking up the "outgoing PHB" in this
PHB-->CLP mapping table. PHB-->CLP mapping table.
3.5.3 `PHB-->DE mapping' 3.5.3 `PHB-->DE mapping'
skipping to change at line 1258 skipping to change at line 1257
an LSR can not rely on signaling information to enforce the above an LSR can not rely on signaling information to enforce the above
merge. However all E-LSPs using the preconfigured EXP<-->PHB mapping merge. However all E-LSPs using the preconfigured EXP<-->PHB mapping
are required to support the same set of Behavior Aggregates within a are required to support the same set of Behavior Aggregates within a
given MPLS Diff-Serv domain. Thus, merging of E-LSPs using the given MPLS Diff-Serv domain. Thus, merging of E-LSPs using the
preconfigured EXP<-->PHB mapping is allowed within a given MPLS preconfigured EXP<-->PHB mapping is allowed within a given MPLS
Diff-Serv domain. Diff-Serv domain.
4. Detailed Operation of L-LSPs 4. Detailed Operation of L-LSPs
Le Faucheur et. al 23 Le Faucheur et. al 23
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
4.1 L-LSP Definition 4.1 L-LSP Definition
L-LSPs are defined in section 1.3. L-LSPs are defined in section 1.3.
4.2 Populating the `Encaps-->PHB mapping' for an incoming L-LSP 4.2 Populating the `Encaps-->PHB mapping' for an incoming L-LSP
This section defines how the `Encaps-->PHB mapping' of the Diff-Serv This section defines how the `Encaps-->PHB mapping' of the Diff-Serv
Context is populated at label setup for an incoming L-LSP in order Context is populated at label setup for an incoming L-LSP in order
to allow Incoming PHB determination. to allow Incoming PHB determination.
skipping to change at line 1286 skipping to change at line 1285
- it is actually a `EXP-->PHB mapping' - it is actually a `EXP-->PHB mapping'
- this mapping is a function of the PSC which is carried on this - this mapping is a function of the PSC which is carried on this
LSP, and must use the relevant mapping entries for this PSC from LSP, and must use the relevant mapping entries for this PSC from
the Mandatory EXP/PSC-->PHB Mapping defined in Section 4.2.1.1. the Mandatory EXP/PSC-->PHB Mapping defined in Section 4.2.1.1.
For example if the incoming label corresponds to an L-LSP supporting For example if the incoming label corresponds to an L-LSP supporting
the AF1 PSC, then the `Encaps-->PHB mapping' will be populated with: the AF1 PSC, then the `Encaps-->PHB mapping' will be populated with:
EXP Field PHB EXP Field PHB
000 ----> AF11 001 ----> AF11
001 ----> AF12 010 ----> AF12
011 ----> AF13 011 ----> AF13
An LSR supporting L-LSPs over PPP interfaces and LAN interfaces is An LSR supporting L-LSPs over PPP interfaces and LAN interfaces is
an example of LSR terminating the Shim layer over ingress interfaces an example of LSR terminating the Shim layer over ingress interfaces
which are not ATM nor Frame Relay. which are not ATM nor Frame Relay.
If the LSR terminates the MPLS Shim Layer over this incoming L-LSP If the LSR terminates the MPLS Shim Layer over this incoming L-LSP
and the L-LSP ingresses on an ATM or Frame Relay interface, then the and the L-LSP ingresses on an ATM or Frame Relay interface, then the
`Encaps-->PHB mapping' is populated in the following way: `Encaps-->PHB mapping' is populated in the following way:
- it should actually be a `EXP-->PHB mapping'. Alternative - it should actually be a `EXP-->PHB mapping'. Alternative
skipping to change at line 1313 skipping to change at line 1312
`EXP-->PHB mapping' mapping is a function of the PSC which is `EXP-->PHB mapping' mapping is a function of the PSC which is
carried on the L-LSP, and must use the relevant mapping entries carried on the L-LSP, and must use the relevant mapping entries
for this PSC from the Mandatory EXP/PSC-->PHB Mapping defined in for this PSC from the Mandatory EXP/PSC-->PHB Mapping defined in
Section 4.2.1.1. Section 4.2.1.1.
An Edge-LSR of an ATM-MPLS domain or of a FR-MPLS domain is an An Edge-LSR of an ATM-MPLS domain or of a FR-MPLS domain is an
example of LSR terminating the shim layer over an ingress ATM/FR example of LSR terminating the shim layer over an ingress ATM/FR
interface. interface.
Le Faucheur et. al 24 Le Faucheur et. al 24
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
4.2.1.1 Mandatory EXP/PSC --> PHB mapping 4.2.1.1 Mandatory EXP/PSC --> PHB mapping
EXP Field PSC PHB EXP Field PSC PHB
000 DF ----> DF 000 DF ----> DF
000 CSn ----> CSn 000 CSn ----> CSn
000 AFn ----> AFn1 001 AFn ----> AFn1
001 AFn ----> AFn2 010 AFn ----> AFn2
011 AFn ----> AFn3 011 AFn ----> AFn3
000 EF ----> EF 000 EF ----> EF
4.2.2 `CLP-->PHB mapping' 4.2.2 `CLP-->PHB mapping'
If the LSR does not terminate an MPLS Shim Layer over this incoming If the LSR does not terminate an MPLS Shim Layer over this incoming
label and uses ATM encapsulation (i.e. it is an ATM-LSR), then the label and uses ATM encapsulation (i.e. it is an ATM-LSR), then the
`Encaps-->PHB mapping' for this incoming L-LSP is populated in the `Encaps-->PHB mapping' for this incoming L-LSP is populated in the
following way: following way:
- it is actually a `CLP-->PHB mapping' - it is actually a `CLP-->PHB mapping'
skipping to change at line 1368 skipping to change at line 1367
If the LSR does not terminate an MPLS Shim Layer over this incoming If the LSR does not terminate an MPLS Shim Layer over this incoming
label and uses Frame Relay encapsulation (i.e. it is a FR-LSR), then label and uses Frame Relay encapsulation (i.e. it is a FR-LSR), then
the `Encaps-->PHB mapping' for this incoming L-LSP is populated in the `Encaps-->PHB mapping' for this incoming L-LSP is populated in
the following way: the following way:
- it is actually a `DE-->PHB mapping' - it is actually a `DE-->PHB mapping'
- the mapping is a function of the PSC which is carried on this - the mapping is a function of the PSC which is carried on this
LSP, and should use the relevant mapping entries for this PSC LSP, and should use the relevant mapping entries for this PSC
Le Faucheur et. al 25 Le Faucheur et. al 25
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
from the Default DE/PSC-->PHB Mapping defined in Section from the Default DE/PSC-->PHB Mapping defined in Section
4.2.3.1. 4.2.3.1.
4.2.3.1 Default DE/PSC --> PHB Mapping 4.2.3.1 Default DE/PSC --> PHB Mapping
DE Bit PSC PHB DE Bit PSC PHB
0 DF ----> DF 0 DF ----> DF
0 CSn ----> CSn 0 CSn ----> CSn
skipping to change at line 1424 skipping to change at line 1423
4.4 Populating the `Set of PHB-->Encaps mappings' for an outgoing L-LSP 4.4 Populating the `Set of PHB-->Encaps mappings' for an outgoing L-LSP
This section defines how the `Set of PHB-->Encaps mappings' of the This section defines how the `Set of PHB-->Encaps mappings' of the
Diff-Serv Context is populated at label setup for an outgoing L-LSP Diff-Serv Context is populated at label setup for an outgoing L-LSP
in order to allow Encoding of Diff-Serv Information. in order to allow Encoding of Diff-Serv Information.
4.4.1 `PHB-->EXP mapping' 4.4.1 `PHB-->EXP mapping'
Le Faucheur et. al 26 Le Faucheur et. al 26
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
If the LSR uses an MPLS Shim Layer over this outgoing L-LSP, then If the LSR uses an MPLS Shim Layer over this outgoing L-LSP, then
one `PHB-->EXP mapping' is added to the `Set of one `PHB-->EXP mapping' is added to the `Set of
PHB-->Encaps mappings' for this outgoing PHB-->Encaps mappings' for this outgoing
L-LSP. This `PHB-->EXP mapping' is populated in the following way: L-LSP. This `PHB-->EXP mapping' is populated in the following way:
- it is a function of the PSC supported on this LSP, and must use - it is a function of the PSC supported on this LSP, and must use
the mapping entries relevant for this PSC from the Mandatory the mapping entries relevant for this PSC from the Mandatory
PHB-->EXP Mapping defined in section 4.4.1.1. PHB-->EXP Mapping defined in section 4.4.1.1.
For example if the outgoing label corresponds to an L-LSP supporting For example if the outgoing label corresponds to an L-LSP supporting
the AF1 PSC, then the following `PHB-->EXP mapping' is added into the AF1 PSC, then the following `PHB-->EXP mapping' is added into
the `Set of PHB-->Encaps mappings': the `Set of PHB-->Encaps mappings':
PHB EXP Field PHB EXP Field
AF11 ----> 000 AF11 ----> 001
AF12 ----> 001 AF12 ----> 010
AF13 ----> 011 AF13 ----> 011
4.4.1.1 Mandatory PHB-->EXP Mapping 4.4.1.1 Mandatory PHB-->EXP Mapping
PHB EXP Field PHB EXP Field
DF ----> 000 DF ----> 000
CSn ----> 000 CSn ----> 000
AFn1 ----> 000 AFn1 ----> 001
AFn2 ----> 001 AFn2 ----> 010
AFn3 ----> 011 AFn3 ----> 011
EF ----> 000 EF ----> 000
4.4.2 `PHB-->CLP mapping' 4.4.2 `PHB-->CLP mapping'
If the L-LSP is egressing on an ATM interface (i.e. it is an ATM-LSR If the L-LSP is egressing on an ATM interface (i.e. it is an ATM-LSR
or it is a frame-based LSR sending packets on an LC-ATM interface or or it is a frame-based LSR sending packets on an LC-ATM interface or
on an ATM interface which is not label switching controlled), then on an ATM interface which is not label switching controlled), then
one `PHB-->CLP mapping' is added to the `Set of PHB-->Encaps one `PHB-->CLP mapping' is added to the `Set of PHB-->Encaps
mappings' for this outgoing L-LSP. mappings' for this outgoing L-LSP.
skipping to change at line 1478 skipping to change at line 1477
mapping' is populated in the following way: mapping' is populated in the following way:
- it is a function of the PSC supported on this LSP, and should - it is a function of the PSC supported on this LSP, and should
use the relevant mapping entries for this PSC from the Default use the relevant mapping entries for this PSC from the Default
PHB-->CLP Mapping defined in section 3.4.2.1. PHB-->CLP Mapping defined in section 3.4.2.1.
Notice that if the LSR is a frame-based LSR supporting an L-LSP Notice that if the LSR is a frame-based LSR supporting an L-LSP
egressing over an ATM interface, then the `Set of PHB-->Encaps egressing over an ATM interface, then the `Set of PHB-->Encaps
mappings' contains both a `PHB-->EXP mapping' and a `PHB-->CLP mappings' contains both a `PHB-->EXP mapping' and a `PHB-->CLP
Le Faucheur et. al 27 Le Faucheur et. al 27
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
mapping'. If the LSR is an ATM-LSR supporting an L-LSP, then the mapping'. If the LSR is an ATM-LSR supporting an L-LSP, then the
`Set of PHB-->Encaps mappings' only contains a `PHB-->CLP mapping'. `Set of PHB-->Encaps mappings' only contains a `PHB-->CLP mapping'.
4.4.3 `PHB-->DE mapping' 4.4.3 `PHB-->DE mapping'
If the L-LSP is egressing over a Frame Relay interface (i.e. it is If the L-LSP is egressing over a Frame Relay interface (i.e. it is
an LSR sending packets on an LC-FR interface or on a Frame Relay an LSR sending packets on an LC-FR interface or on a Frame Relay
interface which is not label switching controlled), one `PHB-->DE interface which is not label switching controlled), one `PHB-->DE
mapping' is added to the `Set of PHB-->Encaps mappings' for this mapping' is added to the `Set of PHB-->Encaps mappings' for this
skipping to change at line 1533 skipping to change at line 1532
NHLFE and then performs corresponding encoding as specified in NHLFE and then performs corresponding encoding as specified in
sections 3.5.1, 3.5.2, 3.5.3 and 3.5.4. sections 3.5.1, 3.5.2, 3.5.3 and 3.5.4.
4.6 L-LSP Merging 4.6 L-LSP Merging
In an MPLS domain, two or more LSPs can be merged into one LSP at In an MPLS domain, two or more LSPs can be merged into one LSP at
one LSR. L-LSPs are compatible with LSP Merging under the following one LSR. L-LSPs are compatible with LSP Merging under the following
condition: condition:
Le Faucheur et. al 28 Le Faucheur et. al 28
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
L-LSPs can only be merged into one L-LSP if they support the L-LSPs can only be merged into one L-LSP if they support the
same PSC. same PSC.
The above merge condition MUST be enforced by LSRs through explicit The above merge condition MUST be enforced by LSRs through explicit
checking at label setup that the same PSC is supported on the merged checking at label setup that the same PSC is supported on the merged
LSPs. LSPs.
Note that when L-LSPs merge, the bandwidth that is available for the Note that when L-LSPs merge, the bandwidth that is available for the
PSC downstream of the merge point must be sufficient to carry the PSC downstream of the merge point must be sufficient to carry the
skipping to change at line 1587 skipping to change at line 1586
The DIFFSERV Object is optional for support of LSP Tunnels as The DIFFSERV Object is optional for support of LSP Tunnels as
defined in [RSVP_MPLS_TE]. A Diff-Serv capable LSR supporting E-LSPs defined in [RSVP_MPLS_TE]. A Diff-Serv capable LSR supporting E-LSPs
using the preconfigured EXP<-->PHB mapping in compliance with this using the preconfigured EXP<-->PHB mapping in compliance with this
specification MAY support the DIFFSERV Object. A Diff-Serv capable specification MAY support the DIFFSERV Object. A Diff-Serv capable
LSR supporting E-LSPs using a signaled EXP<-->PHB mapping in LSR supporting E-LSPs using a signaled EXP<-->PHB mapping in
compliance with this specification MUST support the DIFFSERV Object. compliance with this specification MUST support the DIFFSERV Object.
A Diff-Serv capable LSR supporting L-LSPs in compliance with this A Diff-Serv capable LSR supporting L-LSPs in compliance with this
specification MUST support the DIFFSERV Object. specification MUST support the DIFFSERV Object.
Le Faucheur et. al 29 Le Faucheur et. al 29
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
5.1.1 Path Message Format 5.1.1 Path Message Format
The format of the Path message is as follows: The format of the Path message is as follows:
<Path Message> ::= <Common Header> [ <INTEGRITY> ] <Path Message> ::= <Common Header> [ <INTEGRITY> ]
<SESSION> <RSVP_HOP> <SESSION> <RSVP_HOP>
<TIME_VALUES> <TIME_VALUES>
[ <EXPLICIT_ROUTE> ] [ <EXPLICIT_ROUTE> ]
<LABEL_REQUEST> <LABEL_REQUEST>
[ <SESSION_ATTRIBUTE> ] [ <SESSION_ATTRIBUTE> ]
[ <DIFFSERV> ] [ <DIFFSERV> ]
[ <POLICY_DATA> ... ] [ <POLICY_DATA> ... ]
[ <sender descriptor> ] [ <sender descriptor> ]
<sender descriptor> ::= <SENDER_TEMPLATE> [ <SENDER_TSPEC> ] <sender descriptor> ::= <SENDER_TEMPLATE> <SENDER_TSPEC>
[ <ADSPEC> ] [ <ADSPEC> ]
[ <RECORD_ROUTE> ] [ <RECORD_ROUTE> ]
5.2 DIFFSERV Object 5.2 DIFFSERV Object
The DIFFSERV object formats are shown below. Currently there are two The DIFFSERV object formats are shown below. Currently there are two
possible C_Types. Type 1 is a DIFFSERV object for an E-LSP. Type 2 possible C_Types. Type 1 is a DIFFSERV object for an E-LSP. Type 2
is a DIFFSERV object for an L-LSP. is a DIFFSERV object for an L-LSP.
5.2.1. DIFFSERV object for an E-LSP: 5.2.1. DIFFSERV object for an E-LSP:
skipping to change at line 1643 skipping to change at line 1642
This field is reserved. It must be set to zero on transmission This field is reserved. It must be set to zero on transmission
and must be ignored on receipt. and must be ignored on receipt.
MAPnb : 4 bits MAPnb : 4 bits
Indicates the number of MAP entries included in the DIFFSERV Indicates the number of MAP entries included in the DIFFSERV
Object. This can be set to any value from 0 to 8. Object. This can be set to any value from 0 to 8.
MAP : 32 bits MAP : 32 bits
Le Faucheur et. al 30 Le Faucheur et. al 30
MPLS Support of Diff-Serv February 2001 MPLS Support of Diff-Serv April 2001
Each MAP entry defines the mapping between one EXP field value Each MAP entry defines the mapping between one EXP field value
and one PHB. The MAP entry has the following format: and one PHB. The MAP entry has the following format:
0 1 2 3 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | EXP | PHBID | | Reserved | EXP | PHBID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at line 1665 skipping to change at line 1664
This field is reserved. It must be set to zero on This field is reserved. It must be set to zero on
transmission and must be ignored on receipt. transmission and must be ignored on receipt.
EXP : 3 bits EXP : 3 bits
This field contains the value of the EXP field for the This field contains the value of the EXP field for the
EXP<-->PHB mapping defined in this MAP entry. EXP<-->PHB mapping defined in this MAP entry.
PHBID : 16 bits PHBID : 16 bits
This field contains the PHBID of the PHB for the This field contains the PHBID of the PHB for the
EXP<-->PHB mapping defined in this MAP entry. The PHBID EXP<-->PHB mapping defined in this MAP entry. The PHBID
is encoded as specified in section 2 of [PHBID]. is encoded as specified in [PHBID].
5.2.2 DIFFSERV object for an L-LSP: 5.2.2 DIFFSERV object for an L-LSP:
class = TBD, C_Type = 2 (class num is the same as DIFFSERV object class = TBD, C_Type = 2 (class num is the same as DIFFSERV object
for E-LSP)) for E-LSP))
0 1 2 3 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | PSC | | Reserved | PSC |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Reserved : 16 bits Reserved : 16 bits
This field is reserved. It must be set to zero on transmission This field is reserved. It must be set to zero on transmission
and must be ignored on receipt. and must be ignored on receipt.
PSC : 16 bits PSC : 16 bits
The PSC indicates a PHB Scheduling Class to be supported by the The PSC indicates a PHB Scheduling Class to be supported by the
LSP. The PSC is encoded as specified in section 2 of [PHBID]: LSP. The PSC is encoded as specified in [PHBID].
- Where the PSC comprises a single PHB defined by standards
action, the encoding for the PSC is the encoding for this
single PHB. It is the recommended DSCP value for that PHB,
left-justified in the 16-bit field, with bits 6 through 15 set
to zero.
- Where the PSC comprises multiple PHBs defined by standards
action, the PSC encoding is the encoding for this set of PHB.
It is the smallest numerical value of the recommended DSCP for
the various PHBs in the PSC, left-justified in the 16 bit
field, with bits 6 through 13 and bit 15 set to zero and with
bit 14 set to one.
Le Faucheur et. al 31
MPLS Support of Diff-Serv February 2001
For instance, the encoding of the EF PSC is :
0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 0 1 1 1 0|0 0 0 0 0 0 0 0 0 0|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
For instance, the encoding of the AF1 PSC is :
0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 1 0 1 0|0 0 0 0 0 0 0 0 1 0|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
5.3 Handling DIFFSERV Object 5.3 Handling DIFFSERV Object
To establish an LSP tunnel with RSVP, the sender creates a Path To establish an LSP tunnel with RSVP, the sender creates a Path
message with a session type of LSP_Tunnel_IPv4 and with a message with a session type of LSP_Tunnel_IPv4 and with a
LABEL_REQUEST object as per [RSVP_MPLS_TE]. LABEL_REQUEST object as per [RSVP_MPLS_TE].
To establish with RSVP an E-LSP tunnel which uses the Preconfigured To establish with RSVP an E-LSP tunnel which uses the Preconfigured
EXP<-->PHB mapping, the sender creates a Path message: EXP<-->PHB mapping, the sender creates a Path message:
- with a session type of LSP_Tunnel_IPv4, - with a session type of LSP_Tunnel_IPv4,
- with the LABEL_REQUEST object, and - with the LABEL_REQUEST object, and
- without the DIFFSERV object. - without the DIFFSERV object.
Le Faucheur et. al 31
MPLS Support of Diff-Serv April 2001
To establish with RSVP an E-LSP tunnel which uses the Preconfigured To establish with RSVP an E-LSP tunnel which uses the Preconfigured
EXP<-->PHB mapping, the sender MAY alternatively create a Path EXP<-->PHB mapping, the sender MAY alternatively create a Path
message: message:
- with a session type of LSP_Tunnel_IPv4, - with a session type of LSP_Tunnel_IPv4,
- with the LABEL_REQUEST object, and - with the LABEL_REQUEST object, and
- with the DIFFSERV object for an E-LSP containing no MAP entries. - with the DIFFSERV object for an E-LSP containing no MAP entries.
To establish with RSVP an E-LSP tunnel which uses a signaled EXP<-- To establish with RSVP an E-LSP tunnel which uses a signaled
>PHB mapping, the sender creates a Path message : EXP<-->PHB mapping, the sender creates a Path message :
- with a session type of LSP_Tunnel_IPv4, - with a session type of LSP_Tunnel_IPv4,
- with the LABEL_REQUEST object, - with the LABEL_REQUEST object,
- with the DIFFSERV object for an E-LSP containing one MAP entry - with the DIFFSERV object for an E-LSP containing one MAP entry
for each EXP value to be supported on this E-LSP. for each EXP value to be supported on this E-LSP.
To establish with RSVP an L-LSP tunnel, the sender creates a Path To establish with RSVP an L-LSP tunnel, the sender creates a Path
message: message:
- with a session type of LSP_Tunnel_IPv4, - with a session type of LSP_Tunnel_IPv4,
- with the LABEL_REQUEST object, - with the LABEL_REQUEST object,
- with the DIFFSERV object for an L-LSP containing the PHB - with the DIFFSERV object for an L-LSP containing the PHB
Scheduling Class (PSC) supported on this L-LSP. Scheduling Class (PSC) supported on this L-LSP.
If a path message contains multiple DIFFSERV objects, only the first If a path message contains multiple DIFFSERV objects, only the first
one is meaningful; subsequent DIFFSERV object(s) must be ignored and one is meaningful; subsequent DIFFSERV object(s) must be ignored and
not forwarded. not forwarded.
Le Faucheur et. al 32
MPLS Support of Diff-Serv February 2001
Each LSR along the path records the DIFFSERV object, when present, Each LSR along the path records the DIFFSERV object, when present,
in its path state block. in its path state block.
If a DIFFSERV object is not present in the Path message, the LSR If a DIFFSERV object is not present in the Path message, the LSR
SHOULD interpret this as a request for an E-LSP using the SHOULD interpret this as a request for an E-LSP using the
Preconfigured EXP<-->PHB Mapping. However, for backward Preconfigured EXP<-->PHB Mapping. However, for backward
compatibility purposes with other non-Diff-Serv Quality of Service compatibility purposes with other non-Diff-Serv Quality of Service
options allowed by [RSVP_MPLS_TE] such as Integrated Services options allowed by [RSVP_MPLS_TE] such as Integrated Services
Controlled Load or Guaranteed Services, the LSR MAY support a Controlled Load or Guaranteed Services, the LSR MAY support a
configurable "override option". When this "override option" is configurable "override option". When this "override option" is
skipping to change at line 1779 skipping to change at line 1750
in the Path message, the LSR MUST interpret this as a request for an in the Path message, the LSR MUST interpret this as a request for an
E-LSP using the Preconfigured EXP<-->PHB Mapping. In particular, E-LSP using the Preconfigured EXP<-->PHB Mapping. In particular,
this allows an LSR with the "override option" configured to support this allows an LSR with the "override option" configured to support
E-LSPs with Preconfigured EXP<-->PHB Mapping simultaneously with E-LSPs with Preconfigured EXP<-->PHB Mapping simultaneously with
LSPs with non-Diff-Serv Quality of Service. LSPs with non-Diff-Serv Quality of Service.
If a DIFFSERV object for an E-LSP containing at least one MAP entry If a DIFFSERV object for an E-LSP containing at least one MAP entry
is present in the Path message, the LSR MUST interpret this as a is present in the Path message, the LSR MUST interpret this as a
request for an E-LSP with signaled EXP<-->PHB Mapping. request for an E-LSP with signaled EXP<-->PHB Mapping.
Le Faucheur et. al 32
MPLS Support of Diff-Serv April 2001
If a DIFFSERV object for an L-LSP is present in the Path message, If a DIFFSERV object for an L-LSP is present in the Path message,
the LSR MUST interpret this as a request for an L-LSP. the LSR MUST interpret this as a request for an L-LSP.
The destination LSR of an E-LSP or L-LSP responds to the Path The destination LSR of an E-LSP or L-LSP responds to the Path
message containing the LABEL_REQUEST object by sending a Resv message containing the LABEL_REQUEST object by sending a Resv
message: message:
- with the LABEL object - with the LABEL object
- without a DIFFSERV object. - without a DIFFSERV object.
Assuming the label request is accepted and a label is allocated, the Assuming the label request is accepted and a label is allocated, the
skipping to change at line 1806 skipping to change at line 1780
An LSR that recognizes the DIFFSERV object and that receives a path An LSR that recognizes the DIFFSERV object and that receives a path
message which contains the DIFFSERV object but which does not message which contains the DIFFSERV object but which does not
contain a LABEL_REQUEST object or which does not have a session type contain a LABEL_REQUEST object or which does not have a session type
of LSP_Tunnel_IPv4, sends a PathErr towards the sender with the of LSP_Tunnel_IPv4, sends a PathErr towards the sender with the
error code `Diff-Serv Error' and an error value of `Unexpected error code `Diff-Serv Error' and an error value of `Unexpected
DIFFSERV object'. Those are defined below in section 5.5. DIFFSERV object'. Those are defined below in section 5.5.
An LSR receiving a Path message with the DIFFSERV object for E-LSP, An LSR receiving a Path message with the DIFFSERV object for E-LSP,
which recognizes the DIFFSERV object but does not support the which recognizes the DIFFSERV object but does not support the
particular PHB encoded in one, or more, of the MAP entries, sends a particular PHB encoded in one, or more, of the MAP entries, sends a
Le Faucheur et. al 33
MPLS Support of Diff-Serv February 2001
PathErr towards the sender with the error code `Diff-Serv Error' and PathErr towards the sender with the error code `Diff-Serv Error' and
an error value of `Unsupported PHB'. Those are defined below in an error value of `Unsupported PHB'. Those are defined below in
section 5.5. section 5.5.
An LSR receiving a Path message with the DIFFSERV object for E-LSP, An LSR receiving a Path message with the DIFFSERV object for E-LSP,
which recognizes the DIFFSERV object but determines that the which recognizes the DIFFSERV object but determines that the
signaled EXP<-->PHB mapping is invalid, sends a PathErr towards the signaled EXP<-->PHB mapping is invalid, sends a PathErr towards the
sender with the error code `Diff-Serv Error' and an error value of sender with the error code `Diff-Serv Error' and an error value of
`Invalid EXP<-->PHB mapping'. Those are defined below in section `Invalid EXP<-->PHB mapping'. Those are defined below in section
5.5. The EXP<-->PHB mapping signaled in the DIFFSERV Object for an 5.5. The EXP<-->PHB mapping signaled in the DIFFSERV Object for an
skipping to change at line 1834 skipping to change at line 1804
An LSR receiving a Path message with the DIFFSERV object for L-LSP, An LSR receiving a Path message with the DIFFSERV object for L-LSP,
which recognizes the DIFFSERV object but does not support the which recognizes the DIFFSERV object but does not support the
particular PSC encoded in the PSC field, sends a PathErr towards the particular PSC encoded in the PSC field, sends a PathErr towards the
sender with the error code `Diff-Serv Error' and an error value of sender with the error code `Diff-Serv Error' and an error value of
`Unsupported PSC'. Those are defined below in section 5.5. `Unsupported PSC'. Those are defined below in section 5.5.
An LSR receiving a Path message with the DIFFSERV object, which An LSR receiving a Path message with the DIFFSERV object, which
recognizes the DIFFSERV object but that is unable to allocate the recognizes the DIFFSERV object but that is unable to allocate the
required per-LSP Diff-Serv context sends a PathErr with the error required per-LSP Diff-Serv context sends a PathErr with the error
Le Faucheur et. al 33
MPLS Support of Diff-Serv April 2001
code "Diff-Serv Error" and the error value "Per-LSP context code "Diff-Serv Error" and the error value "Per-LSP context
allocation failure". Those are defined below in section 5.5. allocation failure". Those are defined below in section 5.5.
A Diff-Serv LSR MUST handle the situations where the label request A Diff-Serv LSR MUST handle the situations where the label request
can not be accepted for other reasons than those already discussed can not be accepted for other reasons than those already discussed
in this section, in accordance with [RSVP_MPLS_TE] (e.g. reservation in this section, in accordance with [RSVP_MPLS_TE] (e.g. reservation
rejected by admission control, a label can not be associated). rejected by admission control, a label can not be associated).
5.4 Non-support of the DIFFSERV Object 5.4 Non-support of the DIFFSERV Object
skipping to change at line 1862 skipping to change at line 1836
the procedures specified in [RSVP] for an unknown C-type i.e. It the procedures specified in [RSVP] for an unknown C-type i.e. It
must send a PathErr with the error code `Unknown object C-Type' must send a PathErr with the error code `Unknown object C-Type'
toward the sender. toward the sender.
In both situations, this causes the path set-up to fail. The sender In both situations, this causes the path set-up to fail. The sender
should notify management that a L-LSP cannot be established and should notify management that a L-LSP cannot be established and
possibly take action to retry LSP establishment without the DIFFSERV possibly take action to retry LSP establishment without the DIFFSERV
object (e.g. attempt to use E-LSPs with Preconfigured EXP<-->PHB object (e.g. attempt to use E-LSPs with Preconfigured EXP<-->PHB
mapping as a fall-back strategy). mapping as a fall-back strategy).
Le Faucheur et. al 34
MPLS Support of Diff-Serv February 2001
5.5 Error Codes For Diff-Serv 5.5 Error Codes For Diff-Serv
In the procedures described above, certain errors must be reported In the procedures described above, certain errors must be reported
as a `Diff-Serv Error'. The value of the `Diff-Serv Error' error as a `Diff-Serv Error'. The value of the `Diff-Serv Error' error
code is TBD (number to be allocated by IANA)). code is TBD (number to be allocated by IANA)).
The following defines error values for the Diff-Serv Error: The following defines error values for the Diff-Serv Error:
Value Error Value Error
1 Unexpected DIFFSERV object 1 Unexpected DIFFSERV object
2 Unsupported PHB 2 Unsupported PHB
3 Invalid EXP<-->PHB mapping 3 Invalid EXP<-->PHB mapping
4 Unsupported PSC 4 Unsupported PSC
5 Per-LSP context allocation failure 5 Per-LSP context allocation failure
5.6 Use of COS Service with E-LSPs and L-LSPs 5.6 Intserv Service Type
Both E-LSPs and L-LSPs can be established with bandwidth reservation Both E-LSPs and L-LSPs can be established with bandwidth reservation
or without bandwidth reservation. or without bandwidth reservation.
To establish an E-LSP or an L-LSP with bandwidth reservation, Int- As specified in [RSVP_MPLS_TE], to establish an E-LSP or an L-LSP
Serv's Controlled Load service (or possibly Guaranteed Service) is with bandwidth reservation, Int-Serv's Controlled Load service (or
used and the bandwidth is signaled in the SENDER_TSPEC (respectively possibly Guaranteed Service) is used and the bandwidth is signaled
FLOWSPEC) of the path (respectively Resv) message.
To establish an E-LSP or an L-LSP without bandwidth reservation, the
Class of Service service defined in [RSVP_MPLS_TE] is used.
Note that this specification defines usage of E-LSPs and L-LSPs
for support of the Diff-Serv service only. Regardless of whether the
signaling messages actually indicate an Int-Serv service of COS, GS
or CL and regardless of whether the signaling messages contain a
signaled bandwidth reservation or not, E-LSPs and L-LSPs are defined
here for support of Diff-Serv services. Support of Int-Serv services
over an MPLS Diff-Serv backbone is outside the scope of this
specification.
A Path message containing a COS SENDER_TSPEC and not containing a
DIFFSERV object indicates to a Diff-Serv capable LSR that the LSP to
be established is an E-LSP using the Preconfigured mapping and
without any bandwidth reservation.
A Path message containing a COS SENDER_TSPEC and containing a
DIFFSERV object for E-LSP indicates to a Diff-Serv capable LSR that
the LSP to be established is an E-LSP using a signaled mapping and
without any bandwidth reservation.
A Path message containing a COS SENDER_TSPEC and containing a
DIFFSERV object for L-LSP indicates to a Diff-Serv capable LSR that
the LSP to be established is an L-LSP without any bandwidth
reservation.
Le Faucheur et. al 35
MPLS Support of Diff-Serv February 2001
The above is summarized in the following table: Le Faucheur et. al 34
MPLS Support of Diff-Serv April 2001
Path Message LSP type in the SENDER_TSPEC (respectively FLOWSPEC) of the path
Service DIFFSERV (respectively Resv) message.
Object
GS/CL No E-LSP + preconf mapping + bandw reservation As specified in [RSVP_MPLS_TE],to establish an E-LSP or an L-LSP
GS/CL Yes/E-LSP E-LSP + signaled mapping + bandw reservation without bandwidth reservation, the Null Service specified in [NULL]
GS/CL Yes/L-LSP L-LSP + bandw reservation is used.
COS No E-LSP + preconf mapping + no bandw reservation
COS Yes/E-LSP E-LSP + signaled mapping + no band reservation
COS Yes/L-LSP L-LSP + no bandw reservation
Where: Note that this specification defines usage of E-LSPs and L-LSPs
- GS stands for Guaranteed Service for support of the Diff-Serv service only. Regardless of the Intserv
- CL stands for Controlled Load service (Controlled Load, Null Service, Guaranteed Service,...) and
- COS stands for COS service regardless of whether the reservation is with or without bandwidth
reservation, E-LSPs and L-LSPs are defined here for support of Diff-
Serv services. Support of Int-Serv services over an MPLS Diff-Serv
backbone is outside the scope of this specification.
When processing a path (respectively Resv) message for an E-LSP or Note also that this specification does not concern itself with the
an L-LSP using the COS service, a Diff-Serv capable LSR must ignore DCLASS object defined in [DCLASS], since this object conveys
the value of the COS field within a COS SENDER_TSPEC (respectively a information on DSCP values, which are not relevant inside the MPLS
COS FLOWSPEC). network.
6. LDP Extensions for Diff-Serv Support 6. LDP Extensions for Diff-Serv Support
The MPLS architecture does not assume a single label distribution The MPLS architecture does not assume a single label distribution
protocol. [LDP] defines the Label Distribution Protocol and its protocol. [LDP] defines the Label Distribution Protocol and its
usage for establishment of label switched paths (LSPs) in MPLS usage for establishment of label switched paths (LSPs) in MPLS
networks. This section specifies the extensions to LDP to establish networks. This section specifies the extensions to LDP to establish
label switched path (LSPs) supporting Differentiated Services in label switched path (LSPs) supporting Differentiated Services in
MPLS networks. MPLS networks.
skipping to change at line 1971 skipping to change at line 1911
uses the signaled EXP<-->PHB mapping in compliance with this uses the signaled EXP<-->PHB mapping in compliance with this
specification MUST support the Diff-Serv TLV. A Diff-Serv capable specification MUST support the Diff-Serv TLV. A Diff-Serv capable
LSR supporting L-LSPs in compliance with this specification MUST LSR supporting L-LSPs in compliance with this specification MUST
support the Diff-Serv TLV. support the Diff-Serv TLV.
6.1 Diff-Serv TLV 6.1 Diff-Serv TLV
The Diff-Serv TLV has the following formats: The Diff-Serv TLV has the following formats:
Diff-Serv TLV for an E-LSP: Diff-Serv TLV for an E-LSP:
Le Faucheur et. al 36
MPLS Support of Diff-Serv February 2001
0 1 2 3 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|U|F| Diff-Serv (0x901) | Length | |U|F| Diff-Serv (0x901) | Length |
Le Faucheur et. al 35
MPLS Support of Diff-Serv April 2001
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|T| Reserved | MAPnb | |T| Reserved | MAPnb |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAP (1) | | MAP (1) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAP (MAPnb) | | MAP (MAPnb) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at line 2021 skipping to change at line 1962
This field is reserved. It must be set to zero on This field is reserved. It must be set to zero on
transmission and must be ignored on receipt. transmission and must be ignored on receipt.
EXP : 3 bits EXP : 3 bits
This field contains the value of the EXP field for the This field contains the value of the EXP field for the
EXP<-->PHB mapping defined in this MAP entry. EXP<-->PHB mapping defined in this MAP entry.
PHBID : 16 bits PHBID : 16 bits
This field contains the PHBID of the PHB for the This field contains the PHBID of the PHB for the
EXP<-->PHB mapping defined in this MAP entry. The PHBID EXP<-->PHB mapping defined in this MAP entry. The PHBID
is encoded as specified in section 2 of [PHBID]. is encoded as specified in [PHBID].
Diff-Serv TLV for an L-LSP: Diff-Serv TLV for an L-LSP:
Le Faucheur et. al 37
MPLS Support of Diff-Serv February 2001
0 1 2 3 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|U|F| Type = PSC (0x901) | Length | |U|F| Type = PSC (0x901) | Length |
Le Faucheur et. al 36
MPLS Support of Diff-Serv April 2001
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|T| Reserved | PSC | |T| Reserved | PSC |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
T:1 bit T:1 bit
LSP Type. This is set to 1 for an L-LSP LSP Type. This is set to 1 for an L-LSP
Reserved : 15 bits Reserved : 15 bits
This field is reserved. It must be set to zero on transmission This field is reserved. It must be set to zero on transmission
and must be ignored on receipt. and must be ignored on receipt.
PSC : 16 bits PSC : 16 bits
The PSC indicates a PHB Scheduling Class to be supported by the The PSC indicates a PHB Scheduling Class to be supported by the
LSP. The PSC is encoded as specified in section 2 of [PHBID]: LSP. The PSC is encoded as specified in [PHBID].
- Where the PSC comprises a single PHB defined by standards
action, the encoding for the PSC is the encoding for this
single PHB. It is the recommended DSCP value for that PHB,
left-justified in the 16-bit field, with bits 6 through 15 set
to zero.
- Where the PSC comprises multiple PHBs defined by standards
action, the PSC encoding is the encoding for this set of PHB.
It is the smallest numerical value of the recommended DSCP for
the various PHBs in the PSC, left-justified in the 16 bit
field, with bits 6 through 13 and bit 15 set to zero and with
bit 14 set to one.
For instance, the encoding of the EF PSC is :
0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 0 1 1 1 0|0 0 0 0 0 0 0 0 0 0|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
For instance, the encoding of the AF1 PSC is :
0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 1 0 1 0|0 0 0 0 0 0 0 0 1 0|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
6.2 Diff-Serv Status Code Values 6.2 Diff-Serv Status Code Values
The following values are defined for the Status Code field of the The following values are defined for the Status Code field of the
Status TLV: Status TLV:
Status Code E Status Data Status Code E Status Data
Unexpected Diff-Serv TLV 0 0x01000001 Unexpected Diff-Serv TLV 0 0x01000001
Le Faucheur et. al 38
MPLS Support of Diff-Serv February 2001
Unsupported PHB 0 0x01000002 Unsupported PHB 0 0x01000002
Invalid EXP<-->PHB mapping 0 0x01000003 Invalid EXP<-->PHB mapping 0 0x01000003
Unsupported PSC 0 0x01000004 Unsupported PSC 0 0x01000004
Per-LSP context allocation failure 0 0x01000005 Per-LSP context allocation failure 0 0x01000005
6.3 Diff-Serv Related LDP Messages 6.3 Diff-Serv Related LDP Messages
6.3.1 Label Request Message 6.3.1 Label Request Message
The format of the Label Request message is extended as follows, to The format of the Label Request message is extended as follows, to
skipping to change at line 2113 skipping to change at line 2026
| FEC TLV | | FEC TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Diff-Serv TLV (optional) | | Diff-Serv TLV (optional) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
6.3.2 Label Mapping Message 6.3.2 Label Mapping Message
The format of the Label Mapping message is extended as follows, to The format of the Label Mapping message is extended as follows, to
optionally include the Diff-Serv TLV: optionally include the Diff-Serv TLV:
Le Faucheur et. al 37
MPLS Support of Diff-Serv April 2001
0 1 2 3 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| Label Mapping (0x0400) | Message Length | |0| Label Mapping (0x0400) | Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID | | Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| FEC TLV | | FEC TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Label TLV | | Label TLV |
skipping to change at line 2136 skipping to change at line 2052
6.3.3 Label Release Message 6.3.3 Label Release Message
The format of the Label Release message is extended as follows, to The format of the Label Release message is extended as follows, to
optionally include the Status TLV: optionally include the Status TLV:
0 1 2 3 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| Label Release (0x0403) | Message Length | |0| Label Release (0x0403) | Message Length |
Le Faucheur et. al 39
MPLS Support of Diff-Serv February 2001
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID | | Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| FEC TLV | | FEC TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Label TLV (optional) | | Label TLV (optional) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Status TLV (optional) | | Status TLV (optional) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at line 2169 skipping to change at line 2081
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID | | Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Status TLV | | Status TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional Parameters | | Optional Parameters |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Diff-Serv TLV (optional) | | Diff-Serv TLV (optional) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Le Faucheur et. al 38
MPLS Support of Diff-Serv April 2001
6.4 Handling of the Diff-Serv TLV 6.4 Handling of the Diff-Serv TLV
6.4.1 Handling of the Diff-Serv TLV in Downstream Unsolicited Mode 6.4.1 Handling of the Diff-Serv TLV in Downstream Unsolicited Mode
This section describes operations when the Downstream Unsolicited This section describes operations when the Downstream Unsolicited
Mode is used. Mode is used.
When allocating a label for an E-LSP which is to use the When allocating a label for an E-LSP which is to use the
preconfigured EXP<-->PHB mapping, a downstream Diff-Serv LSR issues preconfigured EXP<-->PHB mapping, a downstream Diff-Serv LSR issues
a Label Mapping message without the Diff-Serv TLV. a Label Mapping message without the Diff-Serv TLV.
skipping to change at line 2192 skipping to change at line 2107
Mapping message with the Diff-Serv TLV for an E-LSP which contains Mapping message with the Diff-Serv TLV for an E-LSP which contains
one MAP entry for each EXP value to be supported on this E-LSP. one MAP entry for each EXP value to be supported on this E-LSP.
When allocating a label for an L-LSP, a downstream Diff-Serv LSR When allocating a label for an L-LSP, a downstream Diff-Serv LSR
issues a Label Mapping message with the Diff-Serv TLV for an L-LSP issues a Label Mapping message with the Diff-Serv TLV for an L-LSP
which contains the PHB Scheduling Class (PSC) to be supported on which contains the PHB Scheduling Class (PSC) to be supported on
this L-LSP. this L-LSP.
Assuming the label set-up is successful, the downstream and upstream Assuming the label set-up is successful, the downstream and upstream
LSRs must: LSRs must:
Le Faucheur et. al 40
MPLS Support of Diff-Serv February 2001
- update the Diff-Serv Context associated with the established - update the Diff-Serv Context associated with the established
LSPs in their ILM/FTN as specified in previous sections LSPs in their ILM/FTN as specified in previous sections
(incoming and outgoing label), (incoming and outgoing label),
- install the required Diff-Serv forwarding treatment (scheduling - install the required Diff-Serv forwarding treatment (scheduling
and dropping behavior) for this NHLFE (outgoing label). and dropping behavior) for this NHLFE (outgoing label).
An upstream Diff-Serv LSR receiving a Label Mapping message with An upstream Diff-Serv LSR receiving a Label Mapping message with
multiple Diff-Serv TLVs only considers the first one as meaningful. multiple Diff-Serv TLVs only considers the first one as meaningful.
The LSR must ignore and not forward the subsequent Diff-Serv TLV(s). The LSR must ignore and not forward the subsequent Diff-Serv TLV(s).
skipping to change at line 2224 skipping to change at line 2135
Diff-Serv TLV for an E-LSP and determining that the signaled Diff-Serv TLV for an E-LSP and determining that the signaled
EXP<-->PHB mapping is invalid, must reject the mapping by sending a EXP<-->PHB mapping is invalid, must reject the mapping by sending a
Label Release message which includes the Label TLV and the Status Label Release message which includes the Label TLV and the Status
TLV with a Status Code of `Invalid EXP<-->PHB Mapping'. The TLV with a Status Code of `Invalid EXP<-->PHB Mapping'. The
EXP<-->PHB mapping signaled in the DIFFSERV Object for an E-LSP is EXP<-->PHB mapping signaled in the DIFFSERV Object for an E-LSP is
invalid when: invalid when:
- the MAPnb field is not within the range 1 to 8, or - the MAPnb field is not within the range 1 to 8, or
- a given EXP value appears in more than one MAP entry, or - a given EXP value appears in more than one MAP entry, or
- the PHBID encoding is invalid - the PHBID encoding is invalid
Le Faucheur et. al 39
MPLS Support of Diff-Serv April 2001
An upstream Diff-Serv LSR receiving a Label Mapping message with the An upstream Diff-Serv LSR receiving a Label Mapping message with the
Diff-Serv TLV for an L-LSP containing a PSC value which is not Diff-Serv TLV for an L-LSP containing a PSC value which is not
supported, must reject the mapping by sending a Label Release supported, must reject the mapping by sending a Label Release
message which includes the Label TLV and the Status TLV with a message which includes the Label TLV and the Status TLV with a
Status Code of `Unsupported PSC'. Status Code of `Unsupported PSC'.
6.4.2 Handling of the Diff-Serv TLV in Downstream on Demand Mode 6.4.2 Handling of the Diff-Serv TLV in Downstream on Demand Mode
This section describes operations when the Downstream on Demand Mode This section describes operations when the Downstream on Demand Mode
is used. is used.
skipping to change at line 2248 skipping to change at line 2162
When requesting a label for an E-LSP which is to use a signaled When requesting a label for an E-LSP which is to use a signaled
EXP<-->PHB mapping, an upstream Diff-Serv LSR sends a Label Request EXP<-->PHB mapping, an upstream Diff-Serv LSR sends a Label Request
message with the Diff-Serv TLV for an E-LSP which contains one MAP message with the Diff-Serv TLV for an E-LSP which contains one MAP
entry for each EXP value to be supported on this E-LSP. entry for each EXP value to be supported on this E-LSP.
When requesting a label for an L-LSP, an upstream Diff-Serv LSR When requesting a label for an L-LSP, an upstream Diff-Serv LSR
sends a Label Request message with the Diff-Serv TLV for an L-LSP sends a Label Request message with the Diff-Serv TLV for an L-LSP
which contains the PSC to be supported on this L-LSP. which contains the PSC to be supported on this L-LSP.
Le Faucheur et. al 41
MPLS Support of Diff-Serv February 2001
A downstream Diff-Serv LSR sending a Label Mapping message in A downstream Diff-Serv LSR sending a Label Mapping message in
response to a Label Request message for an E-LSP or an L-LSP must response to a Label Request message for an E-LSP or an L-LSP must
not include a Diff-Serv TLV in this Label Mapping message. not include a Diff-Serv TLV in this Label Mapping message.
Assuming the label set-up is successful, the downstream and upstream Assuming the label set-up is successful, the downstream and upstream
LSRs must: LSRs must:
- update the Diff-Serv Context associated with the established - update the Diff-Serv Context associated with the established
LSPs in their ILM/FTN as specified in previous sections LSPs in their ILM/FTN as specified in previous sections
(incoming and outgoing label), (incoming and outgoing label),
- install the required Diff-Serv forwarding treatment (scheduling - install the required Diff-Serv forwarding treatment (scheduling
and dropping behavior) for this NHLFE (outgoing label). and dropping behavior) for this NHLFE (outgoing label).
skipping to change at line 2278 skipping to change at line 2189
A downstream Diff-Serv LSR receiving a Label Request message with A downstream Diff-Serv LSR receiving a Label Request message with
multiple Diff-Serv TLVs only considers the first one as meaningful. multiple Diff-Serv TLVs only considers the first one as meaningful.
The LSR must ignore and not forward the subsequent Diff-Serv TLV(s). The LSR must ignore and not forward the subsequent Diff-Serv TLV(s).
A downstream Diff-Serv LSR which receives a Label Request message A downstream Diff-Serv LSR which receives a Label Request message
with the Diff-Serv TLV for an E-LSP and does not support the with the Diff-Serv TLV for an E-LSP and does not support the
particular PHB encoded in one (or more) of the MAP entries, must particular PHB encoded in one (or more) of the MAP entries, must
reject the request by sending a Notification message which includes reject the request by sending a Notification message which includes
the Status TLV with a Status Code of `Unsupported PHB'. the Status TLV with a Status Code of `Unsupported PHB'.
Le Faucheur et. al 40
MPLS Support of Diff-Serv April 2001
A downstream Diff-Serv LSR receiving a Label Request message with A downstream Diff-Serv LSR receiving a Label Request message with
the Diff-Serv TLV for an E-LSP and determining that the signaled the Diff-Serv TLV for an E-LSP and determining that the signaled
EXP<-->PHB mapping is invalid, must reject the request by sending a EXP<-->PHB mapping is invalid, must reject the request by sending a
Notification message which includes the Status TLV with a Status Notification message which includes the Status TLV with a Status
Code of `Invalid EXP<-->PHB Mapping'. The EXP<-->PHB mapping Code of `Invalid EXP<-->PHB Mapping'. The EXP<-->PHB mapping
signaled in the DIFFSERV TLV for an E-LSP is invalid when: signaled in the DIFFSERV TLV for an E-LSP is invalid when:
- the MAPnb field is not within the range 1 to 8, or - the MAPnb field is not within the range 1 to 8, or
- a given EXP value appears in more than one MAP entry, or - a given EXP value appears in more than one MAP entry, or
- the PHBID encoding is invalid - the PHBID encoding is invalid
skipping to change at line 2303 skipping to change at line 2217
A downstream Diff-Serv LSR that recognizes the Diff-Serv TLV Type in A downstream Diff-Serv LSR that recognizes the Diff-Serv TLV Type in
a Label Request message but is unable to allocate the required a Label Request message but is unable to allocate the required
per-LSP context information, must reject the request sending a per-LSP context information, must reject the request sending a
Notification message which includes the Status TLV with a Status Notification message which includes the Status TLV with a Status
Code of `Per-LSP context allocation failure'. Code of `Per-LSP context allocation failure'.
A downstream Diff-Serv LSR that recognizes the Diff-Serv TLV Type in A downstream Diff-Serv LSR that recognizes the Diff-Serv TLV Type in
a Label Request message and supports the requested PSC but is not a Label Request message and supports the requested PSC but is not
able to satisfy the label request for other reasons (e.g. no label able to satisfy the label request for other reasons (e.g. no label
Le Faucheur et. al 42
MPLS Support of Diff-Serv February 2001
available), must send a Notification message in accordance with available), must send a Notification message in accordance with
existing LDP procedures [LDP] (e.g. with a `No Label Resource' existing LDP procedures [LDP] (e.g. with a `No Label Resource'
Status Code). This Notification message must include the requested Status Code). This Notification message must include the requested
Diff-Serv TLV. Diff-Serv TLV.
6.5 Non-Handling of the Diff-Serv TLV 6.5 Non-Handling of the Diff-Serv TLV
An LSR that does not recognize the Diff-Serv TLV Type, on receipt of An LSR that does not recognize the Diff-Serv TLV Type, on receipt of
a Label Request message or a Label Mapping message containing the a Label Request message or a Label Mapping message containing the
Diff-Serv TLV, must behave in accordance with the procedures Diff-Serv TLV, must behave in accordance with the procedures
skipping to change at line 2333 skipping to change at line 2243
Bandwidth information may also be signaled at establishment time of Bandwidth information may also be signaled at establishment time of
E-LSP and L-LSP, for instance for the purpose of Traffic E-LSP and L-LSP, for instance for the purpose of Traffic
Engineering, using the Traffic Parameters TLV as described in Engineering, using the Traffic Parameters TLV as described in
[MPLS CR LDP]. [MPLS CR LDP].
7. MPLS Support of Diff-Serv over PPP, LAN, Non-LC-ATM and Non-LC-FR 7. MPLS Support of Diff-Serv over PPP, LAN, Non-LC-ATM and Non-LC-FR
Interfaces Interfaces
The general operations for MPLS support of Diff-Serv, including The general operations for MPLS support of Diff-Serv, including
label forwarding and LSP setup operations are specified in the label forwarding and LSP setup operations are specified in the
Le Faucheur et. al 41
MPLS Support of Diff-Serv April 2001
previous sections. This section describes the specific operations previous sections. This section describes the specific operations
required for MPLS support of Diff-Serv over PPP interfaces, LAN required for MPLS support of Diff-Serv over PPP interfaces, LAN
interfaces, ATM Interfaces which are not label controlled and Frame interfaces, ATM Interfaces which are not label controlled and Frame
Relay interfaces which are not label controlled. Relay interfaces which are not label controlled.
On these interfaces, this specification allows any of the following On these interfaces, this specification allows any of the following
LSP combinations per FEC: LSP combinations per FEC:
- Zero or any number of E-LSP, and - Zero or any number of E-LSP, and
- Zero or any number of L-LSPs. - Zero or any number of L-LSPs.
skipping to change at line 2356 skipping to change at line 2270
A Diff-Serv capable LSR MAY support E-LSPs which use signaled A Diff-Serv capable LSR MAY support E-LSPs which use signaled
EXP<-->PHB mapping and L-LSPs over these interfaces. EXP<-->PHB mapping and L-LSPs over these interfaces.
8. MPLS Support of Diff-Serv over LC-ATM Interfaces 8. MPLS Support of Diff-Serv over LC-ATM Interfaces
This section describes the specific operations required for MPLS This section describes the specific operations required for MPLS
support of Diff-Serv over label switching controlled ATM (LC-ATM) support of Diff-Serv over label switching controlled ATM (LC-ATM)
interfaces. interfaces.
Le Faucheur et. al 43
MPLS Support of Diff-Serv February 2001
This document allows any number of L-LSPs per FEC within an MPLS ATM This document allows any number of L-LSPs per FEC within an MPLS ATM
Diff-Serv domain. E-LSPs are not supported over LC-ATM interfaces. Diff-Serv domain. E-LSPs are not supported over LC-ATM interfaces.
8.1 Use of ATM Traffic Classes and Traffic Management mechanisms 8.1 Use of ATM Traffic Classes and Traffic Management mechanisms
The use of the ATM traffic classes as specified by ITU-T and ATM- The use of the "ATM service categories" specified by the ATM Forum,
Forum or of vendor specific ATM traffic classes is outside of the of the "ATM Transfer Capabilities" specified by the ITU-T or of
scope of this specification. The only requirement for compliant vendor specific ATM traffic classes is outside of the scope of this
implementation is that the forwarding behavior experienced by a specification. The only requirement for compliant implementation is
Behavior Aggregate forwarded over an L-LSP by the ATM LSR MUST be that the forwarding behavior experienced by a Behavior Aggregate
compliant with the corresponding Diff-Serv PHB specifications. forwarded over an L-LSP by the ATM LSR MUST be compliant with the
corresponding Diff-Serv PHB specifications.
Since there is only one bit (CLP) for encoding the PHB drop Since there is only one bit (CLP) for encoding the PHB drop
precedence value over ATM links, only two different drop precedence precedence value over ATM links, only two different drop precedence
levels are supported in ATM LSRs. Sections 4.2.2 and 4.4.2 define levels are supported in ATM LSRs. Sections 4.2.2 and 4.4.2 define
how the three drop precedence levels of the AFn Ordered Aggregates how the three drop precedence levels of the AFn Ordered Aggregates
are mapped to these two ATM drop precedence levels. This mapping is are mapped to these two ATM drop precedence levels. This mapping is
in accordance with the requirements specified in [DIFF_AF] for the in accordance with the requirements specified in [DIFF_AF] for the
case when only two drop precedence levels are supported. case when only two drop precedence levels are supported.
To avoid discarding parts of the packets, frame discard mechanisms, To avoid discarding parts of the packets, frame discard mechanisms,
such as Early Packet Discard (EPD) SHOULD be enabled in the ATM-LSRs such as Early Packet Discard (EPD) (see [ATMF_TM]) SHOULD be enabled
for all PHBs described in this document. in the ATM-LSRs for all PHBs described in this document.
8.2 LSR Implementation With LC-ATM Interfaces 8.2 LSR Implementation With LC-ATM Interfaces
A Diff-Serv capable LSR MUST support L-LSPs over LC-ATM interfaces. A Diff-Serv capable LSR MUST support L-LSPs over LC-ATM interfaces.
Le Faucheur et. al 42
MPLS Support of Diff-Serv April 2001
This specification assumes that Edge-LSRs of the ATM-LSR domain use This specification assumes that Edge-LSRs of the ATM-LSR domain use
the "shim header" encapsulation method defined in [MPLS_ATM]. the "shim header" encapsulation method defined in [MPLS_ATM].
Operations without the "shim header" encapsulation is outside the Operations without the "shim header" encapsulation is outside the
scope of this specification. scope of this specification.
9. MPLS Support of Diff-Serv over LC-FR Interfaces 9. MPLS Support of Diff-Serv over LC-FR Interfaces
This section describes the specific operations required for MPLS This section describes the specific operations required for MPLS
support of Diff-Serv over label switching controlled Frame Relay support of Diff-Serv over label switching controlled Frame Relay
(LC-FR) interfaces. (LC-FR) interfaces.
skipping to change at line 2410 skipping to change at line 2325
interfaces. interfaces.
9.1 Use of Frame Relay Traffic parameters and Traffic Management 9.1 Use of Frame Relay Traffic parameters and Traffic Management
mechanisms mechanisms
The use of the Frame Relay traffic parameters as specified by ITU-T The use of the Frame Relay traffic parameters as specified by ITU-T
and Frame Relay-Forum or of vendor specific Frame Relay traffic and Frame Relay-Forum or of vendor specific Frame Relay traffic
management mechanisms is outside of the scope of this specification. management mechanisms is outside of the scope of this specification.
The only requirement for compliant implementation is that the The only requirement for compliant implementation is that the
forwarding behavior experienced by a Behavior Aggregate forwarded forwarding behavior experienced by a Behavior Aggregate forwarded
Le Faucheur et. al 44
MPLS Support of Diff-Serv February 2001
over an L-LSP by the Frame Relay LSR MUST be compliant with the over an L-LSP by the Frame Relay LSR MUST be compliant with the
corresponding Diff-Serv PHB specifications. corresponding Diff-Serv PHB specifications.
Since there is only one bit (DE) for encoding the PHB drop Since there is only one bit (DE) for encoding the PHB drop
precedence value over Frame Relay links, only two different drop precedence value over Frame Relay links, only two different drop
precedence levels are supported in Frame Relay LSRs. Sections 4.2.3 precedence levels are supported in Frame Relay LSRs. Sections 4.2.3
and 4.4.3 define how the three drop precedence levels of the AFn and 4.4.3 define how the three drop precedence levels of the AFn
Ordered Aggregates are mapped to these two Frame Relay drop Ordered Aggregates are mapped to these two Frame Relay drop
precedence levels. This mapping is in accordance with the precedence levels. This mapping is in accordance with the
requirements specified in [DIFF_AF] for the case when only two drop requirements specified in [DIFF_AF] for the case when only two drop
skipping to change at line 2441 skipping to change at line 2352
This specification assumes that Edge-LSRs of the FR-LSR domain use This specification assumes that Edge-LSRs of the FR-LSR domain use
the "generic encapsulation" method as recommended in [MPLS_FR]. the "generic encapsulation" method as recommended in [MPLS_FR].
Operations without the "generic encapsulation" is outside the scope Operations without the "generic encapsulation" is outside the scope
of this specification. of this specification.
10. IANA Considerations. 10. IANA Considerations.
This document defines a number of objects with implications for This document defines a number of objects with implications for
IANA. IANA.
Le Faucheur et. al 43
MPLS Support of Diff-Serv April 2001
This document defines in section 5.2 a new RSVP object, the Diffserv This document defines in section 5.2 a new RSVP object, the Diffserv
object. This object requires a number to be assigned from the space object. This object requires a number to be assigned from the space
defined in [RSVP] for those objects which, if not understood, cause defined in [RSVP] for those objects which, if not understood, cause
the entire RSVP message to be rejected with an error code of the entire RSVP message to be rejected with an error code of
"Unknown Object Class". Such objects are identified by a zero in the "Unknown Object Class". Such objects are identified by a zero in the
most significant bit of the class number. Within that space, this most significant bit of the class number. Within that space, this
object should be assigned a number from the "IETF Consensus" space. object should be assigned a number from the "IETF Consensus" space.
This document defines in section 5.5 a new RSVP error code, This document defines in section 5.5 a new RSVP error code,
"Diffserv Error". This error code should be assigned by IANA. This "Diffserv Error". This error code should be assigned by IANA. This
skipping to change at line 2465 skipping to change at line 2379
This document defines in section 6.1 a new LDP TLV, the Diffserv This document defines in section 6.1 a new LDP TLV, the Diffserv
TLV. The number for this TLV has been assigned by working group TLV. The number for this TLV has been assigned by working group
consensus according to the policies defined in [LDP]. consensus according to the policies defined in [LDP].
This document defines in section 6.2 five new LDP Status Code values This document defines in section 6.2 five new LDP Status Code values
for Diffserv-related error conditions. The values for the Status for Diffserv-related error conditions. The values for the Status
Code have been assigned by working group consensus according to the Code have been assigned by working group consensus according to the
policies defined in [LDP]. policies defined in [LDP].
Le Faucheur et. al 45
MPLS Support of Diff-Serv February 2001
11. Security Considerations 11. Security Considerations
This document does not introduce any new security issues beyond This document does not introduce any new security issues beyond
those inherent in Diff-Serv, MPLS and RSVP, and may use the same those inherent in Diff-Serv, MPLS and RSVP, and may use the same
mechanisms proposed for those technologies. mechanisms proposed for those technologies.
12. Acknowledgments 12. Acknowledgments
This document has benefited from discussions with Eric Rosen, Angela This document has benefited from discussions with Eric Rosen, Angela
Chiu and Carol Iturralde. It has also borrowed from the work done by Chiu and Carol Iturralde. It has also borrowed from the work done by
skipping to change at line 2491 skipping to change at line 2402
This section does not provide additional specification and is only This section does not provide additional specification and is only
here to provide examples of how this flexible approach for Diff-Serv here to provide examples of how this flexible approach for Diff-Serv
support over MPLS may be deployed. Pros and cons of various support over MPLS may be deployed. Pros and cons of various
deployment options for particular environments are beyond the scope deployment options for particular environments are beyond the scope
of this document. of this document.
A.1 Scenario 1: 8 (or fewer) BAs, no Traffic Engineering, no MPLS A.1 Scenario 1: 8 (or fewer) BAs, no Traffic Engineering, no MPLS
Protection Protection
Le Faucheur et. al 44
MPLS Support of Diff-Serv April 2001
A Service Provider running 8 (or fewer) BAs over MPLS, not A Service Provider running 8 (or fewer) BAs over MPLS, not
performing Traffic engineering, not using MPLS protection and using performing Traffic engineering, not using MPLS protection and using
MPLS Shim Header encapsulation in his/her network, may elect to run MPLS Shim Header encapsulation in his/her network, may elect to run
Diff-Serv over MPLS using a single E-LSP per FEC established via Diff-Serv over MPLS using a single E-LSP per FEC established via
LDP. Furthermore the Service Provider may elect to use the LDP. Furthermore the Service Provider may elect to use the
preconfigured EXP<-->PHB mapping. preconfigured EXP<-->PHB mapping.
Operations can be summarized as follows: Operations can be summarized as follows:
- the Service Provider configures at every LSR the bi-directional - the Service Provider configures at every LSR the bi-directional
mapping between each PHB and a value of the EXP field mapping between each PHB and a value of the EXP field
skipping to change at line 2517 skipping to change at line 2431
accordance with the specification above (i.e. no Diff-Serv TLV accordance with the specification above (i.e. no Diff-Serv TLV
in LDP Label Request/Label Mapping messages to implicitly in LDP Label Request/Label Mapping messages to implicitly
indicate that the LSP is an E-LSP and that it uses the indicate that the LSP is an E-LSP and that it uses the
preconfigured mapping) preconfigured mapping)
A.2 Scenario 2: More than 8 BAs, no Traffic Engineering, no MPLS A.2 Scenario 2: More than 8 BAs, no Traffic Engineering, no MPLS
Protection Protection
A Service Provider running more than 8 BAs over MPLS, not performing A Service Provider running more than 8 BAs over MPLS, not performing
Traffic Engineering, not using MPLS protection and using MPLS Shim Traffic Engineering, not using MPLS protection and using MPLS Shim
Le Faucheur et. al 46
MPLS Support of Diff-Serv February 2001
encapsulation in his/her network may elect to run Diff-Serv over encapsulation in his/her network may elect to run Diff-Serv over
MPLS using for each FEC: MPLS using for each FEC:
- one E-LSP established via LDP and using the preconfigured - one E-LSP established via LDP and using the preconfigured
mapping to support a set of 8 (or less) BAs, AND mapping to support a set of 8 (or less) BAs, AND
- one L-LSP per <FEC,OA> established via LDP for support of the - one L-LSP per <FEC,OA> established via LDP for support of the
other BAs. other BAs.
Operations can be summarized as follows: Operations can be summarized as follows:
- the Service Provider configures at every LSR the bi-directional - the Service Provider configures at every LSR the bi-directional
mapping between each PHB and a value of the EXP field for the mapping between each PHB and a value of the EXP field for the
skipping to change at line 2548 skipping to change at line 2458
- LSRs signal establishment of a single E-LSP per FEC for the set - LSRs signal establishment of a single E-LSP per FEC for the set
of E-LSP transported BAs using LDP as specified above (i.e. no of E-LSP transported BAs using LDP as specified above (i.e. no
Diff-Serv TLV in LDP Label Request/Label Mapping messages to Diff-Serv TLV in LDP Label Request/Label Mapping messages to
implicitly indicate that the LSP is an E-LSP and that it uses implicitly indicate that the LSP is an E-LSP and that it uses
the preconfigured mapping) the preconfigured mapping)
- LSRs signal establishment of one L-LSP per <FEC,OA> for the - LSRs signal establishment of one L-LSP per <FEC,OA> for the
other BAs using LDP as specified above (i.e. Diff-Serv TLV in other BAs using LDP as specified above (i.e. Diff-Serv TLV in
LDP Label Request/Label Mapping messages to indicate the L-LSP's LDP Label Request/Label Mapping messages to indicate the L-LSP's
PSC). PSC).
Le Faucheur et. al 45
MPLS Support of Diff-Serv April 2001
A.3 Scenario 3: 8 (or fewer) BAs, Aggregate Traffic Engineering, A.3 Scenario 3: 8 (or fewer) BAs, Aggregate Traffic Engineering,
Aggregate MPLS Protection Aggregate MPLS Protection
A Service Provider running 8 (or fewer) BAs over MPLS, performing A Service Provider running 8 (or fewer) BAs over MPLS, performing
aggregate Traffic Engineering (i.e. performing a single common path aggregate Traffic Engineering (i.e. performing a single common path
selection for all BAs), using aggregate MPLS protection (i.e. selection for all BAs), using aggregate MPLS protection (i.e.
restoring service to all PSCs jointly) and using MPLS Shim Header restoring service to all PSCs jointly) and using MPLS Shim Header
encapsulation in his/her network, may elect to run Diff-Serv over encapsulation in his/her network, may elect to run Diff-Serv over
MPLS using a single E-LSP per FEC established via RSVP MPLS using a single E-LSP per FEC established via RSVP
[RSVP_MPLS_TE] or CR-LDP [CR-LDP_MPLS_TE] and using the [RSVP_MPLS_TE] or CR-LDP [CR-LDP_MPLS_TE] and using the
skipping to change at line 2573 skipping to change at line 2486
(e.g. 000<-->AF11, 001<-->AF12, 010<-->AF13) (e.g. 000<-->AF11, 001<-->AF12, 010<-->AF13)
- the Service Provider configures at every LSR, and for every - the Service Provider configures at every LSR, and for every
interface, the scheduling behavior for each PSC (eg bandwidth interface, the scheduling behavior for each PSC (eg bandwidth
allocated to AF1) and the dropping behavior for each PHB (eg allocated to AF1) and the dropping behavior for each PHB (eg
drop profile for AF11, AF12, AF13) drop profile for AF11, AF12, AF13)
- LSRs signal establishment of a single E-LSP per FEC which will - LSRs signal establishment of a single E-LSP per FEC which will
use the preconfigured mapping: use the preconfigured mapping:
* using the RSVP protocol as specified above (i.e. no * using the RSVP protocol as specified above (i.e. no
DIFFSERV RSVP Object in the PATH message containing the DIFFSERV RSVP Object in the PATH message containing the
LABEL_REQUEST Object), OR LABEL_REQUEST Object), OR
Le Faucheur et. al 47
MPLS Support of Diff-Serv February 2001
* using the CR-LDP protocol as specified above (i.e. no * using the CR-LDP protocol as specified above (i.e. no
Diff-Serv TLV in LDP Label Request/Label Mapping messages). Diff-Serv TLV in LDP Label Request/Label Mapping messages).
- protection is activated on all the E-LSPs in order to achieve - protection is activated on all the E-LSPs in order to achieve
MPLS protection via mechanisms outside the scope of this MPLS protection via mechanisms outside the scope of this
document. document.
A.4 Scenario 4: per-OA Traffic Engineering/MPLS Protection A.4 Scenario 4: per-OA Traffic Engineering/MPLS Protection
A Service Provider running any number of BAs over MPLS, performing A Service Provider running any number of BAs over MPLS, performing
per-OA Traffic Engineering (i.e. performing a separate path per-OA Traffic Engineering (i.e. performing a separate path
skipping to change at line 2602 skipping to change at line 2511
Operations can be summarized as follows: Operations can be summarized as follows:
- the Service Provider configures at every LSR, and for every - the Service Provider configures at every LSR, and for every
interface, the scheduling behavior for each PSC (eg bandwidth interface, the scheduling behavior for each PSC (eg bandwidth
allocated to AF1) and the dropping behavior for each PHB (eg allocated to AF1) and the dropping behavior for each PHB (eg
drop profile for AF11, AF12, AF13) drop profile for AF11, AF12, AF13)
- LSRs signal establishment of one L-LSP per <FEC,OA>: - LSRs signal establishment of one L-LSP per <FEC,OA>:
* using the RSVP as specified above to signal the * using the RSVP as specified above to signal the
L-LSP's PSC (i.e. DIFFSERV RSVP Object in the PATH message L-LSP's PSC (i.e. DIFFSERV RSVP Object in the PATH message
containing the LABEL_REQUEST), OR containing the LABEL_REQUEST), OR
Le Faucheur et. al 46
MPLS Support of Diff-Serv April 2001
* using the CR-LDP protocol as specified above to * using the CR-LDP protocol as specified above to
signal the L-LSP PSC (i.e. Diff-Serv TLV in LDP Label signal the L-LSP PSC (i.e. Diff-Serv TLV in LDP Label
Request/Label Mapping messages). Request/Label Mapping messages).
- the appropriate level of protection is activated on the - the appropriate level of protection is activated on the
different L-LSPs (potentially with a different level of different L-LSPs (potentially with a different level of
protection for each PSC)_via mechanisms outside the scope of protection for each PSC)_via mechanisms outside the scope of
this document. this document.
A.5 Scenario 5: 8 (or fewer) BAs, per-OA Traffic Engineering/MPLS A.5 Scenario 5: 8 (or fewer) BAs, per-OA Traffic Engineering/MPLS
Protection Protection
skipping to change at line 2628 skipping to change at line 2541
run Diff-Serv over MPLS using one E-LSP per <FEC,OA> pair run Diff-Serv over MPLS using one E-LSP per <FEC,OA> pair
established via RSVP or CR-LDP. Furthermore, the Service Provider established via RSVP or CR-LDP. Furthermore, the Service Provider
may elect to use the preconfigured mapping on all the E-LSPs. may elect to use the preconfigured mapping on all the E-LSPs.
Operations can be summarized as follows: Operations can be summarized as follows:
- the Service Provider configures at every LSR the bi-directional - the Service Provider configures at every LSR the bi-directional
mapping between each PHB and a value of the EXP field mapping between each PHB and a value of the EXP field
(e.g. 000<-->AF11, 001<-->AF12, 010<-->AF13) (e.g. 000<-->AF11, 001<-->AF12, 010<-->AF13)
- the Service Provider configures at every LSR, and for every - the Service Provider configures at every LSR, and for every
interface, the scheduling behavior for each PSC (eg bandwidth interface, the scheduling behavior for each PSC (eg bandwidth
Le Faucheur et. al 48
MPLS Support of Diff-Serv February 2001
allocated to AF1) and the dropping behavior for each PHB (eg allocated to AF1) and the dropping behavior for each PHB (eg
drop profile for AF11, AF12, AF13) drop profile for AF11, AF12, AF13)
- LSRs signal establishment of one E-LSP per <FEC,OA>: - LSRs signal establishment of one E-LSP per <FEC,OA>:
* using the RSVP protocol as specified above to signal * using the RSVP protocol as specified above to signal
that the LSP is an E-LSP which uses the preconfigured mapping that the LSP is an E-LSP which uses the preconfigured mapping
(i.e. no DIFFSERV RSVP Object in the PATH message containing the (i.e. no DIFFSERV RSVP Object in the PATH message containing the
LABEL_REQUEST), OR LABEL_REQUEST), OR
* using the CR-LDP protocol as specified above to * using the CR-LDP protocol as specified above to
signal that the LSP is an E-LSP which uses the preconfigured signal that the LSP is an E-LSP which uses the preconfigured
mapping (i.e. no Diff-Serv TLV in LDP Label Request/Label mapping (i.e. no Diff-Serv TLV in LDP Label Request/Label
skipping to change at line 2657 skipping to change at line 2566
- the appropriate level of protection is activated on the - the appropriate level of protection is activated on the
different E-LSPs (potentially with a different level of different E-LSPs (potentially with a different level of
protection depending on the PSC actually transported over each protection depending on the PSC actually transported over each
E-LSP)_via mechanisms outside the scope of this document. E-LSP)_via mechanisms outside the scope of this document.
A.6 Scenario 6: no Traffic Engineering/MPLS Protection on 8 BAs, per-OA A.6 Scenario 6: no Traffic Engineering/MPLS Protection on 8 BAs, per-OA
Traffic Engineering/MPLS Protection on other BAs. Traffic Engineering/MPLS Protection on other BAs.
A Service Provider not performing Traffic Engineering/MPLS A Service Provider not performing Traffic Engineering/MPLS
Protection on 8 (or fewer) BAs, performing per-OA Traffic Protection on 8 (or fewer) BAs, performing per-OA Traffic
Le Faucheur et. al 47
MPLS Support of Diff-Serv April 2001
Engineering/MPLS Protection on the other BAs (i.e. performing a Engineering/MPLS Protection on the other BAs (i.e. performing a
separate path selection for each OA corresponding to the other BAs separate path selection for each OA corresponding to the other BAs
and performing MPLS Protection with a potentially different policy and performing MPLS Protection with a potentially different policy
for each of these OA) and using the MPLS Shim encapsulation in for each of these OA) and using the MPLS Shim encapsulation in
his/her network may elect to run Diff-Serv over MPLS, using for each his/her network may elect to run Diff-Serv over MPLS, using for each
FEC: FEC:
- one E-LSP using the preconfigured mapping established via LDP to - one E-LSP using the preconfigured mapping established via LDP to
support the set of 8 (or fewer) non-traffic-engineered/non- support the set of 8 (or fewer) non-traffic-engineered/non-
protected BAs, AND protected BAs, AND
- one L-LSP per <FEC,OA> pair established via RSVP or CR-LDP for - one L-LSP per <FEC,OA> pair established via RSVP or CR-LDP for
skipping to change at line 2682 skipping to change at line 2595
BAs supported over the E-LSP BAs supported over the E-LSP
- the Service Provider configures at every LSR, and for every - the Service Provider configures at every LSR, and for every
interface, the scheduling behavior for each PSC supported over interface, the scheduling behavior for each PSC supported over
the E-LSP and the dropping behavior for each corresponding PHB the E-LSP and the dropping behavior for each corresponding PHB
- the Service Provider configures at every LSR, and for every - the Service Provider configures at every LSR, and for every
interface, the scheduling behavior for each PSC supported over interface, the scheduling behavior for each PSC supported over
the L-LSPs and the dropping behavior for each corresponding PHB the L-LSPs and the dropping behavior for each corresponding PHB
- LSRs signal establishment of a single E-LSP per FEC for the non- - LSRs signal establishment of a single E-LSP per FEC for the non-
traffic engineered BAs using LDP as specified above (i.e. no traffic engineered BAs using LDP as specified above (i.e. no
Diff-Serv TLV in LDP Label Request/Label Mapping messages) Diff-Serv TLV in LDP Label Request/Label Mapping messages)
Le Faucheur et. al 49
MPLS Support of Diff-Serv February 2001
- LSRs signal establishment of one L-LSP per <FEC,OA> for the - LSRs signal establishment of one L-LSP per <FEC,OA> for the
other BAs: other BAs:
* using the RSVP protocol as specified above to signal * using the RSVP protocol as specified above to signal
the L-LSP PSC (i.e. DIFFSERV RSVP Object in the PATH message the L-LSP PSC (i.e. DIFFSERV RSVP Object in the PATH message
containing the LABEL_REQUEST Object), OR containing the LABEL_REQUEST Object), OR
* using the CR-LDP protocol as specified above to * using the CR-LDP protocol as specified above to
signal the L-LSP PSC (i.e. Diff-Serv TLV in LDP Label signal the L-LSP PSC (i.e. Diff-Serv TLV in LDP Label
Request/Label Mapping messages). Request/Label Mapping messages).
- protection is not activated on the E-LSPs. - protection is not activated on the E-LSPs.
- the appropriate level of protection is activated on the - the appropriate level of protection is activated on the
skipping to change at line 2713 skipping to change at line 2622
A Service Provider running more than 8 BAs over MPLS, not performing A Service Provider running more than 8 BAs over MPLS, not performing
Traffic engineering, not performing MPLS protection and using MPLS Traffic engineering, not performing MPLS protection and using MPLS
Shim Header encapsulation in his/her network, may elect to run Diff- Shim Header encapsulation in his/her network, may elect to run Diff-
Serv over MPLS using two E-LSPs per FEC established via LDP and Serv over MPLS using two E-LSPs per FEC established via LDP and
using signaled EXP<-->PHB mapping. using signaled EXP<-->PHB mapping.
Operations can be summarized as follows: Operations can be summarized as follows:
- the Service Provider configures at every LSR, and for every - the Service Provider configures at every LSR, and for every
interface, the scheduling behavior for each PSC (eg bandwidth interface, the scheduling behavior for each PSC (eg bandwidth
allocated to AF1) and the dropping behavior for each PHB (eg allocated to AF1) and the dropping behavior for each PHB (eg
drop profile for AF11, AF12, AF13) drop profile for AF11, AF12, AF13)
Le Faucheur et. al 48
MPLS Support of Diff-Serv April 2001
- LSRs signal establishment of two E-LSPs per FEC using LDP in - LSRs signal establishment of two E-LSPs per FEC using LDP in
accordance with the specification above (i.e. Diff-Serv TLV in accordance with the specification above (i.e. Diff-Serv TLV in
LDP Label Request/Label Mapping messages to explicitly indicate LDP Label Request/Label Mapping messages to explicitly indicate
that the LSP is an E-LSP and its EXP<--> mapping). The signaled that the LSP is an E-LSP and its EXP<--> mapping). The signaled
mapping will indicate the subset of 8 (or less) BAs to be mapping will indicate the subset of 8 (or less) BAs to be
transported on each E-LSP and what EXP values are mapped to each transported on each E-LSP and what EXP values are mapped to each
BA on each E-LSP. BA on each E-LSP.
APPENDIX B. Example Bandwidth Reservation Scenarios APPENDIX B. Example Bandwidth Reservation Scenarios
skipping to change at line 2737 skipping to change at line 2650
Command Line Interface, via SNMP, via COPS,...) Command Line Interface, via SNMP, via COPS,...)
- have Shortest Path Routing used for all the Diff-Serv traffic. - have Shortest Path Routing used for all the Diff-Serv traffic.
This is the closest model to provisioned Diff-Serv over non-MPLS IP. This is the closest model to provisioned Diff-Serv over non-MPLS IP.
In that case, E-LSPs and/or L-LSPs would be established without In that case, E-LSPs and/or L-LSPs would be established without
signaled bandwidth. signaled bandwidth.
B.2 Scenario 2: Bandwidth Reservation for per-PSC Admission Control B.2 Scenario 2: Bandwidth Reservation for per-PSC Admission Control
Consider the case where a network administrator elects to: Consider the case where a network administrator elects to:
Le Faucheur et. al 50
MPLS Support of Diff-Serv February 2001
- have Diff-Serv resources entirely provisioned off-line (e.g. via - have Diff-Serv resources entirely provisioned off-line (e.g. via
Command Line Interface, via SNMP, via COPS,...) Command Line Interface, via SNMP, via COPS,...)
- use L-LSPs - use L-LSPs
- have Constraint Based Routing performed separately for each PSC, - have Constraint Based Routing performed separately for each PSC,
where one of the constraints is availability of bandwidth from where one of the constraints is availability of bandwidth from
the bandwidth allocated to the relevant PSC. the bandwidth allocated to the relevant PSC.
In that case, L-LSPs would be established with signaled bandwidth. In that case, L-LSPs would be established with signaled bandwidth.
The bandwidth signaled at L-LSP establishment would be used by LSRs The bandwidth signaled at L-LSP establishment would be used by LSRs
to perform admission control at every hop to ensure that the to perform admission control at every hop to ensure that the
skipping to change at line 2767 skipping to change at line 2676
- use L-LSPs - use L-LSPs
- have Constraint Based Routing performed separately for each PSC, - have Constraint Based Routing performed separately for each PSC,
where one of the constraints is availability of bandwidth from where one of the constraints is availability of bandwidth from
the bandwidth allocated to the relevant PSC. the bandwidth allocated to the relevant PSC.
- have Diff-Serv resources dynamically adjusted - have Diff-Serv resources dynamically adjusted
In that case, L-LSPs would be established with signaled bandwidth. In that case, L-LSPs would be established with signaled bandwidth.
The bandwidth signaled at L-LSP establishment would be used by LSRs The bandwidth signaled at L-LSP establishment would be used by LSRs
to attempt to adjust the resources allocated to the relevant PSC to attempt to adjust the resources allocated to the relevant PSC
(e.g. scheduling weight) and then perform admission control to (e.g. scheduling weight) and then perform admission control to
Le Faucheur et. al 49
MPLS Support of Diff-Serv April 2001
ensure that the constraint on availability of bandwidth for the ensure that the constraint on availability of bandwidth for the
relevant PSC is met after the adjustment. relevant PSC is met after the adjustment.
References References
[MPLS_ARCH] Rosen et al., "Multiprotocol label switching [MPLS_ARCH] Rosen et al., "Multiprotocol label switching
Architecture", RFC-3031, January 2001. Architecture", RFC-3031, January 2001.
[MPLS_ENCAPS] Rosen et al., "MPLS Label Stack Encoding", RFC-3032, [MPLS_ENCAPS] Rosen et al., "MPLS Label Stack Encoding", RFC-3032,
January 2001. January 2001.
skipping to change at line 2790 skipping to change at line 2703
[MPLS_FR] Conta et al., "Use of Label Switching on Frame Relay [MPLS_FR] Conta et al., "Use of Label Switching on Frame Relay
Networks Specification", RFC-3034, January 2001. Networks Specification", RFC-3034, January 2001.
[DIFF_ARCH] Blake et al., "An architecture for Differentiated [DIFF_ARCH] Blake et al., "An architecture for Differentiated
Services", RFC-2475, December 1998. Services", RFC-2475, December 1998.
[DIFF_AF] Heinanen et al., "Assured Forwarding PHB Group", RFC-2597, [DIFF_AF] Heinanen et al., "Assured Forwarding PHB Group", RFC-2597,
June 1999. June 1999.
[DIFF_EF] Jacobson et al., "An Expedited Forwarding PHB", RFC-2598, [DIFF_EF] Davie et al., "An Expedited Forwarding PHB", draft-ietf-
June 1999. diffserv-rfc2598bis-01.txt, April 2001.
Le Faucheur et. al 51
MPLS Support of Diff-Serv February 2001
[DIFF_HEADER] Nichols et al., "Definition of the Differentiated [DIFF_HEADER] Nichols et al., "Definition of the Differentiated
Services Field (DS Field) in the IPv4 and IPv6 Headers", RFC-2474, Services Field (DS Field) in the IPv4 and IPv6 Headers", RFC-2474,
December 1998. December 1998.
[ECN] Ramakrishnan et al., "A Proposal to add Explicit Congestion [ECN] Ramakrishnan et al., "A Proposal to add Explicit Congestion
Notification (ECN) to IP", RFC-2481, January 1999. Notification (ECN) to IP", RFC-2481, January 1999.
[LDP] Andersson et al., "LDP Specification", RFC-3036, January 2001 [LDP] Andersson et al., "LDP Specification", RFC-3036, January 2001.
[RSVP_MPLS_TE] Awduche et al, "Extensions to RSVP for LSP Tunnels", [RSVP_MPLS_TE] Awduche et al, "Extensions to RSVP for LSP Tunnels",
work in progress, draft-ietf-mpls-rsvp-lsp-tunnel-07.txt, August work in progress, draft-ietf-mpls-rsvp-lsp-tunnel-08.txt, February
2000 2001.
[CR-LDP_MPLS_TE] Jamoussi et al., "Constraint-Based LSP Setup using [CR-LDP_MPLS_TE] Jamoussi et al., "Constraint-Based LSP Setup using
LDP", work in progress, draft-ietf-mpls-cr-ldp-04.txt, July 2000 LDP", work in progress, draft-ietf-mpls-cr-ldp-05.txt, February
2001.
[PHBID] Brim et al., "Per Hop Behavior Identification Codes" [PHBID] Brim et al., "Per Hop Behavior Identification Codes"
RFC-2836, May 2000 draft-ietf-diffserv-2836bis-01.txt, February 2001.
[DIFF_NEW] Grossman, "New Terminology for Diffserv", work in [DIFF_NEW] Grossman, "New Terminology for Diffserv", work in
progress, draft-ietf-diffserv-new-terms-03.txt, August 2000 progress, draft-ietf-diffserv-new-terms-04.txt, March 2001.
[IEEE_802.1] ISO/IEC 15802-3: 1998 ANSI/IEEE Std 802.1D, 1998 [IEEE_802.1] ISO/IEC 15802-3: 1998 ANSI/IEEE Std 802.1D, 1998
Edition (Revision and redesignation of ISO/IEC 10038:98 Edition (Revision and redesignation of ISO/IEC 10038:98.
Le Faucheur et. al 50
MPLS Support of Diff-Serv April 2001
[ANSI/IEEE Std 802.1D, 1993 Edition], incorporating IEEE [ANSI/IEEE Std 802.1D, 1993 Edition], incorporating IEEE
supplements P802.1p, 802.1j-1996, 802.6k-1992, 802.11c-1998, and supplements P802.1p, 802.1j-1996, 802.6k-1992, 802.11c-1998, and
P802.12e) P802.12e).
[DIFF_TUNNEL] Black, "Differentiated Services and Tunnels", [DIFF_TUNNEL] Black, "Differentiated Services and Tunnels",
RFC-2983, October 2000. RFC-2983, October 2000.
[MPLS_VPN] Rosen et al., "BGP/MPLS VPNs", work in progress, draft- [MPLS_VPN] Rosen et al., "BGP/MPLS VPNs", work in progress, draft-
rosen-rfc2547bis-02.txt, July 2000. rosen-rfc2547bis-03.txt, February 2001.
[RSVP] Braden et al., "Resource ReSerVation Protocol (RSVP) - [RSVP] Braden et al., "Resource ReSerVation Protocol (RSVP) -
Version 1 Functional Specification", RFC-2205, September 1997. Version 1 Functional Specification", RFC-2205, September 1997.
[IANA] T. Narten, H. Alvestrand, "Guidelines for Writing an IANA [IANA] T. Narten, H. Alvestrand, "Guidelines for Writing an IANA
Considerations Section in RFCs", RFC 2434, October 1998. Considerations Section in RFCs", RFC 2434, October 1998.
[NULL] Bernet et al., "Specification of the Null Service Type", RFC
2997, November 2000.
[DCLASS] Bernet, "Format of the RSVP DCLASS Object", RFC 2996,
November 2000.
[ATMF_TM] ATM Forum, "Traffic Management Specification Version 4.1",
March 1999.
Authors' Address: Authors' Address:
Francois Le Faucheur Francois Le Faucheur
Cisco Systems Cisco Systems
Village d'Entreprise Green Side - Batiment T3 Village d'Entreprise Green Side - Batiment T3
400, Avenue de Roumanille 400, Avenue de Roumanille
06410 Biot-Sophia Antipolis 06410 Biot-Sophia Antipolis
France France
Phone: +33 4 97 23 26 19 Phone: +33 4 97 23 26 19
Le Faucheur et. al 52
MPLS Support of Diff-Serv February 2001
Email: flefauch@cisco.com Email: flefauch@cisco.com
Liwen Wu Liwen Wu
Cisco Systems Cisco Systems
250 Apollo Drive, Chelmsford, MA 01824, 3550 Cisco Way
San Jose, CA 95134
USA USA
Phone: +1 (978) 244-3087 Phone: +1 (408) 853-4065
Email: liwwu@cisco.com Email: liwwu@cisco.com
Bruce Davie Bruce Davie
Cisco Systems Cisco Systems
250 Apollo Drive, Chelmsford, MA 01824 250 Apollo Drive, Chelmsford, MA 01824
USA USA
Phone: +1 (978) 244-8000 Phone: +1 (978) 244-8000
Le Faucheur et. al 51
MPLS Support of Diff-Serv April 2001
Email: bsd@cisco.com Email: bsd@cisco.com
Shahram Davari Shahram Davari
PMC-Sierra Inc. PMC-Sierra Inc.
555 Legget drive, 411 Legget Drive
Suit 834, Tower B, Kanata, Ontario K2K 3C9
Ottawa, ON K2K 2X3
Canada Canada
Phone: +1 (613) 271-4018 Phone: +1 (613) 271-4018
Email: shahram_davari@pmc-sierra.com Email: davari@ieee.org
Pasi Vaananen Pasi Vaananen
Nokia Nokia
3 Burlington Woods Drive, Suit 250 3 Burlington Woods Drive, Suit 250
Burlington, MA 01803 Burlington, MA 01803
USA USA
Phone +1 (781) 238-4981 Phone +1 (781) 238-4981
Email: pasi.vaananen@nokia.com Email: pasi.vaananen@nokia.com
Ram Krishnan Ram Krishnan
Lucent Technologies Axiowave Networks
200 Nickerson Road, 100 Nickerson Road
Marlboro, MA 01752 Marlboro, MA 01752
USA ram@axiowave.com
E-mail: ram64@lucent.com
Pierrick Cheval Pierrick Cheval
Alcatel Alcatel
5 rue Noel-Pons 5 rue Noel-Pons
92734 Nanterre Cedex 92734 Nanterre Cedex
France France
E-mail:pierrick.cheval@alcatel.fr E-mail:pierrick.cheval@alcatel.fr
Juha Heinanen Juha Heinanen
Telia Finland Telia Finland
E-mail: jh@lohi.eng.telia.fi E-mail: jh@lohi.eng.telia.fi
Le Faucheur et. al 53
MPLS Support of Diff-Serv February 2001
Full Copyright Statement Full Copyright Statement
Copyright (C) The Internet Society (2000). All Rights Reserved. Copyright (C) The Internet Society (2000). All Rights Reserved.
This document and translations of it may be copied and furnished to This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph kind, provided that the above copyright notice and this paragraph
are included on all such copies and derivative works. However, this are included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be copyrights defined in the Internet Standards process must be
Le Faucheur et. al 52
MPLS Support of Diff-Serv April 2001
followed, or as required to translate it into languages other than followed, or as required to translate it into languages other than
English. English.
The limited permissions granted above are perpetual and will not be The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns. revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE." MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE."
Le Faucheur et. al 54 Le Faucheur et. al 53
 End of changes. 

This html diff was produced by rfcdiff 1.25, available from http://www.levkowetz.com/ietf/tools/rfcdiff/