< draft-wu-pce-traffic-steering-sfc-07.txt   draft-wu-pce-traffic-steering-sfc-08.txt >
PCE Working Group Q. Wu PCE Working Group Q. Wu
Internet-Draft D. Dhody Internet-Draft D. Dhody
Intended status: Standards Track Huawei Intended status: Standards Track Huawei
Expires: January 1, 2016 M. Boucadair Expires: September 8, 2016 M. Boucadair
C. Jacquenet C. Jacquenet
France Telecom Orange
J. Tantsura J. Tantsura
Ericsson Ericsson
June 30, 2015 March 7, 2016
PCEP Extensions for traffic steering support in Service Function PCEP Extensions for Service Function Chaining (SFC)
Chaining draft-wu-pce-traffic-steering-sfc-08
draft-wu-pce-traffic-steering-sfc-07
Abstract Abstract
This document provides an overview of the usage of Path Computation This document provides an overview of the usage of Path Computation
Element (PCE) with Service Function Chaining (SFC); which is Element (PCE) to dynamically structure service function chains.
described as the definition and instantiation of an ordered set of Service Function Chaining (SFC) is a technique that is meant to
such service functions (such as firewalls, load balancers), and the facilitate the dynamic enforcement of differentiated traffic
subsequent "steering" of traffic flows through those service forwarding policies within a domain. Service function chains are
functions. composed of an ordered set of elementary Service Functions (such as
firewalls, load balancers) that need to be invoked according to the
design of a given service. Corresponding traffic is thus forwarded
along a Service Function Path (SFP) that can be computed by means of
PCE.
This document specifies extensions to the Path Computation Element This document specifies extensions to the Path Computation Element
Protocol (PCEP) that allow a stateful PCE to compute and instantiate Protocol (PCEP) that allow a stateful PCE to compute and instantiate
Service Function Paths (SFP). Service Function Paths.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on January 1, 2016. This Internet-Draft will expire on September 8, 2016.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Conventions used in this document . . . . . . . . . . . . . . 3 2. Conventions used in this document . . . . . . . . . . . . . . 3
3. Service Function Paths and PCE . . . . . . . . . . . . . . . 3 3. Service Function Paths and PCE . . . . . . . . . . . . . . . 4
4. Overview of PCEP Operation in SFC-enabled Networks . . . . . 5 4. Overview of PCEP Operation in SFC-Enabled Networks . . . . . 5
4.1. SFP Instantiation . . . . . . . . . . . . . . . . . . . . 6 4.1. SFP Instantiation . . . . . . . . . . . . . . . . . . . . 6
4.2. SFP Withdrawal . . . . . . . . . . . . . . . . . . . . . 6 4.2. SFP Withdrawal . . . . . . . . . . . . . . . . . . . . . 6
4.3. SFP Delegation and Cleanup . . . . . . . . . . . . . . . 6 4.3. SFP Delegation and Cleanup . . . . . . . . . . . . . . . 6
4.4. SFP State Synchronization . . . . . . . . . . . . . . . . 6 4.4. SFP State Synchronization . . . . . . . . . . . . . . . . 6
4.5. SFP Update and Report . . . . . . . . . . . . . . . . . . 6 4.5. SFP Update and Report . . . . . . . . . . . . . . . . . . 6
5. Object Formats . . . . . . . . . . . . . . . . . . . . . . . 7 5. Object Formats . . . . . . . . . . . . . . . . . . . . . . . 7
5.1. The OPEN Object . . . . . . . . . . . . . . . . . . . . . 7 5.1. The OPEN Object . . . . . . . . . . . . . . . . . . . . . 7
5.2. The LSP Object . . . . . . . . . . . . . . . . . . . . . 7 5.2. The LSP Object . . . . . . . . . . . . . . . . . . . . . 7
5.2.1. SFP Identifiers TLV . . . . . . . . . . . . . . . . . 8 5.2.1. SFP Identifiers TLV . . . . . . . . . . . . . . . . . 8
6. Backward Compatibility . . . . . . . . . . . . . . . . . . . 9 6. Backward Compatibility . . . . . . . . . . . . . . . . . . . 9
7. SFP signaling and forwarding consideration . . . . . . . . . 9 7. SFP Signaling and Forwarding Considerations . . . . . . . . . 9
8. Security Considerations . . . . . . . . . . . . . . . . . . . 9 8. Security Considerations . . . . . . . . . . . . . . . . . . . 9
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 9
11.1. Normative References . . . . . . . . . . . . . . . . . . 9 11.1. Normative References . . . . . . . . . . . . . . . . . . 10
11.2. Informative References . . . . . . . . . . . . . . . . . 10 11.2. Informative References . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11
1. Introduction 1. Introduction
Service chaining enables the creation of composite services that Service Function Chaining (SFC) enables the creation of composite
consist of an ordered set of Service Functions (SF) that must be services that consist of an ordered set of Service Functions (SF)
applied to packets and/or frames selected as a result of that must be applied to packets and/or frames and/or flows selected
classification as described in [I-D.ietf-sfc-architecture] and as a result of service-inferred traffic classification as described
referred to as Service Function Chain (SFC). A Service Function Path in [RFC7665]. A Service Function Path (SFP) is a path along which
(SFP) is the instantiation of a SFC in the network. Packets follow a traffic that is bound to a specific service function chain will be
Service Function Path from a classifier through the requisite Service forwarded. Packets typically follow a Service Function Path from a
Functions (SF) and Service Function Forwarders (SFF). classifier through the Service Functions (SF) that need to be invoked
according to the SFC instructions. Forwarding decisions are made by
Service Function Forwarders (SFF) according to such instructions.
[RFC5440] describes the Path Computation Element Protocol (PCEP) as [RFC5440] describes the Path Computation Element Protocol (PCEP) as
the communication between a Path Computation Client (PCC) and a Path the protocol used by a Path Computation Client (PCC) and a Path
Control Element (PCE), or between PCE and PCE, enabling computation Control Element (PCE) to exchange information, thereby enabling the
of Multiprotocol Label Switching (MPLS) for Traffic Engineering Label computation of Multiprotocol Label Switching (MPLS) for Traffic
Switched Path (TE LSP). Engineering Label Switched Path (TE LSP), in particular.
[I-D.ietf-pce-stateful-pce] specifies extensions to PCEP to enable [I-D.ietf-pce-stateful-pce] specifies extensions to PCEP to enable a
stateful control of MPLS TE LSPs. [I-D.ietf-pce-pce-initiated-lsp] stateful control of MPLS TE LSPs. [I-D.ietf-pce-pce-initiated-lsp]
provides the fundamental extensions needed for stateful PCE-initiated provides the extensions needed for stateful PCE-initiated LSP
LSP instantiation. instantiation.
This document specifies extensions to the PCEP that allow a stateful This document specifies PCEP extensions that allow a stateful PCE to
PCE to compute and instantiate Service Function Paths (SFP). compute and instantiate traffic-engineered Service Function Paths
(SFP).
2. Conventions used in this document 2. Conventions used in this document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC2119 [RFC2119]. document are to be interpreted as described in RFC2119 [RFC2119].
The following terminologies are used in this document: This document makes use of these acronyms:
PCC: Path Computation Client. PCC: Path Computation Client.
PCE: Path Computation Element. PCE: Path Computation Element.
PCEP: Path Computation Element Protocol. PCEP: Path Computation Element Protocol.
PDP: Policy Decision Point. PDP: Policy Decision Point.
SF: Service Function. SF: Service Function.
SFC: Service Function Chain. SFC: Service Function Chain.
SFP: Service Function Path. SFP: Service Function Path.
SFF: Service Forwarder Function. RSP: Rendered Service Path.
SFF: Service Function Forwarder.
UNI: User-Network Interface. UNI: User-Network Interface.
3. Service Function Paths and PCE 3. Service Function Paths and PCE
Services are constructed as a sequence of SFs that represent an SFC, Service function chains are constructed as a sequence of SFs, where a
where a SF can be a virtual instance or be embedded in a physical SF can be virtualized or embedded in a physical network element. One
network element, and one or more SFs may be supported by the same or several SFs may be supported by the same physical network element.
physical network element. A SFC creates an abstracted view of a A SFC creates an abstracted view of a service and specifies the set
service and specifies the set of required SFs as well as the order in of required SFs as well as the order in which they must be executed.
which they must be executed.
When an SFC is instantiated into the network it is necessary to When an SFC is created, it is necessary to select the specific
select the specific instances of SFs that will be used, and to create instances of SFs that will be used. A service function path for that
the service function path for that SFC using SF network locators. SFC will then be established (notion of rendered service path) or can
Thus, the instantiation of a SFC results in the establishment of a be precomputed, based upon the sequence of SFs that need to be
Service Function Path, either a la hop-by-hop through the ordered invoked by the corresponding traffic, i.e., the traffic that is bound
sequence of SF functions, or in a pre-computed, traffic-engineered to the corresponding SFC. Note that a SF instance can be serviced by
fashion. In other words, an SFP is the instantiation of the defined one or multiple SFFs. One or multiple SF instances can be serviced
SFC as described in [I-D.ietf-sfc-architecture]. by one SFF. Thus, the instantiation of an SFC results in the
establishment of a Service Function Path, either in a hop-by-hop
fashion, or by means of traffic-engineering capabilities. In the
latter case, the SFP is precomputed, i.e., an SFP is an instantiation
of the defined SFC as described in [RFC7665].
The selection of SFP can be based on a set of policy attributes The computation, the selection, and the establishment of a traffic-
engineered SFP can rely upon a set of (service-specific) policies
(forwarding and routing, QoS, security, etc., or a combination (forwarding and routing, QoS, security, etc., or a combination
thereof), ranging from simple to more elaborate selection criteria thereof). Stateful PCE with appropriate SFC-aware PCEP extensions
and the use of stateful PCE with extensions to PCEP are one such way can be used to compute traffic-engineered SFPs.
to achieve this.
Stateful pce [I-D.ietf-pce-stateful-pce] specifies a set of
extensions to PCEP to enable stateful control of TE LSPs.
[I-D.ietf-pce-pce-initiated-lsp] provides the fundamental motivations
and extensions needed for stateful PCE-initiated LSP instantiation.
This document specifies extensions that allow a stateful PCE to
compute and instantiate Service Function Paths (SFP) via PCEP.
SFC Control Element
+------------------------+ +------------------------+
| stateful PCE | | stateful PCE |
| +-------+ +-------+ | | +-------+ +-------+ |
| |Policy | | TE-DB | | +-------+ | |Policy | | TE-DB | |
| +-------+ +-------+ | | SFC | | +-------+ +-------+ |
+----------| +-------------+ |<---|control| +----------| +-------------+ |
|SFP | |LSP-DB/SFP-DB| | | plane | |SFP | |LSP-DB/SFP-DB| |
|Instan- | +-------------+ | +-------+ |Instan- | +-------------+ |
|tiation +------------------------+ |tiation +------------------------+
| +-----+ +-----+ +-----+ | +-----+ +-----+ +-----+
| |SF-1 | |SF-2 | |SF-3 | | |SF-1 | |SF-2 | |SF-3 |
| | | | | | | | | | | | | |
| +---+-+ +-+---+ +--+--+ | +---+-+ +-+---+ +--+--+
| | | | | | | |
| ++-----++ +----+--+ | ++-----++ +----+--+
V | | | | V | | | |
+-----+ Signaling | | Signaling | | Signaling +-----+ Signaling | | Signaling | | Signaling
| SF |----------->| SFF-1 | --------->| SFF-2 |-----------> | SFC |----------->| SFF-1 | --------->| SFF-2 |----------->
Classifier | | | | Classifier | | | |
|Node | | | | | | | | | | |
+-----+ +-------+ +-------+ +-----+ +-------+ +-------+
Figure 1: PCE based SFP instantiation Figure 1: PCE-based SFP instantiation
SFC Control plane components are responsible for maintaining SFC The SFC Control Element [I-D.ietf-sfc-control-plane] is responsible
Policy Tables and enforcing appropriate policies in SF Classifier and for defining service instructions to bind a flow to a service
SFF Nodes as described in function chain and forward such flow along the corresponding SFP. It
[I-D.ietf-sfc-architecture][I-D.ww-sfc-control-plane]. The SFC is also responsible for defining the appropriate policies (traffic
Control plane component can be seen as a policy Decision point classification, forwarding and routing, etc.) that will be enforced
(PDP,[RFC5394]). Such PDP can then operates a stateful PCE and its by SFC Classifiers and SFF Nodes as described in [RFC7665]. The SFC
instantiation mechanism to compute and instantiate Service Function Control Element can be seen as a Policy Decision Point (PDP,
Paths (SFP). The PCE maybe co-located with the SFC Control plane [RFC5394]). Such PDP can then operate a stateful PCE to compute,
component or an external entity. select and establish Service Function Paths. The PCE may be co-
located with the SFC Control element or enabled in an external
entity.
4. Overview of PCEP Operation in SFC-enabled Networks 4. Overview of PCEP Operation in SFC-Enabled Networks
A PCEP speaker indicates its ability to support PCE provisioned A PCEP speaker indicates its ability to support PCE-computed SFP
dynamic SFP paths during the PCEP Initialization phase via a paths during the PCEP Initialization phase via a mechanism described
mechanism described in Section 5.1. A PCE can initiate SFPs only for in Section 5.1. A PCE may initiate SFPs only for PCCs that
PCCs that advertised this capability and a PCC will follow the advertised this capability; a PCC follows the procedures described in
procedures described in this document only on sessions where the PCE this document only for sessions where the PCE advertised this
advertised this capability. capability.
As per section 5.1 of [I-D.ietf-pce-pce-initiated-lsp], the PCE sends As per Section 5.1 of [I-D.ietf-pce-pce-initiated-lsp], the PCE sends
a Path Computation LSP Initiate Request (PCInitiate) message to the a Path Computation LSP Initiate Request (PCInitiate) message to the
PCC to instantiate or delete a LSP. The Explicit Route Object (ERO) PCC to instantiate or delete a LSP. The Explicit Route Object (ERO)
can be used to encode either a sequence of SF functions or a is used to encode either a full sequence of SF instances or a
combination of SFs and SFFs to establish a SFP. If the said SFFs and specific sequence of SFFs and SFs to establish an SFP. If the said
SFs can be identified with an IP address, the IP sub-object can be SFFs and SFs are identified with an IP address, the IP sub-object can
used as a SF/SFF identification means. This document makes no change be used as a SF/SFF identification means. This document makes no
to the PCInitiate message format but extends LSP objects described in change to the PCInitiate message format but extends LSP objects
Section 5.2. described in Section 5.2.
Editor-Note: In case a PCE-Initiated Signaling mechanism is used to Editor's note: In case a PCE-Initiated signaling mechanism is used to
setup the service function path, then does the classifier / PCE- set up the service function path, then does the classifier / PCE-
Initiated signaling protocol needs to understand if the IP address is Initiated signaling protocol need to understand if the IP address is
for SFF or SF or the signaling protocol is only used to signal IP for SFF or SF or the signaling protocol is only used to signal IP
address for SFs? addresses for SFs?
4.1. SFP Instantiation 4.1. SFP Instantiation
The Instantiation operation of a SFP is the same as defined in The instantiation of a SFP is the same as defined in Section 5.3 of
section 5.3[I-D.ietf-pce-pce-initiated-lsp]. Rules of processing and [I-D.ietf-pce-pce-initiated-lsp]. Rules for processing and error
error codes remain unchanged. codes remain unchanged.
4.2. SFP Withdrawal 4.2. SFP Withdrawal
The withdrawal operation of a SFP is the same as defined in section The withdrawal of an SFP is the same as defined in Section 5.4 of
5.4 of [I-D.ietf-pce-pce-initiated-lsp] : the PCE sends an LSP [I-D.ietf-pce-pce-initiated-lsp]: the PCE sends an LSP Initiate
Initiate Message with an LSP object carrying the PLSP-ID of the SFP Message with an LSP object carrying the PLSP-ID of the SFP and the
to be removed and an SRP object with the R flag set (LSP-REMOVE as SFP Identifier to be removed, as well as an SRP object with the R
per section 5.2 of [I-D.ietf-pce-pce-initiated-lsp]). Rules of flag set (LSP-REMOVE as per Section 5.2 of
processing and error codes remain unchanged. [I-D.ietf-pce-pce-initiated-lsp]). Rules for processing and error
codes remain unchanged.
4.3. SFP Delegation and Cleanup 4.3. SFP Delegation and Cleanup
SFP delegation and cleanup operations are similar to those defined in SFP delegation and cleanup operations are similar to those defined in
section 6 of [I-D.ietf-pce-pce-initiated-lsp]. Rules of processing Section 6 of [I-D.ietf-pce-pce-initiated-lsp]. Rules for processing
and error codes remains unchanged. and error codes remain unchanged.
4.4. SFP State Synchronization 4.4. SFP State Synchronization
State Synchronization operations described in Section 5.4 of State Synchronization operations described in Section 5.4 of
[I-D.ietf-pce-stateful-pce]can be applied for SFP state maintenance [I-D.ietf-pce-stateful-pce] can be applied to SFP state maintenance
as well. as well.
4.5. SFP Update and Report 4.5. SFP Update and Report
A PCE can send an SFP Update request to a PCC to update one or more A PCE can send an SFP Update request to a PCC to update one or more
attributes of an SFP and to re-signal the SFP with the updated attributes of an SFP and to re-signal the SFP with the updated
attributes. A PCC can send an SFP state report to a PCE, and which attributes. A PCC can send an SFP state report to a PCE, and which
contains the SFP State information. The mechanism is described in contains the SFP State information. The mechanism is described in
[I-D.ietf-pce-stateful-pce] and can be applied for SFPs as well. [I-D.ietf-pce-stateful-pce] and can be applied to SFPs as well.
5. Object Formats 5. Object Formats
5.1. The OPEN Object 5.1. The OPEN Object
This document defines a new optional TLV for use in the OPEN Object The optional TLV shown in Figure 2 is defined for use in the OPEN
to indicate the PCEP speaker's Service function Chaining capability. Object to indicate the PCEP speaker's Service Function Chaining
capability.
The SFC-PCE-CAPABILITY TLV is an optional TLV for use in the OPEN The SFC-PCE-CAPABILITY TLV is an optional TLV to be carried in the
Object to advertise the SFC capability during the PCEP session. The OPEN Object to advertise the SFC capability during the PCEP session.
format of the SFC-PCE-CAPABILITY TLV is shown in the
followingFigure 2 :
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=TBD | length=4 | | Type=TBD | length=4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Flags | | Reserved | Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SFC-PCE-CAPABILITY TLV Format SFC-PCE-CAPABILITY TLV Format
The code point for the TLV type is to be defined by IANA. The TLV The code point for the TLV type is to be defined by IANA (see
length is 4 octets. Section 9). The TLV length is 4 octets.
The value is TBD.
As per [I-D.ietf-pce-stateful-pce], a PCEP speaker advertises the As per [I-D.ietf-pce-stateful-pce], a PCEP speaker advertises the
capability of instantiating PCE-initiated LSPs via the Stateful PCE capability of instantiating PCE-initiated LSPs via the Stateful PCE
Capability TLV (LSP-INSTANTIATION-CAPABILITY bit) conveyed in an Open Capability TLV (LSP-INSTANTIATION-CAPABILITY bit) carried in an Open
message. The inclusion of the SFC-PCE-CAPABILITY TLV in an OPEN message. The inclusion of the SFC-PCE-CAPABILITY TLV in an OPEN
object indicates that the sender is SFC-capable. Both mechanisms object indicates that the sender is SFC-capable. Both mechanisms
indicate the SFP instantiation capability of the PCEP speaker. indicate the SFP instantiation capability of the PCEP speaker.
5.2. The LSP Object 5.2. The LSP Object
The LSP object is defined in [I-D.ietf-pce-pce-initiated-lsp] and The LSP object is defined in [I-D.ietf-pce-pce-initiated-lsp] and
included here for reference (Figure 3). included here for reference (Figure 3).
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PLSP-ID | Flags |F|C| O|A|R|S|D| | PLSP-ID | Flags |F|C| O|A|R|S|D|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// TLVs // // TLVs //
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
LSP Object Format LSP Object Format
A new flag, called the SFC (F) flag, is introduced. The F Flag set A new flag, called the SFC flag (F-bit), is introduced. The F-bit
to 1 indicates that this LSP is actually an SFP. The C flag will set to "1" indicates that this LSP is actually an SFP. The C flag
also be set to indicate it was created via a PCInitiate message. will also be set to indicate it was created via a PCInitiate message.
5.2.1. SFP Identifiers TLV 5.2.1. SFP Identifiers TLV
The SFP Identifiers TLV MUST be included in the LSP object for The SFP Identifiers TLV MUST be included in the LSP object for SFPs.
Service Function Paths (SFP). The SFP Identifier TLV is used by the The SFP Identifier TLV is used by the classifier to select the SFP
classifier to enable SFP selection for the traffic,i.e.,direct along which some traffic will be forwarded, according to the traffic
traffic to specific SFP[I-D.ietf-sfc-architecture]. The SFP classification rules applied by the classifier [RFC7665]. The SFP
Identifier carried in the SFC encapsulation can be further used by Identifier is part of the SFC metadata carried in packets and is used
SFF to select service functions and next SFF,e.g., enable a packet by the SFF to invoke service functions and identify the next SFF.
that repeatedly arrives at the same SFF to get the correct services
provided each time it arrives, and to go to the correct next SFF each
time it arrives.
The format of SFP Identifier TLV is shown in the following figure. The format of the SFP Identifier TLV is shown in Figure 4.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Service Path ID | Service Index | | Service Path ID | Service Index |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Service path ID (SPI): 24 bits Service Path ID (SPI): 24 bits
Service index (SI): 8 bits Service Index (SI): 8 bits
Figure 4
SPI: identifies a service path. The same ID is used by the SPI: identifies a service path. The same ID is used by the
participating nodes for path setup/selection. An administrator can participating nodes for path setup/selection. An administrator can
use the SPI for reporting and troubleshooting packets along a use the SPI for reporting and troubleshooting packets along a
specific path. SPI along with PLSP-ID is used in PCEP to identify specific path. SPI along with PLSP-ID is used by PCEP to identify
the Service Path. the Service Path.
SI: provides location within the service path. SI: provides location within the service path.
6. Backward Compatibility 6. Backward Compatibility
The SFP instantiation capability PCEP protocol extensions described The SFP instantiation capability defined as a PCEP extension and
in this document MUST NOT be used if PCCs or the PCE did not documented in this draft MUST NOT be used if PCCs or the PCE did not
advertise its SFP instantiation stateful capability, as per advertise their stateful SFP instantiation capability,Section 5.1.
Section 5.1. If this is not the case and stateful operations on SFPs If this is not the case and stateful operations on SFPs are
are attempted, then a PCErr with error-type 19 (Invalid Operation) attempted, then a PCErr message with error-type 19 (Invalid
and error-value TBD needs to be generated. Operation) and error-value TBD needs to be generated.
[Editor Note: more information on exact error value is needed] [Editor's note: more information on exact error value is needed]
7. SFP signaling and forwarding consideration 7. SFP Signaling and Forwarding Considerations
The SFP instantiation mechanism described in this document is not The SFP instantiation mechanism described in this document is not
tightly coupled to any SFP signaling mechanism. For example,SR-based tightly coupled to any SFP signaling mechanism. For example, Generic
approach [I-D.ietf-pce-segment-routing] can utilize the mechanism SFC Encapsulation [I-D.ietf-sfc-nsh] can be used together with the
described here and does not need any other specific protocol mechanism described in this document to enable SFP forwarding. SR-
extensions. Generic SFC Encapsulation [I-D.quinn-sfc-nsh] can also based approach [I-D.ietf-pce-segment-routing] can also use the
be used together with the mechanism described here to enable SFP mechanism described here and does not need any other specific
forwarding. protocol extensions.
8. Security Considerations 8. Security Considerations
The security considerations described in [RFC5440] and The security considerations described in [RFC5440] and
[I-D.ietf-pce-pce-initiated-lsp] are applicable to this [I-D.ietf-pce-pce-initiated-lsp] are applicable to this
specification. No additional security measure is required. specification. This document does not raise any additional security
issue.
9. IANA Considerations 9. IANA Considerations
TBD IANA is requested to allocate a new code point in the PCEP TLV Type
Indicators registry, as follows:
Value Meaning Reference
------- ---------------------------- --------------
TBD SFC-PCE-CAPABILITY This document
10. Acknowledgements 10. Acknowledgements
Many thanks to Ron Parker, Hao Wang,Dave Dolson,Jing Huang,Joel M. Many thanks to Ron Parker, Hao Wang, Dave Dolson, Jing Huang, and
Halpern for the discussion in formulating the content for the draft. Joel M. Halpern for the discussion in formulating the content for
the document.
11. References 11. References
11.1. Normative References 11.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[I-D.ietf-pce-stateful-pce] [I-D.ietf-pce-stateful-pce]
Crabbe, E., Minei, I., Medved, J., and R. Varga, "PCEP Crabbe, E., Minei, I., Medved, J., and R. Varga, "PCEP
Extensions for Stateful PCE", draft-ietf-pce-stateful- Extensions for Stateful PCE", draft-ietf-pce-stateful-
pce-11 (work in progress), April 2015. pce-13 (work in progress), December 2015.
[RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation
Element (PCE) Communication Protocol (PCEP)", RFC 5440,
DOI 10.17487/RFC5440, March 2009,
<http://www.rfc-editor.org/info/rfc5440>.
[I-D.ietf-pce-pce-initiated-lsp] [I-D.ietf-pce-pce-initiated-lsp]
Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "PCEP Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "PCEP
Extensions for PCE-initiated LSP Setup in a Stateful PCE Extensions for PCE-initiated LSP Setup in a Stateful PCE
Model", draft-ietf-pce-pce-initiated-lsp-04 (work in Model", draft-ietf-pce-pce-initiated-lsp-05 (work in
progress), April 2015. progress), October 2015.
11.2. Informative References 11.2. Informative References
[RFC2753] Yavatkar, R., Pendarakis, D., and R. Guerin, "A Framework [RFC2753] Yavatkar, R., Pendarakis, D., and R. Guerin, "A Framework
for Policy-based Admission Control", RFC 2753, January for Policy-based Admission Control", RFC 2753,
2000. DOI 10.17487/RFC2753, January 2000,
<http://www.rfc-editor.org/info/rfc2753>.
[RFC7665] Halpern, J., Ed. and C. Pignataro, Ed., "Service Function
Chaining (SFC) Architecture", RFC 7665,
DOI 10.17487/RFC7665, October 2015,
<http://www.rfc-editor.org/info/rfc7665>.
[RFC5394] Bryskin, I., Papadimitriou, D., Berger, L., and J. Ash, [RFC5394] Bryskin, I., Papadimitriou, D., Berger, L., and J. Ash,
"Policy-Enabled Path Computation Framework", RFC 5394, "Policy-Enabled Path Computation Framework", RFC 5394,
December 2008. DOI 10.17487/RFC5394, December 2008,
<http://www.rfc-editor.org/info/rfc5394>.
[RFC5440] Vasseur, JP. and JL. Le Roux, "Path Computation Element
(PCE) Communication Protocol (PCEP)", RFC 5440, March
2009.
[I-D.ietf-sfc-architecture]
Halpern, J. and C. Pignataro, "Service Function Chaining
(SFC) Architecture", draft-ietf-sfc-architecture-09 (work
in progress), June 2015.
[I-D.ww-sfc-control-plane] [I-D.ietf-sfc-control-plane]
Li, H., Wu, Q., Boucadair, M., Jacquenet, C., Haeffner, Li, H., Wu, Q., Huang, O., Boucadair, M., Jacquenet, C.,
W., Lee, S., Parker, R., Dunbar, L., Malis, A., Halpern, Haeffner, W., Lee, S., Parker, R., Dunbar, L., Malis, A.,
J., Reddy, T., and P. Patil, "Service Function Chaining Halpern, J., Reddy, T., and P. Patil, "Service Function
(SFC) Control Plane Components & Requirements", draft-ww- Chaining (SFC) Control Plane Components & Requirements",
sfc-control-plane-06 (work in progress), June 2015. draft-ietf-sfc-control-plane-03 (work in progress),
January 2016.
[I-D.ietf-pce-segment-routing] [I-D.ietf-pce-segment-routing]
Sivabalan, S., Medved, J., Filsfils, C., Crabbe, E., Sivabalan, S., Medved, J., Filsfils, C., Crabbe, E.,
Lopez, V., Tantsura, J., Henderickx, W., and J. Hardwick, Lopez, V., Tantsura, J., Henderickx, W., and J. Hardwick,
"PCEP Extensions for Segment Routing", draft-ietf-pce- "PCEP Extensions for Segment Routing", draft-ietf-pce-
segment-routing-05 (work in progress), May 2015. segment-routing-06 (work in progress), August 2015.
[I-D.quinn-sfc-nsh] [I-D.ietf-sfc-nsh]
Quinn, P., Guichard, J., Surendra, S., Smith, M., Quinn, P. and U. Elzur, "Network Service Header", draft-
Henderickx, W., Nadeau, T., Agarwal, P., Manur, R., ietf-sfc-nsh-02 (work in progress), January 2016.
Chauhan, A., Halpern, J., Majee, S., Elzur, U., Melman,
D., Garg, P., McConnell, B., Wright, C., and K. Kevin,
"Network Service Header", draft-quinn-sfc-nsh-07 (work in
progress), February 2015.
Authors' Addresses Authors' Addresses
Qin Wu Qin Wu
Huawei Huawei
101 Software Avenue, Yuhua District 101 Software Avenue, Yuhua District
Nanjing, Jiangsu 210012 Nanjing, Jiangsu 210012
China China
EMail: sunseawq@huawei.com EMail: bill.wu@huawei.com
Dhruv Dhody Dhruv Dhody
Huawei Huawei
Leela Palace Leela Palace
Bangalore, Karnataka 560008 Bangalore, Karnataka 560008
INDIA INDIA
EMail: dhruv.ietf@gmail.com EMail: dhruv.ietf@gmail.com
Mohamed Boucadair Mohamed Boucadair
France Telecom Orange
Rennes 35000 Rennes 35000
France France
EMail: mohamed.boucadair@orange.com EMail: mohamed.boucadair@orange.com
Christian Jacquenet Christian Jacquenet
France Telecom Orange
Rennes 35000 Rennes
France France
EMail: christian.jacquenet@orange.com EMail: christian.jacquenet@orange.com
Jeff Tantsura Jeff Tantsura
Ericsson Ericsson
300 Holger Way 300 Holger Way
San Jose, CA 95134 San Jose, CA 95134
US US
EMail: Jeff.Tantsura@ericsson.com EMail: Jeff.Tantsura@ericsson.com
 End of changes. 68 change blocks. 
191 lines changed or deleted 202 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/