Network Working Group Luca Martini
Internet Draft Chris Metz
Expiration Date: January 2008 Thomas D. Nadeau
Intended status: Standards Track Cisco Systems Inc.
Matthew Bocci Mike Duckett
Florin Balus Bellsouth
Mustapha Aissaoui
Alcatel-Lucent
July 2007
Segmented Pseudo Wire
draft-ietf-pwe3-segmented-pw-05.txt
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
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 describes how to connect pseudo wires (PW) between two
distinct PW control planes or PSN domains. The PW control planes may
belong to independent autonomous systems, or the PSN technology is
heterogeneous, or a PW might need to be aggregated at a specific PSN
point. The PW packet data units are simply switched from one PW to
Martini, et al. [Page 1]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
another without changing the PW payload.
Martini, et al. [Page 2]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
Table of Contents
1 Specification of Requirements ........................ 4
2 Terminology .......................................... 4
3 Introduction ......................................... 5
4 General Description .................................. 7
5 PW Switching and Attachment Circuit Type ............. 10
6 Applicability ........................................ 10
7 PW-MPLS to PW-MPLS Control Plane Switching ........... 11
7.1 Static Control plane switching ....................... 11
7.2 Two LDP control planes using the same FEC type ....... 12
7.2.1 FEC 129 Active/Passive T-PE Election Procedure ....... 12
7.3 LDP FEC 128 to LDP using the generalized FEC 129 ..... 12
7.4 LDP PW switching point TLV ........................... 13
7.4.1 PW Switching Point Sub-TLVs .......................... 14
7.4.2 Adaptation of Interface Parameters ................... 15
7.5 Group ID ............................................. 16
7.6 PW Loop Detection .................................... 16
8 PW-MPLS to PW-L2TPv3 Control Plane Switching ......... 16
8.1 Static MPLS and L2TPv3 PWs ........................... 16
8.2 Static MPLS PW and Dynamic L2TPv3 PW ................. 17
8.3 Static L2TPv3 PW and Dynamic LDP/MPLS PW ............. 17
8.4 Dynamic LDP/MPLS and L2TPv3 PWs ...................... 17
8.4.1 Session Establishment ................................ 17
8.4.2 Adaptation of PW Status message ...................... 18
8.4.3 Session Tear Down .................................... 18
8.5 Adaptation of L2TPv3 AVPs to Interface Parameters .... 19
8.6 Switching Point TLV in L2TPv3 ........................ 20
8.7 L2TPv3 and MPLS PW Data Plane ........................ 20
8.7.1 PWE3 Payload Convergence and Sequencing .............. 20
8.7.2 Mapping .............................................. 21
9 Operation And Management ............................. 22
9.1 Extensions to VCCV to Support Switched PWs ........... 22
9.2 PW-MPLS to PW-MPLS OAM Data Plane Indication ......... 22
9.2.1 PW Label TTL Method .................................. 22
9.2.2 MH-VCCV CW Method .................................... 23
9.3 Signaling OAM Capabilities for Switched Pseudo Wires . 23
9.3.1 OAM Capability for MH PWs Demultiplexed using MPLS ... 24
9.3.2 OAM Capability for MH PWs Demultiplexed using L2TPv3 . 24
9.4 Detailed MH-VCCV Procedures .......................... 24
9.4.1 PW Label TTL Method .................................. 25
9.4.2 MH-VCCV CW Method .................................... 25
9.5 Tracing Switched PW Switch Points Using MH-VCCV ...... 26
9.6 Mapping Switched Pseudo Wire Status .................. 26
9.6.1 S-PE initiated PW status messages .................... 28
9.6.1.1 Local PW2 reverse direction fault .................... 29
Martini, et al. [Page 3]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
9.6.1.2 Local PW1 reverse direction fault .................... 29
9.6.1.3 Local PW2 forward direction fault .................... 29
9.6.1.4 Local PW1 forward direction fault .................... 30
9.6.1.5 Clearing Faults ...................................... 30
9.6.2 PW status messages and S-PE TLV processing ........... 30
9.6.3 T-PE processing of PW status messages ................ 30
9.7 Pseudowire Status Negotiation Procedures ............. 31
9.8 Status Dampening ..................................... 31
10 Peering Between Autonomous Systems ................... 31
11 Security Considerations .............................. 31
11.1 Data Plane Security .................................. 31
11.2 Control Protocol Security ............................ 32
12 IANA Considerations .................................. 33
12.1 Channel Type ......................................... 33
12.2 L2TPv3 AVP ........................................... 33
12.3 LDP TLV TYPE ......................................... 33
12.4 LDP Status Codes ..................................... 33
12.5 L2TPv3 Result Codes .................................. 34
12.6 New IANA Registries .................................. 34
13 Intellectual Property Statement ...................... 34
14 Full Copyright Statement ............................. 35
15 Acknowledgments ...................................... 35
16 Normative References ................................. 35
17 Informative References ............................... 36
18 Author Information ................................... 37
1. Specification of Requirements
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].
2. Terminology
- PW Terminating Provider Edge (T-PE). A PE where the customer-
facing attachment circuits (ACs) are bound to a PW forwarder. A
Terminating PE is present in the first and last segments of a
MS-PW. This incorporates the functionality of a PE as defined in
[RFC3985].
Martini, et al. [Page 4]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
- Single-Segment Pseudo Wire (SS-PW). A PW setup directly between
two T-PE devices. Each PW in one direction of a SS-PW traverses
one PSN tunnel that connects the two T-PEs.
- Multi-Segment Pseudo Wire (MS-PW). A static or dynamically
configured set of two or more contiguous PW segments that behave
and function as a single point-to-point PW. Each end of a MS-PW
by definition MUST terminate on a T-PE.
- PW Segment. A part of a single-segment or multi-segment PW, which
is set up between two PE devices, T-PEs and/or S-PEs.
- PW Switching Provider Edge (S-PE). A PE capable of switching the
control and data planes of the preceding and succeeding PW
segments in a MS-PW. The S-PE terminates the PSN tunnels of the
preceding and succeeding segments of the MS-PW. It is therefore a
- PW switching point for a MS-PW. A PW Switching Point is never the
S-PE and the T-PE for the same MS-PW. A PW switching point runs
necessary protocols to setup and manage PW segments with other PW
switching points and terminating PEs.
3. Introduction
PWE3 defines the signaling and encapsulation techniques for
establishing SS-PWs between a pair of ultimate PEs and in the vast
majority of cases this will be sufficient. MS-PWs come into play in
two general cases:
-i. When it is not possible, desirable or feasible to establish
a PW control channel between the ultimate source and
destination PEs. At a minimum PW control channel
establishment requires knowledge of and reachability to the
remote (ultimate) PE IP address. The local (ultimate) PE may
not have access to this information related to topology,
operational or security constraints.
An example is the inter-AS L2VPN scenario where the ultimate
PEs reside in different provider networks (ASes) and it is
the practice to MD5-key all control traffic exchanged
between two networks. Technically a SS-PW could be used but
this would require MD5-keying on ALL ultimate source and
destination PE nodes. An MS-PW allows the providers to
confine MD5 key administration to just the PW switching
points connecting the two domains.
A second example might involve a single AS where the PW
Martini, et al. [Page 5]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
setup path between the ultimate PEs is computed by an
external entity (i.e. client-layer routing protocol). Assume
a full mesh of PWE3 control channels established between
PE-A, PE-B and PE-C. A client-layer L2 connection tunneled
through a PW is required between ultimate PE-A and PE-C. The
external entity computes a PW setup path that passes through
PE-B. This results in two discrete PW segments being built:
one between PE-A and PE-B and one between PE-B and PE-C. The
successful client-layer L2 connection between ultimate PE-A
and ultimate PE-C requires that PE-B performs the PWE3
switching process.
A third example involves the use of PWs in hierarchical
IP/MPLS networks. Access networks connected to a backbone
use PWs to transport customer payloads between customer
sites serviced by the same access network and up to the edge
of the backbone where they can be terminated or switched
onto a succeeding PW segment crossing the backbone. The use
of PWE3 switching between the access and backbone networks
can potentially reduce the PWE3 control channels and routing
information processed by the access network T-PEs.
It should be noted that PWE3 switching does not help in any
way to reduce the amount of PW state supported by each
access network T-PE.
-ii. PWE3 signaling and encapsulation protocols are different.
The ultimate PEs are connected to networks employing
different PW signaling and encapsulation protocols. In this
case it is not possible to use a SS-PW. A MS-PW with the
appropriate interworking performed at the PW switching
points can enable PW connectivity between the ultimate PEs
in this scenario.
There are four different signaling protocols that are defined to
signal PWs:
-i. Static configuration of the PW (MPLS or L2TPv3).
-ii. LDP using FEC 128
-iii. LDP using the generalized FEC 129
-iv. L2TPv3
Martini, et al. [Page 6]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
4. General Description
A pseudo-wire (PW) is a tunnel established between two provider edge
(PE) nodes to transport L2 PDUs across a packet switched network
(PSN) as described in Figure 1 and in [PWE3-ARCH]. Many providers are
looking at PWs as a means of migrating existing (or building new)
L2VPN services (i.e. Frame-Relay, ATM, Ethernet) on top of a PSN by
using PWs. PWs may span multiple autonomous systems of the same or
different provider networks. In these scenarios PW control channels
(i.e. targeted LDP, L2TPv3) and PWs will cross AS boundaries.
Inter-AS L2VPN functionality is currently supported and several
techniques employing MPLS encapsulation and LDP signaling have been
documented [2547BIS]. It is also straightforward to support the same
inter-AS L2VPN functionality employing L2TPv3. In this document we
define methodology to switch a PW between two PW control planes.
|<-------------- Emulated Service ---------------->|
| |
| |<------- Pseudo Wire ------>| |
| | | |
| | |<-- PSN Tunnel -->| | |
| V V V V |
V AC +----+ +----+ AC V
+-----+ | | PE1|==================| PE2| | +-----+
| |----------|............PW1.............|----------| |
| CE1 | | | | | | | | CE2 |
| |----------|............PW2.............|----------| |
+-----+ ^ | | |==================| | | ^ +-----+
^ | +----+ +----+ | | ^
| | Provider Edge 1 Provider Edge 2 | |
| | | |
Customer | | Customer
Edge 1 | | Edge 2
| |
native service native service
Figure 1: PWE3 Reference Model
There are two methods for switching a PW between two PW control
planes. In the first method (Figure 2), the two control planes
terminate on different PEs.
Martini, et al. [Page 7]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
|<------------Emulated Service---------->|
| PSN PSN |
AC | |<-1->| |<-2->| | AC
| V V V V V V |
| +----+ +-----+ +----+ +----+ |
+----+ | | |=====| | | |=====| | | +----+
| |-------|......PW1.......|--AC1--|......PW2......|-------| |
| CE1| | | | | | | | | | | |CE2 |
| |-------|......PW3.......|--AC2--|......PW4......|-------| |
+----+ | | |=====| | | |=====| | | +----+
^ +----+ +-----+ +----+ +----+ ^
| PE1 PE2 PE3 PE4 |
| ^ ^ |
| | | |
| PW stitching points |
| |
| |
|<-------------------- Emulated Service ---------------->|
Figure 2: PW Switching using ACs Reference Model
In Figure 2, pseudo wires in two separate PSNs are stitched together
using native service attachment circuits. PE2 and PE3 only run the
control plane for the PSN to which they are directly attached. At PE2
and PE3, PW1 and PW2 are connected using attachment circuit AC1,
while PW3 and PW4 are connected using attachment circuit AC2.
Native |<-----------Pseudo Wire----------->| Native
Layer2 | | Layer2
Service | |<-PSN1-->| |<--PSN2->| | Service
(AC) V V V V V V (AC)
| +----+ +-----+ +----+ |
+----+ | | PE1|=========| PE2 |=========| PE3| | +----+
| |----------|........PW1.........|...PW3........|----------| |
| CE1| | | | | | | | | |CE2 |
| |----------|........PW2.........|...PW4........|----------| |
+----+ | | |=========| |=========| | | +----+
^ +----+ +-----+ +----+ | ^
| Provider Edge 1 ^ Provider Edge 3 |
| (Ultimate PE) | (Ultimate PE) |
| | |
| PW switching point |
| (Optional PW adaptation function) |
| |
|<------------------- Emulated Service ------------------>|
Figure 3: PW Control Plane Switching Reference Model
Martini, et al. [Page 8]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
In Figure 3 PE2 runs two separate control planes: one toward PE1, and
one Toward PE3. The PW switching point is at PE2 which is configured
to connect PW1 and PW3 together to complete the multi-hop PW between
PE1 and PE3. PW1 and PW3 MUST be of the same PW type, but PSN1 and
PSN2 need not be the same technology. In the latter case, if the PW
is switched to a different technology, the PEs must adapt the PDU
encapsulation between the different PSN technologies. In the case
where PSN1 and PSN2 are the same technology the PW PDU does not need
to be modified, and PDUs are then switched between the pseudo-wires
at the PW label level.
It should be noted that it is possible to adapt one PSN technology to
a different one, for example MPLS over an IP or GRE [RFC4023]
encapsulation, but this is outside the scope of this document.
Further, one could perform an interworking function on the PWs
themselves at the PW switching point, allowing conversion from one PW
type to another, but this is also outside the scope of this document.
This document describes procedures for building multi-segment
pseudowires using manual configuration of the switching point PE2.
Other documents may build on this base specification to automate the
configuration and selection of PE2. It should also be noted that a PW
can traverse multiple PW switching points along it's path, and the
edge PEs will not require any specific knowledge of how many PW
switching points the PW has traversed (though this may be reported
for troubleshooting purposes).
In general the approach taken is to connect the individual control
planes by passing along any signaling information immediately upon
reception. First the PW switching point is configured to switch a
SS-PW from a specific peer to another SS-PW destined for a different
peer. No control messages are exchanged yet as the PW switching point
PE does not have enough information to actually initiate the PW setup
messages. However, if a session does not already exist, a control
protocol (LDP/L2TP) session is setup. In this model the MS-PW setup
is starting from the T-PE devices. Next once the T-PE is configured
it sends the PW control setup messages. These messages are received,
and immediately used to form the PW setup messages for the next SS-PW
of the MS-PW. If one of the Switching PEs doesn't accept an LDP Label
Mapping message then a Label Release message is sent back to the
originator T-PE. A MS-PW is declared UP when all the constituent SS-
PWs are UP.
Martini, et al. [Page 9]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
5. PW Switching and Attachment Circuit Type
The PWs in each PSN are established independently, with each PSN
being treated as a separate PWE3 domain. For example, in Figure 2 for
case of MPLS PSNs, PW1 is setup between PE1 and PE2 using the LDP
targeted session as described in [RFC4447], and at the same time a
separate pseudo wire, PW2, is setup between PE3 and PE4. The ACs for
PW1 and PW2 at PE2 and PE3 MUST be configured such that they are the
same PW type e.g. ATM VCC, Ethernet VLAN, etc.
6. Applicability
When using a PSN to transport a PW, the performance of the PW is
equal to the performance of the PSN plus any impairments introduced
by the PW layer itself. Therefore it is not possible for the PW to
provide better performance than the PSN over which it is transported.
Therefore, it is necessary to carefully consider the order in which
different layer networks are stacked upon each other within a
'network stack' in order to provide the topmost service with the
performance that it requires. This performance inheritance within a
PW/PSN relationship is vertical because the PW is vertically stacked
upon its PSN.
Note: Due to this vertical performance inheritance and the different
performance provided by, and the characteristics of, each networking
mode it is generally advisable to stack modes that less efficiently
provide dedicated bandwidth/performance on top of modes that more
efficiently provide dedicated bandwidth/performance.
When performing peer partition interworking the PW inherits the
performance of the PSN partition that provides the worst performance
of all the peered PSN partitions over which the PW is transported.
Therefore it is not possible for the PW to receive (or provide)
better performance than the worst performing of the peered PSN
partitions over which it is transported.
Therefore, it is necessary to carefully consider which PSN modes
(and/or technologies) it is appropriate to peer with one another in
order to provide the service with the performance that it requires.
This is a horizontal performance relationship because the server
layer partitions are peered with each other horizontally.
Martini, et al. [Page 10]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
7. PW-MPLS to PW-MPLS Control Plane Switching
Referencing Figure 3, PE2 sets up a PW1 using the LDP targeted
session as described in [RFC4447], at the same time a separate pseudo
wire PW3 is setup to PE3. Each PW is configured independently on the
PEs, but on PE2 pseudo wire PW1 is connected to pseudo wire PW3. PDUs
are then switched between the pseudo-wires at the PW label level.
Hence the data plane does not need any special knowledge of the
specific pseudo wire type. A simple standard MPLS label swap
operation is sufficient to connect the two PWs, and in this case the
PW adaptation function is not used.
This process can be repeated as many times as necessary, the only
limitation to the number of PW switching points traversed is imposed
by the TTL field of the PW MPLS Label. The setting of the TTL is a
matter of local policy on the originating PE, but SHOULD be set to
255.
There are three MPLS to MPLS PW control planes:
-i. Static configuration of the PW.
-ii. LDP using FEC 128
-iii. LDP using the generalized FEC 129
This results in four distinct PW switching situations that are
significantly different, and must be considered in detail:
-i. PW Switching between two static control planes.
-ii. Static Control plane switching to LDP dynamic control plane.
-iii. Two LDP control planes using the same FEC type
-iv. LDP using FEC 128, to LDP using the generalized FEC 129
7.1. Static Control plane switching
In the case of two static control planes the PW switching point MUST
be configured to direct the MPLS packets from one PW into the other.
There is no control protocol involved in this case. When one of the
control planes is a simple static PW configuration and the other
control plane is a dynamic LDP FEC 128 or generalized PW FEC, then
the static control plane should be considered identical to an
attachment circuit (AC) in the reference model of Figure 1. The
switching point PE SHOULD signal the proper PW status if it detects a
failure in sending or receiving packets over the static PW. Because
the PW is statically configured, the status communicated to the
dynamic LDP PW will be limited to local interface failures. In this
case, the PW switching point PE behaves in a very similar manner to a
T-PE, assuming an active role. This means that the S-PE will
immediately send the LDP Label Mapping message if the static PW is
deemed to be UP.
Martini, et al. [Page 11]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
7.2. Two LDP control planes using the same FEC type
As stated in a section above, the PW switching point PE should assume
an initial passive role. This means that once independent PWs are
configured on the switching point, the LSR does not advertise the LDP
PW FEC mapping until it has received at least one of the two PW LDP
FECs from a remote PE. This is necessary because the switching point
LSR does not know a priori what the interface parameter field in the
initial FEC advertisement will contain.
The PWID is a unique number between each pair of PEs. Hence Each SS-
PW that forms an MS-PW may have a different PWID. In the case of The
Generalized PW FEC, the AGI/SAI/TAI may have to also be different for
some, or sometimes all, SS-PWs.
7.2.1. FEC 129 Active/Passive T-PE Election Procedure
When a MS-PW is signaled using FEC 129, each T-PE might independently
start signaling the MS-PW. If the MS-PW path is not statically
configured, in certain cases the signaling procedure could result in
an attempt to setup each direction of the MS-PW through different
paths. To avoid this situation one of the T-PE MUST start the PW
signaling (active role), while the other waits to receive the LDP
label mapping before sending the respective PW LDP label mapping
message. (passive role). When the MS-PW path not statically
configured, the Active T-PE (the ST-PE) and the passive T-PE (the
TT-PE) MUST be identified before signaling is initiated for a given
MS-PW.
The determination of which T-PE assume the active role SHOULD be done
as follows:
the SAII and TAII are compared as unsigned integers, if the SAII is
bigger then the T-PE assumes the active role.
The selection process to determine which T-PE assumes the active role
MAY be superseded by manual provisioning.
7.3. LDP FEC 128 to LDP using the generalized FEC 129
When a PE is using the generalized FEC 129, there are two distinct
roles that a PE can assume: active and passive. A PE that assumes the
active role will send the LDP PW setup message, while a passive role
PE will simply reply to an incoming LDP PW setup message. The PW
switching point PE, will always remain passive until a PWID FEC 128
LDP message is received, which will cause the corresponding
Martini, et al. [Page 12]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
generalized PW FEC LDP message to be formed and sent. If a
generalized FEC PW LDP message is received while the switching point
PE is in a passive role, the corresponding PW FEC 128 LDP message
will be formed and sent.
PW IDs need to be mapped to the corresponding AGI/TAI/SAI and vice
versa. This can be accomplished by local PW switching point
configuration, or by some other means, such as some form of auto
discovery. Such other means are outside the scope of this document.
7.4. LDP PW switching point TLV
The edge to edge PW might traverse several switching points, in
separate administrative domains. For management and troubleshooting
reasons it is useful to record information about the switching points
that the PW traverses. This is accomplished by using a PW switching
point TLV.
Note that sending the PW switching point TLV is OPTIONAL, however the
PE or SPE MUST process the TLV upon reception. The PW switching point
TLV is appended to the PW FEC at each switching point and is encoded
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1|0| PW sw TLV (0x096D) | PW sw TLV Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Variable Length Value |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Variable Length Value |
| " |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
[note] LDP TLV type is pending IANA approval.
- PW sw TLV Length
Specifies the total length of all the following PW switching
point TLV fields in octets
- Type
Encodes how the Value field is to be interpreted.
Martini, et al. [Page 13]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
- Length
Specifies the length of the Value field in octets.
- Value
Octet string of Length octets that encodes information to be
interpreted as specified by the Type field.
PW Switching point TLV Types are assigned by IANA according the the
process defined in the "IANA Allocations" section below.
The PW switching Point TLV is an OPTIONAL TLV that can appear once
for each switching point traversed.
7.4.1. PW Switching Point Sub-TLVs
Below are details specific to PW Switching Point Sub-TLVs described
in this document:
- PW ID of last PW segment traversed.
This sub-TLV type contains a PW ID in the format of the PWID
described in [RFC4447]
- PW Switching Point description string.
An optional description string of text up to 80 characters long.
- IP address of PW Switching Point.
The IP V4 or V6 address of the PW Switching Point. This is an
OPTIONAL Sub-TLV.
- MH VCCV Capability Indication.
- The FEC of last PW segment traversed.
The Attachment Identifier of the last PW segment traversed. This
is coded in the following format:
Martini, et al. [Page 14]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AGI Type | Length | Value |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ AGI Value (contd.) ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AII Type | Length | Value |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ SAII Value (contd.) ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AII Type | Length | Value |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ TAII Value (contd.) ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- L2 PW address of PW Switching Point (recommended format)
This sub-TLV type contains a L2 PW address of PW Switching Point in
the format described in [PW-ADDR]. This includes the AII type field ,
and length, as well as the L2 PW address without the AC ID portion
(if applicable).
7.4.2. Adaptation of Interface Parameters
[RFC4447] defines several interface parameters, which are used by the
Network Service Processing (NSP) to adapt the PW to the Attachment
Circuit (AC). The interface parameters are only used at the end
points, and MUST be passed unchanged across the PW switching point.
However the following interface parameters MAY be modified as
follows:
- 0x03 Optional Interface Description string This Interface
parameter MAY be modified, or altogether removed from the FEC
element depending on local configuration policies.
- 0x09 Fragmentation indicator This parameter MAY be inserted in
the FEC by the switching point if it is capable of re-assembly of
fragmented PW frames according to [PWE3-FRAG].
Martini, et al. [Page 15]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
- 0x0C VCCV parameter The switching point MAY not be able to
inspect the VCCV control channel. If the new MH-VCCV sub-TLV is
present, the VCCV parameter MUST be ignored in order to avoid
conflicts with the new TLV.
7.5. Group ID
The Group ID (GR ID) is used to reduce the number of status messages
that need to be sent by the PE advertising the PW FEC. The GR ID has
local significance only, and therefore MUST be mapped to a unique GR
ID allocated by the PW switching point PE.
7.6. PW Loop Detection
A switching point PE SHOULD check the OPTIONAL PW switching Point
TLV, to verify if it's own IP address appears in it. If it's IP
address appears in a received PW switching Point TLV, the PE SHOULD
break the loop, and send a label release message with the following
error code:
Assignment E Description
0x0000003A 0 "PW Loop Detected"
[ note: error code pending IANA allocation ]
8. PW-MPLS to PW-L2TPv3 Control Plane Switching
Both MPLS and L2TPv3 PWs may be static or dynamic. This results in
four possibilities when switching between L2TPv3 and MPLS.
-i. Switching between MPLS and L2TPv3 static control planes.
-ii. Switching between a static MPLS PW and a dynamic L2TPv3 PW.
-iii. Switching between a static L2TPv3 PW and a dynamic MPLS PW.
-iv. Switching between a dynamic MPLS PW and a dynamic L2TPv3 PW.
8.1. Static MPLS and L2TPv3 PWs
In the case of two static control planes, the PW switching point MUST
be configured to direct packets from one PW into the other. There is
no control protocol involved in this case. The configuration MUST
include which MPLS VC Label maps to which L2TPv3 Session ID (and
associated Cookie, if present) as well as which MPLS Tunnel Label
maps to which PE destination IP address.
Martini, et al. [Page 16]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
8.2. Static MPLS PW and Dynamic L2TPv3 PW
When a statically configured MPLS PW is switched to a dynamic L2TPv3
PW, the static control plane should be considered identical to an
attachment circuit (AC) in the reference model of Figure 1. The
switching point PE SHOULD signal the proper PW status if it detects a
failure in
sending or receiving packets over the static PW. Because the PW is
statically configured, the status communicated to the dynamic L2TPv3
PW will be limited to local interface failures. In this case, the PW
switching point PE behaves in a very similar manner to a T-PE,
assuming an active role.
8.3. Static L2TPv3 PW and Dynamic LDP/MPLS PW
When a statically configured L2TPv3 PW is switched to a dynamic
LDP/MPLS PW, then the static control plane should be considered
identical to an attachment circuit (AC) in the reference model of
Figure 1. The switching point PE SHOULD signal the proper PW status
(via an L2TPv3 SLI message) if it detects a failure in sending or
receiving packets over the static PW. Because the PW is statically
configured, the status communicated to the dynamic LDP/MPLS PW will
be limited to local interface failures. In this case, the PW
switching point PE behaves in a very similar manner to a T-PE,
assuming an active role.
8.4. Dynamic LDP/MPLS and L2TPv3 PWs
When switching between dynamic PWs, the switching point always
assumes an initial passive role. Thus, it does not initiate an
LDP/MPLS or L2TPv3 PW until it has received a connection request
(Label Mapping or ICRQ) from one side of the node. Note that while
MPLS PWs are made up of two unidirectional LSPs bonded together by
FEC identifiers, L2TPv3 PWs are bidirectional in nature, setup via a
3-message exchange (ICRQ, ICRP and ICCN). Details of Session
Establishment, Tear Down, and PW Status signaling are detailed below.
8.4.1. Session Establishment
When the PW switching point receives an L2TPv3 ICRQ message, the
identifying AVPs included in the message are mapped to FEC
identifiers and sent in an LDP label mapping message. Conversely, if
an LDP Label Mapping message is received, it is either mapped to an
ICRP message or causes an L2TPv3 session to be initiated by sending
Martini, et al. [Page 17]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
an ICRQ.
Following are two example exchanges of messages between LDP and
L2TPv3. The first is a case where an L2TPv3 T-PE initiates an MS-PW,
the second is a case where an MPLS T-PE initiates an MS-PW.
PE 1 (L2TPv3) PW Switching Node PE3 (MPLS/LDP)
AC "Up"
L2TPv3 ICRQ --->
LDP Label Mapping --->
AC "UP"
<--- LDP Label Mapping
<--- L2TPv3 ICRP
L2TPv3 ICCN --->
<-------------------- MH PW Established ------------------>
PE 1 (MPLS/LDP) PW Switching Node PE3 (L2TPv3)
AC "Up"
LDP Label Mapping --->
L2TPv3 ICRQ --->
<--- L2TPv3 ICRP
<--- LDP Label Mapping
L2TPv3 ICCN --->
AC "Up"
<-------------------- MH PW Established ------------------>
8.4.2. Adaptation of PW Status message
L2TPv3 uses the SLI message to indicate a interface status change
(such as the interface transitioning from "Up" or "Down"). MPLS/LDP
PWs either signal this via an LDP Label Withdraw or the PW Status
Notification message defined in section 4.4 of [RFC4447].
8.4.3. Session Tear Down
L2TPv3 uses a single message, CDN, to tear down a pseudowire. The CDN
message translates to a Label Withdraw message in LDP. Following are
two example exchanges of messages between LDP and L2TPv3. The first
is a case where an L2TPv3 T-PE initiates the termination of an MS-PW,
the second is a case where an MPLS T-PE initiates the termination of
an MS-PW.
Martini, et al. [Page 18]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
PE 1 (L2TPv3) PW Switching Node PE3 (MPLS/LDP)
AC "Down"
L2TPv3 CDN --->
LDP Label Withdraw --->
AC "Down"
<-- LDP Label Release
<--------------- MH PW Data Path Down ------------------>
PE 1 (MPLS LDP) PW Switching Node PE3 (L2TPv3)
AC "Down"
LDP Label Withdraw --->
L2TPv3 CDN -->
<-- LDP Label Release
AC "Down"
<---------------- MH PW Data Path Down ------------------>
8.5. Adaptation of L2TPv3 AVPs to Interface Parameters
[RFC4447] defines several interface parameters which MUST be mapped
to the equivalent AVPs in L2TPv3 setup messages.
* Interface MTU
The Interface MTU parameter is mapped directly to the L2TP
Interface MTU AVP defined in [L2TP-L2VPN]
* Max Number of Concatenated ATM cells
This interface parameter is mapped directly to the L2TP "ATM
Maximum Concatenated Cells AVP" described in section 6 of [L2TP-
ATM].
* Optional Interface Description String
This string may be carried as the "Call-Information AVP"
described in section 2.2 of [L2TP-INFOMSG]
* PW Type
The PW Type defined in [RFC4446] is mapped to the L2TPv3 "PW
Type" AVP defined in [L2TPv3].
Martini, et al. [Page 19]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
* PW ID (FEC 128)
For FEC 128, the PW ID is mapped directly to the L2TPv3 "Remote
End ID" AVP defined in [L2TPv3].
* Generalized FEC 129 SAI/TAI
Section 4.3 of [L2TP-L2VPN] defines how to encode the SAI and TAI
parameters. These can be mapped directly.
Other interface parameter mappings will either be defined in a future
version of this document, or are unsupported when switching between
LDP/MPLS and L2TPv3 PWs.
8.6. Switching Point TLV in L2TPv3
When translating between LDP and L2TPv3 control messages, the PW
Switching Point TLV described earlier in this document is carried in
a single variable length L2TP AVP present in the ICRQ, ICRP messages,
and optionally in the ICCN message.
The L2TP "Switching Point AVP" is Attribute Type TBA-L2TP-AVP-1. The
AVP MAY be hidden (the L2TP AVP H-bit may be 0 or 1), the length of
the AVP is 6 plus the length of the series of Switching Point sub-
TLVs included in the AVP, and the AVP MUST NOT be marked Mandatory
(the L2TP AVP M-bit MUST be 0).
8.7. L2TPv3 and MPLS PW Data Plane
When switching between an MPLS and L2TP PW, packets are sent in their
entirety from one PW to the other, replacing the MPLS label stack
with the L2TPv3 and IP header or vice versa. There are some
situations where an additional amount of interworking must be
provided between the two data planes at the PW switching node.
8.7.1. PWE3 Payload Convergence and Sequencing
Section 5.4 of [PWE3-ARCH] discusses the purpose of the various shim
headers necessary for enabling a pseudowire over an IP or MPLS PSN.
For L2TPv3, the Payload Convergence and Sequencing function is
carried out via the Default L2-Specific Sublayer defined in [L2TPv3].
For MPLS, these two functions (together with PSN Convergence) are
carried out via the MPLS Control Word. Since these functions are
different between MPLS and L2TPv3, interworking between the two may
be necessary.
Martini, et al. [Page 20]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
The L2TP L2-Specific Sublayer and MPLS Control Word are shim headers
which in some cases are not necessary to be present at all. For
example, an Ethernet PW with sequencing disabled will generally not
require an MPLS Control Word or L2TP Default L2-Specific Sublayer to
be present at all. In this case, Ethernet frames are simply sent from
one PW to the other without any modification beyond the MPLS and
L2TP/IP encapsulation and decapsulation.
The following section offers guidelines for how to interwork between
L2TP and MPLS for those cases where the Payload Convergence,
Sequencing, or PSN Convergence functions are necessary on one or both
sides of the switching node.
8.7.2. Mapping
The MPLS Control Word consists of (from left to right):
-i. These bits are always zero in MPLS are not necessary to be
mapped to L2TP.
-ii. These six bits may be used for Payload Convergence depending
on the PW type. For ATM, the first four of these bits are
defined in [PWE3-ATM]. These map directly to the bits
defined in [L2TP-ATM]. For Frame Relay, these bits indicate
how to set the bits in the Frame Relay header which must be
regenerated for L2TP as it carries the Frame Relay header
intact.
-iii. L2TP determines its payload length from IP. Thus, this
Length field need not be carried directly to L2TP. This
Length field will have to be calculated and inserted for
MPLS when necessary.
-iv. The Default L2-Specific Sublayer has a sequence number with
different semantics than that of the MPLS Control Word. This
difference eliminates the possibility of supporting
sequencing across the MS-PW by simply carrying the sequence
number through the switching point transparently. As such,
sequence numbers MAY be supported by checking the sequence
numbers of packets arriving at the switching point and
regenerating a new sequence number in the proper format for
the PW on egress. If this type of sequence interworking at
the switching node is not supported, and a T-PE requests
sequencing of all packets via the L2TP control channel
during session setup, the switching node SHOULD NOT allow
the session to be established by sending a CDN message with
Result Code set to 17 "sequencing not supported" (subject to
Martini, et al. [Page 21]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
IANA Assignment).
9. Operation And Management
9.1. Extensions to VCCV to Support Switched PWs
Single-hop pseudowires are signaled using the VCCV parameter included
in the interface parameter field of the PW ID FEC TLV or the sub-TLV
interface parameter of the Generalized PW ID FEC TLV as described in
[VCCV]. When a switching point exist between PE nodes, it is
required to be able to continue operating VCCV end-to-end across a
switching point and to provide the ability to trace the path of the
MS-PW over any number of segments.
This document provides a couple of methods for achieving these two
objectives. The first method is based on re-using the existing VCCV
CW and decrementing the TTL of the PW label at each hop in the path
of the MS-PW. This method is suitable to deployments where T-PE
nodes continue to use the SS-PW control word and where S-PE nodes are
capable of decrementing the TTL field for all PW packets without
overwriting it. The second method is based on using a new MH-VCCV
control word and decrementing the TTL field in the control word. This
method is suitable to deployments where S-PE nodes cannot rely the
TTL in the PW label to identify if a VCCV packet is destined to this
node or not.
9.2. PW-MPLS to PW-MPLS OAM Data Plane Indication
9.2.1. PW Label TTL Method
This method reuses the SS-PW control word as described in [VCCV].
VCCV control packets are indicated using the following CW in the
packet header:
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 0 0 1|Version| Reserved = 0 | Channel Type = 0x21 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Martini, et al. [Page 22]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
9.2.2. MH-VCCV CW Method
The VCCV control packets are indicated using a new Multi-hop
pseudowire CW in the packets header:
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 0 0 1| 0x00 | Reserved = 0 | Channel Type = TBD |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MH-TTL | MH-VCCV sub-TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
9.3. Signaling OAM Capabilities for Switched Pseudo Wires
Like in SS-PW, MS-PW VCCV capabilities are signaled using the VCCV
parameter included in the interface parameter field of the PW ID FEC
TLV or the sub-TLV interface parameter of the Generalized PW ID FEC
TLV as described in [VCCV]. The new MH-VCCV CW is indicated using a
new CC type in the VCCV capability parameter field.
In Figure 1 T-PE1 uses the VCCV parameter included in the interface
parameter field of the PW ID FEC TLV or the sub-TLV interface
parameter of the Generalized PW ID FEC TLV to indicate to the far end
T-PE2 what VCCV capabilities T-PE1 supports. This is the same VCCV
parameter as would be used if T-PE1 and T-PE2 were connected directly
by T-LDP. S-PE2, which is a PW switching point, as part of the
adaptation function for interface parameters, processes locally the
VCCV parameter then passes it to T-PE2. If there were multiple S-PEs
on the path between T-PE1 and T-PE2, each would carry out the same
processing, passing along the VCCV parameter. The local processing of
the VCCV parameter removes CC Types specified by the originating T-
PE, except PWE3 Control Word and the new MH-VCCV Control Word that
are passed unchanged. For example, if T-PE1 indicates as supported CC
Types both Control Word and Router Alert then the S-PE removes the
Router Alert CC Type, leaving Control Word unchanged and then passes
the modified VCCV parameter to the next S-PE along the path.
The far end T-PE (T-PE2) receives the VCCV parameter indicating that
one or both Control Word CC types only if they are supported by the
initial T-PE (T-PE1) and all S-PEs along the PW path. If the VCCV
parameter indicates both the CW CC type and the new MH-VCCV CW CC
types are supported, then the T-PE1 is indicating it can receive both
types. If T-PE2 also supports both types, T-PE2 uses the CW CC type
Martini, et al. [Page 23]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
in preference.
9.3.1. OAM Capability for MH PWs Demultiplexed using MPLS
The MH-VCCV parameter ID is defined as follows in [RFC4446]:
Parameter ID Length Description
0x0c 4 VCCV
The format of the VCCV parameter field is 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 0
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0x0c | 0x04 | CC Types | CV Types |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0x01 Type 1: PWE3 control word with 0001b as first nibble
as defined in [RFC4385].
0x02 Type 2: MPLS Router Alert Label.
0x04 Type 3: MPLS PW De-multiplexor Label TTL = 1 (Type 3).
0x08 Type 4: MH-VCCV Control Word
When using the PW label TTL method, the T-PE signals CC type 1. When
using the MH-VCCV CW method, the T-PE signal CC type 4.
9.3.2. OAM Capability for MH PWs Demultiplexed using L2TPv3
TBD
9.4. Detailed MH-VCCV Procedures
In order to test the end-to-end connectivity of the multi-segment PW,
a T-PE must include the FEC used in the last segment to the
destination T-PE. This information is either configured at the
sending T-PE or is obtained by processing the corresponding sub-TLV's
of the PW switching point TLV.
Martini, et al. [Page 24]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
9.4.1. PW Label TTL Method
In Figure 1, if T-PE1, S-PE and T-PE2 support Control Word for VCCV,
then as described in Section 9.3 the control plane negotiates the
common use of Control Word for VCCV end to end.
At the S-PE the data path operations include an outer label pop,
inner label swap and new outer label push. Note that there is no
requirement for the S-PE to inspect the CW.
Thus, the end-to-end connectivity of the multi-segment pseudowire can
be verified by performing all of the following steps:
-i. T-PE forms a VCCV-ping echo request message with the FEC
matching that of the last segment PW to the destination T-
PE.
-ii. T-PE sets the inner PW label TTL to a large enough value to
allow the packet to reach the far end T-PE.
-iii. T-PE sends a VCCV packet that will follow the exact same
data path at each S-PE as that taken by data packets.
-iv. S-PE performs an outer label pop, an inner label swap with
TTL decrement, and new outer label push.
-v. There is no requirement for the S-PE to inspect the CW.
-vi. The VCCV packet is diverted to VCCV control processing at
the destination T-PE.
-vii. Destination T-PE replies using the specified reply mode,
i.e., reverse PW path or IP path.
9.4.2. MH-VCCV CW Method
TBD
Martini, et al. [Page 25]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
9.5. Tracing Switched PW Switch Points Using MH-VCCV
Although the signaling of switched PWs includes functionality to
record all switch points traversed by a particular switched
pseudowire, this information is limited to the control plane.
Specifically, this is the information which is then used to program
the actual switching hardware. In an effort to provide explicit
diagnostic capability of the data plane used by the switched
pseudowire, it is necessary in some cases to compare the control and
data planes used by a particular switched pseudowire. In these cases,
it is possible to trace the pseudowire switch points by sending
single-hop VCCV messages with TTL described above in the MH VCCV
header, and increasing TTL values. This algorithm can be used to
"walk" across the network of switching points until the ultimate PE
is reached.
Details of the operation for both methods will be provided in a
future version of the document
9.6. Mapping Switched Pseudo Wire Status
In the PW switching with attachment circuits case (Figure 2), PW
status messages indicating PW or attachment circuit faults SHOULD be
mapped to fault indications or OAM messages on the connecting AC as
defined in [PW-MSG-MAP]. If the AC connecting two PWs crosses an
administrative boundary, then the manner in which those OAM messages
are treated at the boundary is out of scope of this draft.
In the PW control plane switching case (Figure 3), there is no
attachment circuit at the PW switching point, but the two PWs are
connected together. Similarly, the status of the PWs are forwarded
unchanged from one PW to the other by the control plane switching
function. However, it may sometimes be necessary to communicate
status of one of the locally attached SS-PW at a PW switching point.
For LDP this can be accomplished by sending an LDP notification
message containing the PW status TLV, as well as an OPTIONAL PW
switching point TLV as follows:
Martini, et al. [Page 26]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
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| Notification (0x0001) | Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|1| Status (0x0300) | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|1| Status Code=0x00000028 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID=0 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message Type=0 | PW Status TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PW Status TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PW Status TLV | PWId FEC |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| |
| PWId FEC or Generalized ID FEC |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1|0| PW sw TLV (0x096D) | PW sw TLV Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Variable Length Value |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Only one PW switching point TLV can be present in this message. This
message is then relayed by each PW switching point unchanged. The T-
PE decodes the status message and the included PW switching point TLV
to detect exactly where the fault occurred. At the T-PE if there is
no PW switching point TLV included in the LDP status notification
then the status message can be assumed to have originated at the
remote T-PE.
The merging of the received T-LDP status and the local status for the
PW segments at an S-PE can be summarized as follows:
-i. When the local status for both PW segments is UP, the S-PE
passes any received AC or PW status bits unchanged, i.e.,
the status notification TLV is unchanged but the VCid in the
case of a FEC 128 TLV is set to value of the PW segment to
the next hop.
Martini, et al. [Page 27]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
-ii. When the local status for any of the PW segments is Down,
the S-PE always sends "PW Down" status bits regardless if
the received status bits from the remote node indicated AC
UP/Down or PW UP/Down."
9.6.1. S-PE initiated PW status messages
The PW fault directions are defined as follows:
+-------+
---PW1 forward---->| |-----PW2 reverse---->
S-PE1 | S-PE2 | S-PE3
<--PW1 reverse-----| |<----PW2 forward-----
+-------+
When a local fault is detected by the S-PE, a PW status message is
sent in both directions along the PW. Since there are no attachment
circuits on an S-PE, only the following status messages are relevant:
0x00000008 - Local PSN-facing PW (ingress) Receive Fault
0x00000010 - Local PSN-facing PW (egress) Transmit Fault
Each S-PE needs to store only two 32-bit PW status words for each
SS-PW: One for local failures , and one for remote failures (normally
received from another PE). The first failure will set the appropriate
bit in the 32-bit status word, and each subsequent failure will be
ORed to the appropriate PW status word. In the case of the PW status
word storing remote failures, this rule has the effect of a logical
OR operation with the first failure received on the particular SS-PW.
It should be noted that remote failures received on an S-PE are just
passed along the MS-PW unchanged while local failures detected an an
S-PE are signalled on both SS-PWs.
A T-PE can receive multiple failures from S-PEs along the MH-PW,
however only the failure from the remote closest S-PE will be stored.
The PW status word received are just ORed to any existing remote PW
status already stored on the T-PE.
Given that there are two SS-PW at a particular S-PE for a particular
MH-PW, there are for possible failure cases as follows:
Martini, et al. [Page 28]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
-i. PW2 reverse direction fault
-ii. PW1 reverse direction fault
-iii. PW2 forward direction fault
-iv. PW1 forward direction fault
It should also be noted that once a PW status notification message is
initiated at a PW switching point for a partucular pw status bit any
further status message, for the same status bit, received from an
upstream neighbor is processed locally and not forwarded until the PW
switching point original status error state is cleared.
Each S-PE along the MS-PW MUST store any PW status messages
transiting it. If more then one status message with the same PW
status bit set is received by a T-PE only the last PW status message
is stored.
9.6.1.1. Local PW2 reverse direction fault
When this failure occurs the S-PE will take the following actions:
* Send a PW status message to S-PE3 containing "0x00000010 - Local
PSN-facing PW (egress) Transmit Fault"
* Send a PW status message to S-PE1 containing "0x00000008 - Local
PSN-facing PW (ingress) Receive Fault"
* Store 0x00000010 in the local PW status word for the SS-PW toward
S-PE3.
9.6.1.2. Local PW1 reverse direction fault
When this failure occurs the S-PE will take the following actions:
* Send a PW status message to S-PE1 containing "0x00000010 - Local
PSN-facing PW (egress) Transmit Fault"
* Send a PW status message to S-PE3 containing "0x00000008 - Local
PSN-facing PW (ingress) Receive Fault"
* Store 0x00000010 in the local PW status word for the SS-PW toward
S-PE1.
9.6.1.3. Local PW2 forward direction fault
When this failure occurs the S-PE will take the following actions:
* Send a PW status message to S-PE3 containing "0x00000008 - Local
PSN-facing PW (ingress) Receive Fault"
Martini, et al. [Page 29]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
* Send a PW status message to S-PE1 containing "0x00000010 - Local
PSN-facing PW (egress) Transmit Fault"
* Store 0x00000008 in the local PW status word for the SS-PW toward
S-PE3.
9.6.1.4. Local PW1 forward direction fault
When this failure occurs the S-PE will take the following actions:
* Send a PW status message to S-PE1 containing "0x00000008 - Local
PSN-facing PW (ingress) Receive Fault"
* Send a PW status message to S-PE3 containing "0x00000010 - Local
PSN-facing PW (egress) Transmit Fault"
* Store 0x00000008 in the local PW status word for the SS-PW toward
S-PE1.
9.6.1.5. Clearing Faults
Remote PW status fault clearing messages received by an S-PE will
only be forwarded if there are no corresponding local faults on the
S-PE. ( local faults always supersede remote faults )
Once the local fault has cleared, and there is no corresponding (
same PW status bit set ) remote fault, a PW status messages is sent
out to the adjacent PEs clearing the fault.
9.6.2. PW status messages and S-PE TLV processing
When a PW status message is received that includes a S-PE TLV, the
S-PE TLV information MAY be stored, along with the contents of the PW
status Word according to the procedures described above. If
subsequent PW status message for the same pw status bit are received
the S-PE TLV will overwrite the previously stored S-PE TLV.
9.6.3. T-PE processing of PW status messages
The PW switching architecture is based on the concept that the T-PE
should process the PW LDP messages in the same manner as if it was
participating in the setup of a SS-PW. However T-PE participating a
MS-PW, SHOULD be able to process the PW switching point TLV.
Otherwise the processing of PW status messages , and other PW setup
messages is exactly as described in [RFC4447].
Martini, et al. [Page 30]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
9.7. Pseudowire Status Negotiation Procedures
Pseudowire Status signaling methodology, defined in [RFC4447], SHOULD
be transparent to the switching point.
9.8. Status Dampening
When the PW control plane switching methodology is used to cross an
administrative boundary it might be necessary to prevent excessive
status signaling changes from being propagated across the
administrative boundary. This can be achieved by using a similar
method as commonly employed for the BGP protocol route advertisement
dampening. The details of this OPTIONAL algorithm are a matter of
implementation, and are outside the scope of this document.
10. Peering Between Autonomous Systems
The procedures outlined in this document can be employed to provision
and manage MS-PWs crossing AS boundaries.
The use of more advanced mechanisms involving auto-discovery and
ordered PWE3 MS-PW signaling will be covered in a separate document.
11. Security Considerations
This document specifies the LDP and L2TPv3 extensions that are needed
for setting up and maintaining pseudowires. The purpose of setting up
pseudowires is to enable layer 2 frames to be encapsulated and
transmitted from one end of a pseudowire to the other. Therefore we
treat the security considerations for both the data plane and the
control plane.
11.1. Data Plane Security
Data plane security consideration as discussed in [RFC4447],
[L2TPv3], and [PWE3-ARCH] apply to this extension without any
changes.
Martini, et al. [Page 31]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
11.2. Control Protocol Security
General security considerations with regard to the use of LDP are
specified in section 5 of RFC 3036. Security considerations with
regard to the L2TPv3 control plane are specified in [L2TPv3]. These
considerations apply as well to the case where LDP or L2TPv3 is used
to set up PWs.
A Pseudowire connects two attachment circuits. It is important to
make sure that LDP connections are not arbitrarily accepted from
anywhere, or else a local attachment circuit might get connected to
an arbitrary remote attachment circuit. Therefore an incoming session
request MUST NOT be accepted unless its IP source address is known to
be the source of an "eligible" peer. The set of eligible peers could
be pre-configured (either as a list of IP addresses, or as a list of
address/mask combinations), or it could be discovered dynamically via
an auto-discovery protocol which is itself trusted. (Obviously if the
auto-discovery protocol were not trusted, the set of "eligible peers"
it produces could not be trusted.)
Even if a connection request appears to come from an eligible peer,
its source address may have been spoofed. So some means of
preventing source address spoofing must be in place. For example, if
all the eligible peers are in the same network, source address
filtering at the border routers of that network could eliminate the
possibility of source address spoofing.
For a greater degree of security, the LDP MD5 authentication key
option, as described in section 2.9 of RFC 3036, or the Control
Message Authentication option of [L2TPv3] MAY be used. This provides
integrity and authentication for the control messages, and eliminates
the possibility of source address spoofing. Use of the message
authentication option does not provide privacy, but privacy of
control messages are not usually considered to be highly urgent.
Both the LDP and L2TPv3 message authentication options rely on the
configuration of pre-shared keys, making it difficult to deploy when
the set of eligible neighbors is determined by an auto-configuration
protocol.
When the Generalized ID FEC Element is used, it is possible that a
particular peer may be one of the eligible peers, but may not be the
right one to connect to the particular attachment circuit identified
by the particular instance of the Generalized ID FEC element.
However, given that the peer is known to be one of the eligible peers
(as discussed above), this would be the result of a configuration
error, rather than a security problem. Nevertheless, it may be
advisable for a PE to associate each of its local attachment circuits
with a set of eligible peers, rather than having just a single set of
Martini, et al. [Page 32]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
eligible peers associated with the PE as a whole.
12. IANA Considerations
12.1. Channel Type
The Channel Type code point is defined in [RFC4385], and an IANA
registry was requested in [VCCV]. This draft further requests the
following code point to be assigned to that registry. 0x01 OAM
Indication For Multi Segment Pseudowires (MH-VCCV)
12.2. L2TPv3 AVP
This document uses a ne L2TP parameter, IANA already maintains a
registry of name "Control Message Attribute Value Pair" defined by
[RFC3438]. The following new values are required:
TBA-L2TP-AVP-1 - PW Switching Point AVP
12.3. LDP TLV TYPE
This document uses several new LDP TLV types, IANA already maintains
a registry of name "TLV TYPE NAME SPACE" defined by RFC3036. The
following value is suggested for assignment:
TLV type Description
0x096D Pseudo Wire Switching TLV
12.4. LDP Status Codes
This document uses several new LDP status codes, IANA already
maintains a registry of name "STATUS CODE NAME SPACE" defined by
RFC3036. The following value is suggested for assignment:
Assignment E Description
0x0000003A 0 "PW Loop Detected"
Martini, et al. [Page 33]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
12.5. L2TPv3 Result Codes
This document uses several new L2TPv3 status codes, IANA already
maintains a registry of name "L2TPv3 Result Codes" defined by
RFCxxxx. The following value is suggested for assignment:
Assignment Description
17 "sequencing not supported"
12.6. New IANA Registries
IANA needs to set up a registry of "PW Switching Point TLV Type".
These are 8-bit values. Types value 1 through 3 are defined in this
document. Type values 4 through 64 are to be assigned by IANA using
the "Expert Review" policy defined in RFC2434. Type values 65 through
127, 0 and 255 are to be allocated using the IETF consensus policy
defined in [RFC2434]. Types values 128 through 254 are reserved for
vendor proprietary extensions and are to be assigned by IANA, using
the "First Come First Served" policy defined in RFC2434.
The Type Values are assigned as follows:
Type Length Description
0x01 4 PW ID of last PW segment traversed
0x02 variable PW Switching Point description string
0x03 4/16 IP address of PW Switching Point
0x04 variable MH VCCV Capability Indication
0x05 variable AI of last PW segment traversed
0x06 variable L2 PW address of PW Switching Point
13. Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
Martini, et al. [Page 34]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at ietf-
ipr@ietf.org.
14. Full Copyright Statement
Copyright (C) The IETF Trust (2007).
This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors
retain all their rights.
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
15. Acknowledgments
The authors wish to acknowledge the contributions of Wei Luo, Skip
Booth, Neil Hart, Michael Hua, and Tiberiu Grigoriu.
16. Normative References
[RFC4385] " Pseudowire Emulation Edge-to-Edge (PWE3)
Control Word for Use over an MPLS PSN", S. Bryant, et al.,
RFC4385, February 2006.
[RFC4446] "IANA Allocations for Pseudowire Edge to Edge
mulation (PWE3)", L. Martini, RFC4446, April 2006.
[RFC4447] "Transport of Layer 2 Frames Over MPLS", Martini, L.,
et al., rfc4447 April 2006.
[RFC3985] Stewart Bryant, et al., PWE3 Architecture,
RFC3985
Martini, et al. [Page 35]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
[2547BIS] "BGP/MPLS IP VPNs", Rosen, E, Rekhter, Y.
draft-ietf-l3vpn-rfc2547bis-03.txt ( work in progress ),
October 2004.
[L2TPv3] "Layer Two Tunneling Protocol (Version 3)", J. Lau,
M. Townsley, I. Goyret, RFC3931
[VCCV] Nadeau, T., et al."Pseudo Wire Virtual Circuit Connection
Verification (VCCV)", Internet Draft
<draft-ietf-pwe3-vccv-08.txt>, October 2005. (work in progress)
[RFC2434] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations section in RFCs", BCP 26, RFC 2434, October
1998.
[RFC2119] S. Bradner, "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[PW-ADDR] C. Metz, L. Martini, F. Balus, J. Sugimoto, "AII Types
for Aggregation" draft-ietf-pwe3-aii-aggregate-02.txt, (work in
progress), February 2007.
17. Informative References
[RFC4023] "Encapsulating MPLS in IP or Generic
Routing Encapsulation (GRE)", Rosen, E, Rekhter, Y.
RFC4023, March 2005.
[PWE3-ARCH] "PWE3 Architecture" Bryant, et al.,
draft-ietf-pwe3-arch-07.txt ( work in progress ), June 2003.
[PWE3-FRAG] "PWE3 Fragmentation and Reassembly", A. Malis,
W. M. Townsley, draft-ietf-pwe3-fragmentation-05.txt
( work in progress ) February 2004
[L2TP-L2VPN] "L2VPN Extensions for L2TP", Luo, Wei,
draft-ietf-l2tpext-l2vpn-00.txt, ( work in progress ), Jan 2004
[L2TP-INFOMSG] "L2TP Call Information Messages", Mistretta,
Goyret, McGill, Townsley, draft-mistretta-l2tp-infomsg-02.txt,
( work in progress ), July 2004
[L2TP-ATM] "ATM Pseudo-Wire Extensions for L2TP", Singh,
Townsley, Lau, draft-ietf-l2tpext-pwe3-atm-00.txt,
( work in progress ), March 2004.
Martini, et al. [Page 36]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
[PWE3-ATM] "Encapsulation Methods for Transport of ATM
Over IP and MPLS Networks", Martini, Rosen, Bocci,
"draft-ietf-pwe3-atm-encap-05.txt", ( work in progress ),
April 2004.
[RFC3438] W. M. Townsley, "Layer Two Tunneling Protocol
(L2TP) Internet"
[PW-MSG-MAP] "Pseudo Wire (PW) OAM Message Mapping", Nadeau et al,
draft-ietf-pwe3-oam-msg-map-02.txt, ( work in progress ),
February 2005
18. Author Information
Luca Martini
Cisco Systems, Inc.
9155 East Nichols Avenue, Suite 400
Englewood, CO, 80112
e-mail: lmartini@cisco.com
Thomas D. Nadeau
Cisco Systems, Inc.
300 Beaver Brook Road
Boxborough, MA 01719
e-mail: tnadeau@cisco.com
Chris Metz
Cisco Systems, Inc.
e-mail: chmetz@cisco.com
Mike Duckett
Bellsouth
Lindbergh Center
D481
575 Morosgo Dr
Atlanta, GA 30324
e-mail: mduckett@bellsouth.net
Martini, et al. [Page 37]
Internet Draft draft-ietf-pwe3-segmented-pw-05.txt July 2007
Matthew Bocci
Alcatel-Lucent
Grove House, Waltham Road Rd
White Waltham, Berks, UK. SL6 3TN
e-mail: matthew.bocci@alcatel-lucent.co.uk
Florin Balus
Alcatel-Lucent
701 East Middlefield Rd.
Mountain View, CA 94043
e-mail: florin.balus@alcatel-lucent.com
Mustapha Aissaoui
Alcatel-Lucent
600, March Road,
Kanata, ON, Canada
e-mail: mustapha.aissaoui@alcatel-lucent.com
Martini, et al. [Page 38]