TOC |
|
MPLS Transport Profile
Data Plane Architecture
draft-ietf-mpls-tp-data-plane-04
Abstract
The Multiprotocol Label Switching (MPLS) Transport Profile (MPLS-TP) is the set of MPLS protocol functions applicable to the construction and operation of packet-switched transport networks. This document specifies the subset of these functions that comprises the MPLS-TP data plane: the architectural layer concerned with the encapsulation and forwarding of packets within an MPLS-TP network.
This document is a product of a joint Internet Engineering Task Force (IETF) / International Telecommunication Union Telecommunication Standardization Sector (ITU-T) effort to include an MPLS Transport Profile within the IETF MPLS and PWE3 architectures to support the capabilities and functionalities of a packet transport network.
Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 (Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels,” March 1997.) [RFC2119].
Status of this Memo
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at http://datatracker.ietf.org/drafts/current/.
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.”
This Internet-Draft will expire on January 2, 2011.
Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.
Table of Contents
1.
Introduction
1.1.
Scope
1.2.
Terminology
2.
MPLS-TP Packet Encapsulation and Forwarding
3.
MPLS-TP Transport Entities
3.1.
Label Switched Paths
3.1.1.
LSP Packet Encapsulation and Forwarding
3.1.2.
LSP Payloads
3.1.3.
LSP Types
3.2.
Sections
3.3.
Pseudowires
4.
MPLS-TP Generic Associated Channel
5.
Server Layer Considerations
6.
Security Considerations
7.
IANA Considerations
8.
References
8.1.
Normative References
8.2.
Informative References
§
Authors' Addresses
TOC |
1. Introduction
The MPLS Transport Profile (MPLS-TP) is the set of functions that meet the requirements [RFC5654] (Niven-Jenkins, B., Brungard, D., Betts, M., Sprecher, N., and S. Ueno, “Requirements of an MPLS Transport Profile,” September 2009.) for the application of MPLS to the construction and operation of packet-switched transport networks. MPLS-based packet-switched transport networks, and the overall architecture of the MPLS-TP, are defined and described in [I‑D.ietf‑mpls‑tp‑framework] (Bocci, M., Bryant, S., Frost, D., Levrau, L., and L. Berger, “A Framework for MPLS in Transport Networks,” May 2010.). It is assumed that the reader is familiar with that document.
This document defines the set of functions that comprise the MPLS-TP data plane: the architectural layer concerned with the encapsulation and forwarding of packets within an MPLS-TP network. This layer is based on the data plane architectures for MPLS ([RFC3031] (Rosen, E., Viswanathan, A., and R. Callon, “Multiprotocol Label Switching Architecture,” January 2001.) and [RFC3032] (Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., Farinacci, D., Li, T., and A. Conta, “MPLS Label Stack Encoding,” January 2001.)) and for pseudowires ([RFC3985] (Bryant, S. and P. Pate, “Pseudo Wire Emulation Edge-to-Edge (PWE3) Architecture,” March 2005.)).
This document is a product of a joint Internet Engineering Task Force (IETF) / International Telecommunication Union Telecommunication Standardization Sector (ITU-T) effort to include an MPLS Transport Profile within the IETF MPLS and PWE3 architectures to support the capabilities and functionalities of a packet transport network.
TOC |
1.1. Scope
This document has the following purposes:
- To identify the data plane functions within the MPLS Transport Profile;
- To indicate which of these data plane functions an MPLS-TP implementation is required to support.
This document defines the encapsulation and forwarding functions applicable to packets traversing an MPLS-TP Label Switched Path (LSP), Pseudowire (PW), or Section (see Section 3 (MPLS-TP Transport Entities) for the definitions of these transport entities). Encapsulation and forwarding functions for packets outside an MPLS-TP LSP, PW, or Section, and mechanisms for delivering packets to or from MPLS-TP LSPs, PWs, and Sections, are outside the scope of this document.
TOC |
1.2. Terminology
Term | Definition |
---|---|
ACH | Associated Channel Header |
G-ACh | Generic Associated Channel |
GAL | G-ACh Label |
LER | Label Edge Router |
LSE | Label Stack Entry |
LSP | Label Switched Path |
LSR | Label Switching Router |
MPLS-TP | MPLS Transport Profile |
OAM | Operations, Administration and Maintenance |
PW | Pseudowire |
QoS | Quality of Service |
S-PE | PW Switching Provider Edge Node |
T-PE | PW Terminating Provider Edge Node |
TTL | Time To Live |
Additional definitions and terminology can be found in [I‑D.ietf‑mpls‑tp‑framework] (Bocci, M., Bryant, S., Frost, D., Levrau, L., and L. Berger, “A Framework for MPLS in Transport Networks,” May 2010.) and [RFC5654] (Niven-Jenkins, B., Brungard, D., Betts, M., Sprecher, N., and S. Ueno, “Requirements of an MPLS Transport Profile,” September 2009.).
TOC |
2. MPLS-TP Packet Encapsulation and Forwarding
MPLS-TP packet encapsulation and forwarding SHALL operate according to the MPLS data plane architecture described in [RFC3031] (Rosen, E., Viswanathan, A., and R. Callon, “Multiprotocol Label Switching Architecture,” January 2001.) and [RFC3032] (Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., Farinacci, D., Li, T., and A. Conta, “MPLS Label Stack Encoding,” January 2001.), and the data plane architectures for Single-Segment Pseudowires and Multi-Segment Pseudowires (see Section 3.3 (Pseudowires)), except as noted otherwise in this document. The MPLS-TP data plane satisfies the requirements specified in [RFC5654] (Niven-Jenkins, B., Brungard, D., Betts, M., Sprecher, N., and S. Ueno, “Requirements of an MPLS Transport Profile,” September 2009.).
Since an MPLS-TP packet is an MPLS packet as defined in [RFC3031] (Rosen, E., Viswanathan, A., and R. Callon, “Multiprotocol Label Switching Architecture,” January 2001.) and [RFC3032] (Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., Farinacci, D., Li, T., and A. Conta, “MPLS Label Stack Encoding,” January 2001.), it will have an associated label stack, and the 'push', 'pop', and 'swap' label processing operations specified in those documents apply. The label stack represents a hierarchy of Label Switched Paths (LSPs). A label is pushed to introduce an additional level of LSP hierarchy and popped to remove it. Such an additional level may be introduced by any pair of LSRs, whereupon they become adjacent at this new level, and are then known as Label Edge Routers (LERs) with respect to the new LSP.
In contrast to, for example, Section 3.10 of [RFC3031] (Rosen, E., Viswanathan, A., and R. Callon, “Multiprotocol Label Switching Architecture,” January 2001.), support for Internet Protocol (IP) host and router data plane functionality by MPLS-TP interfaces and in MPLS-TP networks is OPTIONAL.
MPLS-TP forwarding is based on the label that identifies an LSP or PW. The label value specifies the processing operation to be performed by the next hop at that level of encapsulation. A swap of this label is an atomic operation in which the contents of the packet after the swapped label are opaque to the forwarding function. The only event that interrupts a swap operation is Time To Live (TTL) expiry.
At an LSR, S-PE, or T-PE, further processing to determine the context of a packet occurs when a swap operation is interrupted by TTL expiry. If the TTL of an LSP label expires, then the label with the S (Bottom of Stack) bit set is inspected to determine if it is a reserved label. If it is a reserved label, the packet is processed according to the rules of that reserved label. For example, if it is a Generic Associated Channel Label (GAL), then it is processed as a packet on the G-ACh; see Section 4 (MPLS-TP Generic Associated Channel). If the TTL of a PW expires at an S-PE or T-PE, then the packet is examined to determine if a Generic Associated Channel Header (ACH) is present immediately below the PW label. If so, then the packet is processed as a packet on the G-ACh.
Similarly, if a pop operation at an LER exposes a reserved label at the top of the label stack, then the packet is processed according to the rules of that reserved label.
If no such exception occurs, the packet is forwarded according to the procedures in [RFC3031] (Rosen, E., Viswanathan, A., and R. Callon, “Multiprotocol Label Switching Architecture,” January 2001.) and [RFC3032] (Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., Farinacci, D., Li, T., and A. Conta, “MPLS Label Stack Encoding,” January 2001.).
TOC |
3. MPLS-TP Transport Entities
The MPLS Transport Profile includes the following data plane transport entities:
- Label Switched Paths (LSPs)
- Sections
- Pseudowires (PWs)
TOC |
3.1. Label Switched Paths
MPLS-TP LSPs are ordinary MPLS LSPs as defined in [RFC3031] (Rosen, E., Viswanathan, A., and R. Callon, “Multiprotocol Label Switching Architecture,” January 2001.) except as specifically noted otherwise in this document.
TOC |
3.1.1. LSP Packet Encapsulation and Forwarding
Encapsulation and forwarding of packets traversing MPLS-TP LSPs MUST follow standard MPLS packet encapsulation and forwarding as defined in [RFC3031] (Rosen, E., Viswanathan, A., and R. Callon, “Multiprotocol Label Switching Architecture,” January 2001.), [RFC3032] (Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., Farinacci, D., Li, T., and A. Conta, “MPLS Label Stack Encoding,” January 2001.), [RFC5331] (Aggarwal, R., Rekhter, Y., and E. Rosen, “MPLS Upstream Label Assignment and Context-Specific Label Space,” August 2008.), and [RFC5332] (Eckert, T., Rosen, E., Aggarwal, R., and Y. Rekhter, “MPLS Multicast Encapsulations,” August 2008.), except as explicitly stated otherwise in this document.
Data plane Quality of Service capabilities are included in the MPLS-TP in the form of Traffic Engineered (TE) LSPs [RFC3209] (Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., and G. Swallow, “RSVP-TE: Extensions to RSVP for LSP Tunnels,” December 2001.) and the MPLS Differentiated Services (DiffServ) architecture [RFC3270] (Le Faucheur, F., Wu, L., Davie, B., Davari, S., Vaananen, P., Krishnan, R., Cheval, P., and J. Heinanen, “Multi-Protocol Label Switching (MPLS) Support of Differentiated Services,” May 2002.). Both E-LSP and L-LSP MPLS DiffServ modes are included. The Traffic Class field (formerly the EXP field) of an MPLS label follows the definition of [RFC5462] (Andersson, L. and R. Asati, “Multiprotocol Label Switching (MPLS) Label Stack Entry: "EXP" Field Renamed to "Traffic Class" Field,” February 2009.) and [RFC3270] (Le Faucheur, F., Wu, L., Davie, B., Davari, S., Vaananen, P., Krishnan, R., Cheval, P., and J. Heinanen, “Multi-Protocol Label Switching (MPLS) Support of Differentiated Services,” May 2002.) and MUST be processed according to the rules specified in those documents.
Except for transient packet reordering which may occur, for example, during fault conditions, packets are delivered in order on L-LSPs, and on E-LSPs within a specific ordered aggregate.
The Uniform, Pipe and Short Pipe DiffServ tunneling and TTL processing models described in [RFC3270] (Le Faucheur, F., Wu, L., Davie, B., Davari, S., Vaananen, P., Krishnan, R., Cheval, P., and J. Heinanen, “Multi-Protocol Label Switching (MPLS) Support of Differentiated Services,” May 2002.) and [RFC3443] (Agarwal, P. and B. Akyol, “Time To Live (TTL) Processing in Multi-Protocol Label Switching (MPLS) Networks,” January 2003.) MAY be used for MPLS-TP LSPs. Note however that support for the Pipe or Short Pipe models is REQUIRED for typical transport applications, in which the topology and QoS characteristics of the MPLS-TP server layer are independent of the client layer. Specific applications MAY place further requirements on the DiffServ tunneling and TTL processing models an LSP can use.
Per-platform, per-interface or other context-specific label space [RFC5331] (Aggarwal, R., Rekhter, Y., and E. Rosen, “MPLS Upstream Label Assignment and Context-Specific Label Space,” August 2008.) MAY be used for MPLS-TP LSPs. Downstream [RFC3031] (Rosen, E., Viswanathan, A., and R. Callon, “Multiprotocol Label Switching Architecture,” January 2001.) or upstream [RFC5331] (Aggarwal, R., Rekhter, Y., and E. Rosen, “MPLS Upstream Label Assignment and Context-Specific Label Space,” August 2008.) label allocation schemes MAY be used for MPLS-TP LSPs. The requirements of a particular LSP type may, however, dictate which label spaces or allocation schemes it can use.
Equal-Cost Multi-Path (ECMP) load-balancing MUST NOT be performed on an MPLS-TP LSP. MPLS-TP LSPs as defined in this document MAY operate over a server layer that supports load-balancing, but this load-balancing MUST operate in such a manner that it is transparent to MPLS-TP. This does not preclude the future definition of new MPLS-TP LSP types which have different requirements regarding the use of ECMP in the server layer.
Penultimate Hop Popping (PHP) MUST be disabled by default on MPLS-TP LSPs.
TOC |
3.1.2. LSP Payloads
The MPLS-TP includes support for the following LSP payload types:
- Network-layer protocol packets (including MPLS-labeled packets)
- Pseudowire packets
The rules for processing LSP payloads that are network-layer protocol packets SHALL be as specified in [RFC3032] (Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., Farinacci, D., Li, T., and A. Conta, “MPLS Label Stack Encoding,” January 2001.).
The rules for processing LSP payloads that are pseudowire packets SHALL be as defined in the data plane pseudowire specifications (see Section 3.3 (Pseudowires)).
The payload of an MPLS-TP LSP may be a packet that itself contains an MPLS label stack. This is true, for instance, when the payload is a pseudowire or an MPLS LSP. In such cases, the label stack is contiguous between the MPLS-TP LSP and its payload, and exactly one LSE in this stack SHALL have the S (Bottom of Stack) bit set to 1. This behaviour reflects best current practice in MPLS but differs slightly from [RFC3032] (Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., Farinacci, D., Li, T., and A. Conta, “MPLS Label Stack Encoding,” January 2001.), which uses the S bit to identify when MPLS label processing stops and network layer processing starts.
TOC |
3.1.3. LSP Types
The MPLS-TP includes the following LSP types:
- Point-to-point unidirectional
- Point-to-point associated bidirectional
- Point-to-point co-routed bidirectional
- Point-to-multipoint unidirectional
Point-to-point unidirectional LSPs are supported by the basic MPLS architecture [RFC3031] (Rosen, E., Viswanathan, A., and R. Callon, “Multiprotocol Label Switching Architecture,” January 2001.) and are REQUIRED to function in the same manner in the MPLS-TP data plane except as explicitly stated otherwise in this document.
A point-to-point associated bidirectional LSP between LSRs A and B consists of two unidirectional point-to-point LSPs, one from A to B and the other from B to A, which are regarded as a pair providing a single logical bidirectional transport path.
A point-to-point co-routed bidirectional LSP is a point-to-point associated bidirectional LSP with the additional constraint that its two unidirectional component LSPs in each direction follow the same path (in terms of both nodes and links). An important property of co-routed bidirectional LSPs is that their unidirectional component LSPs share fate.
A point-to-multipoint unidirectional LSP functions in the same manner in the data plane, with respect to basic label processing and packet-switching operations, as a point-to-point unidirectional LSP, with one difference: an LSR may have more than one (egress interface, outgoing label) pair associated with the LSP, and any packet it transmits on the LSP is transmitted out all associated egress interfaces. Point-to-multipoint LSPs are described in [RFC4875] (Aggarwal, R., Papadimitriou, D., and S. Yasukawa, “Extensions to Resource Reservation Protocol - Traffic Engineering (RSVP-TE) for Point-to-Multipoint TE Label Switched Paths (LSPs),” May 2007.) and [RFC5332] (Eckert, T., Rosen, E., Aggarwal, R., and Y. Rekhter, “MPLS Multicast Encapsulations,” August 2008.). TTL processing and exception handling for point-to-multipoint LSPs is the same as for point-to-point LSPs and is described in Section 2 (MPLS-TP Packet Encapsulation and Forwarding).
TOC |
3.2. Sections
Two MPLS-TP LSRs are considered to be topologically adjacent at a particular layer n >= 0 of the MPLS-TP LSP hierarchy if there exists connectivity between them at the next lowest network layer, and if there is no MPLS layer processing at layer n between the two LSRs (other than at the LSRs themselves). Such connectivity, if it exists, will be either an MPLS-TP LSP (if n > 0) or a data-link provided by the underlying server layer network (if n = 0), and is referred to as an MPLS-TP Section at layer n of the MPLS-TP LSP hierarchy. Thus, the links traversed by a layer n+1 MPLS-TP LSP are layer n MPLS-TP sections. Such an LSP is referred to as a client of the section layer, and the section layer as the server layer with respect to its clients.
The MPLS label stack associated with an MPLS-TP section at layer n consists of n labels, in the absence of stack optimisation mechanisms. In order for two LSRs to exchange non-IP MPLS-TP control packets over a section, an additional label, the G-ACh Label (GAL) (see Section 4 (MPLS-TP Generic Associated Channel)) MUST appear at the bottom of the label stack.
An MPLS-TP section may provide one or more of the following types of service to its client layer:
- Point-to-point bidirectional
- Point-to-point unidirectional
- Point-to-multipoint unidirectional
The manner in which a section provides such a service is outside the scope of the MPLS-TP.
An LSP of any of the types listed in Section 3.1.3 (LSP Types) may serve as a section for a client-layer transport entity as long as it supports the type of service the client requires.
A section MUST provide a means of identifying the type of payload it carries. If the section is a data-link, link-specific mechanisms such as a protocol type indication in the data-link header MAY be used. If the section is an LSP, this information MAY be implied by the LSP label or, if the LSP payload is MPLS-labeled, by the setting of the S bit. Additional labels MAY also be used if necessary to distinguish different payload types; see [I‑D.ietf‑mpls‑tp‑framework] (Bocci, M., Bryant, S., Frost, D., Levrau, L., and L. Berger, “A Framework for MPLS in Transport Networks,” May 2010.) for examples and further discussion.
TOC |
3.3. Pseudowires
The data plane architectures for Single-Segment Pseudowires [RFC3985] (Bryant, S. and P. Pate, “Pseudo Wire Emulation Edge-to-Edge (PWE3) Architecture,” March 2005.) and Multi-Segment Pseudowires [RFC5659] (Bocci, M. and S. Bryant, “An Architecture for Multi-Segment Pseudowire Emulation Edge-to-Edge,” October 2009.) are included in the MPLS-TP.
Data plane processing procedures for pseudowires are defined and described in a number of IETF documents. Some example pseudowire data plane procedures include:
- Pseudowire Emulation Edge-to-Edge (PWE3) Control Word for Use over an MPLS PSN [RFC4385] (Bryant, S., Swallow, G., Martini, L., and D. McPherson, “Pseudowire Emulation Edge-to-Edge (PWE3) Control Word for Use over an MPLS PSN,” February 2006.)
- Encapsulation Methods for Transport of Ethernet over MPLS Networks [RFC4448] (Martini, L., Rosen, E., El-Aawar, N., and G. Heron, “Encapsulation Methods for Transport of Ethernet over MPLS Networks,” April 2006.)
- Structure-Agnostic Time Division Multiplexing (TDM) over Packet (SAToP) [RFC4553] (Vainshtein, A. and YJ. Stein, “Structure-Agnostic Time Division Multiplexing (TDM) over Packet (SAToP),” June 2006.)
- Encapsulation Methods for Transport of PPP/High-Level Data Link Control (HDLC) over MPLS Networks [RFC4618] (Martini, L., Rosen, E., Heron, G., and A. Malis, “Encapsulation Methods for Transport of PPP/High-Level Data Link Control (HDLC) over MPLS Networks,” September 2006.)
- Encapsulation Methods for Transport of Frame Relay over Multiprotocol Label Switching (MPLS) Networks [RFC4619] (Martini, L., Kawa, C., and A. Malis, “Encapsulation Methods for Transport of Frame Relay over Multiprotocol Label Switching (MPLS) Networks,” September 2006.)
- Encapsulation Methods for Transport of Asynchronous Transfer Mode (ATM) over MPLS Networks [RFC4717] (Martini, L., Jayakumar, J., Bocci, M., El-Aawar, N., Brayley, J., and G. Koleyni, “Encapsulation Methods for Transport of Asynchronous Transfer Mode (ATM) over MPLS Networks,” December 2006.)
- Pseudowire Emulation Edge-to-Edge (PWE3) Asynchronous Transfer Mode (ATM) Transparent Cell Transport Service [RFC4816] (Malis, A., Martini, L., Brayley, J., and T. Walsh, “Pseudowire Emulation Edge-to-Edge (PWE3) Asynchronous Transfer Mode (ATM) Transparent Cell Transport Service,” February 2007.)
- Synchronous Optical Network/Synchronous Digital Hierarchy (SONET/SDH) Circuit Emulation over Packet (CEP) [RFC4842] (Malis, A., Pate, P., Cohen, R., and D. Zelig, “Synchronous Optical Network/Synchronous Digital Hierarchy (SONET/SDH) Circuit Emulation over Packet (CEP),” April 2007.)
- Structure-Aware Time Division Multiplexed (TDM) Circuit Emulation Service over Packet Switched Network (CESoPSN) [RFC5086] (Vainshtein, A., Sasson, I., Metz, E., Frost, T., and P. Pate, “Structure-Aware Time Division Multiplexed (TDM) Circuit Emulation Service over Packet Switched Network (CESoPSN),” December 2007.)
- Time Division Multiplexing over IP (TDMoIP) [RFC5087] (Stein, Y(J)., Shashoua, R., Insler, R., and M. Anavi, “Time Division Multiplexing over IP (TDMoIP),” December 2007.)
- Encapsulation Methods for Transport of Fibre Channel Frames Over MPLS Networks [I‑D.ietf‑pwe3‑fc‑encap] (Black, D. and L. Dunbar, “Encapsulation Methods for Transport of Fibre Channel frames Over MPLS Networks,” June 2010.)
This document specifies no modifications or extensions to pseudowire data plane architectures or protocols.
TOC |
4. MPLS-TP Generic Associated Channel
The MPLS Generic Associated Channel (G-ACh) mechanism is specified in [RFC5586] (Bocci, M., Vigoureux, M., and S. Bryant, “MPLS Generic Associated Channel,” June 2009.) and included in the MPLS-TP. The G-ACh provides an auxiliary logical data channel associated with MPLS-TP Sections, LSPs, and PWs in the data plane. The primary purpose of the G-ACh in the context of MPLS-TP is to support control, management, and Operations, Administration and Maintenance (OAM) traffic associated with MPLS-TP transport entities. The G-ACh MUST NOT be used to transport client layer network traffic in MPLS-TP networks.
For pseudowires, the G-ACh uses the first four bits of the PW control word to provide the initial discrimination between data packets and packets belonging to the associated channel, as described in [RFC4385] (Bryant, S., Swallow, G., Martini, L., and D. McPherson, “Pseudowire Emulation Edge-to-Edge (PWE3) Control Word for Use over an MPLS PSN,” February 2006.). When this first nibble of a packet, immediately following the label at the bottom of stack, has a value of '1', then this packet belongs to a G-ACh. The first 32 bits following the bottom of stack label then have a defined format called an Associated Channel Header (ACH), which further defines the content of the packet. The ACH is therefore both a demultiplexer for G-ACh traffic on the PW, and a discriminator for the type of G-ACh traffic.
When the control message is carried over a section or an LSP, rather than over a PW, it is necessary to provide an indication in the packet that the payload is something other than a client data packet. This is achieved by including a reserved label with a value of 13 at the bottom of the label stack. This reserved label is referred to as the G-ACh Label (GAL), and is defined in [RFC5586] (Bocci, M., Vigoureux, M., and S. Bryant, “MPLS Generic Associated Channel,” June 2009.). When a GAL is found, it indicates that the payload begins with an ACH. The GAL is thus a demultiplexer for G-ACh traffic on the section or the LSP, and the ACH is a discriminator for the type of traffic carried on the G-ACh. MPLS-TP forwarding follows the normal MPLS model, and thus a GAL is invisible to an LSR unless it is the top label in the label stack. The only other circumstance under which the label stack may be inspected for a GAL is when the TTL has expired. Normal packet forwarding MAY continue concurrently with this inspection. All operations on the label stack are in accordance with [RFC3031] (Rosen, E., Viswanathan, A., and R. Callon, “Multiprotocol Label Switching Architecture,” January 2001.) and [RFC3032] (Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., Farinacci, D., Li, T., and A. Conta, “MPLS Label Stack Encoding,” January 2001.).
An application processing a packet received over the G-ACh may require packet-specific context (such as the receiving interface or received label stack). Data plane implementations MUST therefore provide adequate context to the application which is to process a G-ACh packet. The definition of the context required MUST be provided as part of the specification of the application using the G-ACh.
TOC |
5. Server Layer Considerations
The MPLS-TP network has no awareness of the internals of the server layer of which it is a client, requiring only that the server layer be capable of delivering the type of service required by the MPLS-TP transport entities that make use of it. Note that what appears to be a single server layer link to the MPLS-TP network may be a complicated construct underneath, such as an LSP or a collection of underlying links operating as a bundle. Special care may be needed in network design and operation when such constructs are used as a server layer for MPLS-TP.
Encapsulation of MPLS-TP packets for transport over specific server-layer media is outside the scope of this document.
TOC |
6. Security Considerations
The MPLS data plane (and therefore the MPLS-TP data plane) does not provide any security mechanisms in and of itself. Client layers that wish to secure data carried over MPLS-TP transport entities are REQUIRED to apply their own security mechanisms.
Where management or control plane protocols are used to install label switching operations necessary to establish MPLS-TP transport paths, those protocols are equipped with security features and network operators may use those features to securely create the transport paths.
Where enhanced security is desirable, and a trust relationship exists between an LSR and its peer, the LSR MAY choose to implement the following policy for the processing of MPLS packets received from one or more of its neighbours:
Upon receipt of an MPLS packet, discard the packet unless one of the following two conditions holds:
- Any MPLS label in the packet's label stack processed at the receiving LSR, such as an LSP or PW label, has a label value that the receiving LSR has distributed to that neighbour; or
- Any MPLS label in the packet's label stack processed at the receiving LSR, such as an LSP or PW label, has a label value that the receiving LSR has previously distributed to the peer beyond that neighbour (i.e., when it is known that the path from the system to which the label was distributed to the receiving system is via that neighbour).
Further details of MPLS and MPLS-TP security can be found in [I‑D.ietf‑mpls‑tp‑framework] (Bocci, M., Bryant, S., Frost, D., Levrau, L., and L. Berger, “A Framework for MPLS in Transport Networks,” May 2010.) and [I‑D.ietf‑mpls‑mpls‑and‑gmpls‑security‑framework] (Fang, L. and M. Behringer, “Security Framework for MPLS and GMPLS Networks,” March 2010.).
TOC |
7. IANA Considerations
This document introduces no new IANA considerations.
TOC |
8. References
TOC |
8.1. Normative References
TOC |
8.2. Informative References
[I-D.ietf-mpls-mpls-and-gmpls-security-framework] | Fang, L. and M. Behringer, “Security Framework for MPLS and GMPLS Networks,” draft-ietf-mpls-mpls-and-gmpls-security-framework-09 (work in progress), March 2010 (TXT). |
[I-D.ietf-mpls-tp-framework] | Bocci, M., Bryant, S., Frost, D., Levrau, L., and L. Berger, “A Framework for MPLS in Transport Networks,” draft-ietf-mpls-tp-framework-12 (work in progress), May 2010 (TXT). |
[I-D.ietf-pwe3-fc-encap] | Black, D. and L. Dunbar, “Encapsulation Methods for Transport of Fibre Channel frames Over MPLS Networks,” draft-ietf-pwe3-fc-encap-11 (work in progress), June 2010 (TXT). |
[RFC3985] | Bryant, S. and P. Pate, “Pseudo Wire Emulation Edge-to-Edge (PWE3) Architecture,” RFC 3985, March 2005 (TXT). |
[RFC5086] | Vainshtein, A., Sasson, I., Metz, E., Frost, T., and P. Pate, “Structure-Aware Time Division Multiplexed (TDM) Circuit Emulation Service over Packet Switched Network (CESoPSN),” RFC 5086, December 2007 (TXT). |
[RFC5087] | Stein, Y(J)., Shashoua, R., Insler, R., and M. Anavi, “Time Division Multiplexing over IP (TDMoIP),” RFC 5087, December 2007 (TXT). |
[RFC5659] | Bocci, M. and S. Bryant, “An Architecture for Multi-Segment Pseudowire Emulation Edge-to-Edge,” RFC 5659, October 2009 (TXT). |
TOC |
Authors' Addresses
Dan Frost (editor) | |
Cisco Systems | |
Email: | danfrost@cisco.com |
Stewart Bryant (editor) | |
Cisco Systems | |
Email: | stbryant@cisco.com |
Matthew Bocci (editor) | |
Alcatel-Lucent | |
Email: | matthew.bocci@alcatel-lucent.com |