One document matched: draft-lefaucheur-mpls-diff-ppp-00.txt
MPLS Support of Differentiated Services over PPP links
Status of this Memo
This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026. Internet-Drafts are
Working documents of the Internet Engineering Task Force (IETF), its
areas, and its working groups. Note that other groups may also
distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six
months and may be updated, replaced, or obsoleted by other documents
at any time. It is inappropriate to use Internet- Drafts as
reference material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
Abstract
This document proposes a flexible solution for MPLS to support
Differentiated Services (Diff-Serv) over PPP links.
This solution allows the service provider to flexibly define how
Diff-Serv Behavior Aggregates (BAs) are mapped onto LSPs so that
he/she can best match the Diff-Serv and Traffic Engineering
objectives within his/her particular network. For instance, this
solution allows the service provider to decide whether sets of BAs
are to be mapped onto the same LSP or mapped onto separate LSPs.
This solution relies on combined use of two types of LSPs:
- LSPs where the Behavior Aggregate's scheduling treatment is
inferred by the LSR from the packet's label value while the Behavior
Le Faucheur, et. al 1
MPLS Support of DiffServ over PPP June 99
Aggregate's drop precedence is indicated in the EXP field of the
MPLS PPP Header.
- LSPs where both the Behavior Aggregate's scheduling treatment
and drop precedence are conveyed to the LSR in the EXP field of the
MPLS PPP Header.
1. Introduction
In an MPLS domain [MPLS_ARCH], when a stream of data traverses a
common path, a Label Switched Path (LSP) can be established using
MPLS signaling protocols. At the ingress Label Switch Router (LSR),
each packet is assigned a label and is transmitted downstream. At
each LSR along the LSP, the label is used to forward the packet to
the next hop.
In a Differentiated Service (Diff-Serv) domain [DIFF_ARCH] all the
IP packets crossing a link and requiring the same Diff-Serv behavior
are said to constitute a Behavior Aggregate (BA). At the ingress
node of the Diff-Serv domain the packets are classified and marked
with a Diff-Serv Code Point (DSCP) which corresponds to their
Behavior Aggregate. At each transit node, the DSCP is used to select
the Per Hop Behavior (PHB) that determines the scheduling treatment
and, in some cases, drop probability for each packet.
This document proposes a solution for supporting the Diff-Serv
Behavior Aggregates whose corresponding PHBs are currently defined
(in [DIFF_HEADER], [DIFF_AF], [DIFF_EF]) over an MPLS network, where
LSRs are interconnected via PPP links.
As mentioned in [DIFF_HEADER], "Service providers are not required
to use the same node mechanisms or configurations to enable service
differentiation within their networks, and are free to configure the
node parameters in whatever way that is appropriate for their
service offerings and traffic engineering objectives". Thus, the
solution proposed in this document aims at allowing Service
Providers the flexibility to select how Diff-Serv classes of service
should be Routed or Traffic Engineered within their domain (eg.
separate classes of services supported via separate LSPs and
Routed separately, all classes of service supported on the same LSP
and Routed or Traffic Engineered together).
Beside, the solution proposed in this document aims at maximizing
label space usage and minimizing the volume of label set-up/tear-
down signaling where possible by only mandating set-up of multiple
LSPs for a given Forwarding Equivalent Class (FEC) [MPLS_ARCH] when
useful or required.
1.1. Ordering Constraints, "Scheduling Aggregate (SA)" and "Per Hop
Scheduling (PHS) "
[DIFF_AF] states that "a DS node does not reorder IP packets of the
same microflow if they belong to the same AF class" (even if
Le Faucheur et. al 2
MPLS Support of DiffServ over PPP June 99
different packets of the microflow contain different AF codepoints
of the same AF class).
For the sake of generality, we define a set of Behavior Aggregates
which share such an ordering constraint to constitute a "Scheduling
Aggregate_ (SA). The mechanisms described in this draft aim, in
particular, to preserve the correct ordering relationships for
packets that belong to a given SA.
We refer to the set of one or more PHBs applied to the set of
Behavior Aggregates forming a given SA, as a _Per Hop Scheduling_
(PHS).
The PHBs currently specified are Default PHB (DF), Class Selector
PHB group (CSx), Assured Forwarding PHB group (AFxy), Expedited
Forwarding PHB (EF).
1.1.1 DF PHS
The Default PHB is a single PHB specified in [DIFF_Header]. Thus,
the corresponding PHS comprises a single PHB and thus coincides with
the DF PHB.
1.1.2 CSn PHS
[DIFF_HEADER] defines up to 8 CS Codepoints referred to as CSn,
where 1 <= i <= 8. [DIFF_HEADER] states that "... PHBs selected by
distinct Class Selector Codepoints SHOULD be independently
forwarded; that is, packets marked with different Class Selector
Codepoints MAY be re-ordered". Thus, there is one PHS corresponding
to each CSn PHB. Each CSn PHS comprises a single PHB and thus
coincides with this CSn PHB.
1.1.3 AFCn PHS
As described in [DIFF_AF], the Assured Forwarding (AF) PHB group
provides forwarding of IP packets in N independent AF classes.
Within each AF class, an IP packet is assigned one of M different
levels of drop precedence. An IP packet that belongs to an AF class
i and has drop precedence j is marked with the AF codepoint AFij,
where 1 <= i <= N and 1 <= j <= M. Currently, four classes (N=4)
with three levels of drop precedence in each class (M=3) are
defined for general use.
[DIFF_AF] states that "a DS node does not reorder IP packets of the
same microflow if they belong to the same AF class" (even if
different packets of the microflow contain different AF codepoints
of the same AF class). As noted above, each AF class in the AF PHB
group is the primary example of a PHS. Each PHS comprises 3 PHBs and
coincides with the AF Class. Those PHSs are thus referred to as
AFCn, where 1 <= n <= 4.
Le Faucheur et. al 3
MPLS Support of DiffServ over PPP June 99
1.1.4 EF PHS
[DIFF_EF] defines the Expedited Forwarding (EF) PHB for traffic
requiring forwarding with low loss, low latency, low jitter.
[DIFF_EF] defines a single PHB. Thus, the corresponding PHS
comprises a single PHB and thus coincides with the DF PHB.
1.1.5 Summary list of PHS
The following PHSs have thus been identified:
- DF
- CSn , 1 <= i <= 8
- AFCn, 1 <= i <= 4
- EF
1.2 Label-Inferred-PHS LSPs (L-LSP)
We propose below, in section 2, a method for Diff-Serv over MPLS
over PPP where one LSP is established per <FEC, SA> pair between two
PPP LSR neighbours.
This method relies on explicit signaling of the PHS at label
establishment time so that, after label establishment, the LSR can
infer from the label value the PHS to be applied to a labeled
packets. Drop Precedence to be applied by the LSR to the labeled
packet is conveyed inside the packet MPLS Shim Header [MPLS_ENCAPS]
using the EXP field.
We refer to such LSPs as " Label-Inferred-PHS LSPs" (L-LSP).
Detailed Operation of L-LSPs is specified in section 2 below.
L-LSPs offer the following benefits:
- they support any number of Behavior Aggregates allowed by the
Diff-Serv architecture, and
- they support separate routing/traffic-engineering of PHSs.
L-LSPs have the following drawbacks:
- they require the use of separate LSPs for support of
different PHSs, and
- they require more signaling operations to set up these
L-LSPs.
1.3 EXP-Inferred-PHS LSPs (E-LSP)
We propose below, in section 3, a method where up to eight BAs can
be supported via a single LSP, regardless of how many SAs these BAs
span. In this method, the DSCP value get entirely mapped into the
EXP field of the MPLS Shim Header [MPLS_ENCAPS] at the Edge of the
MPLS PPP Cloud (thus encoding both drop precedence and
PHS/scheduling information). In other words, both PHS and Drop
Le Faucheur et. al 4
MPLS Support of DiffServ over PPP June 99
Precedence are conveyed in each labeled packet using the EXP field
of the MPLS Shim Header [MPLS_ENCAPS].
We refer to such LSPs as "EXP-inferred-PHS LSPs" (E-LSP). Detailed
Operation of E-LSPs is specified in section 3 below.
E-LSPs have the following benefits, where separate routing or
separate traffic-engineering of PHSs is not required:
- label space is conserved by "packing" up to eight BAs per
label (eg. when there are fewer than eight BAs in the network, this
method maintains the same label space as in a non Diff-Serv capable
network).
- label establishment signaling is reduced since a single LSP
is established for up to eight BAs (eg. when there are fewer than
eight BAs in the network, this method maintains the same level of
signaling as in a non-Diff-Serv capable network)
-the amount of forwarding state is reduced, as a single
forwarding entry can support up to 8 BAs.
- operation of Diff-Serv MPLS over E-LSPs is analogous to
operations of Diff-Serv in non-MPLS networks in the sense that the
Diff-Serv PHB is triggered exclusively by a field explicitly encoded
in every packet based on locally configured PHB mapping. This is
expected to facilitate migration from non-MPLS Diff-Serv to MPLS
Diff-Serv operations in some networks.
- some early implementations of E-LSPs exist today and
experiments have confirmed proper operations and usefulness.
E-LSPs have the following drawbacks:
- they only support up to eight BAs, and
- they do not allow routing/traffic-engineering of individual
PHSs.
1.4 Overall Approach
We propose a flexible solution for Diff-Serv support by MPLS over
PPP links where the Service Provider can use both E-LSPs and L-LSPs
in the combination that best match his/her environment and
objectives in terms of Diff-Serv support and Traffic Engineering.
For instance, a Service Provider who:
- supports fewer than eight BAs, and
- does not perform traffic engineering or performs aggregate
traffic engineering of all SAs jointly,
may use a single E-LSP per FEC.
A Service Provider who:
- performs traffic engineering of each SA separately
may use one L-LSP per <FEC,PHS>.
A Service Provider who
- supports more than eight BAs, and
Le Faucheur et. al 5
MPLS Support of DiffServ over PPP June 99
- does not perform traffic engineering or performs traffic
engineering of traffic aggregates where one traffic aggregate
comprises multiple SAs,
may use:
- a single E-LSP per FEC for supporting up to eight BAs (BAs
corresponding to SAs that can be traffic engineered jointly)
- one L-LSP per <FEC,PHS> for supporting other.
Those are just examples of how a Service Provider can use
combinations of E-LSPs and L-LSPs to best match his/her environment.
Clearly, other combinations could be used in the environments
described above and other environments can also be supported.
When selecting a combination of E-LSPs and L-LSPs to meet some
specific Traffic Engineering goals, it is important to note that:
- SAs supported by the same E-LSP can be Traffic Engineered
jointly. A path is selected for the BAs of all the supported SAs (eg
by Constraint Based Routing or by explicit configuration) and the
corresponding E-LSP is then established along that path via RSVP or
CR-LDP signaling;
- SAs supported by the same E-LSP CANNOT be Traffic Engineered
separately. Since the BAs of all the transported SAs are to be label
switched via the same LSP, all these SAs follow a single path;
- SAs supported by separate L-LSPs can be Traffic Engineered
separately. A path is selected independently for each SA (eg by
Constraint Based Routing or by explicit configuration) and the
corresponding L-LSPs are then established independently via RSVP or
CR-LDP signaling;
- SAs supported by separate L-LSPs can be Traffic Engineered
jointly. A path is selected for the aggregate of all the considered
SAs and the L-LSPs are then established independently along the same
common path via RSVP or CR-LDP signaling;
1.5 Explicit Congestion Notification
Explicit Congestion Notification is described in [ECN] and is
proposed as an Experimental extension to the IP protocol. Because
ECN is still at the Experimental stage and its impact and
interactions with Diff-Serv have not yet been specified, this
Internet-Draft does not discuss ECN operations. Support for
simultaneous Diff-Serv and ECN over MPLS is left for further study.
1.6 Label Forwarding Model for Diff-Serv LSRs
In order to describe Label Forwarding by Diff-Serv LSRs, we propose
to model a Diff-Serv label switching behavior as comprising three
stages:
-A- incoming PHB and FEC determination
-B- Optional outgoing PHB determination via Local Policy and
Traffic Conditioning
-C- Outgoing EXP field and label determination
Le Faucheur et. al 6
MPLS Support of DiffServ over PPP June 99
The Diff-Serv LSR SHALL apply the scheduling/dropping behavior
corresponding to the _Outgoing PHB_ in compliance with the
corresponding Diff-Serv PHB specification.
With such a model, we expect that "Diff-Serv over MPLS" label
forwarding can be specified (from the Diff-Serv viewpoint)
separately for each method (eg. Diff-Serv over MPLS over PPP using
L-LSPs, Diff-Serv over MPLS over PPP using E-LSPs, Diff-Serv over
MPLS over ATM/FR) by specifying -A- and -C- for the considered
method without having to specify the complete label switching
behavior (A+B+C) for every possible incoming/outgoing combination.
This model is used below for specifying LSR Label Forwarding over
PPP links using L-LSPs and E-LSPs for Diff-Serv support over MPLS.
2. Detailed Operation of L-LSPs
This section is based on [MPLS_DIFF_PPP].
2.1 L-LSP Establishment
Recognizing that:
- MPLS over PPP links requires the use of a Shim Header which
consists of a label stack with one or more entries [MPLS_ENCAPS];
- The Diff-Serv Code Point (DSCP) is 6-bit long [DIFF_HEADER], so
that when more than 8 BAs are used , the DSCP field can not be
mapped entirely into the 3-bit long EXP field of the MPLS label
stack entry;
- Some Service Providers have a requirement for fine grain
Traffic Engineering (such as per SA Traffic Engineering)
We propose that:
- All packets belonging to a single SA and the same Forwarding
Equivalent Class (FEC) be sent down a single LSP;
- One LSP be established per <FEC, SA> pair (rather than simply
one LSP per FEC as in an MPLS network that does not support Diff-
Serv). Such an LSP is referred to as a "Label-inferred-PHS" LSP or
"L-LSP";
- Multiple BAs belonging to the same SA be granted different Drop
Precedence (DP) values through appropriate coding of the EXP field
of the top label entry of the shim header.
MPLS specifies how LSPs can be established via multiple signaling
protocols. Those include the Label Distribution Protocol (LDP),
RSVP, BGP and PIM. This Internet-Draft proposes below, in section
Le Faucheur et. al 7
MPLS Support of DiffServ over PPP June 99
2.5, the required extensions to LDP and RSVP to allow establishment
of one L-LSP per <FEC, SA> pair over PPP MPLS.
2.2 Label Forwarding
2.2.1 Incoming PHB and FEC Determination On Ingress L-LSP
When receiving a labeled packet over an L-LSP of an MPLS PPP ingress
interface, the LSR:
- determines the FEC based on the incoming label
- determines the PHS from the incoming label among the set of
LSPs established for that FEC
- determines the incoming PHB from the PHS and the EXP field of
the top level label entry in accordance with the PHS/EXP-->PHB
mapping defined below in section 2.3.
If the EXP field value of a packet received on an L-LSP is such that
the PHS/EXP combination is not listed in the mapping of section 2.3,
this PHS/EXP combination should be considered invalid. LSR behavior
in such situation is a local matter and is outside the scope of this
document.
2.2.2 Optional Outgoing PHB Determination Via Local Policy And Traffic
Conditioning
This stage of Diff-Serv label switching is independent of the
ingress/egress interface media type and method used for MPLS Diff-
Serv support. It is optional and may be used on an LSR to perform
Behavior Aggregate demotion or promotion inside an MPLS Diff-Serv
domain. For the purpose of specifying a Diff-Serv over MPLS method,
we simply note that the PHB to be actually enforced by an LSR
(referred to as "outgoing PHB") may be different to the PHB which
had been associated with the packet at the previous LSR (referred to
as "incoming PHB").
2.2.3 Outgoing EXP Field and Label Determination on Egress L-LSP
Once the outgoing PHB has been determined by the LSR as a function
of the incoming PHB and of the optional Local Policy and Traffic
Conditioning, the LSR:
- determines via local configuration that the outgoing PHB is
one of the PHBs supported by a L-LSP and determines the egress
L-LSP label for the packet's FEC
- determines the value to be written in the EXP field of the
top level label entry (and possibly of other level label entries in
the case of a hierarchical tunnel entry) by performing the outgoing
PHB-->EXP/PHS mapping defined below in section 2.4.
2.2.4 Simplified Forwarding
Le Faucheur et. al 8
MPLS Support of DiffServ over PPP June 99
When Local Policy and Traffic Conditioning are not to be performed
by the LSR, and when the labeled packet is received on a L-LSP PPP
interface and is going out onto a L-LSP PPP interface, the
Forwarding operation is simplified since:
- the EXP field does not need to be modified
- the outgoing label can be directly determined from the
incoming label (ie as in non Diff-Serv capable LSRs)
2.3 PHS/EXP --> PHB Mapping
The mapping from L-LSP PHS and from EXP field of the shim header
into PHBs is as follows:
EXP Field PHS PHB
000 DF -----> DF
000 CSn -----> CSn
000 AFCn -----> AFn1
001 AFCn -----> AFn2
010 AFCn -----> AFn3
000 EF -----> EF
2.4 PHB --> PHS/EXP Mapping
The mapping from PHBs into the L-LSP PHS and the EXP field of the
shim header is as follows:
PHB EXP Field PHS
DF -----> 000 DF
CSn -----> 000 CSn
AFn1 -----> 000 AFCn
AFn2 -----> 001 AFCn
AFn3 -----> 010 AFCn
EF -----> 000 EF
2.5 L-LSP Establishment and Message Format
2.5.1 Signaling extension during L-LSP establishment
To support Diff-Serv in MPLS over PPP using L-LSPs, the PHS must be
signaled at label establishment time in the MPLS label request
messages and MPLS label binding messages. The detailed format of the
corresponding message extension is described below when the
signaling protocol used is LDP or RSVP. The MPLS control application
on each LSR along the L-LSP will process the new PHS attribute and
install the corresponding scheduling behavior for that LSP (eg. map
the LSP into an output queue associated with the PHS).
Le Faucheur et. al 9
MPLS Support of DiffServ over PPP June 99
2.5.2 Merging
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 over PPP is
compatible with LSP Merging under the following condition:
L-LSPs can only be merged into one L-LSP if they are associated with
the same PHS.
Note that when L-LSPs merge, the bandwidth that is available for the
PHS downstream of the merge point must be sufficient to carry the
sum of the merged traffic. This is particularly important in the
case of EF traffic.
2.5.3 New RSVP Object Format
This section defines a new RSVP object class and a new RSVP object
within that class for support of Diff-Serv in MPLS over PPP when
L-LSPs are established via RSVP [MPLS_RSVP].
The new object Class is defined as the "Class Of Service" Class (COS
Class). Its Class-Num is [TBD].
The new RSVP DIFFSERV_PHS object is defined within the COS Class to
carry the PHS of the traffic to be transported on the corresponding
LSP. Its C-Type is 1.
As described in [MPLS_RSVP], bandwidth information may also be
signaled at LSP establishment time, for the purpose of Traffic
Engineering, using the SENDER_TSPEC Object (in the Path message) and
the FLOWSPEC Object (in the Resv message).
DIFFSERV_PHS object Class = [TBD], C-Type = 1
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Length = 4 | Class-Num | C-Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | PHS |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
We propose that the 16-bit PHS be encoded as specified in section 2
of [PHBID]. In particular, we propose that the encoding for a PHS be
the smallest numerical value of the encodings for the various PHBs
in the PHS. In turn, the encoding of a single PHB defined by
standards action is the recommended DSCP value for this PHB, left-
justified in the 16 bit field, with bits 6 through 15 set to zero.
Le Faucheur et. al 10
MPLS Support of DiffServ over PPP June 99
For instance, the encoding of the AFC1 PHS is the encoding of the
AF11 PHB.
This object may be carried in a PATH message that contains the
LABEL_REQUEST object to indicate the PHS for which a label is
required. The object may also be carried in a RESV message that
contains a LABEL object indicating the PHS for which the label is to
be used.
2.5.4 New LDP TLV
This section defines a new LDP TLV necessary for support of Diff-
Serv in MPLS over PPP when L-LSPs are established via LDP
[MPLS_LDP]. We define a new PHS TLV to signal the PHS in a label
request or label binding as follows:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|U|F| Type = PHS | Length = 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PHS |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The Type of the TLV is [TBD].
Encoding of the PHS field is the same as encoding of the PHS in
RSVP, as specified in 2.5.3.
We propose that the COS TLV which was specified in [LDP_03] (and
removed in later version of the LDP specifications) be
reincorporated into LDP and used to encode the PHS TLV as a nested
TLV (ie encode the PHS TLV in the COS value of the COS TLV).
Encoding the PHS TLV as a nested TLV of the COS TLV is proposed for
flexibility so that if additional TLVs need to be defined in the
future for support of Diff-Serv over MPLS, those TLVs could be
logically grouped inside the COS TLV.
Alternatively, the PHS TLV could be included in the LDP messages as
an independent TLV (ie not nested in the COS TLV).
As described in [MPLS_CR_LDP], bandwidth information may also be
signaled at LSP establishment time, for the purpose of Traffic
Engineering, using the Traffic Parameters TLV.
3 Detailed Operations of E-LSPs
3.1 E-LSP establishment
Recognizing that:
Le Faucheur et. al 11
MPLS Support of DiffServ over PPP June 99
- MPLS over PPP links requires the use of a Shim Header which
consists of a label stack with one or more entries [MPLS_ENCAPS];
- The Diff-Serv Code Point (DSCP) is 6-bit long [DIFF_HEADER] but
when 8 (or less) BAs are used, the DSCP values can be mapped
entirely into the 3-bit long EXP field of the MPLS label stack
entry;
- Some Service Providers do not have requirements for fine
grain Traffic Engineering and want to traffic engineer all/multiple
SAs jointly.
We propose that:
- One LSP be established per Forwarding Equivalent Class (FEC)
for transport of up to eight BAs of that FEC;
- all packets belonging to the same (FEC) and from the set of up
to eight BAs (which can span multiple SAs) be sent down this LSP.
Such an LSP is referred to as an "EXP-inferred-PHS" LSP or _E-LSP_;
- Multiple BAs belonging to the same FEC and transported over the
same E-LSP be granted different scheduling treatment and different
drop precedence by the PPP MPLS LSR based on the EXP field which is
appropriately encoded at label imposition time to reflect both the
PHS and the drop precedence of the PHB corresponding to the packet's
BA.
MPLS specifies how LSPs can be established via multiple signaling
protocols. Those include the Label Distribution Protocol (LDP),
RSVP, BGP and PIM. This Internet-Draft specifies below, in section
3.5, how LDP and RSVP are to be used for establishment of an E-LSP
over a PPP link for support of up to eight BAs.
3.2 Label Forwarding
3.2.1 Incoming PHB and FEC Determination On Ingress E-LSP
When receiving a labelled packet over a E-LSP of an MPLS PPP ingress
interface, the LSR:
- determines the FEC based on the incoming label
- determines the incoming PHB by looking at the EXP field of
the top level label entry and performing the EXP-->PHB mapping
defined below in section 3.4.
If the EXP field value of a packet received on an E-LSP is not
listed in the mapping of section 2.3, this EXP value should be
considered invalid. LSR behavior in such situation is a local matter
and is outside the scope of this document.
Le Faucheur et. al 12
MPLS Support of DiffServ over PPP June 99
3.2.2 Optional Outgoing PHB Determination Via Local Policy And Traffic
Conditioning
This stage of Diff-Serv label switching is independent of the
ingress/egress interface media type and method used for MPLS Diff-
Serv support. It is optional and may be used on an LSR to perform
Behavior Aggregate demotion or Promotion inside an MPLS Diff-Serv
domain. For the purpose of specifying a Diff-Serv over MPLS method,
we simply note that the PHB to be actually enforced by an LSR
(referred to as "outgoing PHB") may be different to the PHB which
had been associated with the packet by the previous LSR (referred to
as "incoming PHB").
3.2.3 Outgoing EXP Field And Label Determination On Egress E-LSP
Once the outgoing PHB has been determined by the LSR as a function
of the incoming PHB and of the optional Local Policy and Traffic
Conditioning, the LSR:
- determines via local configuration that the outgoing PHB is
one of the PHBs supported by the E-LSP and determines the egress E-
LSP label for the packet's FEC
- determines the value to be written in the EXP field of the
top level label entry (and possibly of other level label entries in
the case of a hierarchical tunnel entry) by performing the outgoing
PHB-->EXP mapping defined below in section 3.3.
3.2.4 Simplified Forwarding
When Local Policy and Traffic Conditioning are not to be performed
by the LSR and the labeled packet is received on a E-LSP PPP
interface and is going out onto a E-LSP PPP interface, the
Forwarding operation is simplified since:
- the EXP field does not need to be modified
- the outgoing label can be directly determined from the
incoming label (ie as in non Diff-Serv capable LSRs)
3.3 PHB-->EXP field mapping
Like the mapping between PHBs and DSCPs in a Diff-Serv network, the
mapping from PHB to EXP field is a local matter to be defined by the
Service Provider and configured on every LSR. The requirements on
this mapping are that:
- each of the eight (or less) PHBs to be supported over the E-
LSP must map to a different encoding of the 3-bit EXP field (so the
mapping can be inverted back from EXP field to PHB at egress)
- the mapping must be consistent at every PPP LSP hop
throughout the Diff-Serv domain spanned by the LSP
3.4 EXP-->PHB mapping
Similarly the mapping from EXP field to PHB is a local matter. The
requirement on this mapping is that:
Le Faucheur et. al 13
MPLS Support of DiffServ over PPP June 99
- it must be the exact inverse of the PHB to EXP field mapping
- it must be consistent at every PPP LSP hop throughout the
Diff-Serv domain spanned by the LSP
3.5 Signalling During E-LSP establishment
To support Diff-Serv in MPLS over PPP using E-LSPs, the fact that
the LSP is a E-LSP must be conveyed in the MPLS label request
messages and MPLS label binding messages. The method to achieve this
is described below when the signaling protocol used is RSVP or LDP.
The MPLS control application on each PPP LSR along the E-LSP will
notice that the LSP is a E-LSP and install the corresponding
scheduling and drop behavior for that LSP based on the EXP<-->PHB
mapping locally configured for E-LSP operations.
3.5.1 Merging
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 over PPP using E-
LSPs is compatible with LSP Merging under the following condition:
E-LSPs can only be merged into one LSP if they support the exact
same set of BAs.
3.5.2 RSVP Signaling for E-LSPs
A new DIFFSERV_PHS RSVP Object has been defined above in section
2.5.3 to explicitly signal that an LSP is a L-LSP and to indicate
the PHS associated with the L-LSP.
We propose that no new RSVP Object be defined for E-LSPs. Rather, we
propose that the fact that the LSP is an E-LSP be implicitly
conveyed by the absence of DIFFSERV_PHS RSVP Object in a PATH
message containing a LABEL_REQUEST Object and in a RESV message
containing the LABEL Object.
3.5.3 LDP Signaling for E-LSPs
A new PHS TLV has been defined above in section 2.5.4 to explicitly
signal that an LSP is an L-LSP and to indicate the PHS associated
with the LSP.
We propose that no new LDP TLV be defined for E-LSPs. Rather, we
propose that the fact that the LSP is an E-LSP be implicitly
conveyed by the absence of PHS TLV in a label request or label
binding message.
4. Example Deployment Scenarios
This section does not provide additional specification of the
proposed approach and is only here to provide examples of how this
Le Faucheur et. al 14
MPLS Support of DiffServ over PPP June 99
flexible approach for Diff-Serv support over MPLS over PPP may be
deployed. Pros and cons of various deployment options for particular
environments are beyond the scope of this document.
4.1 Scenario 1: 8 BAs, no Traffic Engineering
A Service Provider running 8 (or less) BAs and not performing
Traffic engineering in his/her network may elect to run Diff-Serv
over MPLS over PPP links using a single E-LSP per FEC established
via LDP.
Operations can be summarized as follows:
- the Service Provider configures at every PPP LSR the bi-
directional mapping between each PHB and a value of the EXP field
- PPP LSRs signal establishment of a single E-LSP per FEC using
LDP in accordance with section 3.5.3 above (ie no PHS TLV in LDP
label request and label binding messages to implicitly indicate that
the LSP is a E-LSP)
4.2 Scenario 2: 8 BAs, no Traffic Engineering
A Service Provider running 8 (or less) BAs and not performing
Traffic engineering in his/her network may alternatively elect to
run Diff-Serv over MPLS over PPP links using one L-LSP per <FEC,SA>
established via LDP.
Operations can be summarised as follows:
- the Service Provider configures on every PPP LSR the
parameters pertaining to the scheduling behavior that should be
installed for the L-LSP by the control application for each PHS
- PPP LSRs signal establishment of one L-LSP per <FEC,SA> using
the LDP protocol and the LDP extension defined in section 2.5.4
above to signal the L-LSP PHS (ie PHS TLV in LDP label request and
label binding messages).
4.3 Scenario 3: 8 BAs, Aggregate Traffic Engineering
A Service Provider running 8 (or less) BAs and performing aggregate
Traffic Engineering (ie performing a single common path selection
for all BAs) in his/her network may elect to run Diff-Serv over MPLS
over PPP links using a single E-LSP per FEC established via RSVP
[RSVP_MPLS_TE] or CR-LDP [CR-LDP_MPLS_TE].
Operations can be summarized as follows:
- the Service Provider configures at every PPP LSR the
bidirectional mapping between each PHB and a value of the EXP field
- PPP LSRs signal establishment of a single E-LSP per FEC using
:
* the RSVP protocol in accordance with section 3.5.2 above
(ie no DIFFSERV_PHS RSVP Object in the PATH message containing the
LABEL_REQUEST Object and in the RESV message containing the LABEL
Object), OR
Le Faucheur et. al 15
MPLS Support of DiffServ over PPP June 99
* using the CR-LDP protocol in accordance with section
2.5.3 above (ie no PHS TLV in LDP label request and label binding
messages).
4.3 Scenario 3: per-SA Traffic Engineering
Regardless of the number of BAs supported, a Service Provider
performing per-SA Traffic Engineering (ie performing a separate path
selection for each SA) in his/her network MUST run Diff-Serv over
MPLS over PPP links using one L-LSP per <FEC,SA> pair established
via RSVP [RSVP_MPLS_TE] or CR-LDP [CR-LDP_MPLS_TE].
Operations can be summarised as follows:
- the Service Provider configures on every PPP LSR the
parameters pertaining to the scheduling behavior that should be
installed for the L-LSP by the control application for each PHS
- PPP LSRs signal establishment of one L-LSP per <FEC,SA>
using:
* the RSVP protocol and the RSVP extension defined in
section 2.5.3 above to signal the L-LSP (ie DIFFSERV_PHS RSVP Object
in the PATH message containing the LABEL_REQUEST Object and in the
RESV message containing the LABEL Object), OR
* using the CR-LDP protocol and the LDP extension
defined in section 2.5.4 above to signal the L-LSP PHS (ie PHS TLV
in LDP label request and label binding messages).
4.4 Scenario 4: More than 8 BAs, no Traffic Engineering
A Service Provider running more than 8 BAs and not performing
Traffic Engineering in his/her network may elect to run Diff-Serv
over MPLS over PPP links using one L-LSP per <FEC,SA> pair
established via LDP.
Operations can be summarised as follows:
- the Service Provider configures on every PPP LSR the
parameters pertaining to the scheduling behavior that should be
installed for the L-LSP by the control application for each PHS
- PPP LSRs signal establishment of one L-LSP per <FEC,SA> using
the LDP protocol and the LDP extension defined in section 2.5.4
above to signal the L-LSP PHS (ie PHS TLV in LDP label request and
label binding messages).
4.5 Scenario 5: no Traffic Engineering on 8 BAs, per-SA Traffic
Aggregate on other BAs.
A Service Provider not performing Traffic Engineering on 8 (or less)
BAs and performing per-SA Traffic Engineering on the other BAs (ie
performing a separate path selection for each SA corresponding to
the other BAs) in his/her network may elect to run Diff-Serv over
MPLS over PPP links, using for each FEC:
- one E-LSP established via LDP to support the set of 8 (or
less) non-traffic engineered BAs,
Le Faucheur et. al 16
MPLS Support of DiffServ over PPP June 99
AND
- one L-LSP per <FEC,SA> pair established via RSVP
[RSVP_MPLS_TE] or CR-LDP [CR-LDP_MPLS_TE] for support of the other
BAs.
Operations can be summarised as follows:
- the Service Provider configures at every PPP LSR the bi-
directional mapping between each PHB of the non-traffic-engineered
BAs (supported by the E-LSP) and a value of the EXP field
- the Service Provider configures on every PPP LSR the
parameters pertaining to the scheduling behavior that should be
installed for the L-LSP by the control application for each PHS
- PPP LSRs signal establishment of a single E-LSP per FEC for
the non-traffic engineered BAs using LDP in accordance with section
3.5.3 above (ie no PHS TLV in LDP label request and label binding
messages to implicitly indicate that the LSP is a E-LSP)
- PPP LSRs signal establishment of one L-LSP per <FEC,SA> for
the traffic engineered BAs using:
* the RSVP protocol and the RSVP extension defined in
section 2.5.3 above to signal the L-LSP (ie DIFFSERV_PHS RSVP Object
in the PATH message containing the LABEL_REQUEST Object and in the
RESV message containing the LABEL Object), OR
* using the CR-LDP protocol and the LDP extension
defined in section 2.5.4 above to signal the L-LSP PHS (ie PHS TLV
in LDP label request and label binding messages).
5. Security Considerations
This document does not introduce any new security issues beyond
those inherent in Diff-Serv, MPLS and RSVP, and may use the same
mechanisms proposed for those technologies.
6. Acknowledgments
This document has benefited from discussions with Dan Tappan, Yakov
Rekhter, George Swallow, Kathleen Nichols and Brian Carpenter.
7. References
[MPLS_ARCH] Rosen et al., "Multiprotocol label switching
Architecture", work in progress, (draft-ietf-mpls-arch-04.txt),
February 1999.
[DIFF_ARCH] Blake et al., "An architecture for Differentiated
Services", RFC-2475, December 1998.
[MPLS_DIFF_PPP] Davari et al., "MPLS Support of Differentiated
Services over PPP links", draft-davari-mpls-diff-ppp-00.txt, April
99.
Le Faucheur et. al 17
MPLS Support of DiffServ over PPP June 99
[DIFF_AF] Heinanen et al., "Assured Forwarding PHB Group", RFC-2597,
June 1999.
[DIFF_EF] Heinanen et al., "An Expedited Forwarding PHB", RFC-2598,
June 1999.
[MPLS_ENCAPS] Rosen et al., "MPLS Label Stack Encoding", work in
progress, (draft-ietf-mpls-label-encaps-03.txt), September 1998.
[DIFF_HEADER] Nichols et al., "Definition of the Differentiated
Services Field (DS Field) in the IPv4 and IPv6 Headers", RFC-2474,
December 1998.
[ECN] Ramakrishnan et al., "A Proposal to add Explicit Congestion
Notification (ECN) to IP", RFC-2481, January 1999.
[LDP_03] Andersson et al., "LDP Specification", draft-ietf-mpls-ldp-
03.txt, January 99
[LDP_04] Andersson et al., "LDP Specification", draft-ietf-mpls-ldp-
04.txt, April 99
[RSVP_MPLS_TE] Awduche et al, "Extensions to RSVP for LSP Tunnels",
draft-ietf-mpls-rsvp-lsp-tunnel-02.txt, March 1999
[CR-LDP_MPLS_TE] Jamoussi et al., "Constraint-Based LSP Setup using
LDP", draft-ietf-mpls-cr-ldp-01.txt, February 1999
[PHBID] Brim and Carpenter, "Per Hop Behavior Identification Codes",
draft-brim-diffserv-phbid-00.txt, April 99
Author's Addresses:
Francois Le Faucheur
Cisco Systems
Petra B - Les Lucioles - 291, rue Albert Caquot - 06560 Valbonne -
France
Phone: +33 4 92 96 75 64
Email: flefauch@cisco.com
Shahram Davari
PMC-Sierra Inc.
105-8555 Baxter Place
Burnaby, BC V5A 4V7
Canada
E-mail: Shahram_Davari@pmc-sierra.com
Ram Krishnan
Nexabit Networks
200 Nickerson Road,
Marlboro, MA 01752
Le Faucheur et. al 18
MPLS Support of DiffServ over PPP June 99
USA
E-mail: ram@nexabit.com
Pasi Vanannen
Nokia
3 Burlington Woods Drive, Suit 250
Burlington, MA 01803
USA
Email: pasi.vaananen@ntc.nokia.com
Bruce Davie
Cisco Systems
250 Apollo Drive, Chelmsford, MA 01824, USA
Phone: (978)-244-8000
Email: bsd@cisco.com
Le Faucheur et. al 19
| PAFTECH AB 2003-2026 | 2026-04-23 08:52:42 |