Internet DRAFT - draft-ietf-pwe3-static-pw-status
draft-ietf-pwe3-static-pw-status
Internet Engineering Task Force Luca Martini
Internet Draft George Swallow
Intended status: Standards Track Giles Heron
Expires: May 15, 2012 Cisco
Matthew Bocci
Alcatel-Lucent
November 15, 2011
Pseudowire Status for Static Pseudowires
draft-ietf-pwe3-static-pw-status-10.txt
Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and 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.
This Internet-Draft will expire on May 15, 2010
Abstract
This document specifies a mechanism to signal Pseudowire (PW) status
messages using an PW associated channel (ACh). Such a mechanism is
suitable for use where no PW dynamic control plane exits, known as
static PWs, or where a Terminating Provider Edge (T-PE) needs to send
a PW status message directly to a far end T-PE. The mechanism allows
PW OAM message mapping and PW redundancy to operate on static PWs.
This document also updates rfc5885 in the case when Bi-directional
Forwarding Detection (BFD) is used to convey PW status signaling
Martini, et al. [Page 1]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
information.
Table of Contents
1 Specification of Requirements ........................ 2
2 Introduction ......................................... 3
3 Terminology .......................................... 3
4 Applicability ........................................ 3
5 Pseudowire Status Operation .......................... 4
5.1 PW OAM Message ....................................... 4
5.2 Sending a PW Status Message .......................... 5
5.3 PW OAM status message transmit and receive ........... 6
5.3.1 Acknowledgment of PW status .......................... 7
5.4 MPLS Label Stack ..................................... 7
5.4.1 Label stack for a message destined to the next PE .... 7
5.4.2 Label stack for a message destined to the egress PE .. 8
5.5 S-PE bypass mode ..................................... 8
5.5.1 S-PE bypass mode LDP flag bit ........................ 9
6 S-PE operation ....................................... 10
6.1 Static PW to another Static PW ....................... 10
6.2 Dynamic PW to Static PW or vice versa ................ 10
7 Security Considerations .............................. 11
8 IANA Considerations .................................. 11
9 References ........................................... 12
9.1 Normative References ................................. 12
9.2 Informative References ............................... 12
10 Authors' Addresses ................................... 13
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].
Martini, et al. [Page 2]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
2. Introduction
The default control plane for Pseudowire (PW) technology, as defined
in [RFC4447], is based on Label Distribution Protocol (LDP). However
that document also describes a static provisioning mode without a
control plane. When a static PW is used, there is no method to
transmit the status of the PW, or attachment circuit (AC) between the
two Provider Edge (PE) devices at each end of the PW. This document
defines a method to transport the PW status codes defined in
[RFC4447], sec 5.4.2, and elsewhere [REDUNDANCY] in-band with the PW
data using a generic associated channel [RFC5586].
3. Terminology
FEC: Forwarding Equivalence Class
LDP: Label Distribution Protocol
LSP: Label Switching Path
MS-PW: Multi-Segment Pseudowire
PE: Provider Edge
PW: Pseudowire
SS-PW: Single-Segment Pseudowire
S-PE: Switching Provider Edge Node of MS-PW
T-PE: Terminating Provider Edge Node of MS-PW
4. Applicability
As described in [RFC4447] and [RFC6310], a PE that establishes an
MPLS PW using means other than LDP, e.g., by static configuration,
MUST support some alternative method of status reporting. The
procedures described in this document are for use when PWs are
statically configured and a LDP control plane is not available.
As defined in [RFC4447], a PE that establishes a PW using LDP MUST
use the PW status TLV mechanism for AC and PW status and defect
notification on that PW. In order to avoid duplicate notifications
and potentially conflicting notifications, such PEs MUST NOT use the
mechanisms described in this document for those PWs, except that the
'S-PE' bypass mode described in Section 5.5 MAY be used when both T-
Martini, et al. [Page 3]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
PE at each end of the PW use LDP to establish the PW.
In order to protect against duplicate notifications and potentially
conflicting notifications, when the Pseudowire Status protocol for
Static Pseudowires described in this document is used, the BFD-VCCV
status signaling mechanisms described in [RFC5885] (CV Types 0x08 and
0x20) MUST NOT be used. VCCV-BFD Connectivity Verification (CV) for
fault detection (CV types 0x04 and 0x10) MAY still be used.
5. Pseudowire Status Operation
5.1. PW OAM Message
The PW status TLV as defined in [RFC4447] sec 5.4.2 is transported in
a PW OAM message using the PW associated channel (ACH).
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 | 0xZZ PW OAM Message |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Refresh Timer | TLV Length |A| Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ TLVs ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: ACH PW OAM Message Packet Header.
The first 32 bits are the standard ACH header construct as defined in
[RFC5586].
The first nibble (0001b) indicates the ACH instead of PW data. The
version and the reserved values are both set to 0 as specified in
[RFC4385].
The refresh timer is an unsigned integer and specifies refresh time
in seconds with a range from 1 to 65535. The value 0 means that the
refresh timer is set indefinitely, and the PW OAM message will never
be refreshed, and will never timeout.
The TLV length field indicates the length of all TLVs only. This
document defines the only the PW status TLV as defined in [RFC4447]
sec 5.4.2 is transported in TLV field. In the future additional TLVs
may be defined to be used in this field with code points allocated
from the IANA registry called "LDP TLV Type Name Space".
Martini, et al. [Page 4]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
The A flag bit is used to indicate an acknowledgment of the PW status
TLV included. The rest of the flag bits are reserved and they MUST be
set to 0 on transmit, and ignored upon receive. When the A bit is
set, the refresh timer value is a requested timer value.
The PW OAM Message code point value is 0xZZ. [RFC Editor: 0xZZ to be
assigned by IANA from the PW Associated Channel Type registry.]
5.2. Sending a PW Status Message
The PW Status messages are sent in-band using the PW OAM message
containing the PW Status TLV, for a particular PW, as defined in
[RFC4447]. The PW Status TLV format almost as defined in [RFC4447],
and is repeated here for the reader's convenience:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Res| PW Status (0x096A) | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Status Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: PW Status TLV Format.
Unlike the case in [RFC4447], here the first 2 bits are reserved, and
MUST be set to zero on transmit, and ignored on receive.
The PW Status TLV is prepended with an PW OAM message header and sent
on the ACH of the PW to which the status update applies.
To clear a particular status indication, the PE needs to send a new
PW OAM message containing a PW Status TLV with the corresponding bit
cleared as defined in [RFC4447].
The procedures described in [RFC6073] that apply to an S-PE and PW
using an LDP control plane also apply when sending PW status using
the PW OAM channel. The OPTIONAL procedures using the SP-PE TLV
described in [RFC6073] can also be applied when sending PW status
using the PW OAM channel.
The detailed message transmit, and receive procedures are specified
in the next section. PW OAM Status Messages MUST NOT be used as a
connectivity verification method.
Martini, et al. [Page 5]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
5.3. PW OAM status message transmit and receive
Unlike the PW status procedures defined in [RFC4447] with this method
there is no TCP/IP session, or session management. Therefore unlike
the TCP/IP case, where each message is sent only once, the PW OAM
message containing the PW status TLV needs to be transmitted
repeatedly to ensure reliable message delivery. If a malformed TLV,
or an unknown TLV is received in an PW OAM status message, the TLV
MUST be ignored, and the PE SHOULD report the event to the operator.
A PW OAM message containing a PW status TLV with a new status bit set
or reset, will be transmitted immediately by the PE. Unless the
message is acknowledged within a second, the PW OAM message will then
be repeated twice more at an initial interval of one second.
Subsequently the PW OAM message will be transmitted with an interval
specified by the refresh timer value in the packet. Note that this
value MAY be updated in the new PW OAM message packet, in which case
the new refresh timer value becomes the new packet transmit interval.
The suggested default value for the refresh timer is 30 seconds. This
default is adeguate for typical deployments, and PEs are designed to
take into account processing these messages at the required rate.
When a PW OAM message containing a status TLV is received, a timer is
started according to the refresh rate specified in the packet. If
another non zero PW status message is not received within 3.5 times
the specified timer value, the status condition will timeout in 3.5
times the last refresh timer value received, and the default status
of zero is assumed on the PW. It is also a good practice to
introduce some jitter in the delay between refresh transmissions, as
long as the maximum jitter delay is within the prescribed maximum
refresh time of 3.5 times the specified timer value for 3 consecutive
refresh packets.
To clear a particular status fault the PE need only send an updated
message with the corresponding bit cleared. If the PW status code is
zero, the PW OAM message will be sent like any other PW OAM status
message using the procedures described above, however it MUST be
acknowledged with a packet with a timer value of zero. This will
cause the PE sending the PW status notification message with PW
status code equal to zero to stop sending, and to continue normal
operation.
Martini, et al. [Page 6]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
5.3.1. Acknowledgment of PW status
The PE receiving a PW OAM message containing a PW status message can
acknowledge the PW status message by simply building an almost
identical reply packet with the A bit set, and transmitting it on the
PW ACH back to the source of the PW status message. The timer value
set in the reply packet SHOULD then be used by the PE as the new
transmit interval. If the transmitting PE does not want to use the
new timer value (for local policy reasons, or because it simply
cannot support it) it MUST refresh the PW OAM message with the timer
value it desires. The receiving PE will then set its timeout timer
according to the timer value that is in the packet received,
regardless of what timer value it sent. The receiving PE MUST NOT
retry to set the timer value more then once per timer value.
The suggested default value for the refresh timer value in the
acknowledgment packet is 600 seconds.
If the sender PE receives an acknowledgment message that does not
match the current active PW status message being sent, it simply
ignores the acknowledgment packet.
If a PE that has a non zero status code for a particular PW, detects
by any means that the peer PE has become unreachable, it will follow
the standard procedures [RFC4447] and consider that PW as having an
additional status bit set. This would normally trigger sending
updates again, and canceling the acknowledgment refresh timer state.
5.4. MPLS Label Stack
With one exception, all PW OAM status messages are are sent to the
adjacent PE across the PSN tunnel. In many cases the transmitting PE
has no way to determine whether the adjacent PE is a S-PE, or a T-PE.
This is a necessary behavior to preserve backward compatibility with
PEs that do not understand MS-PWs. In the procedures described in
this document there are two possible destinations for the PW OAM
status messages: the adjacent PE, or the T-PE. Sending a PW status
message directly to the T-PE is a enhanced method that is only
applicable using PW OAM status messages sent in the PW ACH.
5.4.1. Label stack for a message destined to the next PE
A PE that needs to forward a PW OAM status message to the adjacent PE
across the PSN tunnel, MUST set the PW label TTL field to 1.
Furthermore if the control word is not in use on the particular PW,
the PE MUST also place the GAL reserved label [RFC5586], below the PW
Martini, et al. [Page 7]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
label also with the TTL field set to 1.
5.4.2. Label stack for a message destined to the egress PE
This is also known as "S-PE bypass mode" see below. A T-PE that
requires sending a PW OAM status message directly to the
corresponding T-PE at the other end of the PW MUST set the TTL of the
PW label to a value that is sufficient to reach the corresponding T-
PE. This value will be greater then one, but will be set according to
the local policy on the transmitting T-PE. Furthermore if the control
word is not in use on the particular PW, the PE MUST also place the
GAL reserved label [RFC5586], below the PW label with the TTL field
set to 1.
5.5. S-PE bypass mode
S-PE bypass mode enables a T-PE that uses LDP as the pw setup and
control protocol, to bypass all S-PEs that might be present along the
MS-PW and to send a message directly to the remote T-PE. This is used
for very fast message transmission in-band with the PW PDUs. This
mode is OPTIONAL, and MUST be supported by both T-PEs to be enabled.
This mode MUST NOT be used if the first PW segment connected to each
T-PE is not using LDP.
Note that this method MUST NOT be used to send messages which are
permitted to originate at an S-PE, since otherwise race conditions
could occur between messages sent via the control plane by S-PEs, and
messages sent via the data plane by T-PEs.
Status codes, except for those listed below, MUST NOT be sent using
the S-PE bypass procedure:
0x00000002 - Local Attachment Circuit (ingress) Receive Fault
0x00000004 - Local Attachment Circuit (egress) Transmit Fault
0x00000020 - PW forwarding standby
0x00000040 - Request switchover to this PW
Note that since "clear all failures" may be sent by an S-PE it MUST
NOT be sent using the S-PE bypass mode.
When S-PE bypass mode is enabled, all PW Status TLVs received using
this method have priority over PW Status TLVs sent via control
protocols such as LDP [RFC4447]. However the same PW Status TLVs MUST
also be sent in LDP to keep the S-PEs state updated.
Martini, et al. [Page 8]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
5.5.1. S-PE bypass mode LDP flag bit
When a PW Segment along an MS-PW is using the LDP control protocol
wishes to request the use of the S-PE bypass status message mode, it
sets the B bit in the generic protocol flags interface parameters
sub-TLV as shown in Figure 3. This flag can only be set by a T-PE
using LDP as the PW configuration and management protocol. If the S-
PE bypass mode LDP flag bit in the generic protocol flags interface
parameter does not mach in the FEC advertisement for directions of a
specific PW, that PW MUST NOT be enabled.
The interface parameter is defined 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=0X16 | Length=4 |R R R R R R R R R R R R R R R B|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3. PW Generic Protocol Flags sub-TLV.
- TLV Type.
Type 0x16 - PW Generic Protocol Flags. Note: Value 0x16
suggested for assignment pending IANA allocation.
- Length
TLV length always 4 octets.
- Flags
Bit B, in position 31 above, is set to request the S-PE bypass
mode. Bits R are to be allocated by IANA as described in the IANA
section. If they are not allocated they are to be considered as
reserved for future use and MUST be zero on transmission, and
ignored on reception of this TLV.
If the T-PE receives an LDP label mapping message containing a
generic protocol flags interface parameter TLV with the bit "B" set,
then the T-PE receiving the label mapping message MAY send S-PE
bypass status messages in the G-ACH. If Bit "B" of said TLV, is not
set, or the TLV is not present, then the T-PE receiving the label
mapping message MUST NOT send S-PE bypass status messages in the G-
ACH.
Martini, et al. [Page 9]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
6. S-PE operation
The S-PE will operate according to the procedures defined in
[RFC6073]. The following additional procedures apply to the case
where a static PW segment is switched to a dynamic PW segment that
uses LDP, and the case a static PW segment is switched to another
static PW segment.
6.1. Static PW to another Static PW
The procedures that are described in [RFC6073] section 10 also apply
to the case of a static PW switched to another static PW. The LDP
header is simply replaced by the PW OAM header, otherwise the packet
format will be identical. The information that is necessary to form a
SP-PE TLV MUST be configured in the S-PE, or no SP-PE TLV will be
sent. The Document [RFC6073] defines a IANA registry named
"Pseudowire Switching Point PE TLV Type". In order to support the
static PW configuration and addressing scheme, a new code point is
requested as follows:
Type Length Description
0x07 24 Static PW/MPLS-TP PW segment ID of last
PW segment traversed
The format of this TLV is that of the "Static Pseudowire Sub-TLV"
defined in [ON DEMAND].
6.2. Dynamic PW to Static PW or vice versa
The procedures that are described in [RFC6073] section 10 also apply
to this situation. However if the PW label of the LDP controlled PW
segment is withdrawn, by the adjacent PE, the S-PE will set the PW
status code "0x00000001 - Pseudowire Not Forwarding" to the adjacent
PW on the static PW segment.
The S-PE will only withdraw its label for the dynamic, LDP
controlled, PW segment if the S-PE is un-provisioned.
Martini, et al. [Page 10]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
7. Security Considerations
The security measures described in [RFC4447], [RFC5085] and [RFC6073]
are adequate for the proposed mechanism.
8. IANA Considerations
IANA has to set up the registry of "PW Generic Protocol Flags". These
are bit strings of length 16. Bit 0 is defined in this document. Bits
1 through 15 are to be assigned by IANA using the "IETF consensus"
policy defined in [RFC5226].
Any requests for allocation from this registry require a description
of up to 65 characters.
Initial PW Generic Protocol Flags value allocations are as follows:
Bit Mask Description
====================================================================
0x0001 - S-PE bypass mode [RFCXXXX]
This document uses a new Associated Channel Type. IANA already
maintains a registry of name "Pseudowire Associated Channel Types". A
value of 0x0022 is suggested for assignment with TLVs. The
description is "PW OAM Message".
This document uses a new Pseudowire Switching Point PE TLV Type. IANA
already maintains a registry of name "Pseudowire Switching Point PE
Sub-TLV Type". A value of 0x07 is suggested for assignment. The
description is "Static PW/MPLS-TP PW segment ID of last PW segment
traversed".
This document uses a new interface parameter type. IANA already
maintains a registry of name "Pseudowire Interface Parameters Sub-TLV
type Registry". A value of 0x16 is suggested for assignment. The
description is "PW Generic Protocol Flags".
Martini, et al. [Page 11]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
9. References
9.1. Normative References
[RFC5226] T. Narten, H. Alvestrand, "Guidelines for Writing
an IANA Considerations Section in RFCs", RFC 5226, May 2008
[RFC5085] T. Nadeau, Ed., C. Pignataro, Ed., "Pseudowire
Virtual Circuit Connectivity Verification (VCCV):
A Control Channel for Pseudowires", RFC5085, December 2007
[RFC2119] Bradner. S, "Key words for use in RFCs to
Indicate Requirement Levels", RFC 2119, March, 1997.
[RFC4447] "Transport of Layer 2 Frames Over MPLS", Martini, L.,
et al., rfc4447 April 2006.
[RFC6073] Martini et.al. "Segmented Pseudowire",
RFC 6073, January 2011.
[RFC4385] " Pseudowire Emulation Edge-to-Edge (PWE3)
Control Word for Use over an MPLS PSN", S. Bryant, et al.,
RFC4385, February 2006.
[ON DEMAND] Bahadur et.al. "MPLS on-demand Connectivity
Verification, Route Tracing and Adjacency Verification",
draft-ietf-mpls-tp-on-demand-cv-07.txt, IETF Work in Progress,
September 2011
[RFC6310] M. Aissaoui, P. Busschbach, L. Martini, M. Morrow,
T. Nadeau, Y(J). Stein, "Pseudowire (PW) Operations,
Administration, and Maintenance (OAM) Message Mapping",
RFC6310, July 2011
9.2. Informative References
[REDUNDANCY] Muley et.al. "Preferential Forwarding Status
bit definition", draft-ietf-pwe3-redundancy-bit-05.txt,
IETF Work in Progress, September 2011.
[RFC5586] M. Bocci, Ed., M. Vigoureux, Ed., S. Bryant, Ed.,
"MPLS Generic Associated Channel", rfc5586, June 2009
[RFC5885] T. Nadeau, Ed.,C. Pignataro, Ed., "Bidirectional
Forwarding Detection (BFD) for the Pseudowire Virtual
Circuit Connectivity Verification (VCCV)", RFC5885, June 2010.
Martini, et al. [Page 12]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
10. Authors' Addresses
Luca Martini
Cisco Systems, Inc.
9155 East Nichols Avenue, Suite 400
Englewood, CO, 80112
e-mail: lmartini@cisco.com
George Swallow
Cisco Systems, Inc.
300 Beaver Brook Road
Boxborough, Massachusetts 01719
United States
e-mail: swallow@cisco.com
Giles Heron
Cisco Systems
9-11 New Square
Bedfont Lakes
Feltham
Middlesex
TW14 8HA
United Kingdom
e-mail: giheron@cisco.com
Matthew Bocci
Alcatel-Lucent
Grove House, Waltham Road Rd
White Waltham, Berks, UK. SL6 3TN
e-mail: matthew.bocci@alcatel-lucent.co.uk
Copyright Notice
Copyright (c) 2011 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
Martini, et al. [Page 13]
Internet Draft draft-ietf-pwe3-static-pw-status-10.txtNovember 15, 2011
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Expiration Date: May 2012
Martini, et al. [Page 14]