draft-ietf-mpls-diff-ext-04.txt   draft-ietf-mpls-diff-ext-05.txt 
skipping to change at line 23 skipping to change at line 23
Ram Krishnan Ram Krishnan
Nexabit Networks Nexabit Networks
Pierrick Cheval Pierrick Cheval
Alcatel Alcatel
Juha Heinanen Juha Heinanen
Telia Finland Telia Finland
IETF Internet Draft IETF Internet Draft
Expires: September, 2000 Expires: December, 2000
Document: draft-ietf-mpls-diff-ext-04.txt March, 2000 Document: draft-ietf-mpls-diff-ext-05.txt June, 2000
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. Internet-Drafts are all provisions of Section 10 of RFC2026. Internet-Drafts are
Working documents of the Internet Engineering Task Force (IETF), its Working documents of the Internet Engineering Task Force (IETF), its
areas, and its working groups. Note that other groups may also areas, and its working groups. Note that other groups may also
distribute working documents as Internet-Drafts. distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six Internet-Drafts are draft documents valid for a maximum of six
months and may be updated, replaced, or obsoleted by other documents months and may be updated, replaced, or obsoleted by other documents
at any time. It is inappropriate to use Internet- Drafts as at any time. It is inappropriate to use Internet-Drafts as reference
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.
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.
Le Faucheur, et. al 1 Le Faucheur, et. al 1
skipping to change at line 54 skipping to change at line 53
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.
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.
Le Faucheur, et. al 1 Le Faucheur, et. al 1
MPLS Support of Diff-Serv June 2000
MPLS Support of Diff-Serv March 00
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 so that he/she can best match the Diff-Serv, Traffic Paths so that he/she can best match the Diff-Serv, Traffic
Engineering and Fast Restoration objectives within his/her Engineering and Fast Restoration objectives within his/her
particular network. For instance, this solution allows the network particular network. For instance, this solution allows the network
administrator to decide whether different sets of BAs are to be administrator to decide whether different sets of BAs are to be
mapped onto the same LSP or mapped onto separate LSPs. mapped onto the same LSP or mapped onto separate LSPs.
This solution relies on combined use of two types of LSPs: This solution relies on combined use of two types of LSPs:
skipping to change at line 110 skipping to change at line 108
As mentioned in [DIFF_HEADER], "Service providers are not required As mentioned in [DIFF_HEADER], "Service providers are not required
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
Le Faucheur et. al 2 Le Faucheur et. al 2
MPLS Support of Diff-Serv June 2000
MPLS Support of Diff-Serv March 00
or Traffic Engineered within their domain (eg. separate classes of or Traffic Engineered within their domain (eg. 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).
Similarly, the solution gives Service Providers flexibility in how Similarly, the solution gives Service Providers flexibility in how
Diff-Serv classes of service can be protected via MPLS Fast Diff-Serv classes of service can be protected via MPLS Fast
Restoration (eg. some classes of service supported via LSPs which Restoration (eg. some classes of service supported via LSPs which
are protected via MPLS Fast Restoration while some other classes of are protected via MPLS Fast Restoration while some other classes of
service are supported via LSPs which are not protected). service are supported via LSPs which are not protected).
Beside, the solution specified in this document achieves label space Furthermore, the solution specified in this document achieves label
conservation and reduces the volume of label set-up/tear-down space conservation and reduces the volume of label set-up/tear-down
signaling where possible by only resorting to multiple LSPs for a signaling where possible by only resorting to multiple LSPs for a
given Forwarding Equivalent Class (FEC) [MPLS_ARCH] when useful or given Forwarding Equivalent Class (FEC) [MPLS_ARCH] when useful or
required. required.
This specification allows support of Differentiated Services for This specification allows support of Differentiated Services for
both IPv4 and IPv6 traffic transported over an MPLS network. both IPv4 and IPv6 traffic transported over an MPLS network.
This document only describes operations for unicast. Multicast This document only describes operations for unicast. Multicast
support is for future study support is for future study.
1.1 Ordered Aggregate (OA) and PHB Scheduling Class (PSC) 1.1 Ordered Aggregate (OA) and PHB Scheduling Class (PSC)
The Diff-Serv model defines [DIFF_NEW] the set of Behavior The Diff-Serv model defines [DIFF_NEW] the set of Behavior
Aggregates which share an ordering constraint to constitute an Aggregates which share an ordering constraint to constitute an
"Ordered Aggregate (OA)". It also defines the set of one or more "Ordered Aggregate (OA)". It also defines the set of one or more
PHBs that are applied to this set of Behavior Aggregates to PHBs that are applied to this set of Behavior Aggregates to
constitute a "PHB Scheduling Class (PSC)". constitute a "PHB Scheduling Class (PSC)".
1.2 EXP-Inferred-PSC LSPs (E-LSP) 1.2 EXP-Inferred-PSC LSPs (E-LSP)
skipping to change at line 156 skipping to change at line 152
field of the MPLS Shim Header [MPLS_ENCAPS] is used by the LSR to field of the MPLS Shim Header [MPLS_ENCAPS] is used by the LSR to
determine the PHB to be applied to the packet. This includes both determine the PHB to be applied to the packet. This includes both
the PSC and the drop preference. 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 relying 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.
1.3 Label-Only-Inferred-PSC LSPs (L-LSP) 1.3 Label-Only-Inferred-PSC LSPs (L-LSP)
A separate LSP can be established for a single <FEC, OA> pair. A separate LSP can be established for a single <FEC, OA> pair.
Le Faucheur et. al 3
MPLS Support of Diff-Serv March 00
With such LSPs, the PSC is explicitly signaled at label With such LSPs, the PSC is explicitly signaled at label
establishment time so that, after label establishment, the LSR can establishment time so that, after label establishment, the LSR can
infer exclusively from the label value the PSC to be applied to a infer exclusively from the label value the PSC to be applied to a
Le Faucheur et. al 3
MPLS Support of Diff-Serv June 2000
labeled packet. When the Shim Header is used, the Drop Precedence to labeled packet. When the Shim Header is used, the Drop Precedence to
be applied by the LSR to the labeled packet, is conveyed inside the be applied by the LSR to the labeled packet, is conveyed inside the
labeled packet MPLS Shim Header using the EXP field [MPLS_ENCAPS]. labeled packet MPLS Shim Header using the EXP field [MPLS_ENCAPS].
When the Shim Header is not used (eg. MPLS Over ATM), the Drop When the Shim Header is not used (eg. MPLS Over ATM), the Drop
Precedence to be applied by the LSR to the labeled packet is Precedence to be applied by the LSR to the labeled packet is
conveyed inside the link layer header encapsulation using link layer conveyed inside the link layer header encapsulation using link layer
specific drop precedence fields (eg. ATM Cell Loss Priority). specific drop precedence fields (eg. ATM Cell Loss Priority).
We refer to such LSPs as "Label-Only-Inferred-PSC LSPs" (L-LSP) We refer to such LSPs as "Label-Only-Inferred-PSC LSPs" (L-LSP)
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
skipping to change at line 220 skipping to change at line 215
[MPLS_ARCH] states in section `2.1. Overview' that: [MPLS_ARCH] states in section `2.1. Overview' that:
`Some routers analyze a packet's network layer header not merely to `Some routers analyze a packet's network layer header not merely to
choose the packet's next hop, but also to determine a packet's choose the packet's next hop, but also to determine a packet's
"precedence" or "class of service". They may then apply different "precedence" or "class of service". They may then apply different
discard thresholds or scheduling disciplines to different packets. discard thresholds or scheduling disciplines to different packets.
MPLS allows (but does not require) the precedence or class of MPLS allows (but does not require) the precedence or class of
service to be fully or partially inferred from the label. In this service to be fully or partially inferred from the label. In this
case, one may say that the label represents the combination of a FEC case, one may say that the label represents the combination of a FEC
and a precedence or class of service.' and a precedence or class of service.'
Le Faucheur et. al 4
MPLS Support of Diff-Serv March 00
In line with this, we observe that: In line with this, we observe that:
- With E-LSPs, the label represents the combination of a FEC and - With E-LSPs, the label represents the combination of a FEC and
the set of Behavior Aggregates (BAs) transported over the E- the set of Behavior Aggregates (BAs) transported over the E-
Le Faucheur et. al 4
MPLS Support of Diff-Serv June 2000
LSP). Where all the supported BAs are transported over an E-LSP, LSP). Where all the supported BAs are transported over an E-LSP,
the label then represents the complete FEC. the label then represents the complete FEC.
- With L-LSPs, the label represents the combination of a FEC and - With L-LSPs, the label represents the combination of a FEC and
an Ordered Aggregate (OA). an Ordered Aggregate (OA).
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.
skipping to change at line 249 skipping to change at line 244
bandwidth requirements for the LSP are signaled at LSP establishment bandwidth requirements for the LSP are signaled at LSP establishment
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 COPS) for the relevant PSC(s). Such signaled bandwidth SNMP or COPS) for the relevant PSC(s). Such signaled bandwidth
requirements may also be used by LSRs at establishment time to requirements may also be used by LSRs at establishment time to
perform adjustment to the Diff-Serv resources associated with the perform adjustment to the Diff-Serv resources associated with the
relevant PSC(s) (e.g. adjust PSC scheduling weight). 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 to be used. Since E-LSPs does not mean that per-LSP scheduling is necessarily required. Since
and L-LSPs are specified in this document for support of E-LSPs and L-LSPs are specified in this document for support of
Differentiated Services, the required forwarding treatment Differentiated Services, the required forwarding treatment
(scheduling and drop policy) is Diff-Serv PHBs. This forwarding (scheduling and drop policy) is defined by the appropriate Diff-Serv
treatment MUST be applied by the LSR at the granularity of the BA PHB. This forwarding treatment MUST be applied by the LSR at the
and MUST be compliant with the relevant PHB specification. granularity of the BA and MUST be compliant with the relevant PHB
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
whole LSP and therefore to the set of transported PSCs. Thus, LSRs whole LSP and therefore to the set of transported PSCs. Thus, LSRs
which use the signaled bandwidth to perform admission control may which use the signaled bandwidth to perform admission control may
perform admission control over global resources which are shared by perform admission control over global resources which are shared by
the set of PSCs (e.g. over the total bandwidth of the link). the set of PSCs (e.g. over the total bandwidth of the link).
Examples of scenarios where bandwidth reservation is not used and Examples of scenarios where bandwidth reservation is not used and
scenarios where bandwidth reservation is used are provided for scenarios where bandwidth reservation is used are provided for
information in APPENDIX B. information in APPENDIX B.
2. Label Forwarding Model for Diff-Serv LSRs
Le Faucheur et. al 5 Le Faucheur et. al 5
MPLS Support of Diff-Serv June 2000
MPLS Support of Diff-Serv March 00 2. Label Forwarding Model for Diff-Serv LSRs and Tunneling Models
2.1 Label Forwarding Model for Diff-Serv LSRs
Since different Ordered Aggregates of a given FEC may be transported Since different Ordered Aggregates of a given FEC may be transported
over different LSPs, the label swapping decision of a Diff-Serv LSR over different LSPs, the label swapping decision of a Diff-Serv LSR
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 to a non-MPLS Diff-Serv Router. different to a non-MPLS Diff-Serv Router.
In order to describe Label Forwarding by Diff-Serv LSRs, we model Thus, in order to describe Label Forwarding by Diff-Serv LSRs, we
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)
- Optional Outgoing PHB Determination via Local Policy and Traffic - Optional Outgoing PHB Determination via Local Policy and Traffic
Conditioning (B) Conditioning (B)
- Label Swapping (C) - Label Swapping (C)
- Encoding of Diff-Serv information into Encapsulation Layer - Encoding of Diff-Serv information into Encapsulation Layer (EXP,
(EXP,CLP,DE,User_Priority) (D) CLP, DE, User_Priority) (D)
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.
This model is illustrated below: This model is illustrated below:
--Inc_label(*)--------------------------->I===I---Outg_label (**)--> --Inc_label(*)--------------------------->I===I---Outg_label (**)-->
\ I I \ \ I I \
\---->I===I I C I \-->I===I--Encaps-> \---->I===I I C I \-->I===I--Encaps->
I A I I===I--Outg_PHB->I===I I D I (**) I A I I===I--Outg_PHB->I===I I D I (**)
-Encaps->I===I--Inc_PHB->I B I \ /->I===I -Encaps->I===I--Inc_PHB->I B I \ /->I===I
(*) I===I \--------/ (*) I===I \--------+
\----Forwarding-->
Treatment
(PHB)
`Encaps' designates the Diff-Serv related information encoded in the `Encaps' designates the Diff-Serv related information encoded in the
MPLS Encapsulation layer (eg EXP field, ATM CLP, Frame Relay DE, MPLS Encapsulation layer (eg EXP field, ATM CLP, Frame Relay DE,
802.1 User_Priority) 802.1 User_Priority)
(*) when the LSR performs label imposition, the incoming packet is (*) when the LSR performs label imposition, the incoming packet is
received unlabelled. received unlabelled.
(**) when the LSR performs label disposition, the outgoing packet is (**) when the LSR performs label disposition, the outgoing packet is
transmitted unlabelled. transmitted unlabelled.
This model is presented here to illustrate operations of Diff-Serv This model is presented here to describe the functional operations
LSRs and does not constrain actual implementation. of Diff-Serv LSRs and does not constrain actual implementation.
2.1 Incoming PHB Determination
This stage determines which Behavior Aggregate the received packet
belongs to.
Le Faucheur et. al 6 Le Faucheur et. al 6
MPLS Support of Diff-Serv June 2000
MPLS Support of Diff-Serv March 00 2.2 Incoming PHB Determination
2.1.1 Incoming PHB Determination for received labelled packets
This specification defines one default method for this determination This stage determines which Behavior Aggregate the received packet
which allows for regular support of Diff-Serv over MPLS. This method belongs to.
considers only the outer encapsulation (ie outer label entry or ATM
encapsulation or Frame Relay encapsulation) and ignores other label
entries which may be present in the stack. It combines:
- the Diff-Serv context associated with the incoming label and
stored in the Incoming Label Map (ILM). See section 2.3 below
for details on information comprising the Diff-Serv context.
- the Diff-Serv related information that is encoded in the
corresponding encapsulation layer (ie in EXP field of MPLS Shim
layer or in CLP/DE field of the link layer encapsulation) of the
received label packet.
The details of this method depend on the incoming LSP type and on 2.2.1 Incoming PHB Determination Considering a Label Stack Entry
the incoming MPLS encapsulation and are defined below in sections
3.3 and 4.3.
Support for this default method is mandatory for compliance to this Sections 3.3 and 4.3 provide the details on how to perform incoming
specification. PHB Determination considering a given received label stack entry
and/or received incoming MPLS encapsulation information depending on
the incoming LSP type corresponding to the considered stack entry
and depending on the incoming MPLS encapsulation.
Optionally, other methods for Incoming PHB Determination may also be Section 2.6 provides the details of which label stack entry to
supported. Other methods may take into account other information in consider for the Incoming PHB Determination depending on the
addition to, or instead of, the information used by the mandatory supported Diff-Serv tunneling mode.
method. For instance, other method could take into account the DS
field of the encapsulated packet or the EXP field of a label header
deeper in the label stack. Such methods are beyond the scope of this
specification.
2.1.2 Incoming PHB Determination for received unlabelled packets 2.2.2 Incoming PHB Determination Considering IP Header
For packets received unlabelled, this stage operates exactly as with Section 2.6 provides the details of when the IP Header is to be
a non-MPLS IP Diff-Serv Router and uses the DS field. considered for incoming PHB determination depending on the supported
Diff-Serv tunneling mode. In those cases where the IP header is to
be used, this stage operates exactly as with a non-MPLS IP Diff-Serv
Router and uses the DS field to determine incoming PHB.
2.2 Optional Outgoing PHB Determination Via Local Policy And Traffic 2.3 Optional Outgoing PHB Determination Via Local Policy And Traffic
Conditioning Conditioning
This stage of Diff-Serv label switching is optional and may be used This stage of Diff-Serv label switching is optional and may be used
on an LSR to perform traffic conditioning including Behavior on an LSR to perform traffic conditioning including Behavior
Aggregate demotion or promotion. It is outside the scope of this Aggregate demotion or promotion. It is outside the scope of this
specification. For the purpose of specifying Diff-Serv over MPLS specification. For the purpose of specifying Diff-Serv over MPLS
forwarding, we simply note that the PHB to be actually enforced, and forwarding, we simply note that the PHB to be actually enforced, and
conveyed to downstream LSRs, by an LSR (referred to as "outgoing conveyed to downstream LSRs, by an LSR (referred to as "outgoing
PHB") may be different to the PHB which had been associated with the PHB") may be different to the PHB which had been associated with the
packet by the previous LSR (referred to as "incoming PHB"). packet by the previous LSR (referred to as "incoming PHB").
skipping to change at line 379 skipping to change at line 365
Conditioning Conditioning
This stage of Diff-Serv label switching is optional and may be used This stage of Diff-Serv label switching is optional and may be used
on an LSR to perform traffic conditioning including Behavior on an LSR to perform traffic conditioning including Behavior
Aggregate demotion or promotion. It is outside the scope of this Aggregate demotion or promotion. It is outside the scope of this
specification. For the purpose of specifying Diff-Serv over MPLS specification. For the purpose of specifying Diff-Serv over MPLS
forwarding, we simply note that the PHB to be actually enforced, and forwarding, we simply note that the PHB to be actually enforced, and
conveyed to downstream LSRs, by an LSR (referred to as "outgoing conveyed to downstream LSRs, by an LSR (referred to as "outgoing
PHB") may be different to the PHB which had been associated with the PHB") may be different to the PHB which had been associated with the
packet by the previous LSR (referred to as "incoming PHB"). packet by the previous LSR (referred to as "incoming PHB").
When this stage is not present, the "outgoing PHB" is simply When this stage is not present, the "outgoing PHB" is simply
identical to the "incoming PHB". identical to the "incoming PHB".
For packets received unlabelled, this stage operates as with a non- 2.4 Label Swapping
MPLS IP Diff-Serv Router.
Le Faucheur et. al 7
MPLS Support of Diff-Serv March 00
2.3 Label Swapping
[MPLS_ARCH] describes how label swapping is performed by LSRs on [MPLS_ARCH] describes how label swapping is performed by LSRs on
incoming labeled packets using an Incoming Label Map (ILM), where incoming labeled packets using an Incoming Label Map (ILM), where
each incoming label is mapped to one or multiple NHLFEs. [MPLS_ARCH] each incoming label is mapped to one or multiple NHLFEs. [MPLS_ARCH]
also describes how label imposition is performed by LSRs on incoming also describes how label imposition is performed by LSRs on incoming
unlabelled packets using a FEC-to-NHLFEs Map (FTN), where each unlabelled packets using a FEC-to-NHLFEs Map (FTN), where each
incoming FEC is mapped to one or multiple NHLFEs. incoming FEC is mapped to one or multiple NHLFEs.
A Diff-Serv Context for a label is defined as comprising: A Diff-Serv Context for a label is defined as comprising:
- `LSP type (ie E-LSP or L-LSP)' - `LSP type (ie E-LSP or L-LSP)'
- `supported PHBs' - `supported PHBs'
Le Faucheur et. al 7
MPLS Support of Diff-Serv June 2000
- `Encaps-->PHB mapping' for an incoming label - `Encaps-->PHB mapping' for an incoming label
- `Set of PHB-->Encaps mappings' for an outgoing label - `Set of PHB-->Encaps mappings' for an outgoing label
The present specification defines that a Diff-Serv Context is stored The present specification defines that a Diff-Serv Context is stored
in the ILM for each incoming label. in the ILM for each incoming label.
[MPLS_ARCH] states that the `NHLFE may also contain any other [MPLS_ARCH] states that the `NHLFE may also contain any other
information needed in order to properly dispose of the packet'. In information needed in order to properly dispose of the packet'. In
accordance with this, the present specification defines that a Diff- accordance with this, the present specification defines that a Diff-
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
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.
skipping to change at line 441 skipping to change at line 423
PHB-->Encaps mappings' are populated are defined below in sections 3 PHB-->Encaps mappings' are populated are defined below in sections 3
and 4. and 4.
[MPLS_ARCH] also states that: [MPLS_ARCH] also states that:
"If the ILM [respectively, FTN] maps a particular label to a set of "If the ILM [respectively, FTN] maps a particular label to a set of
NHLFEs that contains more than one element, exactly one element of NHLFEs that contains more than one element, exactly one element of
the set must be chosen before the packet is forwarded. The the set must be chosen before the packet is forwarded. The
procedures for choosing an element from the set are beyond the scope procedures for choosing an element from the set are beyond the scope
of this document. Having the ILM [respectively, FTN] map a label of this document. Having the ILM [respectively, FTN] map a label
[respectively, a FEC] to a set containing more than one NHLFE may be [respectively, a FEC] to a set containing more than one NHLFE may be
Le Faucheur et. al 8
MPLS Support of Diff-Serv March 00
useful if, e.g., it is desired to do load balancing over multiple useful if, e.g., it is desired to do load balancing over multiple
equal-cost paths." equal-cost paths."
In accordance with this, the present specification allows that an In accordance with this, the present specification allows that an
incoming label [respectively FEC] is mapped, for Diff-Serv purposes, incoming label [respectively FEC] may be mapped, for Diff-Serv
to multiple NHLFEs (for instance where different NHLFEs correspond purposes, to multiple NHLFEs (for instance where different NHLFEs
to egress labels supporting different sets of PHBs). When a label correspond to egress labels supporting different sets of PHBs). When
[respectively FEC] maps to multiple NHLFEs, the Diff-Serv LSR MUST a label [respectively FEC] maps to multiple NHLFEs, the Diff-Serv
choose one of the NHLFEs whose Diff-Serv context indicates that it LSR MUST choose one of the NHLFEs whose Diff-Serv Context indicates
supports the Outgoing PHB of the forwarded packet. that it supports the Outgoing PHB of the forwarded packet.
When a label [respectively FEC] maps to multiple NHLFEs which When a label [respectively FEC] maps to multiple NHLFEs which
supports the Outgoing PHB, the procedure for choosing one among supports the Outgoing PHB, the procedure for choosing one among
Le Faucheur et. al 8
MPLS Support of Diff-Serv June 2000
those is outside the scope of this document. This situation may be those is outside the scope of this document. This situation may be
encountered where it is desired to do load balancing of a Behavior encountered where it is desired to do load balancing of a Behavior
Aggregate over multiple LSPs. In such situations, in order to Aggregate over multiple LSPs. In such situations, in order to
respect ordering constraints, all packets of a given microflow MUST respect ordering constraints, all packets of a given microflow MUST
be transported over the same LSP. be transported over the same LSP.
2.4 Encoding Diff-Serv information into Encapsulation Layer 2.5 Encoding Diff-Serv Information Into Encapsulation Layer
This stage determines how to encode the fields of the MPLS This stage determines how to encode the fields which convey Diff-
encapsulation layer which convey Diff-Serv information (eg MPLS Shim Serv information in the transmitted packet (eg. MPLS Shim EXP, ATM
EXP, ATM CLP, Frame Relay DE, 802.1 User_Priority). CLP, Frame Relay DE, 802.1 User_Priority).
2.4.1 Encoding Diff-Serv information for transmitted labeled packets 2.5.1 Encoding Diff-Serv Information Into Transmitted Label Entry
This specification defines one default method for this encoding Sections 3.5 and 4.5 provide the details on how to perform Diff-Serv
which allows regular support of Diff-Serv over MPLS. This method information encoding into a given transmitted label stack entry
takes into account: and/or transmitted MPLS encapsulation information depending on the
- the Outgoing PHB corresponding outgoing LSP type and depending on the MPLS
- the Diff-Serv context associated with each swapped/pushed label encapsulation.
of the selected NHLFE (`Set of PHB-->Encaps mappings').
This method defines that the Outgoing PHB is reflected into: Section 2.6 provides the details of which label stack entry to
- the EXP field value of all the swapped or pushed label entries perform Diff-Serv information encoding into depending on the
- the CLP/DE bit when the packet is encapsulated into ATM/Frame supported Diff-Serv tunneling mode.
Relay,
- the 802.1 User_Priority field of the 802.1 Tag Control
Information when the packet is encapsulated into LAN interfaces
supporting multiple Traffic Classes,
The details of this method depend on the outgoing LSP type and on 2.5.2 Encoding Diff-Serv Information Into Transmitted IP Header
the outgoing MPLS encapsulation and are defined below in sections
3.5 and 4.5.
Support for this default method is mandatory for compliance to this This paragraph defines how to perform Diff-Serv Information Encoding
specification. into the transmitted packet IP header.
Optionally, other methods for encoding Diff-Serv information into To perform Diff-Serv Information Encoding into the transmitted
the Encapsulation layer may also be supported to allow for more packet IP header, this stage operates exactly as with a non-MPLS IP
sophisticated Diff-Serv operations over MPLS. Other methods may Diff-Serv Router and encodes the DSCP of the Outgoing PHB into the
affect encapsulation fields differently. DS field.
Section 2.6 provides the details of when Diff-Serv Information
Encoding is to be performed into transmitted IP header depending on
the supported Diff-Serv tunneling mode.
2.6 Diff-Serv Tunneling Models over MPLS
2.6.1 Terminology
As per [MPLS_ARCH],
"we can speak of the level m LSP for Packet P as the sequence of
routers:
1. which begins with an LSR (an "LSP Ingress") that pushes on a
level m label,
2. all of whose intermediate LSRs make their forwarding decision
by label Switching on a level m label,
3. which ends (at an "LSP Egress") when a forwarding decision is
made by label Switching on a level m-k label, where k>0, or when
Le Faucheur et. al 9 Le Faucheur et. al 9
MPLS Support of Diff-Serv June 2000
MPLS Support of Diff-Serv March 00 a forwarding decision is made by "ordinary", non-MPLS forwarding
procedures."
2.4.2 Encoding Diff-Serv information for transmitted unlabelled packets We note that if Penultimate Hop Popping (PHP) is used on the LSP,
the label pop for the LSP is not performed by the LSP Egress but
instead is performed by the Penultimate LSR. If PHP is not used,
then the label pop for the LSP is performed by the LSP Egress.
This specification defines one default method for this encoding In all the figures below, (I) indicates "LSP Ingress", (P) indicates
which allows regular support of Diff-Serv over MPLS. "LSP Penultimate Hop" and (E) indicates "LSP Egress".
Support for this default method is mandatory for compliance to this 2.6.2 Diff-Serv Tunneling Models
specification.
For packets transmitted unlabelled (ie LSR performing label [DIFF_TUNNEL] considers the interaction of Differentiated Services
disposition), the default encoding method writes the DSCP of the with IP tunnels of various forms. MPLS LSPs are not a form of "IP
Outgoing PHB into the DS field. tunnels" since the MPLS encapsulating header does not contain an IP
header and MPLS LSPs are thus clearly out of the scope of
[DIFF_TUNNEL]. However, although not a form of "IP tunnel", MPLS
LSPs are a form of "tunnel".
Optionally, other encoding methods may also be supported to allow From the Diff-Serv standpoint, LSPs share a lot of characteristics
for more sophisticated Diff-Serv operations over MPLS. Other methods with IP Tunnels:
may affect the DS field differently. One example would be a method - intermediate nodes (ie. Nodes somewhere along the LSP span) only
where the IP packet's DS field is left unchanged regardless of the see and operate on the "outer" Diff-Serv information.
Outgoing PHB. Such a method would allow `MPLS Diff-Serv - LSPs are unidirectional
Transparency' ie it would allow support of Differentiated Services - the "outer" Diff-Serv information can be modified at any
in the MPLS backbone based on a Diff-Serv policy which is specific intermediate nodes.
to the MPLS cloud (and different from the Diff-Serv policy applied
in the non-MPLS clouds around the MPLS cloud) since the IP DS field However, from the Diff-Serv standpoint, LSPs also have a number of
would be transported transparently through the MPLS cloud. Details distinctive properties compared to IP Tunnels:
of such methods are outside the scope of this specification. - There is no behavior analogous to Penultimate Hop Popping (PHP)
for IP Tunnels. Furthermore, PHP results in the "outer"
Diff-Serv information associated with the LSP not being visible
to the LSP egress. In situations where this information is not
meaningful at the LSP Egress, this is obviously not an issue at
all. In situations where this information is meaningful at the
LSP Egress, then it must somehow be carried in some other means.
- Two-level hierarchical LSPs with the two nested LSPs starting on
the same Ingress LSR and finishing on the same Egress LSR, are
expected to be commonplace in MPLS networks for applications
such as MPLS VPNs [MPLS_VPN].
Based on these considerations, it is clear that the two important
conceptual models for Diff-Serv tunneling over IP Tunnels defined in
[DIFF_TUNNEL] are applicable and useful to Diff-Serv over MPLS and
that their respective detailed operations is somewhat different over
MPLS. These two models are the Uniform Model and the Pipe Model and
their operations over MPLS is described in the following sections.
2.6.3 Uniform Model
Le Faucheur et. al 10
MPLS Support of Diff-Serv June 2000
With the Uniform Model, MPLS tunnels (aka LSPs) are viewed as
artifacts of the end-to-end path from the Diff-Serv standpoint. MPLS
Tunnels may be used for forwarding purposes but have no significant
impact on Diff-Serv. In this model, any packet contains exactly one
piece of Diff-Serv information which is meaningful and is always
encoded in the outer most label entry (or in the IP DSCP where the
IP packet is transmitted unlabelled for instance at the egress of
the LSP). Any Diff-Serv information encoded somewhere else (eg. in
deeper label entries) is of no significance to intermediate nodes or
to the tunnel egress and is ignored. If Traffic Conditioning at
intermediate nodes on the LSP span affects the "outer" Diff-Serv
information, the updated Diff-Serv information is the one considered
meaningful at the egress of the LSP.
With this Uniform Model:
- the LSP Ingress, when performing the push operation, encodes the
meaningful Diff-Serv information in the label entry
corresponding to the pushed label.
- Intermediate LSRs only consider and operate on the LSP Diff-Serv
Information encoded in the "outer" label entry (ie label entry
on which they perform the label swap).
- Penultimate Hop Popping (PHP) can be used. In that case, the
meaningful Diff-Serv information is conveyed by the Penultimate
LSR to the LSP Egress in the header that is exposed by the pop
operation (ie. in the header that will be used for actual
forwarding by the LSP Egress).
Note that to do so, the Penultimate LSR needs to be aware of the
"Set of PHB-->Encaps mappings" for the label corresponding to
the exposed header (or the PHB-->DSCP mapping). Methods for
providing this mapping awareness are outside the scope of this
specification. As an example, the "PHB-->DSCP mapping" may be
locally configured. As another example, in some environments, it
may be appropriate for the Penultimate LSR to assume that the
"Set of PHB-->Encaps mappings" to be used for the outgoing label
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.
Note also that this specification assumes that the Penultimate
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
the exposed label). Consequently, restrictions may apply to the
Diff-Serv Information Encoding that can be performed by the
Penultimate LSR. For example, this specification does not allow
situations where the Penultimate LSR pops a label corresponding
to an E-LSP supporting two PSCs, while the header exposed by the
pop contains label values for two L-LSPs each supporting one
PSC, since the Diff-Serv Information Encoding would require
selecting one label or the other.
- It is also possible to not use PHP. In that case, the meaningful
Diff-Serv information is conveyed by the Penultimate LSR to the
LSP Egress in the "outer" label entry (which corresponds to the
LSP label).
Le Faucheur et. al 11
MPLS Support of Diff-Serv June 2000
- When the pop operation is performed (ie. Penultimate hop with
PHP, LSP Egress without PHP), the incoming Diff-Serv information
contained in the outmost label entry before the pop is
considered as the meaningful information.
Operation of the Uniform Model with PHP is illustrated below :
========== LSP ==========================>
+--Swap-(M)-...-Swap-(M)--+
/ (outer header) \
(M) (M)
/ \
>--(M)--Push...............(x)............Pop-(M)--(E)--(M)->
(I) (inner header) (P)
(M) represents the Meaningful Diff-Serv information encoded in the
corresponding header.
(x) represents non-meaningful Diff-Serv information.
Operation of the Uniform Model without PHP is illustrated below:
========== LSP =============================>
+--Swap--(M)-...-Swap-(M)-swap--(M)--+
/ (outer header) (P) \
(M) (M)
/ \
>--(M)--Push...............(x).......................Pop--(M)->
(I) (inner header) (E)
(M) represents the Meaningful Diff-Serv information encoded in the
corresponding header.
(x) represents non-meaningful Diff-Serv information.
Use of the Uniform Model allows LSPs to span Diff-Serv domain
boundaries without any other measure in place than an inter-domain
Traffic Conditioning Agreement at the physical boundary between the
Diff-Serv domains and operating exclusively on the "outer" header,
since the meaningful Diff-Serv information is always visible and
modifiable in the outmost label entry.
The Uniform Model for Diff-Serv over MPLS is such that, from the
Diff-Serv perspective, operations are exactly identical to the
operations if MPLS was not used. In other words, MPLS is entirely
transparent to the Diff-Serv operations. For this reason, the
Le Faucheur et. al 12
MPLS Support of Diff-Serv June 2000
Uniform Model has been selected in this specification as the base
mandatory mode of operations and thus MUST be supported.
For support of the Uniform Model over an LSP (with and without PHP),
an LSR performs the Incoming PHB Determination and the Diff-Serv
information Encoding in the following manner:
- when receiving an unlabelled packet, the LSR performs Incoming
PHB Determination considering the received IP Header.
- when receiving a labeled packet, the LSR performs Incoming PHB
Determination considering the outer label entry in the received
label stack. In particular, when a pop operation is to be
performed for the considered LSP, the LSR performs Incoming PHB
Determination BEFORE the pop.
- when performing a swap-only operation for an LSP, the LSR
encodes Diff-Serv Information in the transmitted label entry
corresponding to the swapped label
- when performing a push operation for an LSP, the LSR encodes
Diff-Serv Information in the transmitted label entry
corresponding to the pushed label. The Diff-Serv Information
encoded in the encapsulated header (swapped label entry or IP
Header) is of no importance.
2.6.4 Pipe Model
With the Pipe Model, MPLS tunnels (aka LSPs) are used to hide the
intermediate MPLS nodes between LSP Ingress and Egress from the
Diff-Serv perspective. In this model, the LSP Egress uses the Diff-
Serv information conveyed from the LSP Ingress inside the
encapsulated header (be it an IP Header or an MPLS Header) and
ignores the Diff-Serv information conveyed in the encapsulating
header.
In this model, tunneled packets must convey two meaningful pieces of
Diff-Serv information:
- the Diff-Serv information which is meaningful to intermediate
nodes along the LSP span (which we refer to as the "LSP Diff-
Serv Information"). This LSP Diff-Serv Information is not
meaningful at the LSP Egress: Whether Traffic Conditioning at
intermediate nodes on the LSP span affects the LSP Diff-Serv
information or not, this updated Diff-Serv information is not
considered meaningful at the LSP Egress and is ignored.
- the Diff-Serv information which is meaningful at the LSP Egress
(which we refer to as the "Tunneled Diff-Serv Information").
This information is to be conveyed by the LSP Ingress to the LSP
Egress. This Diff-Serv information is not meaningful to the
intermediate nodes on the LSP span.
With this Pipe Model:
- the LSP Ingress, when performing the push operation, encodes the
LSP Diff-Serv information in the label entry that is pushed
("outer label entry") and encodes the Tunneled Diff-Serv
Le Faucheur et. al 13
MPLS Support of Diff-Serv June 2000
Information in the encapsulated header (IP header or swapped
label entry).
- Intermediate LSRs only consider and operate on the LSP Diff-Serv
Information encoded in the "outer" label entry (ie label entry
on which they perform the label swap).
- Penultimate Hop Popping (PHP) can be used. In that case, the LSP
Diff-Serv Information is simply not conveyed by the Penultimate
LSR to the LSP Egress. The Penultimate LSR conveys to the LSP
Egress the Tunneled Diff-Serv Information in the header that is
exposed by the pop operation (ie. in the header that will be
used for actual forwarding by the LSP Egress). However, since
the LSP Diff-Serv Information is the meaningful one over the
whole LSP including from the Penultimate LSR to the LSP Egress,
the Penultimate LSR performs Diff-Serv forwarding treatment (ie
PHB enforcement) based on the LSP Diff-Serv Information (even if
this information is not actually conveyed in the packet
transmitted to the LSP Egress).
- it is also possible to not use PHP. In that case, the LSP Diff-
Serv Information is conveyed by the Penultimate LSR to the LSP
Egress in the "outer" label entry (which corresponds to the LSP
label) where it will simply be ignored.
- When PHP is used, the LSP Egress directly uses the Diff-Serv
information received in the outer header (IP header or outer
label entry) since it carries the Tunneled Diff-Serv
Information.
- When PHP is not used, LSP Egress ignores the Diff-Serv
information contained in the label entry to be popped (since it
contains the LSP Diff-Serv information) and considers the Diff-
Serv information conveyed in the header (IP header or MPLS
header) which is used to do the actual forwarding (since it
contains the Tunneled LSP Diff-Serv information). In other
words, the LSP Egress considers the Diff-Serv information
conveyed in the header after the pop operation.
Operation of the Pipe Model with PHP is illustrated below:
========== LSP ===========================>
+--Swap--(M)-...-Swap--(M)--+
/ (outer header) \
(M) (M)
/ \
>--(m)-Push.................(m)............Pop-(m)-(E)-(m)-->
(I) (inner header) (P) (M*)
(M) represents the "LSP Diff-Serv information
(m) represents the "Tunneled Diff-Serv information"
Le Faucheur et. al 14
MPLS Support of Diff-Serv June 2000
(*) The Penultimate LSR considers the LSP Diff-Serv information
received in the outer header (ie. before the pop) in order to apply
its Diff-Serv forwarding treatment (ie actual PHB)
Operation of the Pipe Model without PHP is illustrated below:
========== LSP =============================>
+--Swap-(M)-...-Swap-(M)--Swap--(M)--+
/ (outer header) (P) \
(M) (M)
/ \
>--(m)-Push.................(m).....................Pop--(m)-->
(I) (inner header) (E)
(M) represents the "LSP Diff-Serv information
(m) represents the "Tunneled Diff-Serv information"
The Pipe Model is particularly appropriate to environments in which
the incoming interface of the LSP Ingress and the outgoing interface
of the LSP Egress are in the same Diff-Serv domain while the LSP
spans another (other) Diff-Serv domain(s).
As an example, consider the case where a service provider is
offering an MPLS VPN service including Diff-Serv differentiation.
Say that a collection of sites are interconnected via such an MPLS
VPN service. Now say that this collection of sites are managed under
a common administration and are also supporting Diff-Serv service
differentiation. If the VPN site administration and the Service
Provider are not sharing the exact same Diff-Serv policy (for
instance not supporting the same number of PHBs), then operation of
Diff-Serv in the Pipe Model over the MPLS VPN service would allow
the VPN Sites Diff-Serv domain policy to operate consistently
throughout the ingress VPN Site and Egress VPN Site and
transparently over the Service Provider Diff-Serv domain.
Support of the Pipe Model is defined in this specification as a
recommended option and thus SHOULD be supported.
For support of the Pipe Model over an LSP without PHP, an LSR
performs the Incoming PHB Determination and the Diff-Serv
information Encoding in the following manner:
- when receiving an unlabelled packet, the LSR performs Incoming
PHB Determination considering the received IP Header.
- when receiving a labeled packet, the LSR performs Incoming PHB
Determination considering the header (label entry or IP header)
which is used to do the actual forwarding. In particular, when a
pop operation is to be performed for the considered LSP, the LSR
performs Incoming PHB Determination AFTER the pop.
Le Faucheur et. al 15
MPLS Support of Diff-Serv June 2000
- when performing a swap-only operation for an LSP, the LSR
encodes Diff-Serv Information in the transmitted label entry
corresponding to the swapped label
- when performing a push operation for an LSP, the LSR:
o encodes Diff-Serv Information corresponding to the
OUTGOING PHB in the transmitted label entry corresponding
to the pushed label.
o encodes Diff-Serv Information corresponding to the
INCOMING PHB in the encapsulated header (swapped label
entry or IP header).
For support of the Pipe Model over an LSP with PHP, an LSR performs
Incoming PHB Determination and Diff-Serv information Encoding in the
same manner as without PHP with the following exception:
- the Penultimate LSR performs Incoming PHB Determination
considering the outer label entry in the received label stack.
In other words, when a pop operation is to be performed for the
considered LSP, the Penultimate LSR performs Incoming PHB
Determination BEFORE the pop.
- the Penultimate LSR does not perform Encoding of Diff-Serv
Information into the header exposed by the pop operation.
Note that LSR behaviors for the Uniform Model and for the Pipe Model
only differ when doing a push or a pop. Thus, Intermediate LSRs
which perform swap only operations for an LSP , behave exactly in
the same way regardless of whether they are behaving in the Uniform
Model or the Pipe model. With a Diff-Serv implementation supporting
both the Uniform Model and the Pipe Model, only LSRs behaving as LSP
Ingress, Penultimate LSR or LSP Egress need to be configured to
operate in a particular Model.
2.6.5 Other Models
Other Diff-Serv tunneling models are conceivable over MPLS for
support of more complex scenarios. For instance, the egress of an
LSP could conceivably make some complex Diff-Serv decision based on
both the Diff-Serv information conveyed in the encapsulating header
and in the encapsulated header. Models beyond the Uniform Model and
the Pipe Model are outside the scope of this specification and MAY
be supported as an option.
2.6.6 Hierarchy
Through the label stack mechanism, MPLS allows LSP tunneling to nest
to any depth. We observe that with such nesting, the push of level
N+1 takes place on a subsequent (or the same) LSR to the LSR doing
the push for level N, while the pop of level N+1 takes place on a
previous (or the same) LSR to the LSR doing the pop of level N. For
a given level N LSP, the Ingress LSR doing the push and the LSR
doing the pop (Penultimate LSR or LSP Egress) are expected to
operate in the same Tunneling Model (ie Uniform or Pipe). LSRs at
Le Faucheur et. al 16
MPLS Support of Diff-Serv June 2000
different levels of LSPs are expected to operate in the same or in
different Tunneling Models.
Le Faucheur et. al 17
MPLS Support of Diff-Serv June 2000
Hierarchical operations is illustrated below in the case of two
levels of tunnels:
+--------Swap--...---+
/ (outmost header) \
/ \
Push(2).................(2)Pop
/ (outer header) \
/ \
>>---Push(1)........................(1)Pop-->>
(inner header)
(1) Tunneling Model 1 (either Uniform or Pipe)
(2) Tunneling Model 2 (same as Tunneling Model 1 or different Model)
For support of M levels of push in the Uniform Model:
- when performing multiple push operations, the LSR encodes Diff-
Serv Information in the transmitted label entry corresponding to
the LAST pushed label (ie the label pushed in the outer label
entry). The Diff-Serv Information encoded in the encapsulated
header (swapped label entry or IP Header) as well as the Diff-
Serv Information encoded in label entries for other pushed
labels are of no importance.
For support of M levels of pop in the Uniform Model:
- when performing multiple pop operations for an LSP, the LSR
performs Incoming PHB Determination considering the outmost
label entry in the received label stack. In other words, when
multiple pop operations are to be performed, the LSR performs
Incoming PHB Determination BEFORE ANY pop operations.
- when the multiple pop operations are performed by the
Penultimate LSR, note that to perform Encoding of Diff-Serv
Information, the Penultimate LSR needs to be aware of the "Set
of PHB-->Encaps mappings" for the label corresponding to the
exposed header after all the pop operations (or the PHB-->DSCP
mapping). Methods for providing this mapping awareness are
outside the scope of this specification.
- when the multiple pop operations are performed by the
Penultimate LSR, note also that this specification assumes that
the Penultimate LSR does not perform label swapping over the
label entry exposed after all the pop operations (and in fact
that it does not even look at the header exposed after the last
pop operations). Consequently, restrictions may apply to the
Diff-Serv Information Encoding that can be performed by the
Penultimate LSR.
For support of M levels of push in the Pipe Model:
- when performing multiple push operations, the LSR:
o encodes Diff-Serv Information corresponding to the
Outgoing PHB in the transmitted label entry corresponding
Le Faucheur et. al 18
MPLS Support of Diff-Serv June 2000
to the LAST pushed label (ie the label pushed in the outer
label entry).
o encodes Diff-Serv Information corresponding to the
Incoming PHB in the encapsulated header (swapped label
entry or IP header) as well as in the label entries for
all the pushed labels (except the last pushed label).
For support of M levels of pop in the Pipe Model without PHP:
- when performing multiple pop operations for an LSP, the LSR
performs Incoming PHB Determination considering the header
(label entry or IP header) which is used to do the actual
forwarding. In other words, when a pop operation is to be
performed for the considered LSP, the LSR performs Incoming PHB
Determination AFTER ALL the pop operations.
For support of M levels of pop in the Pipe Model with PHP, the
Penultimate LSR:
- performs Incoming PHB Determination considering the outmost
label entry in the received label stack. In other words, when
multiple pop operations are to be performed for the considered
LSP, the LSR performs Incoming PHB Determination BEFORE ANY pop
operations.
- does not perform Encoding of Diff-Serv Information into the
header that is exposed after all the pop operations
3. Detailed Operations of E-LSPs 3. Detailed Operations of E-LSPs
3.1 E-LSP Definition 3.1 E-LSP Definition
Recognizing that: Recognizing that:
- Certain MPLS encapsulations (such as PPP and LAN) make use of a - Certain MPLS encapsulations (such as PPP and LAN) make use of a
Shim Header which consists of a label stack with one or more Shim Header which consists of a label stack with one or more
entries [MPLS_ENCAPS] each with a 3-bit EXP field; entries [MPLS_ENCAPS] each with a 3-bit EXP field;
- the Differentiated-Service (DS) field is 6-bit long - the Differentiated-Service (DS) field is 6-bit long
[DIFF_HEADER] potentially allowing support of up to 64 Behavior [DIFF_HEADER] potentially allowing support of up to 64 Behavior
Aggregates Aggregates
- any subset of 8 (or less) DSCP values can be mapped entirely - any subset of 8 (or less) DSCP values can be mapped entirely
into the 3-bit long EXP field of the MPLS label stack entry; into the 3-bit long EXP field of the MPLS label stack entry;
We define that: We define that:
- an LSP established for a given Forwarding Equivalent Class (FEC) - an LSP established for a given Forwarding Equivalent Class (FEC)
may be used for transport of up to eight BAs of that FEC; may be used for transport of up to eight BAs of that FEC;
- the set of transported BAs can span multiple OAs; - the set of transported BAs can span multiple OAs;
- for a given OA transported over the LSP, all supported BAs of - for a given OA transported over the LSP, all supported BAs of
this OA are transported over the LSP; this OA are transported over the LSP;
Le Faucheur et. al 10
MPLS Support of Diff-Serv March 00
- such an LSP is referred to as an "EXP-inferred-PSC" LSP or - such an LSP is referred to as an "EXP-inferred-PSC" LSP or
"E-LSP" because the PSC to be applied to a labeled packet by the "E-LSP" because the PSC to be applied to a labeled packet by the
LSR depends on the EXP field value in the MPLS Shim Header; LSR depends on the EXP field value in the MPLS Shim Header;
- packets belonging to this given FEC and from the corresponding
- packets belonging to this given (FEC) and from the corresponding
set of BAs are sent down this E-LSP. set of BAs are sent down this E-LSP.
Le Faucheur et. al 19
MPLS Support of Diff-Serv June 2000
- multiple BAs belonging to the same FEC and transported over the - multiple BAs belonging to the same FEC and transported over the
same E-LSP are granted different scheduling treatment and same E-LSP are granted different scheduling treatment and
different drop precedence by the MPLS LSR based on the EXP field different drop precedence by the LSR based on the EXP field
which is appropriately encoded to reflect both the PSC and the which is appropriately encoded to reflect both the PSC and the
drop precedence of the PHB corresponding to the packet's BA. drop precedence of the PHB corresponding to the packet's BA.
- the mapping between EXP field and PHB to be applied by the LSR - the mapping between EXP field and PHB to be applied by the LSR
for a given E-LSP is either explicitly signaled at label set-up for a given E-LSP is either explicitly signaled at label set-up
or relies on a preconfigured mapping. or relies on a preconfigured mapping.
Within a given MPLS Diff-Serv domain, all the E-LSPs relying on the Within a given MPLS Diff-Serv domain, all the E-LSPs relying on the
pre-configured mapping are capable of transporting the same common pre-configured mapping are capable of transporting the same common
set of 8, or less, BAs. Each of those E-LSPs may actually transport set of 8, or fewer, BAs. Each of those E-LSPs may actually transport
this full set of BAs or any arbitrary subset of it. this full set of BAs or any arbitrary subset of it.
For a given FEC, two given E-LSPs using signaled EXP<-->PHB mapping For a given FEC, two given E-LSPs using signaled EXP<-->PHB mapping
can support the same or different sets of Ordered Aggregates. can support the same or different sets of Ordered Aggregates.
For a given FEC, there may be more than one E-LSP carrying the same For a given FEC, there may be more than one E-LSP carrying the same
OA, for example for purposes of load balancing of the OA. In that OA, for example for purposes of load balancing of the OA. In that
case, in order to respect ordering constraints, all packets of a case, in order to respect ordering constraints, all packets of a
given microflow must be transported over the same LSP. given microflow must be transported over the same LSP.
MPLS specifies how LSPs can be established via multiple signaling MPLS specifies how LSPs can be established via multiple signaling
protocols. Those include the Label Distribution Protocol (LDP), protocols. Those include the Label Distribution Protocol (LDP),
RSVP, BGP and PIM. Sections 5 and 6 below specify how RSVP and LDP RSVP, BGP and PIM. Sections 5 and 6 below specify how RSVP and LDP
are to be used for establishment of E-LSPs. are to be used for establishment of E-LSPs.
3.2 Populating the `Encaps-->PHB mapping' for an incoming E-LSP 3.2 Populating the `Encaps-->PHB mapping' for an incoming E-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 for an incoming E-LSP in order to support the Context is populated for an incoming E-LSP in order to allow
mandatory default method for Incoming PHB determination. Incoming PHB determination.
The `Encaps-->PHB mapping' is always of the form `EXP-->PHB The `Encaps-->PHB mapping' for an E-LSP is always of the form
mapping'. `EXP-->PHB mapping'.
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 `EXP-->PHB mapping' has been explicitly signaled at LSP setup, the `EXP-->PHB mapping'
is populated based on the Preconfigured EXP<-->PHB Mapping which is is populated based on the Preconfigured EXP<-->PHB Mapping which is
discussed below in section 3.2.1. discussed below in section 3.2.1.
Le Faucheur et. al 11
MPLS Support of Diff-Serv March 00
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 `EXP-->PHB mapping' has been explicitly signaled at LSP setup, the `EXP-->PHB mapping'
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 uses 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 20
MPLS Support of Diff-Serv June 2000
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.
3.3 Incoming PHB Determination On Incoming E-LSP 3.3 Incoming PHB Determination On Incoming E-LSP
This section defines the mandatory default method for Incoming PHB This section defines how Incoming PHB Determination is carried out
determination for a labeled packet received on an E-LSP. This method when the considered label entry in the received label stack
requires that the `Encaps-->PHB mapping' is populated as defined corresponds to an E-LSP. This requires that the `Encaps-->PHB
above in section 3.2. mapping' is populated as defined above in section 3.2.
When receiving a labeled packet over an E-LSP of an MPLS ingress
interface, the LSR:
When considering a label entry corresponding to an incoming E-LSP
for Incoming PHB Determination, the LSR:
-determines the EXP-->PHB mapping by looking up the -determines the EXP-->PHB mapping by looking up the
`Encaps-->PHB mapping' of the Diff-Serv context associated with `Encaps-->PHB mapping' of the Diff-Serv Context associated in
the incoming label in the ILM. the ILM with the considered incoming E-LSP label.
- determines the incoming PHB by looking up the EXP field of the - determines the incoming PHB by looking up the EXP field of the
top level label entry into the EXP-->PHB mapping table. considered label entry in the EXP-->PHB mapping table.
If the EXP field value of a packet received on an E-LSP is not
included in the EXP-->PHB mapping associated with this LSP, this EXP
value should be considered invalid. LSR behavior in such situation
is a local matter and is outside the scope of this document.
3.4 Populating the `Set of PHB-->Encaps mappings' for an outgoing E-LSP 3.4 Populating the `Set of PHB-->Encaps mappings' for an outgoing E-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 for an outgoing E-LSP in order to Diff-Serv Context is populated for an outgoing E-LSP in order to
support the mandatory default method for Encoding of Diff-Serv allow Encoding of Diff-Serv information in the Encapsulation Layer.
information in the Encapsulation Layer.
3.4.1 `PHB-->EXP mapping' 3.4.1 `PHB-->EXP mapping'
One `PHB-->EXP mapping' is always added to the `Set of PHB-->Encaps An outgoing E-LSP must always have a `PHB-->EXP mapping' as part of
mappings' of the Diff-Serv context for an outgoing E-LSP. the `Set of PHB-->Encaps mappings' of its Diff-Serv Context.
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, this `PHB-->EXP mapping' has been explicitly signaled at LSP setup, this `PHB-->EXP mapping'
Le Faucheur et. al 12
MPLS Support of Diff-Serv March 00
is populated based on the Preconfigured EXP<-->PHB Mapping which is is populated based on the Preconfigured EXP<-->PHB Mapping which is
discussed above in section 3.2.1. discussed above 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 `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-->802.1 mapping' 3.4.2 `PHB-->CLP mapping'
If the outgoing interface is a LAN interface on which multiple 802.1 If the E-LSP is egressing over an ATM interface which is not label
Traffic Classes are supported as per [IEEE_802.1], one `PHB-->802.1 switching controlled, then one `PHB-->CLP mapping' is added at label
mapping' is added to the `Set of PHB-->Encaps mappings' of the Diff- setup to the `Set of PHB-->Encaps mappings' in the Diff-Serv Context
Serv context for the outgoing E-LSP. This mapping is populated at for this outgoing E-LSP. This `PHB-->CLP mapping' is populated in
label set-up based on the Preconfigured PHB-->802.1 mapping defined the following way:
below in section 3.4.2.1. - it is a function of the PHBs supported on this LSP, and may use
the relevant mapping entries for these PHBs from the
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
Le Faucheur et. al 21
MPLS Support of Diff-Serv June 2000
particular, if a mapping from PHBs to CLP is standardized in the
future for operations of Diff-Serv over ATM, such standardized
mapping may then be used.
For example if the outgoing label corresponds to an E-LSP supporting
the AF1 PSC and the EF PHB and egressing over an ATM interface, then
the `PHB-->CLP mapping' may be populated with:
PHB CLP Field
AF11 ----> 0
AF12 ----> 1
AF13 ----> 1
EF ----> 0
Notice that if the E-LSP is egressing over an ATM interface, then
the `Set of PHB-->Encaps mappings' contains both a `PHB-->EXP
mapping' and a `PHB-->CLP mapping'.
3.4.2.1 Default PHB-->CLP Mapping
PHB CLP Bit
DF ----> 0
CSn ----> 0
AFn1 ----> 0
AFn2 ----> 1
AFn3 ----> 1
EF ----> 0
3.4.3 `PHB-->DE mapping'
If the E-LSP is egressing over a Frame Relay interface which is not
label switching controlled, one `PHB-->DE mapping' is added at label
setup to the `Set of PHB-->Encaps mappings' in the Diff-Serv Context
for this outgoing E-LSP and is populated in the following way:
- it is a function of the PHBs supported on this LSP, and may use
the relevant mapping entries for these PHBs from the Default
PHB-->DE Mapping defined in section 3.4.3.1. Other mappings than
the one defined in section 3.4.3.1 may be used. In particular,
if a mapping from PHBs to DE is standardized in the future for
operations of Diff-Serv over Frame Relay, such standardized
mapping may then be used.
Notice that if the E-LSP is egressing over a Frame Relay interface,
then the `Set of PHB-->Encaps mappings' contains both a `PHB-->EXP
mapping' and a `PHB-->DE mapping'.
3.4.3.1 Default PHB-->DE Mapping
PHB DE Bit
Le Faucheur et. al 22
MPLS Support of Diff-Serv June 2000
DF ----> 0
CSn ----> 0
AFn1 ----> 0
AFn2 ----> 1
AFn3 ----> 1
EF ----> 0
3.4.4 `PHB-->802.1 mapping'
If the E-LSP is egressing over a LAN interface on which multiple
802.1 Traffic Classes are supported as per [IEEE_802.1], then one
`PHB-->802.1 mapping' is added at label setup to the `Set of
PHB-->Encaps mappings' of the Diff-Serv Context for this outgoing
E-LSP. This `PHB-->802.1 mapping' is populated in the following way:
- it is a function of the PHBs supported on this LSP, an uses the
relevant mapping entries for these PHBs from the Preconfigured
PHB-->802.1 Mapping defined in section 3.4.4.1.
Notice that the `Set of PHB-->Encaps mappings' then contains both a Notice that the `Set of PHB-->Encaps mappings' then contains both a
`PHB-->EXP mapping' and a `PHB-->802.1 mapping'. `PHB-->EXP mapping' and a `PHB-->802.1 mapping'.
3.4.2.1 Preconfigured `PHB-->802.1 Mapping' 3.4.4.1 Preconfigured `PHB-->802.1 Mapping'
At the time of producing this specification, there are no At the time of producing this specification, there are no
standardized mapping from PHBs to 802.1 Traffic Classes. standardized mapping from PHBs to 802.1 Traffic Classes.
Consequently, an LSR supporting multiple 802.1 Traffic Classes over Consequently, an LSR supporting multiple 802.1 Traffic Classes over
LAN interfaces must allow local configuration of a `PHB-->802.1 LAN interfaces must allow local configuration of a `PHB-->802.1
Mapping'. This mapping applies to all the outgoing LSPs established Mapping'. This mapping applies to all the outgoing LSPs established
by the LSR on such LAN interfaces. by the LSR on such LAN interfaces.
3.5 Encoding Diff-Serv information into Encapsulation Layer On Outgoing 3.5 Encoding Diff-Serv information into Encapsulation Layer On Outgoing
E-LSP E-LSP
This section defines the mandatory default method for encoding of This section defines how to encode Diff-Serv information into the
Diff-Serv related information into the MPLS encapsulation Layer to MPLS encapsulation Layer for a given transmitted label entry
be used when a packet is transmitted onto an E-LSP. This method corresponding to an outgoing E-LSP. This requires that the `Set of
requires that the `Set of PHB-->Encaps mappings' is populated as PHB-->Encaps mappings' is populated as defined above in section 3.4.
defined above in section 3.4.
The LSR first determines the `Set of PHB-->Encaps Mapping' The LSR first determines the `Set of PHB-->Encaps mappings' of the
associated with the outer label of the NHLFE. Diff-Serv Context associated with the corresponding label in the
NHLFE.
3.5.1 `PHB-->EXP mapping' 3.5.1 `PHB-->EXP mapping'
For all the labels which are swapped or pushed, the LSR: The LSR:
- determines the PHB-->EXP mapping by looking up the - determines the PHB-->EXP mapping by looking up the
`Set of PHB-->Encaps mapping' of the Diff-Serv context `Set of PHB-->Encaps mapping' of the Diff-Serv Context
associated with the corresponding label in the NHLFE. associated with the corresponding label in the NHLFE.
- 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.
3.5.2 `PHB-->802.1 mapping' Le Faucheur et. al 23
MPLS Support of Diff-Serv June 2000
Le Faucheur et. al 13 3.5.2 `PHB-->CLP mapping'
MPLS Support of Diff-Serv March 00 If the `Set of PHB-->Encaps mappings' contains a mapping of the form
`PHB-->CLP mapping', then the LSR:
- determines the value to be written in the CLP field of the ATM
encapsulation header, by looking up the "outgoing PHB" in this
PHB-->CLP mapping table.
If the `Set of PHB-->Encaps mapping' of the outer label contains a 3.5.3 `PHB-->DE mapping'
mapping of the form `PHB-->802.1 mapping', then the LSR:
If the `Set of PHB-->Encaps mappings' contains a mapping of the form
`PHB-->DE mapping', then the LSR:
- determines the value to be written in the DE field of the Frame
Relay encapsulation header, by looking up the "outgoing PHB" in
this PHB-->DE mapping table.
3.5.4 `PHB-->802.1 mapping'
If the `Set of PHB-->Encaps mappings' contains a mapping of the form
`PHB-->802.1 mapping', then the LSR:
- determines the value to be written in the User_Priority field of - determines the value to be written in the User_Priority field of
the Tag Control Information of the 802.1 encapsulation header the Tag Control Information of the 802.1 encapsulation header
[IEEE_802.1], by looking up the "outgoing PHB" in this PHB-->802.1 [IEEE_802.1], by looking up the "outgoing PHB" in this
mapping table. PHB-->802.1 mapping table.
3.6 E-LSP Merging 3.6 E-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. E-LSPs are compatible with LSP Merging under the following one LSR. E-LSPs are compatible with LSP Merging under the following
condition: condition:
E-LSPs can only be merged into one LSP if they support the E-LSPs can only be merged into one LSP if they support the
exact same set of BAs. exact same set of BAs.
skipping to change at line 759 skipping to change at line 1260
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
4.1 L-LSP Definition 4.1 L-LSP Definition
Le Faucheur et. al 24
MPLS Support of Diff-Serv June 2000
Recognizing that: Recognizing that:
- All currently defined MPLS encapsulation methods have a field of - All currently defined MPLS encapsulation methods have a field of
3 bits or less for Diff-Serv encoding (i.e., 3-bit EXP field in 3 bits or less for Diff-Serv encoding (i.e., 3-bit EXP field in
case of Shim Header and 1-bit CLP/DE bit in case of ATM/Frame case of Shim Header and 1-bit CLP/DE bit in case of ATM/Frame
Relay). Relay).
- The Differentiated-Services (DS) field is 6-bit long - The Differentiated-Services (DS) field is 6-bit long
[DIFF_HEADER] potentially allowing support of up to 64 Behavior [DIFF_HEADER] potentially allowing support of up to 64 Behavior
Aggregates. So that when more than a certain number of BAs are Aggregates. So that when more than a certain number of BAs are
used (i.e., more than 8 BAs in case of Shim Header and more than used (i.e., more than 8 BAs in case of Shim Header and more than
2 BAs in case of ATM/Frame Relay), the DS field can not be 2 BAs in case of ATM/Frame Relay), the DS field can not be
mapped entirely into the appropriate field of MPLS encapsulation mapped entirely into the appropriate field of MPLS encapsulation
header (i.e., EXP field in case of Shim Header and CLP/DE field header (i.e., EXP field in case of Shim Header and CLP/DE field
in case of ATM/Frame Relay); in case of ATM/Frame Relay);
We define that: We define that:
skipping to change at line 777 skipping to change at line 1280
[DIFF_HEADER] potentially allowing support of up to 64 Behavior [DIFF_HEADER] potentially allowing support of up to 64 Behavior
Aggregates. So that when more than a certain number of BAs are Aggregates. So that when more than a certain number of BAs are
used (i.e., more than 8 BAs in case of Shim Header and more than used (i.e., more than 8 BAs in case of Shim Header and more than
2 BAs in case of ATM/Frame Relay), the DS field can not be 2 BAs in case of ATM/Frame Relay), the DS field can not be
mapped entirely into the appropriate field of MPLS encapsulation mapped entirely into the appropriate field of MPLS encapsulation
header (i.e., EXP field in case of Shim Header and CLP/DE field header (i.e., EXP field in case of Shim Header and CLP/DE field
in case of ATM/Frame Relay); in case of ATM/Frame Relay);
We define that: We define that:
Le Faucheur et. al 14
MPLS Support of Diff-Serv March 00
- an LSP established for a given Forwarding Equivalent Class (FEC) - an LSP established for a given Forwarding Equivalent Class (FEC)
may be used for transport of the BAs comprised in one Ordered may be used for transport of the BAs comprised in one Ordered
Aggregate (OA) for that FEC; Aggregate (OA) for that FEC;
- all BAs of this OA can be transported over the LSP; - all BAs of this OA can be transported over the LSP;
- BAs from other OAs can not be transported over the LSP;
- BAs from other OAs can not transported over the LSP;
- BAs from the OA transported over the LSP are given the - BAs from the OA transported over the LSP are given the
appropriate scheduling treatment based on the PSC which is appropriate scheduling treatment based on the PSC which is
explicitly signaled at label set-up time. explicitly signaled at label set-up time.
- Such an LSP is referred to as a "Label-Only-inferred-PSC" LSP or - Such an LSP is referred to as a "Label-Only-inferred-PSC" LSP or
"L-LSP"; "L-LSP";
- Multiple BAs from the OA transported over the LSP are granted
- Multiple BAs from OA transported over the LSP are granted different drop precedence by the LSR based on the appropriately
different drop precedence by the MPLS LSR based on the encoded relevant field of MPLS encapsulation header (EXP field
appropriately encoded relevant field of MPLS encapsulation of the top label entry for the shim header, CLP/DE bit in case
header (EXP field of the top label entry for the shim header, of ATM/Frame Relay); The mapping between the relevant field of
CLP/DE bit in case of ATM/Frame Relay); The mapping between the the MPLS encapsulation and the drop precedence is a well-known
relevant field of the MPLS encapsulation and the drop precedence mapping.
is a well-known mapping.
For a given FEC, there may be more than one L-LSP carrying the same For a given FEC, there may be more than one L-LSP carrying the same
OA, for example for purposes of load balancing of the OA. In that OA, for example for purposes of load balancing of the OA. In that
case, in order to respect ordering constraints, all packets of a case, in order to respect ordering constraints, all packets of a
given microflow must be transported over the same LSP. given microflow must be transported over the same LSP.
MPLS specifies how LSPs can be established via multiple signaling MPLS specifies how LSPs can be established via multiple signaling
protocols. Those include the Label Distribution Protocol (LDP), protocols. Those include the Label Distribution Protocol (LDP),
RSVP, BGP and PIM. Sections 5 and 6 below specify how RSVP and LDP RSVP, BGP and PIM. Sections 5 and 6 below specify how RSVP and LDP
are to be used for establishment of L-LSPs. are to be used for establishment of L-LSPs.
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 for an incoming L-LSP for support of the Context is populated for an incoming L-LSP in order to allow
mandatory default method for Incoming PHB determination. Incoming PHB determination.
4.2.1 `EXP-->PHB mapping'
If the LSR terminates the MPLS Shim Layer (i.e. it is not an Le Faucheur et. al 25
ATM-LSR or FR-LSR as defined in [MPLS ATM][MPLS FR], and it does not MPLS Support of Diff-Serv June 2000
receive packets without an MPLS shim layer on an LC-ATM or LC-FR
interface) then the `Encaps-->PHB mapping' is populated at label
setup in the following way:
- it is actually a `EXP-->PHB mapping'
- the mapping is a function of the PSC which is carried on this
LSP, and uses the relevant `EXP->PHB mapping' for this PSC as
defined in Section 4.2.1.1 below.
Le Faucheur et. al 15 4.2.1 `EXP-->PHB mapping'
MPLS Support of Diff-Serv March 00 If the LSR terminates the MPLS Shim Layer over this incoming L-LSP
and the L-LSP ingresses on an interface which is not ATM nor Frame
Relay, then the `Encaps-->PHB mapping' is populated at label setup
in the following way:
- it must actually be a `EXP-->PHB mapping'
- 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
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 000 ----> AF11
001 ----> AF12 001 ----> AF12
010 ----> AF13 010 ----> AF13
4.2.1.1 EXP/PSC --> PHB mapping An LSR supporting L-LSPs over PPP interfaces and LAN interfaces is
an example of LSR terminating the Shim layer over ingress interfaces
which are not ATM nor Frame Relay.
In order to populate the `Encaps-->PHB mapping', the mapping from If the LSR terminates the MPLS Shim Layer over this incoming L-LSP
the L-LSP PSCs and the EXP field of the shim header into PHBs is and the L-LSP ingresses on an ATM or Frame Relay interface, then the
specified as follows: `Encaps-->PHB mapping' is populated at label setup in the following
way:
- it should actually be a `EXP-->PHB mapping'. Alternative
optional ways of populating the `Encaps-->PHB mapping' might be
defined in the future (e.g., using a 'CLP/EXP--> PHB mapping' or
a 'DE/EXP-->PHB mapping') but are outside the scope of this
document.
- when the `Encaps-->PHB mapping' is an `EXP-->PHB mapping', this
`EXP-->PHB mapping' mapping is a function of the PSC which is
carried on the L-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.
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
interface.
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 000 AFn ----> AFn1
001 AFn <----> AFn2 001 AFn ----> AFn2
010 AFn <----> AFn3 010 AFn ----> AFn3
000 EF <----> EF
Le Faucheur et. al 26
MPLS Support of Diff-Serv June 2000
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 or it label and uses ATM encapsulation (i.e. it is an ATM-LSR), then the
receives packets without a shim on an LC-ATM interface), then the `Encaps-->PHB mapping' of the Diff-Serv Context for this incoming
`Encaps-->PHB mapping' of the Diff-Serv context for this incoming
L-LSP is populated at label setup in the following way: L-LSP is populated at label setup in the following way:
- it is actually a `CLP-->PHB mapping' - it is actually a `CLP-->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 uses the relevant `CLP-->PHB mapping' for this PSC as LSP, and should use the relevant mapping entries for this PSC
defined in Section 4.2.2.1 below. from the Default CLP/PSC-->PHB Mapping defined in Section
4.2.2.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' should be populated
with:
CLP Field PHB CLP Field PHB
0 ----> AF11 0 ----> AF11
1 ----> AF12 1 ----> AF12
4.2.2.1 CLP/PSC --> PHB mapping 4.2.2.1 Default CLP/PSC --> PHB Mapping
In order to populate the `Encaps-->PHB mapping', the mapping from
the L-LSP PSCs and the CLP bit of the ATM cell header into PHBs is
specified as follows:
CLP Bit PSC PHB CLP Bit PSC PHB
Le Faucheur et. al 16
MPLS Support of Diff-Serv March 00
0 DF ----> DF 0 DF ----> DF
0 CSn ----> CSn 0 CSn ----> CSn
0 AFn ----> AFn1 0 AFn ----> AFn1
1 AFn ----> AFn2 1 AFn ----> AFn2
0 EF ----> EF 0 EF ----> EF
4.2.3 `DE-->PHB mapping' 4.2.3 `DE-->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 Frame Relay encapsulation(i.e. it is a FR-LSR or it label and uses Frame Relay encapsulation (i.e. it is a FR-LSR), then
receives packets without a shim on an LC-FR interface), then the the `Encaps-->PHB mapping' of the Diff-Serv Context for this
`Encaps-->PHB mapping' of the Diff-Serv context for this incoming incoming L-LSP is populated at label setup in the following way:
L-LSP is populated at label setup in 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 uses the relevant `DE-->PHB mapping' for this PSC as LSP, and should use the relevant mapping entries for this PSC
defined in Section 4.2.3.1 below. from the Default DE/PSC-->PHB Mapping defined in Section
4.2.3.1.
4.2.3.1 DE/PSC --> PHB mapping
In order to populate the `Encaps-->PHB mapping', the mapping from 4.2.3.1 Default DE/PSC --> PHB Mapping
the L-LSP PSCs and the DE bit of the Frame Relay header into PHBs is
specified as follows:
DE Bit PSC PHB DE Bit PSC PHB
0 DF ----> DF 0 DF ----> DF
0 CSn ----> CSn 0 CSn ----> CSn
0 AFn ----> AFn1 0 AFn ----> AFn1
Le Faucheur et. al 27
MPLS Support of Diff-Serv June 2000
1 AFn ----> AFn2 1 AFn ----> AFn2
0 EF ----> EF 0 EF ----> EF
4.3 Incoming PHB Determination On Incoming L-LSP 4.3 Incoming PHB Determination On Incoming L-LSP
This section defines the mandatory default method for Incoming PHB This section defines how Incoming PHB determination is carried out
determination for a labeled packet received on an L-LSP. This method when the considered label entry in the received label stack
requires that the `Encaps-->PHB mapping' is populated as defined corresponds to an L-LSP. This requires that the `Encaps-->PHB
above in section 4.2. mapping' is populated as defined above in section 4.2.
When receiving a labeled packet over an L-LSP of an MPLS ingress When considering a label entry corresponding to an incoming L-LSP
interface, the LSR first determines the `Encaps-->PHB mapping' for Incoming PHB Determination, the LSR first determines the
associated with the incoming label. `Encaps-->PHB mapping' associated with the incoming top level label.
4.3.1 `EXP-->PHB mapping' 4.3.1 `EXP-->PHB mapping'
If the `Encaps-->PHB mapping' is of the form `EXP-->PHB mapping', If the `Encaps-->PHB mapping' is of the form `EXP-->PHB mapping',
then the LSR: then the LSR:
- determines the incoming PHB by looking at the EXP field of the - determines the incoming PHB by looking at the EXP field of the
top level label entry and by using the EXP-->PHB mapping. considered label entry and by using the EXP-->PHB mapping.
If the received EXP field value is not included in the EXP-->PHB
mapping, this EXP value should be considered invalid. LSR behavior
Le Faucheur et. al 17
MPLS Support of Diff-Serv March 00
in such situation is a local matter and is outside the scope of this
document.
4.3.2 `CLP-->PHB mapping' 4.3.2 `CLP-->PHB mapping'
If the `Encaps-->PHB mapping' is of the form `CLP-->PHB mapping', If the `Encaps-->PHB mapping' is of the form `CLP-->PHB mapping',
then the LSR: then the LSR:
- determines the incoming PHB by looking at the CLP field of the - determines the incoming PHB by looking at the CLP field of the
ATM Layer encapsulation and by using the CLP-->PHB mapping. ATM Layer encapsulation and by using the CLP-->PHB mapping.
If the received CLP field value is not included in the CLP-->PHB
mapping, this CLP value should be considered invalid. LSR behavior
in such situation is a local matter and is outside the scope of this
document.
4.3.3 `DE-->PHB mapping' 4.3.3 `DE-->PHB mapping'
If the `Encaps-->PHB mapping' is of the form `DE-->PHB mapping', If the `Encaps-->PHB mapping' is of the form `DE-->PHB mapping',
then the LSR: then the LSR:
- determines the incoming PHB by looking at the DE field of the - determines the incoming PHB by looking at the DE field of the
Frame Relay encapsulation and by using the DE-->PHB mapping. Frame Relay encapsulation and by using the DE-->PHB mapping.
If the received DE field value is not included in the DE-->PHB
mapping, this DE value should be considered invalid. LSR behavior in
such situation is a local matter and is outside the scope of this
document.
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 for an outgoing L-LSP for support of Diff-Serv Context is populated for an outgoing L-LSP in order to
the mandatory default method for Encoding Diff-Serv Information into allow Encoding of Diff-Serv Information.
Encapsulation on Outgoing L-LSP.
4.4.1 `PHB-->EXP mapping' 4.4.1 `PHB-->EXP mapping'
If the LSR uses an MPLS Shim Layer over this outgoing label (i.e. it If the LSR uses an MPLS Shim Layer over this outgoing L-LSP, then
is not an ATM-LSR or FR-LSR and it does not transmit packets without one `PHB-->EXP mapping' is added at label setup to the `Set of
an MPLS Shim Layer on a LC-ATM or LC-FR interface), then one PHB-->Encaps mappings' in the Diff-Serv Context for this outgoing
`PHB-->EXP mapping' is added at label setup to the `Set of
PHB-->Encaps mapping' in the Diff-Serv context 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 uses the - it is a function of the PSC supported on this LSP, and must use
relevant `PHB-->EXP mapping' for this PSC as defined in section the mapping entries relevant for this PSC from the Mandatory
4.4.1.1 below. PHB-->EXP Mapping defined in section 4.4.1.1.
Le Faucheur et. al 28
MPLS Support of Diff-Serv June 2000
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
Le Faucheur et. al 18
MPLS Support of Diff-Serv March 00
AF11 ----> 000 AF11 ----> 000
AF12 ----> 001 AF12 ----> 001
AF13 ----> 010 AF13 ----> 010
4.4.1.1 PHB-->PSC/EXP mapping 4.4.1.1 Mandatory PHB-->EXP Mapping
In order to populate the `Set of PHB-->Encaps mappings', the mapping
from the PHBs into the L-LSP PSC and the EXP field of the shim
header is specified as follows:
PHB PSC EXP Field PHB EXP Field
DF ----> DF 000 DF ----> 000
CSn ----> CSn 000 CSn ----> 000
AFn1 ----> AFn 000 AFn1 ----> 000
AFn2 ----> AFn 001 AFn2 ----> 001
AFn3 ----> AFn 010 AFn3 ----> 010
EF ----> EF 000 EF ----> 000
4.4.2 `PHB-->CLP mapping' 4.4.2 `PHB-->CLP mapping'
If the LSR uses ATM encapsulation (i.e. it is an ATM-LSR or sends If the L-LSP is egressing on an ATM interface (i.e. it is an ATM-LSR
packets on an LC-ATM interface), then one `PHB-->CLP mapping' is or it is a frame-based LSR sending packets on an LC-ATM interface or
added at label setup to the `Set of PHB-->Encaps mappings' in the on an ATM interface which is not label switching controlled), then
Diff-Serv context for this outgoing L-LSP. This `PHB-->CLP mapping' one `PHB-->CLP mapping' is added at label setup to the `Set of
is populated in the following way: PHB-->Encaps mappings' in the Diff-Serv Context for this outgoing
- it is a function of the PSC supported on this LSP, and uses the L-LSP.
relevant `PHB-->CLP mapping' for this PSC as defined below in
section 4.4.2.1. If the L-LSP is egressing over an LC-ATM interface, the `PHB-->CLP
mapping' is populated in the following way:
- it is a function of the PSC supported on this LSP, and should
use the relevant mapping entries for this PSC from the Default
PHB-->CLP Mapping defined in section 3.4.2.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 `PHB-->Encaps mapping' will be populated with: the AF1 PSC, then the `PHB-->CLP mapping' should be populated with:
PHB CLP Field PHB CLP Field
AF11 ----> 0 AF11 ----> 0
AF12 ----> 1 AF12 ----> 1
AF13 ----> 1 AF13 ----> 1
Notice that the if the LSR is transmitting packets over a LC-ATM If the L-LSP is egressing over an ATM interface which is not label
interface using the MPLS Shim Header, then the `Set of PHB-->Encaps switching controlled, the `PHB-->CLP mapping' is populated in the
mappings' contains both a `PHB-->EXP mapping' and a `PHB-->CLP following way:
mapping'. - it is a function of the PSC supported on this LSP, and may use
the relevant mapping entries for this PSC from the Default
4.4.2.1 PHB-->PSC/CLP mapping 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
In order to populate the `Set of PHB-->Encaps mappings', the mapping
from the PHBs into the L-LSP PSC and the CLP bit of the ATM cell
header is specified as follows:
PHB PSC CLP Bit
Le Faucheur et. al 19 Le Faucheur et. al 29
MPLS Support of Diff-Serv June 2000
MPLS Support of Diff-Serv March 00 particular, if a mapping from PHBs to CLP is standardized in the
future for operations of Diff-Serv over ATM, such standardized
mapping may then be used.
DF ----> DF 0 Notice that if the LSR is a frame-based LSR supporting an L-LSP
CSn ----> CSn 0 egressing over an ATM interface, then the `Set of PHB-->Encaps
AFn1 ----> AFn 0 mappings' contains both a `PHB-->EXP mapping' and a `PHB-->CLP
AFn2 ----> AFn 1 mapping'. If the LSR is an ATM-LSR supporting an L-LSP, then the
AFn3 ----> AFn 1 `Set of PHB-->Encaps mappings' only contains a `PHB-->CLP mapping'.
EF ----> EF 0
4.4.3 `PHB-->DE mapping' 4.4.3 `PHB-->DE mapping'
If the LSR uses Frame Relay encapsulation (i.e. it is a FR-LSR or If the L-LSP is egressing over a Frame Relay interface (i.e. it is
sends packets on an LC-FR interface), one `PHB-->DE mapping' is an LSR sending packets on an LC-FR interface or on a Frame Relay
added at label setup to the `Set of PHB-->Encaps mapping' in the interface which is not label switching controlled), one `PHB-->DE
Diff-Serv context for this outgoing L-LSP and is populated in the mapping' is added at label setup to the `Set of PHB-->Encaps
following way: mappings' in the Diff-Serv Context for this outgoing L-LSP.
- it is a function of the PSC supported on this LSP, and uses the
relevant `PHB-->DE mapping' for this PSC as defined below in
section 4.4.3.1.
Notice that if the LSR is sending packets over a LC-FR interfaces
using the MPLS Shim Header, then the `Set of PHB-->Encaps mappings'
contains both a `PHB-->EXP mapping' and a `PHB-->DE mapping'.
4.4.3.1 PHB-->PSC/DE mapping
In order to populate the `Set of PHB-->Encaps mappings', the mapping If the L-LSP is egressing over an LC-FR interface, the `PHB-->DE
from the PHBs into the L-LSP PSC and the DE bit of the Frame Relay mapping' is populated in the following way:
header is specified as follows: - it is a function of the PSC supported on this LSP, and should
use the relevant mapping entries for this PSC from the Default
PHB-->DE Mapping defined in section 3.4.3.1.
PHB PSC DE Bit If the L-LSP is egressing over a FR interface which is not label
switching controlled, the `PHB-->DE mapping' is populated in the
following way:
- it is a function of the PSC supported on this LSP, and may use
the relevant mapping entries for this PSC from the Default
PHB-->DE Mapping defined in section 3.4.3.1. Other mappings than
the one defined in section 3.4.3.1 may be used. In particular,
if a mapping from PHBs to DE is standardized in the future for
operations of Diff-Serv over Frame Relay, such standardized
mapping may then be used.
DF ----> DF 0 Notice that if the LSR is an Edge-LSR supporting an L-LSP egressing
CSn ----> CSn 0 over a LC-FR interface, then the `Set of PHB-->Encaps mappings'
AFn1 ----> AFn 0 contains both a `PHB-->EXP mapping' and a `PHB-->DE mapping'. If the
AFn2 ----> AFn 1 LSR is a FR-LSR supporting an L-LSP, then the `Set of PHB-->Encaps
AFn3 ----> AFn 1 mappings' only contains a `PHB-->DE mapping'.
EF ----> EF 0
4.4.4 `PHB-->802.1 mapping' 4.4.4 `PHB-->802.1 mapping'
If the outgoing interface is a LAN interface on which multiple If the L-LSP is egressing over a LAN interface on which multiple
Traffic Classes are supported as defined in [IEEE_802.1], then one 802.1 Traffic Classes are supported as defined in [IEEE_802.1], then
`PHB-->802.1 mapping' is added at label setup to the `Set of one `PHB-->802.1 mapping' is added at label setup to the `Set of
PHB-->Encaps mappings' in the Diff-Serv context for this outgoing PHB-->Encaps mappings' in the Diff-Serv Context for this outgoing
L-LSP. This `PHB-->802.1 mapping' is populated in the following way: L-LSP. This `PHB-->802.1 mapping' is populated in the following way:
- it is a function of the PSC supported on this LSP, and uses the - it is a function of the PSC supported on this LSP, and uses the
relevant `PHB-->802.1 mapping' for this PSC from the relevant mapping entries for this PSC from the Preconfigured
Preconfigured `PHB-->802.1 mapping' defined above in section `PHB-->802.1 mapping' defined above in section 3.4.4.1.
3.4.2.1.
Notice that if the LSR is transmitting packets over a LAN interface
supporting multiple 802.1 Traffic Classes, then the `Set of
Le Faucheur et. al 20
MPLS Support of Diff-Serv March 00 Le Faucheur et. al 30
MPLS Support of Diff-Serv June 2000
PHB-->Encaps mappings' contains both a `PHB-->EXP mapping' and a Notice that if the LSR is supporting an L-LSP egressing over a LAN
interface supporting multiple 802.1 Traffic Classes, then the `Set
of PHB-->Encaps mappings' contains both a `PHB-->EXP mapping' and a
`PHB-->802.1 mapping'. `PHB-->802.1 mapping'.
4.5 Encoding Diff-Serv Information into Encapsulation on Outgoing 4.5 Encoding Diff-Serv Information into Encapsulation Layer on Outgoing
L-LSP L-LSP
This section defines the mandatory default method for encoding of This section defines how to encode Diff-Serv information into the
Diff-Serv related information into the MPLS encapsulation Layer to MPLS encapsulation Layer for a transmitted label entry corresponding
be used when a packet is transmitted onto an L-LSP. This method to an outgoing L-LSP. This requires that the `Set of PHB-->Encaps
requires that the `Set of PHB-->Encaps mappings' is populated as mappings' is populated as defined above in section 4.4.
defined above in section 4.4.
The LSR first determines the `Set of PHB-->Encaps mapping' The LSR first determines the `Set of PHB-->Encaps mappings' of the
associated with the outer label of the NHLFE. Diff-Serv Context associated with the corresponding label in the
NHLFE.
4.5.1 `PHB-->EXP mapping' 4.5.1 `PHB-->EXP mapping'
If the `Set of PHB-->Encaps mapping' of the outer label contains a If the `Set of PHB-->Encaps mappings' of the transmitted label
mapping of the form `PHB-->EXP mapping', then, for all the labels contains a mapping of the form `PHB-->EXP mapping', then the LSR:
which are swapped or pushed, the LSR:
- determines the PHB-->EXP mapping by looking up the
`PHB-->Encaps mapping' of the Diff-Serv context associated with
the corresponding label in the NHLFE.
- 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.
4.5.2 `PHB-->CLP mapping' 4.5.2 `PHB-->CLP mapping'
If the `Set of PHB-->Encaps mapping' of the outer label contains a If the `Set of PHB-->Encaps mappings' of the transmitted label
mapping of the form `PHB-->CLP mapping', then the LSR: contains a mapping of the form `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
Layer encapsulation by looking up the "outgoing PHB" in this Layer encapsulation by looking up the "outgoing PHB" in this
PHB-->CLP mapping table. PHB-->CLP mapping table.
4.5.3 `PHB-->DE mapping' 4.5.3 `PHB-->DE mapping'
If the `Set of PHB-->Encaps mapping' of the outer label contains a If the `Set of PHB-->Encaps mappings' of the transmitted label
mapping of the form `PHB-->DE mapping', then the LSR: contains a mapping of the form `PHB-->DE mapping', then the LSR:
- determines the value to be written in the DE field of the Frame - determines the value to be written in the DE field of the Frame
Relay encapsulation by looking up the "outgoing PHB" in this Relay encapsulation by looking up the "outgoing PHB" in this
PHB-->DE mapping table. PHB-->DE mapping table.
4.5.4 `PHB-->802.1 mapping' 4.5.4 `PHB-->802.1 mapping'
If the `Set of PHB-->Encaps mapping' of the outer label contains a If the `Set of PHB-->Encaps mappings' of the transmitted label
mapping of the form `PHB-->802.1 mapping', then the LSR: contains a mapping of the form `PHB-->802.1 mapping', then the LSR:
- determines the value to be written in the User_Priority field of - determines the value to be written in the User_Priority field of
the Tag Control Information of the 802.1 encapsulation header the Tag Control Information of the 802.1 encapsulation header
[IEEE_802.1] by looking up the "outgoing PHB" in this [IEEE_802.1] by looking up the "outgoing PHB" in this
PHB-->802.1 mapping table. PHB-->802.1 mapping table.
Le Faucheur et. al 21
MPLS Support of Diff-Serv March 00
4.6 L-LSP Merging 4.6 L-LSP Merging
Le Faucheur et. al 31
MPLS Support of Diff-Serv June 2000
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. The proposed support of Diff-Serv in MPLS is compatible one LSR. The proposed support of Diff-Serv in MPLS is compatible
with LSP Merging under the following condition: with LSP Merging under the following condition:
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.
skipping to change at line 1224 skipping to change at line 1698
LSP Tunnels supporting Diff-Serv: for instance, only unicast LSPs LSP Tunnels supporting Diff-Serv: for instance, only unicast LSPs
are supported and Multicast LSPs are for further study. are supported and Multicast LSPs are for further study.
This new DIFFSERV object is optional with respect to RSVP so that This new DIFFSERV object is optional with respect to RSVP so that
general RSVP implementations not concerned with MPLS LSP set up do general RSVP implementations not concerned with MPLS LSP set up do
not have to support this object. not have to support this object.
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
Le Faucheur et. al 22
MPLS Support of Diff-Serv March 00
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
Le Faucheur et. al 32
MPLS Support of Diff-Serv June 2000
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.
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>
skipping to change at line 1282 skipping to change at line 1755
// ... // // ... //
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAP (MAPnb) | | MAP (MAPnb) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Reserved : 28 bits Reserved : 28 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.
Le Faucheur et. al 23 MAPnb : 4 bits
MPLS Support of Diff-Serv March 00 Le Faucheur et. al 33
MPLS Support of Diff-Serv June 2000
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 1 to 8 (decimal). Object. This can be set to any value from 1 to 8.
MAP : 32 bits MAP : 32 bits
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 1336 skipping to change at line 1809
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 section 2 of [PHBID]:
- Where the PSC comprises a single PHB defined by standards - Where the PSC comprises a single PHB defined by standards
action, the encoding for the PSC is the encoding for this action, the encoding for the PSC is the encoding for this
single PHB. It is the recommended DSCP value for that PHB, single PHB. It is the recommended DSCP value for that PHB,
left-justified in the 16-bit field, with bits 6 through 15 set left-justified in the 16-bit field, with bits 6 through 15 set
to zero. to zero.
Le Faucheur et. al 24
MPLS Support of Diff-Serv March 00
- Where the PSC comprises multiple PHBs defined by standards - Where the PSC comprises multiple PHBs defined by standards
action, the PSC encoding is the encoding for this set of PHB. action, the PSC encoding is the encoding for this set of PHB.
It is the smallest numerical value of the recommended DSCP for It is the smallest numerical value of the recommended DSCP for
Le Faucheur et. al 34
MPLS Support of Diff-Serv June 2000
the various PHBs in the PSC, left-justified in the 16 bit 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 field, with bits 6 through 13 and bit 15 set to zero and with
bit 14 set to one. bit 14 set to one.
For instance, the encoding of the EF PSC is : For instance, the encoding of the EF PSC is :
0 1 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 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| |1 0 1 1 1 0|0 0 0 0 0 0 0 0 0 0|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at line 1394 skipping to change at line 1865
tunnel, the sender creates a Path message: tunnel, 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 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 25
MPLS Support of Diff-Serv March 00
Each node along the path records the DIFFSERV object, when present, Each node along the path records the DIFFSERV object, when present,
in its path state block. in its path state block.
Le Faucheur et. al 35
MPLS Support of Diff-Serv June 2000
The destination node of an E-LSP or L-LSP responds to the Path The destination node 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 reservation is accepted and a label is associated with Assuming the reservation is accepted and a label is associated with
the reservation, the Diff-Serv LSRs (sender, destination, the reservation, the Diff-Serv LSRs (sender, destination,
intermediate nodes) must: intermediate nodes) 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).
An RSVP router that does recognizes the DIFFSERV object and that An RSVP router that does recognizes the DIFFSERV object and that
receives a path message which contains the DIFFSERV object but which receives a path message which contains the DIFFSERV object but which
does not contain a LABEL_REQUEST object or which does not have a does not contain a LABEL_REQUEST object or which does not have a
session type of LSP_Tunnel_IPv4, sends a PathErr towards the sender session type of LSP_Tunnel_IPv4, sends a PathErr towards the sender
with the error code `Diff-Serv Error' and an error value of with the error code `Diff-Serv Error' and an error value of
skipping to change at line 1438 skipping to change at line 1908
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.
A node receiving a Path message with the DIFFSERV object for E-LSP, A node 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
E-LSP is invalid when: E-LSP is invalid when:
- the MAPnb field is not within the range 1 to 8 decimal, 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.
A node receiving a Path message with the DIFFSERV object for L-LSP, A node 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.
Le Faucheur et. al 26
MPLS Support of Diff-Serv March 00
A Diff-Serv LSR MUST handle the situations where the reservation can A Diff-Serv LSR MUST handle the situations where the reservation can
not be accepted for other reasons than those already discussed in not be accepted for other reasons than those already discussed in
this section, in accordance with [RSVP_MPLS_TE] (eg. reservation this section, in accordance with [RSVP_MPLS_TE] (eg. reservation
rejected by admission control, a label can not be associated). rejected by admission control, a label can not be associated).
Le Faucheur et. al 36
MPLS Support of Diff-Serv June 2000
5.4 Non-support of the Diff-Serv Object 5.4 Non-support of the Diff-Serv Object
An RSVP router that does not recognize the DIFFSERV object Class-Num An RSVP router that does not recognize the DIFFSERV object Class-Num
must behave in accordance with the procedures specified in [RSVP] must behave in accordance with the procedures specified in [RSVP]
for an unknown Class-Num whose format is 0bbbbbbb ie. it must send a for an unknown Class-Num whose format is 0bbbbbbb ie. it must send a
PathErr with the error code `Unknown object class' toward the PathErr with the error code `Unknown object class' toward the
sender. sender.
An RSVP router that recognizes the DIFFSERV object Class-Num but An RSVP router that recognizes the DIFFSERV object Class-Num but
does not recognize the DIFFSERV object C-Type, must behave in does not recognize the DIFFSERV object C-Type, must behave in
skipping to change at line 1505 skipping to change at line 1974
or without bandwidth reservation. or without bandwidth reservation.
To establish an E-LSP or an L-LSP with bandwidth reservation, Int- To establish an E-LSP or an L-LSP with bandwidth reservation, Int-
Serv's Controlled Load service (or possibly Guaranteed Service) is Serv's Controlled Load service (or possibly Guaranteed Service) is
used and the bandwidth is signaled in the SENDER_TSPEC (respectively used and the bandwidth is signaled in the SENDER_TSPEC (respectively
FLOWSPEC) of the path (respectively Resv) message. FLOWSPEC) of the path (respectively Resv) message.
To establish an E-LSP or an L-LSP without bandwidth reservation, the To establish an E-LSP or an L-LSP without bandwidth reservation, the
Class of Service service defined in [RSVP_MPLS_TE] is used. Class of Service service defined in [RSVP_MPLS_TE] is used.
Le Faucheur et. al 27
MPLS Support of Diff-Serv March 00
Note that this specification defines usage of E-LSPs and L-LSPs Note that this specification defines usage of E-LSPs and L-LSPs
for support of the Diff-Serv service only. Regardless of whether the for support of the Diff-Serv service only. Regardless of whether the
signaling messages actually indicate an Int-Serv service of COS, GS signaling messages actually indicate an Int-Serv service of COS, GS
or CL and regardless of whether the signaling messages contain a or CL and regardless of whether the signaling messages contain a
Le Faucheur et. al 37
MPLS Support of Diff-Serv June 2000
signaled bandwidth reservation or not, E-LSPs and L-LSPs are defined signaled bandwidth reservation or not, E-LSPs and L-LSPs are defined
here for support of Diff-Serv services. Support of Int-Serv services here for support of Diff-Serv services. Support of Int-Serv services
over an MPLS Diff-Serv backbone is outside the scope of this over an MPLS Diff-Serv backbone is outside the scope of this
specification. specification.
A Path message containing a COS SENDER_TSPEC and not containing a 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 DIFFSERV object indicates to a Diff-Serv capable LSR that the LSP to
be established in an E-LSP using the Preconfigured mapping and be established is an E-LSP using the Preconfigured mapping and
without any bandwidth reservation. without any bandwidth reservation.
A Path message containing a COS SENDER_TSPEC and containing a A Path message containing a COS SENDER_TSPEC and containing a
DIFFSERV object for E-LSP indicates to a Diff-Serv capable LSR that DIFFSERV object for E-LSP indicates to a Diff-Serv capable LSR that
the LSP to be established in an E-LSP using a signaled mapping and the LSP to be established is an E-LSP using a signaled mapping and
without any bandwidth reservation. without any bandwidth reservation.
A Path message containing a COS SENDER_TSPEC and containing a A Path message containing a COS SENDER_TSPEC and containing a
DIFFSERV object for LSP indicates to a Diff-Serv capable LSR that DIFFSERV object for L-LSP indicates to a Diff-Serv capable LSR that
the LSP to be established in an L-LSP without any bandwidth the LSP to be established is an L-LSP without any bandwidth
reservation. reservation.
The above is summarized in the following table: The above is summarized in the following table:
Path Message LSP type Path Message LSP type
Service DIFFSERV Service DIFFSERV
Object Object
GS/CL No E-LSP + preconf mapping + bandw reservation GS/CL No E-LSP + preconf mapping + bandw reservation
GS/CL Yes/E-LSP E-LSP + signaled mapping + bandw reservation GS/CL Yes/E-LSP E-LSP + signaled mapping + bandw reservation
skipping to change at line 1558 skipping to change at line 2027
- CL stands for Controlled Load - CL stands for Controlled Load
- COS stands for COS service - COS stands for COS service
When processing a path (respectively Resv) message for an E-LSP or When processing a path (respectively Resv) message for an E-LSP or
an L-LSP using the COS service, a Diff-Serv capable LSR must ignore an L-LSP using the COS service, a Diff-Serv capable LSR must ignore
the value of the COS field within a COS SENDER_TSPEC (respectively a the value of the COS field within a COS SENDER_TSPEC (respectively a
COS FLOWSPEC). COS FLOWSPEC).
6. LDP Extensions for Diff-Serv Support 6. LDP Extensions for Diff-Serv Support
Le Faucheur et. al 28
MPLS Support of Diff-Serv March 00
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.
Le Faucheur et. al 38
MPLS Support of Diff-Serv June 2000
One new LDP TLV is defined in this document: One new LDP TLV is defined in this document:
- the Diff-Serv TLV - the Diff-Serv TLV
Detailed description of this TLV is provided below. Detailed description of this TLV is provided below.
The new Diff-Serv TLV is optional with respect to LDP. A Diff-Serv The new Diff-Serv TLV is optional with respect to LDP. A Diff-Serv
capable LSR supporting E-LSPs which uses the Preconfigured capable LSR supporting E-LSPs which uses the Preconfigured
EXP<-->PHB mapping in compliance with this specification MAY support EXP<-->PHB mapping in compliance with this specification MAY support
the Diff-Serv TLV. A Diff-Serv capable LSR supporting E-LSPs which the Diff-Serv TLV. A Diff-Serv capable LSR supporting E-LSPs which
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
skipping to change at line 1585 skipping to change at line 2053
EXP<-->PHB mapping in compliance with this specification MAY support EXP<-->PHB mapping in compliance with this specification MAY support
the Diff-Serv TLV. A Diff-Serv capable LSR supporting E-LSPs which the Diff-Serv TLV. A Diff-Serv capable LSR supporting E-LSPs which
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:
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| Diff-Serv (0x901) | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|T| Reserved | MAPnb | |T| Reserved | MAPnb |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAP (1) | | MAP (1) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAP (MAPnb) | | MAP (MAPnb) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
T:1 bit T:1 bit
LSP Type. This is set to 0 for an E-LSP LSP Type. This is set to 0 for an E-LSP
Reserved : 28 bits Reserved : 27 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.
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 1 to 8 (decimal). Object. This can be set to any value from 1 to 8.
Le Faucheur et. al 29
MPLS Support of Diff-Serv March 00
MAP : 32 bits MAP : 32 bits
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Le Faucheur et. al 39
MPLS Support of Diff-Serv June 2000
| Reserved | EXP | PHBID | | Reserved | EXP | PHBID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Reserved : 13 bits Reserved : 13 bits
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.
skipping to change at line 1654 skipping to change at line 2121
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|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 : 16 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 section 2 of [PHBID]:
- Where the PSC comprises a single PHB defined by standards - Where the PSC comprises a single PHB defined by standards
action, the encoding for the PSC is the encoding for this action, the encoding for the PSC is the encoding for this
single PHB. It is the recommended DSCP value for that PHB, single PHB. It is the recommended DSCP value for that PHB,
left-justified in the 16-bit field, with bits 6 through 15 set left-justified in the 16-bit field, with bits 6 through 15 set
to zero. to zero.
- Where the PSC comprises multiple PHBs defined by standards - Where the PSC comprises multiple PHBs defined by standards
action, the PSC encoding is the encoding for this set of PHB. action, the PSC encoding is the encoding for this set of PHB.
It is the smallest numerical value of the recommended DSCP for It is the smallest numerical value of the recommended DSCP for
Le Faucheur et. al 30
MPLS Support of Diff-Serv March 00
the various PHBs in the PSC, left-justified in the 16 bit 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 field, with bits 6 through 13 and bit 15 set to zero and with
bit 14 set to one. bit 14 set to one.
For instance, the encoding of the EF PSC is : For instance, the encoding of the EF PSC is :
0 1 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
Le Faucheur et. al 40
MPLS Support of Diff-Serv June 2000
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 0 1 1 1 0|0 0 0 0 0 0 0 0 0 0| |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 : For instance, the encoding of the AF1 PSC is :
0 1 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 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| |0 0 1 0 1 0|0 0 0 0 0 0 0 0 1 0|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at line 1725 skipping to change at line 2191
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID | | Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| FEC TLV | | FEC TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Diff-Serv TLV (optional) | | Diff-Serv TLV (optional) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
6.3.2 Label Mapping Message 6.3.2 Label Mapping Message
Le Faucheur et. al 31
MPLS Support of Diff-Serv March 00
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:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Le Faucheur et. al 41
MPLS Support of Diff-Serv June 2000
| Message ID | | Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| FEC TLV | | FEC TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Label TLV | | Label TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Diff-Serv TLV (optional) | | Diff-Serv TLV (optional) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
6.3.3 Label Release Message 6.3.3 Label Release Message
skipping to change at line 1781 skipping to change at line 2247
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| Notification (0x0001) | Message Length | |0| Notification (0x0001) | Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID | | Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Status TLV | | Status TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional Parameters | | Optional Parameters |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Le Faucheur et. al 32
MPLS Support of Diff-Serv March 00
| Diff-Serv TLV (optional) | | Diff-Serv TLV (optional) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
6.4 Handling of the Diff-Serv TLV 6.4 Handling of the Diff-Serv TLV
6.3.1 Handling of the Diff-Serv TLV in Downstream Unsolicited Mode 6.4.1 Handling of the Diff-Serv TLV in Downstream Unsolicited Mode
Le Faucheur et. al 42
MPLS Support of Diff-Serv June 2000
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.
When allocating a label for an E-LSP which is to use a signaled When allocating a label for an E-LSP which is to use a signaled
EXP<-->PHB mapping, a downstream Diff-Serv LSR issues a Label EXP<-->PHB mapping, a downstream Diff-Serv LSR issues a Label
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:
- 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).
An upstream Diff-Serv LSR which receives a Label Mapping message An upstream Diff-Serv LSR which receives a Label Mapping 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 mapping by sending a Label Release message which includes reject the mapping by sending a Label Release message which includes
the Label TLV and the Status TLV with a Status Code of `Unsupported the Label TLV and the Status TLV with a Status Code of `Unsupported
PHB'. PHB'.
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 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
skipping to change at line 1836 skipping to change at line 2299
the Label TLV and the Status TLV with a Status Code of `Unsupported the Label TLV and the Status TLV with a Status Code of `Unsupported
PHB'. PHB'.
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 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 decimal, 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
Le Faucheur et. al 33
MPLS Support of Diff-Serv March 00
- the PHBID encoding is invalid - the PHBID encoding is invalid
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.3.2 Handling of the Diff-Serv TLV in Downstream on Demand Mode Le Faucheur et. al 43
MPLS Support of Diff-Serv June 2000
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.
When requesting a label for an E-LSP which is to use the When requesting a label for an E-LSP which is to use the
preconfigured EXP<-->PHB mapping, an upstream Diff-Serv LSR sends a preconfigured EXP<-->PHB mapping, an upstream Diff-Serv LSR sends a
Label Request message without the Diff-Serv TLV. Label Request message without the Diff-Serv TLV.
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
skipping to change at line 1872 skipping to change at line 2333
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.
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).
An upstream Diff-Serv LSR receiving a Label Mapping message An upstream Diff-Serv LSR receiving a Label Mapping message
containing a Diff-Serv TLV in response to its Label Request message, containing a Diff-Serv TLV in response to its Label Request message,
must reject the label mapping by sending a Label Release message must reject the label mapping by sending a Label Release message
which includes the Label TLV and the Status TLV with a Status Code which includes the Label TLV and the Status TLV with a Status Code
of `Unexpected Diff-Serv TLV'. of `Unexpected Diff-Serv TLV'.
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
Le Faucheur et. al 34
MPLS Support of Diff-Serv March 00
the Status TLV with a Status Code of `Unsupported PHB'. the Status TLV with a Status Code of `Unsupported PHB'.
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 decimal, or - the MAPnb field is not within the range 1 to 8, or
Le Faucheur et. al 44
MPLS Support of Diff-Serv June 2000
- 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
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 L-LSP containing a PSC value which is not the Diff-Serv TLV for an L-LSP containing a PSC value which is not
supported, must reject the request by sending a Notification message supported, must reject the request by sending a Notification message
which includes the Status TLV with a Status Code of `Unsupported which includes the Status TLV with a Status Code of `Unsupported
PSC'. PSC'.
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 (eg. no label able to satisfy the label request for other reasons (eg. no label
available), must send a Notification message in accordance with available), must send a Notification message in accordance with
existing LDP procedures [LDP] (eg. with a `No Label Resource' Status existing LDP procedures [LDP] (eg. with a `No Label Resource' Status
Code). This Notification message must include the requested Code). This Notification message must include the requested
Diff-Serv TLV. Diff-Serv TLV.
6.4 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
specified in [LDP] for an unknown TLV whose U Bit and F Bit are set specified in [LDP] for an unknown TLV whose U Bit and F Bit are set
to 0 ie. it must ignore the message, return a Notification message to 0 ie. it must ignore the message, return a Notification message
with `Unknown TLV' Status. with `Unknown TLV' Status.
6.5 Bandwidth Information 6.6 Bandwidth Information
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 7. MPLS Support of Diff-Serv over PPP 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
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 links. While required for MPLS support of Diff-Serv over PPP links.
sections 8, 9 and 10 focus on other media specific operations,
namely ATM, Frame Relay and LAN respectively.
Le Faucheur et. al 35
MPLS Support of Diff-Serv March 00
This document allows any of the following LSP combinations per FEC This document allows any of the following LSP combinations per FEC
within an MPLS PPP Diff-Serv domain: within an MPLS PPP Diff-Serv domain:
- 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.
7.1 LSR implementation with PPP interfaces 7.1 LSR implementation with PPP interfaces
A Diff-Serv capable LSR with PPP interfaces MUST support, over these A Diff-Serv capable LSR with PPP interfaces MUST support, over these
PPP interfaces, E-LSPs which use the pre-configured EXP<-->PHB PPP interfaces, E-LSPs which use the pre-configured EXP<-->PHB
Le Faucheur et. al 45
MPLS Support of Diff-Serv June 2000
mapping, in compliance with all the material from this specification mapping, in compliance with all the material from this specification
pertaining to those types of LSPs. pertaining to those types of LSPs.
A Diff-Serv capable LSR with PPP interfaces MAY support, over these A Diff-Serv capable LSR with PPP interfaces MAY support, over these
PPP interfaces, E-LSPs which use a signaled EXP<-->PHB mapping. If a PPP interfaces, E-LSPs which use a signaled EXP<-->PHB mapping. If a
Diff-Serv LSR does support E-LSPs which use a signaled EXP<-->PHB Diff-Serv LSR does support E-LSPs which use a signaled EXP<-->PHB
mapping over PPP interfaces, then it MUST do so in compliance with mapping over PPP interfaces, then it MUST do so in compliance with
all the material from this specification pertaining to those types all the material from this specification pertaining to those types
of LSPs. of LSPs.
A Diff-Serv capable LSR with PPP interfaces MAY support L-LSPs over A Diff-Serv capable LSR with PPP interfaces MAY support L-LSPs over
these PPP interfaces. If a Diff-Serv LSR does support L-LSPs over these PPP interfaces. If a Diff-Serv LSR does support L-LSPs over
PPP interfaces, then it MUST do so in compliance with all the PPP interfaces, then it MUST do so in compliance with all the
material from this specification pertaining to L-LSPs. material from this specification pertaining to L-LSPs.
An LSR running MPLS over PPP over a traditional ATM connection (ie. 7.2 LSR implementation with non-LC ATM interfaces
where the ATM switches do not participate in MPLS and where the ATM
connection VPI/VCI values have not been established via any label
distribution protocol) is to be considered as an LSR with PPP
interfaces from the point of view of compliance to this
specification.
Similarly, an LSR running MPLS over PPP over a traditional Frame The E-LSP/L-LSP support requirements for an LSR running MPLS over a
Relay connection (ie. where the Frame Relay switches do not traditional ATM connection (ie. where the interface is not label
participate in MPLS and where the Frame Relay connection DLCI values switching controlled) are the same as those specified in section 7.1
have not been established via any label distribution protocol) is to for an LSR with PPP interfaces.
be considered as an LSR with PPP interfaces from the point of view
of compliance to this specification.
8. MPLS Support of Diff-Serv by ATM LSRs 7.3 LSR implementation with non-LC FR interfaces
The E-LSP/L-LSP support requirements for an LSR running MPLS over a
traditional Frame Relay connection (ie. where the interface is not
label switching controlled) are the same as those specified in
section 7.1 for an LSR with PPP interfaces.
8. MPLS Support of Diff-Serv over LC-ATM 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 was specified in the label forwarding and LSP setup operations was specified in the
previous sections. This section describes the specific operations previous sections. This section describes the specific operations
required for MPLS support of Diff-Serv over ATM links. required for MPLS support of Diff-Serv over label switching
controlled ATM (LC-ATM) interfaces.
This document allows the following set of LSP combinations per FEC
within an MPLS ATM Diff-Serv domain:
- any number of L-LSPs. 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.
8.1 Merging 8.1 Merging
Le Faucheur et. al 36
MPLS Support of Diff-Serv March 00
The use of merging is optional. In case that merging of ATM LSPs is The use of merging is optional. In case that merging of ATM LSPs is
used, procedures described in section 3.6 of this specification used, procedures described in section 3.6 of this specification
apply. Additionally, to avoid cell interleaving problems with AAL-5 apply. Additionally, to avoid cell interleaving problems with AAL-5
merging, procedures specified in [MPLS ATM] MUST be followed. merging, procedures specified in [MPLS_ATM] MUST be followed.
8.2 Use of ATM Traffic Classes and Traffic Management mechanisms 8.2 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 traffic classes as specified by ITU-T and ATM-
Forum or of vendor specific ATM traffic classes is outside of the Forum or of vendor specific ATM traffic classes is outside of the
Le Faucheur et. al 46
MPLS Support of Diff-Serv June 2000
scope of this specification. The only requirement for compliant scope of this specification. The only requirement for compliant
implementation is that the forwarding behavior experienced by a implementation is that the forwarding behavior experienced by a
Behavior Aggregate forwarded over an L-LSP by the ATM LSR MUST be Behavior Aggregate forwarded over an L-LSP by the ATM LSR MUST be
compliant with the corresponding Diff-Serv PHB specifications. compliant with the corresponding Diff-Serv PHB specifications.
Since there is only one bit for encoding the PHB drop precedence Since there is only one bit for encoding the PHB drop precedence
value over ATM links, only two different drop precedence levels are value over ATM links, only two different drop precedence levels are
supported in ATM LSRs. The behavior for AF MUST comply to procedures supported in ATM LSRs. The behavior for AF MUST comply to procedures
described in [DIFF_AF] for the case when only two drop precedence described in [DIFF_AF] for the case when only two drop precedence
levels are supported. 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) SHOULD be enabled in the ATM-LSRs
for all PHBs described in this document. for all PHBs described in this document.
8.3 LSR Implementation With ATM Interfaces 8.3 LSR Implementation With LC-ATM Interfaces
A Diff-Serv capable LSR with ATM interfaces MUST support L-LSPs over A Diff-Serv capable LSR with LC-ATM interfaces MUST support L-LSPs
these ATM interfaces in compliance with all the material from this over these ATM interfaces in compliance with all the material from
specification pertaining to those types of LSPs. Additionally, this specification pertaining to those types of LSPs. Additionally,
procedures specified in [MPLS ATM] MUST be followed by compliant procedures specified in [MPLS_ATM] MUST be followed by compliant
implementation. implementation.
Support of E-LSPs over ATM interfaces running native ATM MPLS by an This specification assumes that Edge-LSRs of the ATM-LSR domain use
LSR implementation is not allowed. the "shim header" encapsulation method defined in [MPLS_ATM].
Operations without the "shim header" encapsulation is outside the
scope of this specification.
9. MPLS Support of Diff-Serv by Frame Relay LSRs 9. MPLS Support of Diff-Serv over LC-FR 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 was specified in the label forwarding and LSP setup operations was specified in the
previous sections. This section describes the specific operations previous sections. This section describes the specific operations
required for MPLS support of Diff-Serv over Frame Relay links. required for MPLS support of Diff-Serv over label switching
controlled Frame Relay (LC-FR) interfaces.
This document allows the following set of LSP combinations per FEC
within an MPLS Frame Relay Diff-Serv domain:
- any number of L-LSPs. This document allows any number of L-LSPs per FEC within an MPLS
Frame Relay Diff-Serv domain. E-LSPs are not supported over LC-FR
interfaces.
9.1 Merging 9.1 Merging
Le Faucheur et. al 37
MPLS Support of Diff-Serv March 00
The use of merging is optional. In case that merging of Frame Relay The use of merging is optional. In case that merging of Frame Relay
LSPs is used, procedures described in section 3.6 of this LSPs is used, procedures described in section 3.6 of this
specification apply as well as procedures in [MPLS FR]. specification apply as well as procedures in [MPLS_FR].
9.2 Use of Frame Relay Traffic parameters and Traffic Management 9.2 Use of Frame Relay Traffic parameters and Traffic Management
mechanisms mechanisms
Le Faucheur et. al 47
MPLS Support of Diff-Serv June 2000
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
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 for encoding the PHB drop precedence Since there is only one bit 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. The behavior for AF MUST levels are supported in Frame Relay LSRs. The behavior for AF MUST
comply to procedures described in [DIFF_AF] for the case when only comply to procedures described in [DIFF_AF] for the case when only
two drop precedence levels are supported. two drop precedence levels are supported.
9.3 LSR Implementation With Frame Relay Interfaces 9.3 LSR Implementation With LC-FR Interfaces
A Diff-Serv capable LSR with Frame Relay interfaces MUST support A Diff-Serv capable LSR with LC-FR interfaces MUST support
L-LSPs over these Frame Relay interfaces in compliance with all the L-LSPs over these Frame Relay interfaces in compliance with all the
material from this specification pertaining to those types of LSPs. material from this specification pertaining to those types of LSPs.
Additionally, procedures specified in [MPLS_FR] MUST be followed by
compliant implementation.
Support of E-LSPs over Frame Relay interfaces running native Frame This specification assumes that Edge-LSRs of the FR-LSR domain use
Relay MPLS by an LSR implementation is not allowed. the "generic encapsulation" method as recommended in [MPLS_FR].
Operations without the "generic encapsulation" is outside the scope
of this specification.
10. MPLS Support of Diff-Serv over LAN Media 10. MPLS Support of Diff-Serv over LAN 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 was specified in the label forwarding and LSP setup operations was specified in the
previous sections. This section describes the specific operations previous sections. This section describes the specific operations
required for MPLS support of Diff-Serv over LAN. required for MPLS support of Diff-Serv over LAN interfaces.
This document allows the following set of LSP setup combinations per This document allows the following set of LSP setup combinations per
FEC over an MPLS link: FEC over a LAN interface:
- 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.
10.1 LSR Implementation With LAN Interfaces 10.1 LSR Implementation With LAN Interfaces
A Diff-Serv capable LSR with LAN interfaces MUST support, over these A Diff-Serv capable LSR with LAN interfaces MUST support, over these
LAN interfaces, E-LSPs which use the pre-configured EXP<-->PHB LAN interfaces, E-LSPs which use the pre-configured EXP<-->PHB
mapping, in compliance with all the material from this specification mapping, in compliance with all the material from this specification
pertaining to those types of LSPs. pertaining to those types of LSPs.
A Diff-Serv capable LSR with LAN interfaces MAY support, over these A Diff-Serv capable LSR with LAN interfaces MAY support, over these
LAN interfaces, E-LSPs which use a signaled EXP<-->PHB mapping. If a LAN interfaces, E-LSPs which use a signaled EXP<-->PHB mapping. If a
Le Faucheur et. al 38
MPLS Support of Diff-Serv March 00
Diff-Serv LSR does support E-LSPs which use a signaled EXP<-->PHB Diff-Serv LSR does support E-LSPs which use a signaled EXP<-->PHB
mapping over LAN interfaces, then it MUST do so in compliance with mapping over LAN interfaces, then it MUST do so in compliance with
Le Faucheur et. al 48
MPLS Support of Diff-Serv June 2000
all the material from this specification pertaining to those types all the material from this specification pertaining to those types
of LSPs. of LSPs.
A Diff-Serv capable LSR MAY support L-LSPs over LAN interfaces. If a A Diff-Serv capable LSR MAY support L-LSPs over LAN interfaces. If a
Diff-Serv LSR does support L-LSPs over LAN interfaces, then it MUST Diff-Serv LSR does support L-LSPs over LAN interfaces, then it MUST
do so in compliance with all the material from this specification do so in compliance with all the material from this specification
pertaining to L-LSPs. pertaining to L-LSPs.
11. Explicit Congestion Notification 11. Explicit Congestion Notification
skipping to change at line 2172 skipping to change at line 2632
capable L-LSPs can operate as defined earlier in this document capable L-LSPs can operate as defined earlier in this document
without any restriction imposed by the fact that the MPLS domain without any restriction imposed by the fact that the MPLS domain
is ECN-capable. In particular, up to 8 BAs can still be is ECN-capable. In particular, up to 8 BAs can still be
transported over a non-ECN-capable E-LSP within an ECN-capable transported over a non-ECN-capable E-LSP within an ECN-capable
MPLS domain. Similarly, non-ECN-capable L-LSPs within an ECN- MPLS domain. Similarly, non-ECN-capable L-LSPs within an ECN-
capable MPLS domain can support all the drop precedence levels capable MPLS domain can support all the drop precedence levels
of currently defined PSCs. Should a future PSC involve more than of currently defined PSCs. Should a future PSC involve more than
4 drop precedence levels, non-ECN-capable L-LSPs within an ECN- 4 drop precedence levels, non-ECN-capable L-LSPs within an ECN-
capable MPLS domain could still use the full 3-bit field EXP. capable MPLS domain could still use the full 3-bit field EXP.
Le Faucheur et. al 39
MPLS Support of Diff-Serv March 00
- Because a single bit is required to encode the ECN information - Because a single bit is required to encode the ECN information
inside the ECN-capable MPLS domain, LSPs identified as ECN- inside the ECN-capable MPLS domain, LSPs identified as ECN-
capable can make use of two bits of the EXP field value for capable can make use of two bits of the EXP field value for
Le Faucheur et. al 49
MPLS Support of Diff-Serv June 2000
Diff-Serv purposes. In particular, up to 4 BAs can be Diff-Serv purposes. In particular, up to 4 BAs can be
transported over an ECN-capable E-LSP. Similarly, up to 4 drop transported over an ECN-capable E-LSP. Similarly, up to 4 drop
precedence levels can be supported over an ECN-capable L-LSP; precedence levels can be supported over an ECN-capable L-LSP;
since all the PSCs corresponding to PHBs currently defined since all the PSCs corresponding to PHBs currently defined
through standards action involve less than 4 drop precedence through standards action involve less than 4 drop precedence
levels, ECN support does not currently restrict Diff-Serv levels, ECN support does not currently restrict Diff-Serv
operations over L-LSPs. Should a PSC corresponding to future operations over L-LSPs. Should a PSC corresponding to future
PHBs defined by standards action or corresponding to local use PHBs defined by standards action or corresponding to local use
or experimental PHBs, involve more than 4 drop precedence or experimental PHBs, involve more than 4 drop precedence
levels, then ECN support over the corresponding LSP would levels, then ECN support over the corresponding LSP would
skipping to change at line 2212 skipping to change at line 2672
0xx --> `ECT, not CE' 0xx --> `ECT, not CE'
1xx --> `not ECT, or ECT+CE' 1xx --> `not ECT, or ECT+CE'
where ECT stands for `ECN Capable Transport' and `CE' stands for where ECT stands for `ECN Capable Transport' and `CE' stands for
`Congestion experienced'. `Congestion experienced'.
Detailed specification for usage of this MPLS ECN bit is outside the Detailed specification for usage of this MPLS ECN bit is outside the
scope of this document. scope of this document.
For ECN-capable E-LSPs using preconfigured mapping, the For ECN-capable LSPs, the mappings between EXP and PHB (be it the
Preconfigured EXP<-->PHB mapping defined above in section 3.2.1 is E-LSP Preconfigured Mapping specified in section 3.2.1, the E-LSP
only operating over the last 2 bits of the 3-bit EXP field. For ECN- Signaled Mapping, the L-LSP Mappings defined in section 4.2.1.1 and
capable E-LSPs using signaled mapping, the signaled EXP<-->PHB 4.4.1.1) are adjusted accordingly to only take into account the last
mapping is only operating over the last 2 bits of the 3-bit EXP 2 bits of the 3-bit EXP field.
field. Thus it has the following format:
EXP Field PHB
e00 <-----> a given PHB
e01 <-----> a given PHB
e10 <-----> a given PHB
e11 <-----> a given PHB
where `e' is the MPLS ECN bit and can take the value zero or one
depending on ECN operations.
Le Faucheur et. al 40
MPLS Support of Diff-Serv March 00
For ECN-capable L-LSPs, the `EXP/PSC-->PHB mapping' defined above in
section 4.2.1.1 is only operating over the last 2 bits of the 3-bit
EXP field and is the following:
EXP Field PSC PHB
e00 DF -----> DF
e00 CSn -----> CSn
e00 AFn -----> AFn1
e01 AFn -----> AFn2
e10 AFn -----> AFn3
e00 EF -----> EF
where `e' is the MPLS ECN bit and can take the value zero or one
depending on ECN operations.
For ECN-capable L-LSPs, the `PHB--> PSC/EXP mapping' defined above
in the section 4.4.1.1 is only operating over the last 2 bits of the
3-bit EXP field and is the following:
PHB EXP Field PSC
DF -----> e00 DF
CSn -----> e00 CSn
AFn1 -----> e00 AFn
AFn2 -----> e01 AFn
AFn3 -----> e10 AFn
EF -----> e00 EF
where `e' is the MPLS ECN bit and can take the value zero or one Note that when the E-LSP signaled mapping is used on an ECN-capable
depending on ECN operations. E-LSP, the signaled mapping only needs to contain a single MAP entry
for a given PHBID, which includes an EXP value with its first bit
set to zero.
For non-ECN-capable LSPs, the first bit of the 3-bit EXP field is For non-ECN-capable LSPs, the first bit of the 3-bit EXP field is
NOT reserved for ECN and can be used to encode any Diff-Serv NOT reserved for ECN and can be used to encode any Diff-Serv
information. In particular, for non-ECN-capable E-LSPs, the information.
EXP<-->PHB mapping defined in the section titled `EXP<-->PHB Field
Mapping' and configured on the LSR is operating over the 3 bits of
the EXP field.
12. Security Considerations 12. Security Considerations
Le Faucheur et. al 50
MPLS Support of Diff-Serv June 2000
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.
13. Acknowledgments 13. Acknowledgments
This document has benefited from discussions with K. K. This document has benefited from discussions with K. K.
Ramakrishnan, Eric Rosen, Angela Chiu and Carol Iturralde. Ramakrishnan, Eric Rosen, Angela Chiu and Carol Iturralde. It has
also borrowed from the work done by D. Black regarding Diff-Serv and
Le Faucheur et. al 41 IP Tunnels interaction.
MPLS Support of Diff-Serv March 00
APPENDIX A. Example Deployment Scenarios APPENDIX A. Example Deployment Scenarios
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 less) BAs, no Traffic Engineering, no Fast A.1 Scenario 1: 8 (or fewer) BAs, no Traffic Engineering, no Fast
Reroute Reroute
A Service Provider running 8 (or less) BAs over MPLS, not performing A Service Provider running 8 (or fewer) BAs over MPLS, not
Traffic engineering, not performing protection via Fast Reroute and performing Traffic engineering, not performing protection via Fast
using MPLS Shim Header encapsulation in his/her network, may elect Reroute and using MPLS Shim Header encapsulation in his/her network,
to run Diff-Serv over MPLS using a single E-LSP per FEC established may elect to run Diff-Serv over MPLS using a single E-LSP per FEC
via LDP. Furthermore the Service Provider may elect to use the established via LDP. Furthermore the Service Provider may elect to
preconfigured EXP<-->PHB mapping. use the 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
(eg. 000<-->AF11, 001<-->AF12, 010<-->AF13) (eg. 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 using LDP in - LSRs signal establishment of a single E-LSP per FEC using LDP in
accordance with the specification above (ie no Diff-Serv TLV in accordance with the specification above (ie no Diff-Serv TLV in
LDP Label Request/Label Mapping messages to implicitly indicate LDP Label Request/Label Mapping messages to implicitly indicate
that the LSP is an E-LSP and that it uses the preconfigured that the LSP is an E-LSP and that it uses the preconfigured
mapping) mapping)
A.2 Scenario 2: More than 8 BAs, no Traffic Engineering, no Fast A.2 Scenario 2: More than 8 BAs, no Traffic Engineering, no Fast
Reroute Reroute
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 and not performing protection via Fast Reroute Traffic Engineering and not performing protection via Fast Reroute
Le Faucheur et. al 51
MPLS Support of Diff-Serv June 2000
and using MPLS Shim encapsulation in his/her network may elect to and using MPLS Shim encapsulation in his/her network may elect to
run Diff-Serv over MPLS using for each FEC: run Diff-Serv over 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:
Le Faucheur et. al 42
MPLS Support of Diff-Serv March 00
- 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
BAs transported over the E-LSP BAs transported 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 set - LSRs signal establishment of a single E-LSP per FEC for the set
of E-LSP transported BAs using LDP as specified above (ie no of E-LSP transported BAs using LDP as specified above (ie 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 (ie Diff-Serv TLV in LDP other BAs using LDP as specified above (ie Diff-Serv TLV in LDP
Label Request/Label Mapping messages to indicate the L-LSP's Label Request/Label Mapping messages to indicate the L-LSP's
PSC). PSC).
A.3 Scenario 3: 8 BAs, Aggregate Traffic Engineering, Aggregate Fast A.3 Scenario 3: 8 (or fewer) BAs, Aggregate Traffic Engineering,
Reroute Aggregate Fast Reroute
A Service Provider running 8 (or less) BAs over MPLS, performing A Service Provider running 8 (or fewer) BAs over MPLS, performing
aggregate Traffic Engineering (ie performing a single common path aggregate Traffic Engineering (ie performing a single common path
selection for all BAs), performing aggregate protection via Fast selection for all BAs), performing aggregate protection via Fast
Reroute (ie performing Fast Reroute for all PSCs jointly) and using Reroute (ie performing Fast Reroute for all PSCs jointly) 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
RSVP [RSVP_MPLS_TE] or CR-LDP [CR-LDP_MPLS_TE] and using the RSVP [RSVP_MPLS_TE] or CR-LDP [CR-LDP_MPLS_TE] and using the
preconfigured mapping. preconfigured 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
skipping to change at line 2381 skipping to change at line 2796
(eg. 000<-->AF11, 001<-->AF12, 010<-->AF13) (eg. 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 (ie no DIFFSERV * using the RSVP protocol as specified above (ie no DIFFSERV
RSVP Object in the PATH message containing the LABEL_REQUEST RSVP Object in the PATH message containing the LABEL_REQUEST
Object), OR Object), OR
Le Faucheur et. al 52
MPLS Support of Diff-Serv June 2000
* using the CR-LDP protocol as specified above (ie no Diff- * using the CR-LDP protocol as specified above (ie no Diff-
Serv TLV in LDP Label Request/Label Mapping messages). Serv TLV in LDP Label Request/Label Mapping messages).
A.4 Scenario 4: per-OA Traffic Engineering/Fast Reroute A.4 Scenario 4: per-OA Traffic Engineering/Fast Reroute
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 (ie performing a separate path selection per-OA Traffic Engineering (ie performing a separate path selection
for each OA) and performing per-OA protection via Fast Reroute (ie for each OA) and performing per-OA protection via Fast Reroute (ie
Le Faucheur et. al 43
MPLS Support of Diff-Serv March 00
performing protection with different Fast Reroute policies for the performing protection with different Fast Reroute policies for the
different OAs) in his/her network, may elect to run Diff-Serv over different OAs) in his/her network, may elect to run Diff-Serv over
MPLS using one L-LSP per <FEC,OA> pair established via RSVP or MPLS using one L-LSP per <FEC,OA> pair established via RSVP or
CR-LDP. CR-LDP.
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 (ie DIFFSERV RSVP Object in the PATH message L-LSP's PSC (ie DIFFSERV RSVP Object in the PATH message
containing the LABEL_REQUEST), OR containing the LABEL_REQUEST), OR
* using the CR-LDP protocol as specified above to * using the CR-LDP protocol as specified above to
signal the L-LSP PSC (ie Diff-Serv TLV in LDP Label signal the L-LSP PSC (ie Diff-Serv TLV in LDP Label
Request/Label Mapping messages). Request/Label Mapping messages).
A.5 Scenario 5: 8 (or less) BAs, per-OA Traffic Engineering/Fast A.5 Scenario 5: 8 (or fewer) BAs, per-OA Traffic Engineering/Fast
Reroute Reroute
A Service Provider running 8 (or less) 8 BAs over MPLS, performing A Service Provider running 8 (or fewer) 8 BAs over MPLS, performing
per-OA Traffic Engineering (ie performing a separate path selection per-OA Traffic Engineering (ie performing a separate path selection
for each OA) and performing per-OA protection via Fast Reroute (ie for each OA) and performing per-OA protection via Fast Reroute (ie
performing protection with different Fast Reroute policies for the performing protection with different Fast Reroute policies for the
different OAs) in his/her network, may elect to run Diff-Serv over different OAs) in his/her network, may elect to run Diff-Serv over
MPLS using one E-LSP per <FEC,OA> pair established via RSVP or MPLS using one E-LSP per <FEC,OA> pair established via RSVP or
CR-LDP. Furthermore, the Service Provider may elect to use the CR-LDP. Furthermore, the Service Provider may elect to use the
preconfigured mapping on all the E-LSPs. 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
skipping to change at line 2437 skipping to change at line 2851
(eg. 000<-->AF11, 001<-->AF12, 010<-->AF13) (eg. 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 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
(ie no DIFFSERV RSVP Object in the PATH message containing the (ie no DIFFSERV RSVP Object in the PATH message containing the
LABEL_REQUEST), OR LABEL_REQUEST), OR
Le Faucheur et. al 53
MPLS Support of Diff-Serv June 2000
* 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 (ie no Diff-Serv TLV in LDP Label Request/Label Mapping mapping (ie no Diff-Serv TLV in LDP Label Request/Label Mapping
messages) messages)
- the Service Provider configures, for each E-LSP, at the head-end - the Service Provider configures, for each E-LSP, at the head-end
of that E-LSP, a filtering/forwarding criteria so that only the of that E-LSP, a filtering/forwarding criteria so that only the
packets belonging to a given OA are forwarded on the E-LSP packets belonging to a given OA are forwarded on the E-LSP
established for the corresponding FEC and corresponding OA. established for the corresponding FEC and corresponding OA.
Le Faucheur et. al 44
MPLS Support of Diff-Serv March 00
A.6 Scenario 6: no Traffic Engineering/Fast Reroute on 8 BAs, per-OA A.6 Scenario 6: no Traffic Engineering/Fast Reroute on 8 BAs, per-OA
Traffic Engineering/Fast Reroute on other BAs. Traffic Engineering/Fast Reroute on other BAs.
A Service Provider not performing Traffic Engineering/Fast Reroute A Service Provider not performing Traffic Engineering/Fast Reroute
on 8 (or less) BAs, performing per-OA Traffic Engineering/Fast on 8 (or fewer) BAs, performing per-OA Traffic Engineering/Fast
Reroute on the other BAs (ie performing a separate path selection Reroute on the other BAs (ie performing a separate path selection
for each OA corresponding to the other BAs and performing protection for each OA corresponding to the other BAs and performing protection
with a different policy for each of these OA) and using the MPLS with a different policy for each of these OA) and using the MPLS
Shim encapsulation in his/her network may elect to run Diff-Serv Shim encapsulation in his/her network may elect to run Diff-Serv
over MPLS, using for each FEC: over MPLS, using for each 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 less) non-traffic-engineered/non-fast- support the set of 8 (or fewer) non-traffic-engineered/non-fast-
rerouted BAs, AND rerouted 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
support of the other BAs. support of the 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
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
skipping to change at line 2493 skipping to change at line 2907
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 (ie Diff-Serv TLV in LDP Label signal the L-LSP PSC (ie Diff-Serv TLV in LDP Label
Request/Label Mapping messages). Request/Label Mapping messages).
A.7 Scenario 7: More than 8 BAs, no Traffic Engineering, no Fast A.7 Scenario 7: More than 8 BAs, no Traffic Engineering, no Fast
Reroute Reroute
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 protection via Fast Reroute and Traffic engineering, not performing protection via Fast Reroute and
Le Faucheur et. al 54
MPLS Support of Diff-Serv June 2000
using MPLS Shim Header encapsulation in his/her network, may elect using MPLS Shim Header encapsulation in his/her network, may elect
to run Diff-Serv over MPLS using two E-LSPs per FEC established via to run Diff-Serv over MPLS using two E-LSPs per FEC established via
LDP and using signaled EXP<-->PHB mapping. LDP and 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 45
MPLS Support of Diff-Serv March 00
- 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 (ie Diff-Serv TLV in LDP accordance with the specification above (ie Diff-Serv TLV in LDP
Label Request/Label Mapping messages to explicitly indicate that Label Request/Label Mapping messages to explicitly indicate that
the LSP is an E-LSP and its EXP<--> mapping). The signaled 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 2549 skipping to change at line 2960
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
constraint on availability of bandwidth for the relevant PSC is met. constraint on availability of bandwidth for the relevant PSC is met.
B.3 Scenario 3: Bandwidth Reservation for per-PSC Admission Control and B.3 Scenario 3: Bandwidth Reservation for per-PSC Admission Control and
per-PSC Resource Adjustment per-PSC Resource Adjustment
Consider the case where a network administrator elects to: Consider the case where a network administrator elects to:
- use L-LSPs - use L-LSPs
Le Faucheur et. al 55
MPLS Support of Diff-Serv June 2000
- 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 46
MPLS Support of Diff-Serv March 00
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", work in progress, (draft-ietf-mpls-arch-06.txt), Architecture", work in progress, (draft-ietf-mpls-arch-06.txt),
August 1999. August 1999.
[MPLS ATM] Davie et al., _MPLS using LDP and ATM VC Switching_, work [MPLS_ATM] Davie et al., "MPLS using LDP and ATM VC Switching", work
in progress, (draft-ietf-mpls-atm-02.txt), April 1999 in progress, (draft-ietf-mpls-atm-03.txt), May 2000
[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_, (draft-ietf-mpls-fr-03.txt), November 1998 Networks Specification", (draft-ietf-mpls-fr-04.txt), May 2000
[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] Jacobson et al., "An Expedited Forwarding PHB", RFC-2598,
June 1999. June 1999.
skipping to change at line 2598 skipping to change at line 3008
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.
[MPLS_ECN] Ramakrishnan et al., "A Proposal to Incorporate ECN in [MPLS_ECN] Ramakrishnan et al., "A Proposal to Incorporate ECN in
MPLS", draft-ietf-mpls-ecn-00.txt, June 1999. MPLS", draft-ietf-mpls-ecn-00.txt, June 1999.
[LDP] Andersson et al., "LDP Specification", draft-ietf-mpls-ldp- [LDP] Andersson et al., "LDP Specification", draft-ietf-mpls-ldp-
05.txt, June 99 06.txt, October 99
[RSVP_MPLS_TE] Awduche et al, "Extensions to RSVP for LSP Tunnels", [RSVP_MPLS_TE] Awduche et al, "Extensions to RSVP for LSP Tunnels",
draft-ietf-mpls-rsvp-lsp-tunnel-03.txt, September 1999 draft-ietf-mpls-rsvp-lsp-tunnel-05.txt, February 2000
[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", draft-ietf-mpls-cr-ldp-03.txt, October 1999 LDP", draft-ietf-mpls-cr-ldp-03.txt, October 1999
[PHBID] Brim et al., "Per Hop Behavior Identification Codes Le Faucheur et. al 56
draft-ietf-diffserv-phbid-00.txt, October 99 MPLS Support of Diff-Serv June 2000
[DIFF_NEW] Grossman, _New Terminology for Diffserv_, draft-ietf-
diffserv-new-terms-02.txt, November 99
Le Faucheur et. al 47 [PHBID] Brim et al., "Per Hop Behavior Identification Codes"
RFC 2836, May 2000
MPLS Support of Diff-Serv March 00 [DIFF_NEW] Grossman, "New Terminology for Diffserv", draft-ietf-
diffserv-new-terms-02.txt, November 99
[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
[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", draft-
ietf-diffserv-tunnels-00-txt, February 2000.
[MPLS_VPN] Rosen et al., "BGP/MPLS VPNs", draft-rosen-rfc2547bis-
00.txt, March 2000.
Author's Addresses: Author's Addresses:
Francois Le Faucheur Francois Le Faucheur
Cisco Systems Cisco Systems
Petra B - Les Lucioles - 291, rue Albert Caquot - 06560 Valbonne - Petra B - Les Lucioles - 291, rue Albert Caquot - 06560 Valbonne -
France France
Phone: +33 4 92 96 75 64 Phone: +33 4 92 96 75 64
Email: flefauch@cisco.com Email: flefauch@cisco.com
Liwen Wu Liwen Wu
skipping to change at line 2647 skipping to change at line 3063
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
Email: bsd@cisco.com Email: bsd@cisco.com
Shahram Davari Shahram Davari
PMC-Sierra Inc. PMC-Sierra Inc.
105-8555 Baxter Place 555 Legget drive,
Burnaby, BC V5A 4V7 Suit 834, Tower B,
Ottawa, ON K2K 2X3
Canada Canada
E-mail: Shahram_Davari@pmc-sierra.com Phone: +1 (613) 271-4018
Email: shahram_davari@pmc-sierra.com
Le Faucheur et. al 57
MPLS Support of Diff-Serv June 2000
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
Nexabit Networks Nexabit Networks
200 Nickerson Road, 200 Nickerson Road,
Marlboro, MA 01752 Marlboro, MA 01752
USA USA
E-mail: ram@nexabit.com E-mail: ram@nexabit.com
Le Faucheur et. al 48
MPLS Support of Diff-Serv March 00
Pierrick Cheval Pierrick Cheval
Alcatel Alcatel
5 rue Noel-Pons 5 rue Noel-Pons
92734 Nanterre Cedex 92734 Nanterre Cedex
France France
E-mail: E-mail:pierrick.cheval@alcatel.fr
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 49 Le Faucheur et. al 58
 End of changes. 

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