MPW(4) | Device Drivers Manual | MPW(4) |
mpw
— MPLS
Ethernet pseudowire
pseudo-device mpw
The mpw
interface is used to create an
MPLS Ethernet layer 2 tunnel between two points.
An mpw
interface can be created at runtime
using the ifconfig
mpw
N
create
command or by setting up a
hostname.if(5) configuration file
for netstart(8). The interface itself
can be configured with ifconfig(8).
The local MPLS label, the remote MPLS label and neighbor, use of pseudowire control words, or flow-aware transport are normally configured after negotiation with a remote system using ldpd(8), but it is also possible to configure them manually using ifconfig(8).
Create a pseudowire with local label 20 and remote label 21 on neighbor 10.254.0.1:
# ifconfig mpw5 create # ifconfig mpw5 mplslabel 20 pweneighbor 21 10.254.0.1 # ifconfig mpw5 up
Enable the use of the Pseudowire Emulation Edge-to-Edge (PWE3) Control Word, and disable the use of a Flow label for Flow-Aware Transport of Pseudowires:
# ifconfig mpw5 pwecw -pwefat
mpw
interfaces may be used to build a
Virtual Private LAN Service (VPLS) with
bridge(4). A VPLS is constructed with a
full mesh of MPLS pseudowire tunnels between all peers, but this introduces
loops in the topology. To prevent broadcast packets received from the VPLS
being forwarded to its peers, all the pseudowire interfaces can be
configured to enforce the split-horizon forwarding rule by adding them to
the same protected bridge domain. Different VPLS meshes can be joined
together on the same bridge using different identifiers for their protected
domains:
# ifconfig mpw10 create up # ifconfig mpw11 create up # ifconfig mpw12 create up # ifconfig bridge0 create # ifconfig bridge0 add em2 # ifconfig bridge0 add mpw10 add mpw11 add mpw12 # ifconfig bridge0 protected mpw10 1 # ifconfig bridge0 protected mpw11 1 # ifconfig bridge0 protected mpw12 1
hostname.if(5), ifconfig(8), ldpd(8), netstart(8)
S. Bryant and P. Pate, Pseudo Wire Emulation Edge-to-Edge (PWE3) Architecture, RFC 3985, March 2005.
S. Bryant, G. Swallow, and L. Martini, Pseudowire Emulation Edge-to-Edge (PWE3) Control Word for Use over an MPLS PSN, RFC 4385, February 2005.
S. Bryant, C. Filsfils, U. Drafz, V. Kompella, J. Regan, and S. Amante, Flow-Aware Transport of Pseudowires over an MPLS Packet Switched Network, RFC 6391, November 2011.
The mpw
kernel interface first appeared in
OpenBSD 5.8.
The mpw
driver was written by
Rafael Zalamena
<rzalamena@openbsd.org>.
April 3, 2019 | OpenBSD-current |