Network Working Group | P. Dutta |
Internet-Draft | M. Bocci |
Intended status: Standards Track | Alcatel-Lucent |
Expires: February 8, 2015 | L. Martini |
Cisco Systems | |
August 7, 2014 |
Explicit Path Routing for Dynamic Multi-Segment Pseudowires
draft-ietf-pwe3-mspw-er-05
Dynamic Multi-Segment Pseudowire (MS-PW) setup through an explicit path may be required to provide a simple solution for 1:1 protection with diverse primary and backup MS-PWs for a service, or to enable controlled signaling (strict or loose) for special MS-PWs. This document specifies the extensions and procedures required to enable dynamic MS-PWs to be established along explicit paths.
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 [RFC2119].
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 February 8, 2015.
Copyright (c) 2014 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.
Procedures for dynamically establishing multi-segment pseudowires (MS-PWs), where their paths are automatically determined using a dynamic routing protocol, are defined in [RFC7267]. For 1:1 protection of MS-PWs with primary and backup paths, MS-PWs need to be established through a diverse set of S-PEs (Switching Provider-Edges) to avoid any single points of failure at the PW level. [RFC7267] allows this through BGP-based mechanisms. This document defines an additional mechanism that allows the ST-PE (Source Terminating PEs) to explicitly choose the path that a PW would take through the intervening S-PEs. Explicit path routing of dynamic MS-PWs may also be required for controlled set-up of dynamic MS-PWs and network resource management.
Note that in many deployments the ST-PE will not have a view of the topology of S-PEs and so the explicit route will need to be supplied from a management application. How that management application determines the explicit route is outside the scope of this document.
This document uses the terminology defined in [RFC7267], [RFC4447]and [RFC5036].
The following additional terminology is used:
This section describes the LDP (Label Distribution Protocol) extensions required for signaling explicit paths in dynamic MS-PW set-up messages. An explicitly routed MS-PW is set up using a Label Mapping message that carries an ordered list of the S-PEs which the MS-PW is expected to traverse. The ordered list is encoded as a series of Explicit Route (ER) Hop TLVs encoded in an ER-TLV that is carried in a Label Mapping message.
An S-PE address is used to identify a given S-PE among the set of S-PEs belonging to the PSNs that may be used by an MS-PW. Each S-PE MUST be assigned an address as specified in [RFC7267] Section 3.2. An S-PE that is capable of dynamic MS-PW signaling, but has not been assigned an S-PE address, and that receives a Label Mapping message for a dynamic MS-PW MUST follow the procedures of [RFC7267] Section 3.2.
The ER-TLV specifies the path to be taken by the MS-PW being established. Each hop along the path is represented by an abstract node, which is a group of one or more S-PEs, identified by an IPv4, and IPv6 or an S-PE address. The ER-TLV format is as per Section 4.1 of [RFC3212].
The ER-TLV contains one or more Explicit Route Hop TLVs (ER-Hop TLVs) defined in Section 3.3.
The contents of an ER-TLV are a series of variable length ER-Hop TLVs. Each hop contains the identification of an “Abstract Node” that represents the hop to be traversed. The ER-Hop TLV format is as specified in Section 4.2 of [RFC3212].
[RFC3212] defines three ER-Hop TLV Types: IPv4 Prefix, IPv6 Prefix, and Autonomous System. This document specifies the following new ER-Hop TLV Type:
Value Type ------ ------------------------ 0x0805 L2 PW address of PW Switching Point
ER-Hop TLV
Details of ER Hop semantics are defined in Section 3.4.
This section describes the various semantics associated with ER-Hop TLV.
The semantics of the IPv4 ER-Hop TLV Type are specified in [RFC3212] Section 4.7.1.
The semantics of the IPv6 ER-Hop TLV Type are specified in [RFC3212] Section 4.7.2.
The semantics of the L2 PW Address ER-Hop TLV Type, which contains the L2 PW Address derived from the Generalized PWid FEC AII type 2 defined in [RFC5003], are 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| ER Hop Type | Length = 18 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |L| Reserved | PreLen | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AII Type=02 | Length | Global ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Global ID (contd.) | Prefix | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Prefix (contd.) | AC ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AC ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ U/F These bits MUST be set to zero and the procedures of [RFC5036] followed when the TLV is not known to the receiving node. Type A fourteen-bit field carrying the value of the ER-Hop 3, L2 PW Address, Value = TBD Length Specifies the length of the value field in bytes = 18. L Bit Set to indicate Loose hop. Cleared to indicate a strict hop. Reserved Zero on transmission. Ignored on receipt. PreLen Prefix Length 1-96 (including the length of the Global ID, Prefix and AC ID fields). All other fields (AII Type, Length, Global ID, Prefix, and AC ID) define the L2 PW Address and are to be set and interpreted as defined in Section 3.2 of [RFC5003].
A PW Label Mapping Message containing an explicit route TLV specifies the next hop for a given MS-PW path. Selection of this next hop may involve a selection from a set of possible alternatives. The mechanism for making a selection from this set is implementation specific and is outside of the scope of this document. The mechanism used to select a particular path is also outside of the scope of this document, but each node MUST attempt to determine a loop-free path. A noted in Section 1, in many deployments the ST-PE will not have a view of the topology of S-PEs and so the path will need to be supplied from a management application.
If a loop free path cannot be found, then a node MUST NOT attempt to signal the MS-PW. For an S-PE, if it cannot determine a loop free path, then the received Label Mapping MUST be released with a status code of "PW Loop Detected" as per Section 4.2.3 of [RFC7267].
To determine the next hop for the MS-PW path, a node performs the following steps. Note that these procedures assume that a valid S-PE address has been assigned to the node, as per Section 3.1, above.
After selecting a next hop, the node may alter the explicit route in the following ways.
If, as part of executing the algorithm in Section 4.1, the explicit route TLV is removed, the node may add a new explicit route TLV.
Otherwise, if the node is a member of the abstract node for the first ER-Hop, then a series of ER Hops may be inserted before the First ER Hop or may replace the first ER Hop. Each ER Hop in this series must denote an abstract node that is a subset of the current abstract node.
Alternately, if the first ER-Hop is a loose ER Hop, an arbitrary series of ER Hops may be inserted prior to the first ER-Hop.
RFC5036 [RFC5036] defines the LDP TLV name space which is maintained by IANA as “LDP TLV Registry”. TLV types for the Explicit Route TLV, IPv4 Prefix ER-Hop TLV, and the IPv6 Prefix ER-Hop TLV are already defined in the LDP TLV Registry.
IANA is requested to assign a further code point from the IETF consesus portion of this registry as follows:
TLV Type Value Reference ------------------------------------ -------- --------- L2 PW Address of Switching Point TBD This Document
A value of 0x0805 is requested.
This document introduces no new security considerations over [RFC5036], [RFC4447] and [RFC7267]. The security considerations detailed in those documents apply to the protocol extensions described in this RFC.
The authors gratefully acknowledge the contribution of the [RFC3212] RFC3212 authors through the specification of TLVs, which are reused by this document. The authors also gratefully acknowledge the input of Lizhong Jin.
[RFC2119] | Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. |
[RFC3212] | Jamoussi, B., Andersson, L., Callon, R., Dantu, R., Wu, L., Doolan, P., Worster, T., Feldman, N., Fredette, A., Girish, M., Gray, E., Heinanen, J., Kilty, T. and A. Malis, "Constraint-Based LSP Setup using LDP", RFC 3212, January 2002. |
[RFC4447] | Martini, L., Rosen, E., El-Aawar, N., Smith, T. and G. Heron, "Pseudowire Setup and Maintenance Using the Label Distribution Protocol (LDP)", RFC 4447, April 2006. |
[RFC5003] | Metz, C., Martini, L., Balus, F. and J. Sugimoto, "Attachment Individual Identifier (AII) Types for Aggregation", RFC 5003, September 2007. |
[RFC5036] | Andersson, L., Minei, I. and B. Thomas, "LDP Specification", RFC 5036, October 2007. |
[RFC7267] | Martini, L., Bocci, M. and F. Balus, "Dynamic Placement of Multi-Segment Pseudowires", RFC 7267, June 2014. |