Network Working Group S. Bryant
Request for Comments: 4385 G. Swallow
Category: Standards Track L. Martini
Pseudowire Emulation Edge-to-Edge (PWE3)
Control Word for Use over an MPLS PSN
Status of This Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Copyright (C) The Internet Society (2006).
This document describes the preferred design of a Pseudowire
Emulation Edge-to-Edge (PWE3) Control Word to be used over an MPLS
packet switched network, and the Pseudowire Associated Channel
Header. The design of these fields is chosen so that an MPLS Label
Switching Router performing MPLS payload inspection will not confuse
a PWE3 payload with an IP payload.
The standard MPLS encapsulations have no explicit protocol
identifier. In order for a pseudowire (PW) [RFC3985] to operate
correctly over an MPLS packet switched network (PSN) that performs
MPLS payload inspection, a PW packet must not appear to a label
switching router (LSR) as if it were an IP packet [BCP]. An example
of an LSR that performs MPLS payload inspection is one that is
performing equal-cost multiple-path load-balancing (ECMP) [RFC2992].
If ECMP were performed on PW packets, the packets in the PW may not
all follow the same path through the PSN. This may result in
misordered packet delivery to the egress PE. The inability to ensure
that all packets belonging to a PW follow the same path may also
prevent the PW Operations and Management (OAM) [VCCV] mechanism from
correctly monitoring the PW.
Bryant, et al. Standards Track [Page 1]
RFC 4385 PW3 Control Word for Use over an MPLS PSN February 2006
This document specifies how the PW control word is used to
distinguish a PW payload from an IP payload carried over an MPLS PSN.
It then describes the preferred design of a PW Control Word to be use
over an MPLS PSN, and the Pseudowire Associated Channel Header.
1.1. Conventions Used in This Document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
2. Avoiding ECMP
A PW that is carried over an MPLS PSN that uses the contents of the
MPLS payload to select the ECMP path may be subjected to packet
misordering [BCP]. In cases where the application using the PW is
sensitive to packet misordering, or where packet misordering will
disrupt the operation of the PW, it is necessary to prevent the PW
being subjected to ECMP.
All IP packets [RFC791] [RFC2460] start with a version number that is
checked by LSRs performing MPLS payload inspection. To prevent the
incorrect processing of packets carried within a PW, PW packets
carried over an MPLS PSN MUST NOT start with the value 4 (IPv4) or
the value 6 (IPv6) in the first nibble [BCP], as those are assumed to
carry normal IP payloads.
This document defines a PW header and two general formats of that
header. These two formats are the PW MPLS Control Word (PWMCW),
which is used for data passing across the PW, and a PW Associated
Channel Header (PWACH), which can be used for functions such as OAM.
If the first nibble of a PW packet carried over an MPLS PSN has a
value of 0, this indicates that the packet starts with a PWMCW. If
the first nibble of a packet carried over an MPLS PSN has a value of
1, it starts with a PWACH. The use of any other first nibble value
for a PW packet carried over an MPLS PSN is deprecated.
If a PW is sensitive to packet misordering and is being carried over
an MPLS PSN that uses the contents of the MPLS payload to select the
ECMP path, it MUST employ a mechanism that prevents packet
misordering. A suitable mechanism is the PWMCW described in Section