draft-ietf-mpls-diff-ext-03.txt   draft-ietf-mpls-diff-ext-04.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: October, 2000 Expires: September, 2000
Document: draft-ietf-mpls-diff-ext-03.txt February, 2000 Document: draft-ietf-mpls-diff-ext-04.txt March, 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.
skipping to change at line 55 skipping to change at line 55
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 February 00 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 111 skipping to change at line 111
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 February 00 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).
skipping to change at line 166 skipping to change at line 166
or relying on a pre-configured mapping. or relying 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 Le Faucheur et. al 3
MPLS Support of Diff-Serv February 00 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
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
skipping to change at line 222 skipping to change at line 222
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 Le Faucheur et. al 4
MPLS Support of Diff-Serv February 00 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-
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
Regardless of which label binding protocol is used, E-LSPs and
L-LSPs may be established without bandwidth reservation or with
bandwidth reservation.
Establishing an E-LSP or L-LSP with bandwidth reservation means that
bandwidth requirements for the LSP are signaled at LSP establishment
time. Such signaled bandwidth requirements may be used by LSRs at
establishment time to perform admission control of the signaled LSP
over the Diff-Serv resources provisioned (e.g. via configuration,
SNMP or COPS) for the relevant PSC(s). Such signaled bandwidth
requirements may also be used by LSRs at establishment time to
perform adjustment to the Diff-Serv resources associated with the
relevant PSC(s) (e.g. adjust PSC scheduling weight).
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
and L-LSPs are specified in this document for support of
Differentiated Services, the required forwarding treatment
(scheduling and drop policy) is Diff-Serv PHBs. This forwarding
treatment MUST be applied by the LSR at the granularity of the BA
and MUST be compliant with the relevant PHB specification.
When bandwidth requirements are signaled at establishment of an
L-LSP, the signaled bandwidth is obviously associated with the
L-LSP's PSC. Thus, LSRs which use the signaled bandwidth to perform
admission control may perform admission control over Diff-Serv
resources which are dedicated to the PSC (e.g. over the bandwidth
guaranteed to the PSC through its scheduling weight).
When bandwidth requirements are signaled at establishment of an
E-LSP, the signaled bandwidth is associated collectively to the
whole LSP and therefore to the set of transported PSCs. Thus, LSRs
which use the signaled bandwidth to perform admission control may
perform admission control over global resources which are shared by
the set of PSCs (e.g. over the total bandwidth of the link).
Examples of scenarios where bandwidth reservation is not used and
scenarios where bandwidth reservation is used are provided for
information in APPENDIX B.
2. Label Forwarding Model for Diff-Serv LSRs 2. Label Forwarding Model for Diff-Serv LSRs
Le Faucheur et. al 5
MPLS Support of Diff-Serv March 00
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 In order to describe Label Forwarding by Diff-Serv LSRs, we model
the LSR Diff-Serv label switching behavior as comprising four the LSR Diff-Serv label switching behavior as comprising four
skipping to change at line 272 skipping to change at line 318
-Encaps->I===I--Inc_PHB->I B I \ /->I===I -Encaps->I===I--Inc_PHB->I B I \ /->I===I
(*) I===I \--------/ (*) I===I \--------/
`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.
Le Faucheur et. al 5
MPLS Support of Diff-Serv February 00
(**) 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 illustrate operations of Diff-Serv
LSRs and does not constrain actual implementation. LSRs and does not constrain actual implementation.
2.1 Incoming PHB Determination 2.1 Incoming PHB Determination
This stage determines which Behavior Aggregate the received packet This stage determines which Behavior Aggregate the received packet
belongs to. belongs to.
Le Faucheur et. al 6
MPLS Support of Diff-Serv March 00
2.1.1 Incoming PHB Determination for received labelled packets 2.1.1 Incoming PHB Determination for received labelled packets
This specification defines one default method for this determination This specification defines one default method for this determination
which allows for regular support of Diff-Serv over MPLS. This method which allows for regular support of Diff-Serv over MPLS. This method
considers only the outer encapsulation (ie outer label entry or ATM considers only the outer encapsulation (ie outer label entry or ATM
encapsulation or Frame Relay encapsulation) and ignores other label encapsulation or Frame Relay encapsulation) and ignores other label
entries which may be present in the stack. It combines: entries which may be present in the stack. It combines:
- the Diff-Serv context associated with the incoming label and - the Diff-Serv context associated with the incoming label and
stored in the Incoming Label Map (ILM). See section 2.3 below stored in the Incoming Label Map (ILM). See section 2.3 below
for details on information comprising the Diff-Serv context. for details on information comprising the Diff-Serv context.
skipping to change at line 328 skipping to change at line 374
For packets received unlabelled, this stage operates exactly as with For packets received unlabelled, this stage operates exactly as with
a non-MPLS IP Diff-Serv Router and uses the DS field. a non-MPLS IP Diff-Serv Router and uses the DS field.
2.2 Optional Outgoing PHB Determination Via Local Policy And Traffic 2.2 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
Le Faucheur et. al 6
MPLS Support of Diff-Serv February 00
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- For packets received unlabelled, this stage operates as with a non-
MPLS IP Diff-Serv Router. MPLS IP Diff-Serv Router.
Le Faucheur et. al 7
MPLS Support of Diff-Serv March 00
2.3 Label Swapping 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:
skipping to change at line 385 skipping to change at line 430
EXP<-->PHB Mapping, which is discussed below in section 3.2.1. EXP<-->PHB Mapping, which is discussed below in section 3.2.1.
If the label corresponds to an E-LSP for which an EXP<-->PHB mapping If the label corresponds to an E-LSP for which an EXP<-->PHB mapping
has been explicitly signaled at LSP setup, the `supported PHBs' is has been explicitly signaled at LSP setup, the `supported PHBs' is
populated with the set of PHBs of the signaled EXP<-->PHB mapping. populated with the set of PHBs of the signaled EXP<-->PHB mapping.
If the label corresponds to an L-LSP, the `supported PHBs' is If the label corresponds to an L-LSP, the `supported PHBs' is
populated with the set of PHBs forming the PSC that is signaled at populated with the set of PHBs forming the PSC that is signaled at
LSP set-up. LSP set-up.
Le Faucheur et. al 7
MPLS Support of Diff-Serv February 00
The details of how the `Encaps-->PHB mapping' or `Set of The details of how the `Encaps-->PHB mapping' or `Set of
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] is mapped, for Diff-Serv purposes,
to multiple NHLFEs (for instance where different NHLFEs correspond to multiple NHLFEs (for instance where different NHLFEs correspond
to egress labels supporting different sets of PHBs). When a label to egress labels supporting different sets of PHBs). When a label
[respectively FEC] maps to multiple NHLFEs, the Diff-Serv LSR MUST [respectively FEC] maps to multiple NHLFEs, the Diff-Serv LSR MUST
choose one of the NHLFEs whose Diff-Serv context indicates that it choose one of the NHLFEs whose Diff-Serv context indicates that it
supports the Outgoing PHB of the forwarded packet. supports the Outgoing PHB of the forwarded packet.
skipping to change at line 441 skipping to change at line 487
of the selected NHLFE (`Set of PHB-->Encaps mappings'). of the selected NHLFE (`Set of PHB-->Encaps mappings').
This method defines that the Outgoing PHB is reflected into: This method defines that the Outgoing PHB is reflected into:
- the EXP field value of all the swapped or pushed label entries - the EXP field value of all the swapped or pushed label entries
- the CLP/DE bit when the packet is encapsulated into ATM/Frame - the CLP/DE bit when the packet is encapsulated into ATM/Frame
Relay, Relay,
- the 802.1 User_Priority field of the 802.1 Tag Control - the 802.1 User_Priority field of the 802.1 Tag Control
Information when the packet is encapsulated into LAN interfaces Information when the packet is encapsulated into LAN interfaces
supporting multiple Traffic Classes, supporting multiple Traffic Classes,
Le Faucheur et. al 8
MPLS Support of Diff-Serv February 00
The details of this method depend on the outgoing LSP type and on The details of this method depend on the outgoing LSP type and on
the outgoing MPLS encapsulation and are defined below in sections the outgoing MPLS encapsulation and are defined below in sections
3.5 and 4.5. 3.5 and 4.5.
Support for this default method is mandatory for compliance to this Support for this default method is mandatory for compliance to this
specification. specification.
Optionally, other methods for encoding Diff-Serv information into Optionally, other methods for encoding Diff-Serv information into
the Encapsulation layer may also be supported to allow for more the Encapsulation layer may also be supported to allow for more
sophisticated Diff-Serv operations over MPLS. Other methods may sophisticated Diff-Serv operations over MPLS. Other methods may
affect encapsulation fields differently. affect encapsulation fields differently.
Le Faucheur et. al 9
MPLS Support of Diff-Serv March 00
2.4.2 Encoding Diff-Serv information for transmitted unlabelled packets 2.4.2 Encoding Diff-Serv information for transmitted unlabelled packets
This specification defines one default method for this encoding This specification defines one default method for this encoding
which allows regular support of Diff-Serv over MPLS. which allows regular support of Diff-Serv over MPLS.
Support for this default method is mandatory for compliance to this Support for this default method is mandatory for compliance to this
specification. specification.
For packets transmitted unlabelled (ie LSR performing label For packets transmitted unlabelled (ie LSR performing label
disposition), the default encoding method writes the DSCP of the disposition), the default encoding method writes the DSCP of the
skipping to change at line 495 skipping to change at line 541
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
Le Faucheur et. al 9
MPLS Support of Diff-Serv February 00
- 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.
- 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 MPLS LSR based on the EXP field
skipping to change at line 549 skipping to change at line 595
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
Le Faucheur et. al 10
MPLS Support of Diff-Serv February 00
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 support the
mandatory default method for Incoming PHB determination. mandatory default method for Incoming PHB determination.
The `Encaps-->PHB mapping' is always of the form `EXP-->PHB The `Encaps-->PHB mapping' is always of the form `EXP-->PHB
mapping'. 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 uses 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.
skipping to change at line 605 skipping to change at line 651
- 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. top level label entry into the EXP-->PHB mapping table.
If the EXP field value of a packet received on an E-LSP is not 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 included in the EXP-->PHB mapping associated with this LSP, this EXP
value should be considered invalid. LSR behavior in such situation value should be considered invalid. LSR behavior in such situation
is a local matter and is outside the scope of this document. 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
Le Faucheur et. al 11
MPLS Support of Diff-Serv February 00
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 support the mandatory default method for 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 One `PHB-->EXP mapping' is always added to the `Set of PHB-->Encaps
mappings' of the Diff-Serv context for an outgoing E-LSP. mappings' of the Diff-Serv context for an outgoing E-LSP.
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-->802.1 mapping'
If the outgoing interface is a LAN interface on which multiple 802.1 If the outgoing interface is a LAN interface on which multiple 802.1
skipping to change at line 662 skipping to change at line 709
This section defines the mandatory default method for encoding of This section defines the mandatory default method for encoding of
Diff-Serv related information into the MPLS encapsulation Layer to Diff-Serv related information into the MPLS encapsulation Layer to
be used when a packet is transmitted onto an E-LSP. This method be used when a packet is transmitted onto an E-LSP. This method
requires that the `Set of PHB-->Encaps mappings' is populated as requires that the `Set of 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 Mapping'
associated with the outer label of the NHLFE. associated with the outer label of the NHLFE.
Le Faucheur et. al 12
MPLS Support of Diff-Serv February 00
3.5.1 `PHB-->EXP mapping' 3.5.1 `PHB-->EXP mapping'
For all the labels which are swapped or pushed, the LSR: For all the labels which are swapped or pushed, 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' 3.5.2 `PHB-->802.1 mapping'
Le Faucheur et. al 13
MPLS Support of Diff-Serv March 00
If the `Set of PHB-->Encaps mapping' of the outer label contains a If the `Set of PHB-->Encaps mapping' of the outer label contains a
mapping of the form `PHB-->802.1 mapping', then the LSR: 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 PHB-->802.1
mapping table. 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
skipping to change at line 716 skipping to change at line 763
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
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
Le Faucheur et. al 13
MPLS Support of Diff-Serv February 00
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:
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 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
skipping to change at line 774 skipping to change at line 820
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 for support of the
mandatory default method for Incoming PHB determination. mandatory default method for Incoming PHB determination.
Le Faucheur et. al 14
MPLS Support of Diff-Serv February 00
4.2.1 `EXP-->PHB mapping' 4.2.1 `EXP-->PHB mapping'
If the LSR terminates the MPLS Shim Layer (i.e. it is not an If the LSR terminates the MPLS Shim Layer (i.e. it is not an
ATM-LSR or FR-LSR as defined in [MPLS ATM][MPLS FR], and it does not ATM-LSR or FR-LSR as defined in [MPLS ATM][MPLS FR], and it does not
receive packets without an MPLS shim layer on an LC-ATM or LC-FR receive packets without an MPLS shim layer on an LC-ATM or LC-FR
interface) then the `Encaps-->PHB mapping' is populated at label interface) then the `Encaps-->PHB mapping' is populated at label
setup in the following way: setup in the following way:
- it is actually a `EXP-->PHB mapping' - it is actually a `EXP-->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 `EXP->PHB mapping' for this PSC as LSP, and uses the relevant `EXP->PHB mapping' for this PSC as
defined in Section 4.2.1.1 below. defined in Section 4.2.1.1 below.
Le Faucheur et. al 15
MPLS Support of Diff-Serv March 00
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 4.2.1.1 EXP/PSC --> PHB mapping
skipping to change at line 829 skipping to change at line 875
`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 uses the relevant `CLP-->PHB mapping' for this PSC as
defined in Section 4.2.2.1 below. defined in Section 4.2.2.1 below.
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:
Le Faucheur et. al 15
MPLS Support of Diff-Serv February 00
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 CLP/PSC --> PHB mapping
In order to populate the `Encaps-->PHB mapping', the mapping from 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 the L-LSP PSCs and the CLP bit of the ATM cell header into PHBs is
specified as follows: 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 or it
skipping to change at line 885 skipping to change at line 931
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 the mandatory default method for Incoming PHB
determination for a labeled packet received on an L-LSP. This method determination for a labeled packet received on an L-LSP. This method
requires that the `Encaps-->PHB mapping' is populated as defined requires that the `Encaps-->PHB mapping' is populated as defined
above in section 4.2. above in section 4.2.
Le Faucheur et. al 16
MPLS Support of Diff-Serv February 00
When receiving a labeled packet over an L-LSP of an MPLS ingress When receiving a labeled packet over an L-LSP of an MPLS ingress
interface, the LSR first determines the `Encaps-->PHB mapping' interface, the LSR first determines the `Encaps-->PHB mapping'
associated with the incoming label. associated with the incoming 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. top level label entry and by using the EXP-->PHB mapping.
If the received EXP field value is not included in the EXP-->PHB If the received EXP field value is not included in the EXP-->PHB
mapping, this EXP value should be considered invalid. LSR behavior 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 in such situation is a local matter and is outside the scope of this
document. 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.
skipping to change at line 941 skipping to change at line 988
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 for support of
the mandatory default method for Encoding Diff-Serv Information into the mandatory default method for Encoding Diff-Serv Information into
Encapsulation on Outgoing L-LSP. 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 label (i.e. it
is not an ATM-LSR or FR-LSR and it does not transmit packets without is not an ATM-LSR or FR-LSR and it does not transmit packets without
an MPLS Shim Layer on a LC-ATM or LC-FR interface), then one an MPLS Shim Layer on a LC-ATM or LC-FR interface), then one
Le Faucheur et. al 17
MPLS Support of Diff-Serv February 00
`PHB-->EXP mapping' is added at label setup to the `Set of `PHB-->EXP mapping' is added at label setup to the `Set of
PHB-->Encaps mapping' in the Diff-Serv context for this outgoing 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 uses the
relevant `PHB-->EXP mapping' for this PSC as defined in section relevant `PHB-->EXP mapping' for this PSC as defined in section
4.4.1.1 below. 4.4.1.1 below.
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 PHB-->PSC/EXP mapping
In order to populate the `Set of PHB-->Encaps mappings', the 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 from the PHBs into the L-LSP PSC and the EXP field of the shim
header is specified as follows: header is specified as follows:
skipping to change at line 998 skipping to change at line 1044
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-->Encaps mapping' will be populated with:
PHB CLP Field PHB CLP Field
AF11 ----> 0 AF11 ----> 0
AF12 ----> 1 AF12 ----> 1
AF13 ----> 1 AF13 ----> 1
Le Faucheur et. al 18
MPLS Support of Diff-Serv February 00
Notice that the if the LSR is transmitting packets over a LC-ATM Notice that the if the LSR is transmitting packets over a LC-ATM
interface using the MPLS Shim Header, then the `Set of PHB-->Encaps interface using the MPLS Shim Header, then the `Set of PHB-->Encaps
mappings' contains both a `PHB-->EXP mapping' and a `PHB-->CLP mappings' contains both a `PHB-->EXP mapping' and a `PHB-->CLP
mapping'. mapping'.
4.4.2.1 PHB-->PSC/CLP mapping 4.4.2.1 PHB-->PSC/CLP mapping
In order to populate the `Set of PHB-->Encaps mappings', the mapping 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 from the PHBs into the L-LSP PSC and the CLP bit of the ATM cell
header is specified as follows: header is specified as follows:
PHB PSC CLP Bit PHB PSC CLP Bit
Le Faucheur et. al 19
MPLS Support of Diff-Serv March 00
DF ----> DF 0 DF ----> DF 0
CSn ----> CSn 0 CSn ----> CSn 0
AFn1 ----> AFn 0 AFn1 ----> AFn 0
AFn2 ----> AFn 1 AFn2 ----> AFn 1
AFn3 ----> AFn 1 AFn3 ----> AFn 1
EF ----> EF 0 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 LSR uses Frame Relay encapsulation (i.e. it is a FR-LSR or
skipping to change at line 1054 skipping to change at line 1100
DF ----> DF 0 DF ----> DF 0
CSn ----> CSn 0 CSn ----> CSn 0
AFn1 ----> AFn 0 AFn1 ----> AFn 0
AFn2 ----> AFn 1 AFn2 ----> AFn 1
AFn3 ----> AFn 1 AFn3 ----> AFn 1
EF ----> EF 0 EF ----> EF 0
4.4.4 `PHB-->802.1 mapping' 4.4.4 `PHB-->802.1 mapping'
Le Faucheur et. al 19
MPLS Support of Diff-Serv February 00
If the outgoing interface is a LAN interface on which multiple If the outgoing interface is a LAN interface on which multiple
Traffic Classes are supported as defined in [IEEE_802.1], then one Traffic Classes are supported as defined in [IEEE_802.1], then one
`PHB-->802.1 mapping' is added at label setup to the `Set of `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 `PHB-->802.1 mapping' for this PSC from the
Preconfigured `PHB-->802.1 mapping' defined above in section Preconfigured `PHB-->802.1 mapping' defined above in section
3.4.2.1. 3.4.2.1.
Notice that if the LSR is transmitting packets over a LAN interface Notice that if the LSR is transmitting packets over a LAN interface
supporting multiple 802.1 Traffic Classes, then the `Set of supporting multiple 802.1 Traffic Classes, then the `Set of
Le Faucheur et. al 20
MPLS Support of Diff-Serv March 00
PHB-->Encaps mappings' contains both a `PHB-->EXP mapping' and a 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 on Outgoing
L-LSP L-LSP
This section defines the mandatory default method for encoding of This section defines the mandatory default method for encoding of
Diff-Serv related information into the MPLS encapsulation Layer to Diff-Serv related information into the MPLS encapsulation Layer to
be used when a packet is transmitted onto an L-LSP. This method be used when a packet is transmitted onto an L-LSP. This method
requires that the `Set of PHB-->Encaps mappings' is populated as requires that the `Set of PHB-->Encaps mappings' is populated as
skipping to change at line 1109 skipping to change at line 1156
If the `Set of PHB-->Encaps mapping' of the outer label contains a If the `Set of PHB-->Encaps mapping' of the outer label contains a
mapping of the form `PHB-->CLP mapping', then the LSR: 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 mapping' of the outer label contains a
mapping of the form `PHB-->DE mapping', then the LSR: mapping of the form `PHB-->DE mapping', then the LSR:
Le Faucheur et. al 20
MPLS Support of Diff-Serv February 00
- 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 mapping' of the outer label contains a
mapping of the form `PHB-->802.1 mapping', then the LSR: 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
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
skipping to change at line 1166 skipping to change at line 1212
5.1 Diff-Serv related RSVP Messages Format 5.1 Diff-Serv related RSVP Messages Format
One new RSVP Object is defined in this document: the DIFFSERV One new RSVP Object is defined in this document: the DIFFSERV
Object. Detailed description of this Object is provided below. This Object. Detailed description of this Object is provided below. This
new Object is applicable to Path messages. This specification only new Object is applicable to Path messages. This specification only
defines the use of the DIFFSERV Object in Path messages used to defines the use of the DIFFSERV Object in Path messages used to
establish LSP Tunnels in accordance with [RSVP_MPLS_TE] and thus establish LSP Tunnels in accordance with [RSVP_MPLS_TE] and thus
containing a Session Object with a C-Type equal to LSP_TUNNEL_IPv4 containing a Session Object with a C-Type equal to LSP_TUNNEL_IPv4
and containing a LABEL_REQUEST object. and containing a LABEL_REQUEST object.
Le Faucheur et. al 21
MPLS Support of Diff-Serv February 00
Restrictions defined in [RSVP_MPLS_TE] for support of establishment Restrictions defined in [RSVP_MPLS_TE] for support of establishment
of LSP Tunnels via RSVP are also applicable to the establishment of of LSP Tunnels via RSVP are also applicable to the establishment of
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
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:
skipping to change at line 1221 skipping to change at line 1268
5.2.1. DIFFSERV object for an E-LSP: 5.2.1. DIFFSERV object for an E-LSP:
class = TBD, C_Type = 1 (need to get an official class num from the class = TBD, C_Type = 1 (need to get an official class num from the
IANA with the form 0bbbbbbb) IANA with the form 0bbbbbbb)
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 | MAPnb | | Reserved | MAPnb |
Le Faucheur et. al 22
MPLS Support of Diff-Serv February 00
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAP (1) | | MAP (1) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
// ... // // ... //
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 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
MPLS Support of Diff-Serv March 00
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 (decimal).
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
skipping to change at line 1278 skipping to change at line 1324
class = TBD, C_Type = 2 (class num is the same as DIFFSERV object class = TBD, C_Type = 2 (class num is the same as DIFFSERV object
for E-LSP)) for E-LSP))
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | PSC | | Reserved | PSC |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Le Faucheur et. al 23
MPLS Support of Diff-Serv February 00
Reserved : 16 bits Reserved : 16 bits
This field is reserved. It must be set to zero on transmission This field is reserved. It must be set to zero on transmission
and must be ignored on receipt. and must be ignored on receipt.
PSC : 16 bits PSC : 16 bits
The PSC indicates a PHB Scheduling Class to be supported by the The PSC indicates a PHB Scheduling Class to be supported by the
LSP. The PSC is encoded as specified in section 2 of [PHBID]: LSP. The PSC is encoded as specified in 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
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
skipping to change at line 1333 skipping to change at line 1380
creates a Path message: creates a Path message:
- with a session type of LSP_Tunnel_IPv4, - with a session type of LSP_Tunnel_IPv4,
- with the LABEL_REQUEST object, and - with the LABEL_REQUEST object, and
- without the DIFFSERV object. - without the DIFFSERV object.
Where the sender supports Diff-Serv, to establish with RSVP an E-LSP Where the sender supports Diff-Serv, to establish with RSVP an E-LSP
tunnel which uses a signaled EXP<-->PHB mapping, the sender creates tunnel which uses a signaled EXP<-->PHB mapping, the sender creates
a Path message : 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,
Le Faucheur et. al 24
MPLS Support of Diff-Serv February 00
- with the DIFFSERV object for an E-LSP containing one MAP entry - with the DIFFSERV object for an E-LSP containing one MAP entry
for each EXP value to be supported on this E-LSP. for each EXP value to be supported on this E-LSP.
Where the sender supports Diff-Serv, to establish with RSVP an L-LSP Where the sender supports Diff-Serv, to establish with RSVP an L-LSP
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.
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
skipping to change at line 1390 skipping to change at line 1436
particular PHB encoded in one, or more, of the MAP entries, sends a particular PHB encoded in one, or more, of the MAP entries, sends a
PathErr towards the sender with the error code `Diff-Serv Error' and PathErr towards the sender with the error code `Diff-Serv Error' and
an error value of `Unsupported PHB'. Those are defined below in an error value of `Unsupported PHB'. Those are defined below in
section 5.5. section 5.5.
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
Le Faucheur et. al 25
MPLS Support of Diff-Serv February 00
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 decimal, 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).
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
skipping to change at line 1447 skipping to change at line 1492
The following defines error values for the Diff-Serv Error: The following defines error values for the Diff-Serv Error:
Value Error Value Error
1 Unexpected DIFFSERV object 1 Unexpected DIFFSERV object
2 Unsupported PHB 2 Unsupported PHB
3 Invalid EXP<-->PHB mapping 3 Invalid EXP<-->PHB mapping
4 Unsupported PSC 4 Unsupported PSC
Le Faucheur et. al 26
MPLS Support of Diff-Serv February 00
5.6 Use of COS Service with E-LSPs and L-LSPs 5.6 Use of COS Service with E-LSPs and L-LSPs
Both E-LSPs and L-LSPs can be established with bandwidth reservation Both E-LSPs and L-LSPs can be established with bandwidth reservation
or without bandwidth reservation. or without bandwidth reservation.
To establish an E-LSP or an L-LSP with bandwidth reservation, Int- 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
for support of the Diff-Serv service only. Regardless of whether the
signaling messages actually indicate an Int-Serv service of COS, GS
or CL and regardless of whether the signaling messages contain a
signaled bandwidth reservation or not, E-LSPs and L-LSPs are defined
here for support of Diff-Serv services. Support of Int-Serv services
over an MPLS Diff-Serv backbone is outside the scope of this
specification.
A Path message containing a COS SENDER_TSPEC and not containing a 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 in 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 in an E-LSP using a signaled mapping and
without any bandwidth reservation. without any bandwidth reservation.
skipping to change at line 1502 skipping to change at line 1556
Where: Where:
- GS stands for Guaranteed Service - GS stands for Guaranteed Service
- 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).
Le Faucheur et. al 27 6. LDP Extensions for Diff-Serv Support
MPLS Support of Diff-Serv February 00 Le Faucheur et. al 28
6. LDP Extensions for Diff-Serv Support 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.
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
skipping to change at line 1557 skipping to change at line 1611
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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 : 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.
MAPnb : 4 bits MAPnb : 4 bits
Le Faucheur et. al 28
MPLS Support of Diff-Serv February 00
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 (decimal).
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | EXP | PHBID | | Reserved | EXP | PHBID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at line 1613 skipping to change at line 1666
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 29
MPLS Support of Diff-Serv February 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|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 1670 skipping to change at line 1723
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| Label Request (0x0401) | Message Length | |0| Label Request (0x0401) | Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID | | Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| FEC TLV | | FEC TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Diff-Serv TLV (optional) | | Diff-Serv TLV (optional) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Le Faucheur et. al 30 6.3.2 Label Mapping Message
MPLS Support of Diff-Serv February 00 Le Faucheur et. al 31
6.3.2 Label Mapping Message 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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID | | Message ID |
skipping to change at line 1726 skipping to change at line 1779
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| Notification (0x0001) | Message Length | |0| Notification (0x0001) | Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID | | Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Status TLV | | Status TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional Parameters |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Le Faucheur et. al 31 Le Faucheur et. al 32
MPLS Support of Diff-Serv February 00 MPLS Support of Diff-Serv March 00
| Optional Parameters |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 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.3.1 Handling of the Diff-Serv TLV in Downstream Unsolicited Mode
This section describes operations when the Downstream Unsolicited This section describes operations when the Downstream Unsolicited
Mode is used. Mode is used.
skipping to change at line 1783 skipping to change at line 1836
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
- a given EXP value appears in more than one MAP entry, or
Le Faucheur et. al 32 Le Faucheur et. al 33
MPLS Support of Diff-Serv February 00 MPLS Support of Diff-Serv March 00
- the MAPnb field is not within the range 1 to 8 decimal, or
- a given EXP value appears in more than one MAP entry, or
- 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 6.3.2 Handling of the Diff-Serv TLV in Downstream on Demand Mode
skipping to change at line 1840 skipping to change at line 1893
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
reject the request by sending a Notification message which includes
Le Faucheur et. al 33 Le Faucheur et. al 34
MPLS Support of Diff-Serv February 00 MPLS Support of Diff-Serv March 00
particular PHB encoded in one (or more) of the MAP entries, must
reject the request by sending a Notification message which includes
the Status TLV with a Status Code of `Unsupported PHB'. the Status TLV with a Status Code of `Unsupported PHB'.
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 decimal, 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
skipping to change at line 1895 skipping to change at line 1948
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
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. While
Le Faucheur et. al 34
MPLS Support of Diff-Serv February 00
sections 8, 9 and 10 focus on other media specific operations, sections 8, 9 and 10 focus on other media specific operations,
namely ATM, Frame Relay and LAN respectively. 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
skipping to change at line 1952 skipping to change at line 2004
8. MPLS Support of Diff-Serv by ATM LSRs 8. MPLS Support of Diff-Serv by ATM LSRs
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 ATM links.
This document allows the following set of LSP combinations per FEC This document allows the following set of LSP combinations per FEC
within an MPLS ATM Diff-Serv domain: within an MPLS ATM Diff-Serv domain:
Le Faucheur et. al 35
MPLS Support of Diff-Serv February 00
- any number of L-LSPs. - any number of L-LSPs.
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
scope of this specification. The only requirement for compliant scope of this specification. The only requirement for compliant
skipping to change at line 2009 skipping to change at line 2061
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 Frame Relay links.
This document allows the following set of LSP combinations per FEC This document allows the following set of LSP combinations per FEC
within an MPLS Frame Relay Diff-Serv domain: within an MPLS Frame Relay Diff-Serv domain:
- any number of L-LSPs. - any number of L-LSPs.
9.1 Merging 9.1 Merging
Le Faucheur et. al 36 Le Faucheur et. al 37
MPLS Support of Diff-Serv February 00 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
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
skipping to change at line 2063 skipping to change at line 2115
- 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.
Le Faucheur et. al 37
MPLS Support of Diff-Serv February 00
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
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.
skipping to change at line 2117 skipping to change at line 2170
ECN on this LSP) can make use of the full 3-bit EXP field for ECN on this LSP) can make use of the full 3-bit EXP field for
Diff-Serv purposes. Thus, non-ECN-capable E-LSPs and non-ECN- Diff-Serv purposes. Thus, non-ECN-capable E-LSPs and non-ECN-
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.
Le Faucheur et. al 38 Le Faucheur et. al 39
MPLS Support of Diff-Serv February 00
capable MPLS domain could still use the full 3-bit field EXP. 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
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
skipping to change at line 2174 skipping to change at line 2226
mapping is only operating over the last 2 bits of the 3-bit EXP mapping is only operating over the last 2 bits of the 3-bit EXP
field. Thus it has the following format: field. Thus it has the following format:
EXP Field PHB EXP Field PHB
e00 <-----> a given PHB e00 <-----> a given PHB
e01 <-----> a given PHB e01 <-----> a given PHB
e10 <-----> a given PHB e10 <-----> a given PHB
e11 <-----> a given PHB e11 <-----> a given PHB
Le Faucheur et. al 39
MPLS Support of Diff-Serv February 00
where `e' is the MPLS ECN bit and can take the value zero or one where `e' is the MPLS ECN bit and can take the value zero or one
depending on ECN operations. 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 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 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 and is the following:
EXP Field PSC PHB EXP Field PSC PHB
e00 DF -----> DF e00 DF -----> DF
e00 CSn -----> CSn e00 CSn -----> CSn
e00 AFn -----> AFn1 e00 AFn -----> AFn1
e01 AFn -----> AFn2 e01 AFn -----> AFn2
skipping to change at line 2228 skipping to change at line 2280
the EXP field. the EXP field.
12. Security Considerations 12. Security Considerations
This document does not introduce any new security issues beyond This document does not introduce any new security issues beyond
those inherent in Diff-Serv, MPLS and RSVP, and may use the same those inherent in Diff-Serv, MPLS and RSVP, and may use the same
mechanisms proposed for those technologies. mechanisms proposed for those technologies.
13. Acknowledgments 13. Acknowledgments
Le Faucheur et. al 40
MPLS Support of Diff-Serv February 00
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.
Le Faucheur et. al 41
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 less) BAs, no Traffic Engineering, no Fast
Reroute Reroute
skipping to change at line 2281 skipping to change at line 2333
Traffic Engineering and not performing protection via Fast Reroute Traffic Engineering and not performing protection via Fast Reroute
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 41 Le Faucheur et. al 42
MPLS Support of Diff-Serv February 00 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
skipping to change at line 2338 skipping to change at line 2390
Object), OR Object), OR
* 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 42 Le Faucheur et. al 43
MPLS Support of Diff-Serv February 00 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
skipping to change at line 2394 skipping to change at line 2446
LABEL_REQUEST), OR LABEL_REQUEST), OR
* using the CR-LDP protocol as specified above to * using the CR-LDP protocol as specified above to
signal that the LSP is an E-LSP which uses the preconfigured signal that the LSP is an E-LSP which uses the preconfigured
mapping (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 43 Le Faucheur et. al 44
MPLS Support of Diff-Serv February 00 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 less) 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
skipping to change at line 2451 skipping to change at line 2503
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 44 Le Faucheur et. al 45
MPLS Support of Diff-Serv February 00 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
B.1 Scenario 1: No Bandwidth Reservation
Consider the case where a network administrator elects to:
- have Diff-Serv resources entirely provisioned off-line (e.g. via
Command Line Interface, via SNMP, via COPS,...)
- have Shortest Path Routing used for all the Diff-Serv traffic.
This is the closest model to provisioned Diff-Serv over non-MPLS IP.
In that case, E-LSPs and/or L-LSPs would be established without
signaled bandwidth.
B.2 Scenario 2: Bandwidth Reservation for per-PSC Admission Control
Consider the case where a network administrator elects to:
- have Diff-Serv resources entirely provisioned off-line (e.g. via
Command Line Interface, via SNMP, via COPS,...)
- use L-LSPs
- have Constraint Based Routing performed separately for each PSC,
where one of the constraints is availability of bandwidth from
the bandwidth allocated to the relevant PSC.
In that case, L-LSPs would be established with signaled bandwidth.
The bandwidth signaled at L-LSP establishment would be used by LSRs
to perform admission control at every hop to ensure that the
constraint on availability of bandwidth for the relevant PSC is met.
B.3 Scenario 3: Bandwidth Reservation for per-PSC Admission Control and
per-PSC Resource Adjustment
Consider the case where a network administrator elects to:
- use L-LSPs
- have Constraint Based Routing performed separately for each PSC,
where one of the constraints is availability of bandwidth from
the bandwidth allocated to the relevant PSC.
- have Diff-Serv resources dynamically adjusted
In that case, L-LSPs would be established with signaled bandwidth.
The bandwidth signaled at L-LSP establishment would be used by LSRs
to attempt to adjust the resources allocated to the relevant PSC
(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
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-02.txt), April 1999
[MPLS FR] Conta et al., _Use of Label Switching on Frame Relay [MPLS FR] Conta et al., _Use of Label Switching on Frame Relay
skipping to change at line 2506 skipping to change at line 2609
[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-03.txt, September 1999
[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 [PHBID] Brim et al., "Per Hop Behavior Identification Codes
draft-ietf-diffserv-phbid-00.txt, October 99 draft-ietf-diffserv-phbid-00.txt, October 99
Le Faucheur et. al 45
MPLS Support of Diff-Serv February 00
[DIFF_NEW] Grossman, _New Terminology for Diffserv_, draft-ietf- [DIFF_NEW] Grossman, _New Terminology for Diffserv_, draft-ietf-
diffserv-new-terms-02.txt, November 99 diffserv-new-terms-02.txt, November 99
Le Faucheur et. al 47
MPLS Support of Diff-Serv March 00
[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)
Author's Addresses: Author's Addresses:
Francois Le Faucheur Francois Le Faucheur
Cisco Systems Cisco Systems
skipping to change at line 2561 skipping to change at line 2664
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
Le Faucheur et. al 46
MPLS Support of Diff-Serv February 00
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: pierrick.cheval@alcatel.fr E-mail:
pierrick.cheval@alcatel.fr
Juha Heinanen Juha Heinanen
Telia Finland Telia Finland
E-mail: jh@lohi.eng.telia.fi E-mail: jh@lohi.eng.telia.fi
Le Faucheur et. al 47 Le Faucheur et. al 49
 End of changes. 

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