MX Solutions Guide
MX Solutions Guide
Release
12.1
Published: 2012-03-08
This product includes memory allocation software developed by Mark Moraes, copyright © 1988, 1989, 1993, University of Toronto.
This product includes FreeBSD software developed by the University of California, Berkeley, and its contributors. All of the documentation
and software included in the 4.4BSD and 4.4BSD-Lite Releases is copyrighted by the Regents of the University of California. Copyright ©
1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994. The Regents of the University of California. All rights reserved.
GateD software copyright © 1995, the Regents of the University. All rights reserved. Gate Daemon was originated and developed through
release 3.0 by Cornell University and its collaborators. Gated is based on Kirton’s EGP, UC Berkeley’s routing daemon (routed), and DCN’s
HELLO routing protocol. Development of Gated has been supported in part by the National Science Foundation. Portions of the GateD
software copyright © 1988, Regents of the University of California. All rights reserved. Portions of the GateD software copyright © 1991, D.
L. S. Associates.
This product includes software developed by Maker Communications, Inc., copyright © 1996, 1997, Maker Communications, Inc.
Juniper Networks, Junos, Steel-Belted Radius, NetScreen, and ScreenOS are registered trademarks of Juniper Networks, Inc. in the United
States and other countries. The Juniper Networks Logo, the Junos logo, and JunosE are trademarks of Juniper Networks, Inc. All other
trademarks, service marks, registered trademarks, or registered service marks are the property of their respective owners.
Juniper Networks assumes no responsibility for any inaccuracies in this document. Juniper Networks reserves the right to change, modify,
transfer, or otherwise revise this publication without notice.
Products made or sold by Juniper Networks or components thereof might be covered by one or more of the following patents that are
owned by or licensed to Juniper Networks: U.S. Patent Nos. 5,473,599, 5,905,725, 5,909,440, 6,192,051, 6,333,650, 6,359,479, 6,406,312,
6,429,706, 6,459,579, 6,493,347, 6,538,518, 6,538,899, 6,552,918, 6,567,902, 6,578,186, and 6,590,785.
®
Junos OS MX Series 3D Universal Edge Routers Solutions Guide
Release 12.1
Copyright © 2012, Juniper Networks, Inc.
All rights reserved.
Revision History
March 2012—R1 Junos OS 12.1
The information in this document is current as of the date on the title page.
Juniper Networks hardware and software products are Year 2000 compliant. Junos OS has no known time-related limitations through the
year 2038. However, the NTP application is known to have some difficulty in the year 2036.
The Juniper Networks product that is the subject of this technical documentation consists of (or is intended for use with) Juniper Networks
software. Use of such software is subject to the terms and conditions of the End User License Agreement (“EULA”) posted at
http://www.juniper.net/support/eula.html. By downloading, installing or using such software, you agree to the terms and conditions
of that EULA.
Part 1 Overview
Chapter 1 Overview of Ethernet Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Part 4 Index
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Part 1 Overview
Chapter 1 Overview of Ethernet Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Ethernet Terms and Acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Networking and Internetworking with Bridges and Routers . . . . . . . . . . . . . . . . . . . 6
Network Addressing at Layer 2 and Layer 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Networking at Layer 2: Benefits of Ethernet Frames . . . . . . . . . . . . . . . . . . . . . . . . 9
Networking at Layer 2: Challenges of Ethernet MAC Addresses . . . . . . . . . . . . . . . 10
Networking at Layer 2: Forwarding VLAN Tagged Frames . . . . . . . . . . . . . . . . . . . . 11
Networking at Layer 2: Forwarding Dual-Tagged Frames . . . . . . . . . . . . . . . . . . . . 13
Networking at Layer 2: Logical Interface Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
A Metro Ethernet Network with MX Series Routers . . . . . . . . . . . . . . . . . . . . . . . . . 15
Layer 2 Networking Standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Part 4 Index
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
If the information in the latest release notes differs from the information in the
documentation, follow the Junos Release Notes.
®
To obtain the most current version of all Juniper Networks technical documentation,
see the product documentation page on the Juniper Networks website at
http://www.juniper.net/techpubs/ .
Juniper Networks supports a technical book program to publish books by Juniper Networks
engineers and subject matter experts with book publishers around the world. These
books go beyond the technical documentation to explore the nuances of network
architecture, deployment, and administration using the Junos operating system (Junos
OS) and Juniper Networks devices. In addition, the Juniper Networks Technical Library,
published in conjunction with O'Reilly Media, explores improving network security,
reliability, and availability using Junos OS configuration techniques. All the books are for
sale at technical bookstores and book outlets around the world. The current list can be
viewed at http://www.juniper.net/books .
Objectives
This guide provides an overview of the Layer 2 features of the Junos OS and describes
how to configure the features to provide solutions to several network scenarios.
Audience
This guide is designed for network administrators who are configuring and monitoring
Layer 2 features of the Junos OS.
To use this guide, you need a broad understanding of networks in general, the Internet
in particular, networking principles, and network configuration. You must also be familiar
with one or more of the following Internet routing protocols:
Personnel operating the equipment must be trained and competent; must not conduct
themselves in a careless, willfully negligent, or hostile manner; and must abide by the
instructions provided by the documentation.
For the Layer 2 features described in this manual, the Junos OS currently supports the
following routing platforms:
If you want to use the examples in this manual, you can use the load merge or the load
merge relative command. These commands cause the software to merge the incoming
configuration into the current candidate configuration. The example does not become
active until you commit the candidate configuration.
If the example configuration contains the top level of the hierarchy (or multiple
hierarchies), the example is a full example. In this case, use the load merge command.
If the example configuration does not start at the top level of the hierarchy, the example
is a snippet. In this case, use the load merge relative command. These procedures are
described in the following sections.
1. From the HTML or PDF version of the manual, copy a configuration example into a
text file, save the file with a name, and copy the file to a directory on your routing
platform.
For example, copy the following configuration to a file and name the file ex-script.conf.
Copy the ex-script.conf file to the /var/tmp directory on your routing platform.
system {
scripts {
commit {
file ex-script.xsl;
}
}
}
interfaces {
fxp0 {
disable;
unit 0 {
family inet {
address 10.0.0.1/24;
}
}
}
2. Merge the contents of the file into your routing platform configuration by issuing the
load merge configuration mode command:
[edit]
user@host# load merge /var/tmp/ex-script.conf
load complete
Merging a Snippet
To merge a snippet, follow these steps:
1. From the HTML or PDF version of the manual, copy a configuration snippet into a text
file, save the file with a name, and copy the file to a directory on your routing platform.
For example, copy the following snippet to a file and name the file
ex-script-snippet.conf. Copy the ex-script-snippet.conf file to the /var/tmp directory
on your routing platform.
commit {
file ex-script-snippet.xsl; }
2. Move to the hierarchy level that is relevant for this snippet by issuing the following
configuration mode command:
[edit]
user@host# edit system scripts
[edit system scripts]
3. Merge the contents of the file into your routing platform configuration by issuing the
load merge relative configuration mode command:
For more information about the load command, see the Junos OS CLI User Guide.
Documentation Conventions
Caution Indicates a situation that might result in loss of data or hardware damage.
Laser warning Alerts you to the risk of personal injury from a laser.
Table 2 on page xvii defines the text and syntax conventions used in this guide.
Bold text like this Represents text that you type. To enter configuration mode, type the
configure command:
user@host> configure
Fixed-width text like this Represents output that appears on the user@host> show chassis alarms
terminal screen.
No alarms currently active
Italic text like this • Introduces important new terms. • A policy term is a named structure
• Identifies book names. that defines match conditions and
actions.
• Identifies RFC and Internet draft titles.
• Junos OS System Basics Configuration
Guide
• RFC 1997, BGP Communities Attribute
Italic text like this Represents variables (options for which Configure the machine’s domain name:
you substitute a value) in commands or
configuration statements. [edit]
root@# set system domain-name
domain-name
Text like this Represents names of configuration • To configure a stub area, include the
statements, commands, files, and stub statement at the [edit protocols
directories; interface names; ospf area area-id] hierarchy level.
configuration hierarchy levels; or labels • The console port is labeled CONSOLE.
on routing platform components.
< > (angle brackets) Enclose optional keywords or variables. stub <default-metric metric>;
# (pound sign) Indicates a comment specified on the rsvp { # Required for dynamic MPLS only
same line as the configuration statement
to which it applies.
[ ] (square brackets) Enclose a variable for which you can community name members [
substitute one or more values. community-ids ]
> (bold right angle bracket) Separates levels in a hierarchy of J-Web In the configuration editor hierarchy,
selections. select Protocols>Ospf.
Documentation Feedback
Technical product support is available through the Juniper Networks Technical Assistance
Center (JTAC). If you are a customer with an active J-Care or JNASC support contract,
or are covered under warranty, and need postsales technical support, you can access
our tools and resources online or open a case with JTAC.
• JTAC Hours of Operation —The JTAC centers have resources available 24 hours a day,
7 days a week, 365 days a year.
• Find solutions and answer questions using our Knowledge Base: http://kb.juniper.net/
To verify service entitlement by product serial number, use our Serial Number Entitlement
(SNE) Tool: https://tools.juniper.net/SerialNumberEntitlementSearch/
Overview
• Overview of Ethernet Solutions on page 3
Networking with a switch over Ethernet on a LAN is different than networking with a
router with IP over a wider area. Even the words used to talk about Ethernet networking
are different from those used in IP routing. This topic provides a list of all the terms and
acronyms used in the Junos OS Layer 2 Configuration Guide, as well terms that apply to a
complete network using Ethernet as a carrier technology.
• 802.3ah—The IEEE specification for link fault management (LFM), a method for OAM
of Ethernet links.
• 802.1Q—The IEEE specification for adding virtual local area network (VLAN) tags to
an Ethernet frame.
• B–MAC—The backbone source and destination MAC address fields found in the IEEE
802.1ah provider MAC encapsulation header.
• bridge—A network component defined by the IEEE that forwards frames from one LAN
segment or VLAN to another. The bridging function can be contained in a router, LAN
switch, or other specialized device. See also switch.
• bridge domain—A set of logical ports that share the same flooding or broadcast
characteristics. As in a virtual LAN, a bridge domain spans one or more ports of multiple
devices. By default, each bridge domain maintains its own forwarding database of
MAC addresses learned from packets received on ports belonging to that bridge domain.
See alsobroadcast domain and VLAN.
• B-TAG—A field defined in the IEEE 802.1ah provider MAC encapsulation header that
carries the backbone VLAN identifier information. The format of the B-TAG field is the
same as that of the IEEE 802.1ad S-TAG field. See also S-TAG.
• CIST—Common and Internal Spanning Tree. The single spanning tree calculated by
the spanning tree protocol (STP) and the rapid spanning tree protocol (RSTP) and
the logical continuation of that connectivity through multiple spanning tree (MST)
bridges and regions, calculated to ensure that all LANs in the bridged LAN are simply
and fully connected. See also MSTI.
• ETH-DM—Ethernet Frame Delay Measurements. See also OAM, CFM, and Y.1731.
• Ethernet—A term loosely applied to a family of LAN standards based on the original
proprietary Ethernet from DEC, Intel, and Xerox (DIX Ethernet), and the open
specifications developed by the IEEE 802.3 committee (IEEE 802.3 LANs). In practice,
few LANs comply completely with DIX Ethernet or IEEE 802.3.
• IRB—Integrated bridging and routing. IRB provides simultaneous support for Layer 2
bridging and Layer 3 routing within the same bridge domain. Packets arriving on an
interface of the bridge domain are Layer 2 switched or Layer 3 routed based on the
destination MAC address. Packets addressed to the router's MAC address are routed
to other Layer 3 interfaces.
• I-SID—The 24–bit service instance identifier field carried inside an I-TAG. The I-SID
defines the service instance to which the frame is mapped.
• I-TAG—A field defined in the IEEE 802.1ah provider MAC encapsulation header that
carries the service instance information (I-SID) associated with the frame.
• learning domain—A MAC address database where the MAC addresses are added based
on the normalized VLAN tags.
• LFM—Link fault management. A method used to detect problems on links and spans
on an Ethernet network defined in IEEE 802.3ah. See also OAM.
• Q-in-Q—See 802.1ad.
• S-TAG—A field defined in the IEEE 802.1ad Q-in-Q encapsulation header that carries
the S-VLAN identifier information. See also B-TAG.
• S-tagged service interface—The interface between a customer edge (CE) device and
the I-BEB or IB-BEB network components. Frames passed through this interface contain
an S-TAG field. See also B-tagged service interface.
• S-VLAN—The specific service instance VLAN identifier carried inside the S-TAG field.
See also B-VID.
• switch—A network device that attempts to perform as much of the forwarding task in
hardware as possible. The switch can function as a bridge (LAN switch), router, or
some other specialized device, and forwards frames, packets, or other data units. See
also bridge.
• virtual switch—A routing instance that can contain one or more bridge domains.
• VLAN—Virtual LAN. Defines a broadcast domain, a set of logical ports that share the
same flooding or broadcast characteristics. VLANs span one or more ports on multiple
devices. By default, each VLAN maintains its own Layer 2 forwarding database
containing MAC addresses learned from packets received on ports belonging to the
VLAN. See also bridge domain.
At this point, these acronyms and terms are just a bewildering array of letters and words.
It is the goal of this manual to make the contents of this list familiar and allow you to
place each of them in context and understand how they relate to each other. To do that,
a basic understanding of modern Ethernet standards and technology is necessary.
Traditionally, different hardware, software, and protocols have been used on LANs and
on networks that cover wider areas (national or global). A LAN switch is different than
a router, an Ethernet frame is different than an IP packet, and the methods used to find
destination MAC addresses are different than those used to find destination IP addresses.
This is because LANs based on Ethernet were intended for different network environments
than networks based on IP. The Internet protocol suite (TCP/IP) was intended as an
internetworking method to connect local customer networks. The local customer network
that a service provider's IP routers connected was usually based on some form of Ethernet.
This is why Ethernet and IP fit so well together: Ethernet defines the LAN, and the Internet
protocols define how these LANs are connected.
More specifically, Ethernet LANs and IP networks occupy different layers of the Internet’s
TCP/IP protocol suite. Between sender and receiver, networks deal with the bottom three
layers of the model: the physical layer (Layer 1), the data link or MAC layer (Layer 2), and
the network layer (Layer 3).
NOTE: These layers are also found in the Open Systems Interconnect
Reference Model (OSI-RM); however, in this chapter they are applied to the
TCP/IP protocol suite.
All digital networks ultimately deal with zeroes and ones, and the physical layer defines
bit representation on the media. Physical layer standards also define mechanical aspects
of the network, such as electrical characteristics or connector shapes, functional aspects
such as bit sequence and organization, and so on. The physical layer only “spits bits” and
has very little of the intelligence required to implement a complete network. Devices that
connect LAN segments at the physical layer are called hubs, and all bits that appear on
one port of the hub are also sent out on the other ports. This also means that bad bits
that appear on one LAN segment are propagated to all other LAN segments.
Above the physical layer, the data link layer defines the first-order bit structure, or frame,
for the network type. Also loosely called the MAC layer (technically, the MAC layer is a
sublayer required only on LANs), Layer 2 sends and receives frames. Frames are the last
things that bits were before they left the sender and the first things that bits become
when they arrive on an interface. Because frames have a defined structure, unlike bits,
frames can be used for error detection, control plane activities (not all frames must carry
user data: some frames are used by the network to control the link), and so forth. LAN
segments can be linked at the frame level, and these devices are called bridges. Bridges
examine arriving frames and decide whether to forward them on an interface. All bridges
today are called learning bridges because they can find out more about the network than
could older bridges that were less intelligent devices. Bridges learn much about the LAN
segments they connect to from protocols like those in the Spanning Tree Protocol (STP)
family.
The network layer (Layer 3) is the highest layer used by network nodes to forward traffic
as part of the data plane. On the Internet, the network layer is the IP layer and can run
either IPv4 or IPv6, which are independent implementations of the same functions. The
IP layer defines the structure and purpose of the packet, which is in turn the content of
the frame at Layer 2. As expected, LAN segments (which now form perfectly functional
networks on their own at the frame level) can be linked at the network layer, and in fact
that is one of the major functions of IP. Devices that link LANs at the network layer are
called routers, and IP routers are the network nodes of the Internet.
The Internet is a global, public network with IP subnets connected by routers and
exchanging packets. Can a global, public network consist of Ethernet LANs connected
by bridges and exchanging frames? Yes, it can, but there are several differences that
must be addressed before Ethernet can function as effectively as IP in the metropolitan
area (Metro Ethernet), let alone globally. One of the key differences is the addresses
used by Layer 2 frames and Layer 3 packets.
Both Ethernet and IP use globally unique network addresses that can be used as the
basis for a truly global network. Ethernet MAC addresses come from the IEEE and IP
subnet addresses come from various Internet authorities. (IP also employs a naming
convention absent in Ethernet, but we'll ignore that in this discussion.) The key differences
in how these addresses are assigned make all the difference when it comes to the basic
functions of a bridge as opposed to a router.
All devices on LANs that are attached to the Internet have both MAC layer and IP
addresses. Frames and packets contain both source and destination addresses in their
headers. In general:
• MAC addresses are 48 bits long. The first 24 bits are assigned by the IEEE and form
the organizationally unique identifier (OUI) of the manufacturer or vendor requesting
the address. The last 24 bits form the serial number of the LAN interface cards and
their uniqueness must be enforced by the company (some companies reuse numbers
of bad or returned cards while others do not).
• IPv4 addresses are 32 bits long. A variable number of the beginning bits are assigned
by an Internet authority and represent a subnet located somewhere in the world. The
remaining bits are assigned locally and, when joined to the network portion of the
address, uniquely identify some host on a particular network.
• IPv6 addresses are 128 bits long. Although there are significant differences, for the
purposes of this discussion, it is enough to point out that there is also a network and
host portion to an IPv6 address.
Note that MAC addresses are mainly organized by manufacturer and IP addresses are
organized by network, which is located in a particular place. Therefore, the IP address
can easily be used by routers for a packet's overall direction (for example, “192.168.27.48
is west of here”). However, the MAC addresses on a vendor's interface cards can end up
anywhere in the world, and often do. Consider a Juniper Networks router as a simple
example. Every Ethernet LAN interface on the router that sends or receives packets places
them inside Ethernet frames with MAC addresses. All of these interfaces share the initial
24 bits assigned to Juniper Networks. Two might differ only in one digit from one interface
to another. Yet the routers containing these MAC interfaces could be located on opposite
sides of the world.
An Internet backbone router only needs a table entry for every network (not host) in the
world. Most other routers only have a portion of this full table, and a default route for
forwarding packets with no entries in their table. In contrast, to perform the same role,
a bridge would need one table entry for every LAN interface, on host or bridge, in the
world. This is hard enough to do for Ethernets that span a metropolitan area, let alone
the entire world.
In spite of the difficulties of using a bridge to perform the network role of a router, many
vendors, customers, and service providers are attracted to the idea of using Ethernet in
as many places of their networks as possible.
• Most information starts and ends inside Ethernet frames. Today, this applies to data,
as well as voice (for example, VoIP) and video (for example, Web cams).
• Ethernet frames have all the essentials for networking, such as globally unique source
and destination addresses, error control, and so on.
• Ethernet frames can carry any kind of packet. Networking at Layer 2 is protocol
independent (independent of the Layer 3 protocol). Layer 2 networks work for IP
packets and all other Layer 3 protocols.
• More layers added to the Ethernet frame only slow the networking process down
(“nodal processing delay”).
NOTE: Networking at the frame level says nothing about the presence or
absence of IP addresses at the packet level. Almost all ports, links, and devices
on a network of LAN switches still have IP addresses, just as do all the source
and destination hosts. There are many reasons for the continued need for IP,
not the least of which is the need to manage the network. A device or link
without an IP address is usually invisible to most management applications.
Also, utilities such as remote access for diagnostics, file transfer of
configurations and software, and so on cannot run without IP addresses as
well as MAC addresses.
If a networked Layer 2 device such as a bridge or LAN switch could contain a list of all
known MAC addresses, then the network node could function in much the same way as
a router, forwarding frames instead of packets hop-by-hop through the network from
source LAN to destination LAN. However, the MAC address is much larger than the IPv4
address currently used on the Internet backbone (48 bits compared to the 32 bits of
IPv4).
This poses problems. Also, because the MAC address has no “network organization” like
the IPv4 or IPv6 address, an Layer 2 network node must potentially store every conceivable
MAC address in memory for next-hop table lookups. Instead of tables of about 125,000
entries, every Layer 2 network node would have to store millions of entries (for example,
24 bits, the potential NIC production from one Ethernet vendor, would require a table of
more than 16 million entries).
VLAN tags were not developed as a way to limit network node table entries. They were
originally invented to allow LAN switches to distinguish between physical groups of LAN
ports and logical groups of LAN ports. In other words, there was a need to configure a
LAN switch (or group of local LAN switches) to know that “these ports belong to VLAN
A” and “these ports belong to VLAN B.”
This was important because of how all LANs, not just Ethernet, work at the frame level.
Lots of frames on a LAN are broadcast to all stations (hosts and network nodes) on the
LAN segment. Also, multicasting works by flooding traffic within the VLAN. The stations
that received broadcast frames form the broadcast domain of the LAN. Only Ethernet
frames belonging to same broadcast domain are forwarded out certain ports on the LAN
switch. This prevents broadcast storms and isolates routine control frames onto the LAN
segment where they make the most sense.
The VLAN tag was invented to distinguish among different VLAN broadcast domains on
a group of LAN switches. The VLAN tag is a two-byte field inserted between the source
MAC address and the Ethertype (or length) field in an Ethernet frame. Another two-byte
field, the Tag Protocol Identifier (TPI or TPID), precedes the VLAN tag field.
Two fields were necessary to hold one piece of information, the VLAN tag, to enable
receivers to distinguish between untagged or plain Ethernet frames and those containing
VLAN tags. A mechanism was required to differentiate between the Ethertype and length
field for the untagged case and to distinguish among VLAN tag, Ethertype, and length
field for the tagged case. The answer was to constrain the TPID field to values that were
not valid Ethernet frame lengths or defined as valid Ethertypes. The first VLAN tag added
to an Ethernet frame is always indicated by a TPID value of 0x8100. This is not the VLAN
identifier, which appears in the next two bytes.
The VLAN tag subtracts four bytes from the total MTU length of the Ethernet frame, but
this is seldom a problem if kept in mind. When this tag is used in an Ethernet frame, the
frame complies with the IEEE 802.1Q (formerly IEEE 802.1q) specification.
Together, the four added bytes form the VLAN tag, but the individual fields that comprise
it are more important. The 2–byte TPID field is just a number and has no structure, only
having allowed and disallowed values. However, the 2-byte Tag Control Information
(TCI) field has a defined structure:
• The three bits of the User Priority field are defined by the IEEE 802.1p specification.
These can mimic class-of-service (CoS) parameters established at other layers of the
network (IP precedence bits, or MPLS EXP bits, and so on).
• The Canonical Format Indicator (CFI) bit indicates whether the following 12 bits of
VLAN identifier conform to Ethernet or not. For Ethernet frames, this bit is always set
to 0. (The other possible value, CFI=1, is used for Token Ring LANs, and tagged frames
should never be bridged between an Ethernet and Token Ring LAN regardless of the
VLAN tag or MAC address.)
• The 12-bit VLAN ID allows for 4096 possible VLANs, but not all values are used in all
cases.
The use of VLAN tagging to group (or bundle) sets of MAC addresses is a start toward
a method of forwarding LAN traffic based on information found in the frame, not on IP
address in the packet. However, there is a major limitation in trying to build forwarding
tables based on VLAN tags. Simply put, there are not enough VLAN tags.
Twelve bits only supply enough space for 4096 unique VLAN tags. This is hardly enough
for all the LANs on a large corporate campus, let alone the whole world. A 12-bit tag might
suffice for the local campus arena, but for the metropolitan area, comprising a whole
city, more bits are needed.
The number of bits in the VLAN tag, two bytes for the TPID and two bytes for the TCI
field, are fixed and cannot be extended. However, another VLAN tag can be added to the
frame, forming an inner and outer VLAN tag arrangement. This arrangement is defined
in the IEEE 802.1ad specification and applies to devices that function on the provider
bridge level. This means that Ethernet frames tagged at the local (or customer) VLAN
level can receive another outer VLAN tag when they are sent to the provider's LAN
switches. As a result, Ethernet frames can be switched across a metropolitan area, not
just among the local organizations devices at the campus level.
The outer tag defined in IEEE 802.1ad is often called the Virtual Metropolitan Area Network
(VMAN) tag, a good way to recall the intended scope of the specification. The outer tag
is placed after the MAC source address, moving the inner tag backwards in the frame.
Both tags can be added at the same time by the same device (called a push/push
operation), changed by a device (a swap operation), or removed by a device one at a
time (pop) or together (pop/pop). Devices can perform elaborate variations on these
operations (such as pop/swap/push) to accomplish the necessary networking tasks
with the frames they process.
The IEEE specification indicates that the outer tag of a doubly-tagged Ethernet frame
should have a TPID value of 0x88a8. Any network device can easily tell if it has received
a frame with one tag (0x8100) or two tags (0x88a8). However, because the value 0x8100
always means that a VLAN tag is present, most vendors and networks use the same
TPID value (0x8100) for the inner and outer tags. As long as the configuration and
processing are consistent, there is no confusion, and the TPID value can usually be
changed if necessary.
How do nested VLAN tags solve the VLAN numbering limitation? Taken together, the
two VLAN tags can be thought of as providing 24 bits for tagging space: 12 bits at the
outer level and 12 bits at the inner level. However, it is important to realize that the bits
are not acted on as if they were all one tag. Even when the tags are nested, bridges on a
provider backbone will normally only switch on the outer VLAN tag. All in all, the inner
12-bit tagging space is more than adequate for a Metro Ethernet network. Any limitations
in the VLAN tag space can be addressed by adding more VLAN tags to the basic Ethernet
frame.
• Layer 2 logical interface—This type of interface uses the VLAN-ID as a virtual circuit
identifier and the scope of the VLAN-ID is local to the interface port. This type of
interface is often used in service-provider-centric applications.
• Access or trunk interface—This type of interface uses a VLAN-ID with global significance.
The access or trunk interface is implicitly associated with bridge domains based on
VLAN membership. Access or trunk interfaces are typically used in enterprise-centric
applications.
What would a Metro Ethernet network with Juniper Networks MX Series 3D Universal
Edge Router look like? It is very likely that the Metro Ethernet network will place MX Series
routers at the edge of a VPLS and MPLS core network.
The VLAN labels in the packet are stacked with MPLS labels, as shown in Figure 2 on
page 15. For a more detailed examination of this type of Metro Ethernet network, see
“Example: Configuring a Provider VPLS Network with Normalized VLAN Tags” on page 51.
Another possible configuration, this one without the VPLS and MPLS core, is shown in
Figure 3 on page 16.
In Figure 3 on page 16, the circled numbers reflect the different formats that the Ethernet
frames can take as the frames make their way from a host on one Ethernet switching
hub to a host on the other hub. The frame can have two VLAN tags (inner and outer),
one tag (only the inner), or no tags at all. The structure of these various Ethernet frames
is shown in Figure 4 on page 16.
As the frame flows from a LAN-based host on one end of Figure 4 on page 16 to the other,
the Ethernet frame can have:
• No VLAN tags—At locations 1 and 5, the Ethernet frames can be native and have no
VLAN tags at all (many NIC cards can include configuration of a VLAN identifier, but
not all).
• One VLAN tag—At locations 2 and 4, from the VLAN-aware switching hub to the MX
Series router, the Ethernet frame has one VLAN tag (if a VLAN tag is not present on
arriving frames, a tag is added by the MX Series router).
• Two VLAN tags—At location 3, between two provider bridges, the MX Series routers
exchange frames with two VLAN tags. The outer tags are added and removed by the
MX Series routers.
For additional information about the Layer 2 networking features available on Juniper
Networks MX Series 3D Universal Edge Router, see the following references:
• RFC 4761—IETF draft Virtual Private LAN Service (VPLS) Using BGP for Auto-discovery
and Signaling.
• RFC 4762—IETF draft Virtual Private LAN Service (VPLS) Using Label Distribution Protocol
(LDP) Signaling.
You configure MX Series routers exactly as you would any other router running the Junos
OS. That is, all the familiar Layer 3 features and protocols are available on the MX Series
routers. However, you can configure Layer 2 features that are unique to the MX Series
routers. This chapter addresses Layer 2 configuration for the MX Series routers. For
information about configuring Layer 3 features and protocols, as well as comprehensive
information about interfaces and system basics, please see the other Junos configuration
guides.
Configuring Layer 2 features on an MX Series router can vary from the very simple
(aggregated Ethernet trunk interfaces, spanning trees), to the more complex (inner and
outer VLAN tags, broadcast domains), to the very complicated (integrated bridging and
routing, Layer 2 filtering). This chapter offers a fairly complex configuration for Layer 2
processing in a bridged environment.
Generally, there are four things that you must configure in an Layer 2 environment:
• Interfaces and virtual LAN (VLAN) tags—Layer 2 interfaces are usually various type of
Ethernet links with VLAN tags used to connect to customer devices or other bridges
or routers.
• Bridge domains—Bridge domains limit the scope of media access control (MAC)
learning (and thereby the size of the MAC table) and also determine where the device
should propagate frames sent to broadcast, unknown unicast, and multicast (BUM)
MAC addresses.
• Spanning Tree Protocols (xSTP, where the “x” represents the STP type)—Bridges
function by associating a MAC address with an interface, similar to the way a router
associates an IP network address with a next-hop interface. Just as routing protocols
use packets to detect and prevent routing loops, bridges use xSTP frames to detect
and prevent bridging loops. (Layer 2 loops are more devastating to a network because
of the broadcast nature of Ethernet LANs.)
• Integrated bridging and routing (IRB)—Support for both Layer 2 bridging and Layer 3
routing on the same interface. Frames are bridged if they are not sent to the router's
MAC address. Frames sent to the router's MAC address are routed to other interfaces
configured for Layer 3 routing.
Configuring Layer 2 features on MX Series routers can vary from the very simple
(aggregated Ethernet trunk interfaces, spanning trees), to the more complex (inner and
outer VLAN tags, broadcast domains), to the very complicated (integrated bridging and
routing, Layer 2 filtering). This example offers a fairly complex configuration for Layer 2
processing in a bridged environment.
Example Topology
Consider the network in Figure 5 on page 23. The figure shows three MX Series routers
acting as Layer 2 devices.
The three routers each have a series of hosts on their Ethernet interfaces, as well as
aggregated Ethernet links between them. Router 2 and Router 3 are linked to the Internet,
and Router 1 and Router 3 are also linked to switches configured with a range of VLANs,
as shown in the figure. Because the VLAN tags are important, the routers run Multiple
STP (MSTP) on the links connecting them to prevent bridging loops (Rapid STP, or RSTP,
does not recognize VLAN tags and blocks ports without regard for VLAN tagging).
Example Scenario
The network administrator wants to configure these links and devices so that:
• The six Gigabit Ethernet links between Router 1 and the other routers (ge-2/1/0 through
ge-2/1/5) are gathered into two aggregated Ethernet (AE) links mixing bridged traffic
from the VLANs. AE1 will consist of the first three links and AE2 will use the last three
links. The same approach is taken for the links on Router 2 and Router 3.
• The Gigabit Ethernet links from Router 1 to the customer devices (ge-2/2/1 and ge-2/2/6
) will be bridged and include VLAN tag 100 on ge-2/2/1 and VLAN tag 200 on ge-2/2/6.
The other two routers, Router 2 and Router 3, also have two ports configured to handle
VLAN 100 on one port (ge-2/2/2) and VLAN 200 on the other (ge-3/3/3).
• Router 2 and Router 3 have IRB configured so that they can pass traffic to other routers
in the rest of the network.
• Router 1 has an access interface which provides bridging on VLAN 205 and is connected
to a customer device configured on ge-2/2/2. Router 3 has an access interface which
provides bridging on VLAN 200 and is connected to a customer device configured on
ge-2/2/6.
• Router 1 and Router 3 are configured with a trunk interface to a switch for VLANs
200–205. On both routers, this interface is ge-2/2/4.
1. Configure the Ethernet interfaces and VLAN tags on all three routers, as described in
“Example Step: Configuring Interfaces and VLAN Tags” on page 24
2. Configure the bridge domains on all three routers, as described in “Example Step:
Configuring Bridge Domains” on page 30.
3. Configure the Spanning Tree Protocol on all three routers, as described in “Example
Step: Configuring Spanning Tree Protocols” on page 32
Configure the Ethernet interfaces and VLAN tags on all three routers.
To configure the Ethernet interfaces and VLAN tags on all three routers:
[edit]
chassis {
aggregated-devices {
ethernet {
device-count 2; # Number of AE interfaces on router
}
}
}
interfaces ge-2/1/0 {
gigether-options {
802.3ad ae2;
}
}
interfaces ge-2/1/1 {
gigether-options {
802.3ad ae2;
}
}
interfaces ge-2/1/2 {
gigether-options {
802.3ad ae2;
}
}
interfaces ge-2/1/3 {
gigether-options {
802.3ad ae1;
}
}
interfaces ge-2/1/4 {
gigether-options {
802.3ad ae1;
}
}
interfaces ge-2/1/5 {
gigether-options {
802.3ad ae1;
}
}
interfaces ge-2/2/1 {
encapsulation flexible-ethernet-services;
vlan-tagging; # Customer interface uses singly-tagged frames
unit 100 {
encapsulation vlan-bridge;
vlan-id 100;
}
unit 200 {
encapsulation vlan-bridge;
vlan-id 200;
}
}
interfaces ge-2/2/2 {
unit 0 {
family bridge {
interface-mode access;
vlan-id 205;
}
}
}
interfaces ge-2/2/4 {
native-vlan-id 200; # Untagged packets get vlan 200 tag
unit 0 {
family bridge {
interface-mode trunk;
vlan-id-list 200-205; # This trunk port is part of VLAN range 200–205
}
}
}
interfaces ge-2/2/6 {
encapsulation flexible-ethernet-services;
vlan-tagging; # Customer interface uses singly-tagged frames
unit 200 {
encapsulation vlan-bridge;
vlan-id 200;
}
}
interfaces ae1 {
encapsulation extended-vlan-bridge;
vlan-tagging;
unit 100 {
vlan-id 100;
}
unit 200 {
vlan-id 200;
}
}
interfaces ae2 {
unit 0 {
family bridge {
interface-mode trunk;
vlan-id-list 100, 200–205;
}
}
}
[edit]
chassis {
aggregated-devices {
ethernet {
device-count 2; # Number of AE interfaces on the router
}
}
}
interfaces ge-2/2/2 {
encapsulation flexible-ethernet-services;
vlan-tagging; # Customer interface uses singly-tagged frames
unit 100 {
encapsulation vlan-bridge;
vlan-id 100;
}
}
interfaces ge-3/3/3 {
encapsulation flexible-ethernet-services;
vlan-tagging; # Customer interface uses singly-tagged frames
unit 200 {
encapsulation vlan-bridge;
vlan-id 200;
}
}
interfaces ge-5/1/0 {
gigether-options {
802.3ad ae3;
}
}
interfaces ge-5/1/1 {
gigether-options {
802.3ad ae3;
}
}
interfaces ge-5/1/2 {
gigether-options {
802.3ad ae3;
}
}
interfaces ge-5/1/3 {
gigether-options {
802.3ad ae1;
}
}
interfaces ge-5/1/4 {
gigether-options {
802.3ad ae1;
}
}
interfaces ge-5/1/5 {
gigether-options {
802.3ad ae1;
}
}
interfaces ae1 {
encapsulation extended-vlan-bridge;
vlan-tagging;
unit 100 {
vlan-id 100;
}
unit 200 {
vlan-id 200;
}
}
interfaces ae3 {
encapsulation extended-vlan-bridge;
vlan-tagging;
unit 100 {
vlan-id 100;
}
unit 200 {
vlan-id 200;
}
}
[edit]
chassis {
aggregated-devices {
ethernet {
device-count 2; # Number of AE interfaces on router
}
}
}
interfaces ge-2/2/2 {
encapsulation flexible-ethernet-services;
vlan-tagging; # Customer interface uses singly-tagged frames
unit 100 {
encapsulation vlan-bridge;
vlan-id 100;
}
}
interfaces ge-2/2/4 {
unit 0 {
family bridge {
interface-mode trunk;
vlan-id-list 200-205; # This trunk port is part of VLAN range 200–205
}
}
}
interfaces ge-2/2/6 {
unit 0 {
family bridge {
interface-mode access;
vlan-id 200;
}
}
}
interfaces ge-3/3/3 {
encapsulation flexible-ethernet-services;
vlan-tagging; # Customer interface uses singly-tagged frames
unit 200 {
encapsulation vlan-bridge;
vlan-id 200;
}
}
interfaces ge-11/1/0 {
gigether-options {
802.3ad ae3;
}
}
interfaces ge-11/1/1 {
gigether-options {
802.3ad ae3;
}
}
interfaces ge-11/1/2 {
gigether-options {
802.3ad ae3;
}
}
interfaces ge-11/1/3 {
gigether-options {
802.3ad ae2;
}
}
interfaces ge-11/1/4 {
gigether-options {
802.3ad ae2;
}
}
interfaces ge-11/1/5 {
gigether-options {
802.3ad ae2;
}
}
interfaces ae2 {
unit 0 {
family bridge {
interface-mode trunk;
vlan-id-list 100, 200–205;
}
}
}
interfaces ae3 {
encapsulation extended-vlan-bridge;
vlan-tagging;
unit 100 {
vlan-id 100;
}
unit 200 {
vlan-id 200;
}
}
[edit]
bridge-domains {
vlan100 {
domain-type bridge;
vlan-id 100;
interface ge-2/2/1.100;
interface ae1.100;
}
vlan200 {
domain-type bridge;
vlan-id 200;
interface ge-2/2/1.200;
interface ge-2/2/6.200;
interface ae1.200;
}
vlan201 {
domain-type bridge;
vlan-id 201;
}
vlan202 {
domain-type bridge;
vlan-id 202;
}
vlan203 {
domain-type bridge;
vlan-id 203;
}
vlan204 {
domain-type bridge;
vlan-id 204;
}
vlan205 {
domain-type bridge;
vlan-id 205;
}
}
[edit]
bridge-domains {
vlan100 {
domain-type bridge;
vlan-id 100;
interface ge-2/2/2.100;
interface ae1.100;
interface ae3.100;
}
vlan200 {
domain-type bridge;
vlan-id 200;
interface ge-3/3/3.200;
interface ae1.200;
interface ae3.200;
}
}
[edit]
bridge-domains {
vlan100 {
domain-type bridge;
vlan-id 100;
interface ge-2/2/2.100;
interface ae3.100;
}
vlan200 {
domain-type bridge;
vlan-id 200;
interface ge-3/3/3.200;
interface ae3.200;
}
vlan201 {
domain-type bridge;
vlan-id 201;
}
vlan202 {
domain-type bridge;
vlan-id 202;
}
vlan203 {
domain-type bridge;
vlan-id 203;
}
vlan204 {
domain-type bridge;
vlan-id 204;
}
vlan205 {
domain-type bridge;
vlan-id 205;
}
}
Configure the Spanning Tree Protocol on all three routers. This is necessary to avoid the
potential bridging loop formed by the triangular architecture of the routers. MSTP is
configured on the three routers so the set of VLANs has an independent, loop-free
topology. The Layer 2 traffic can be load-shared over 65 independent paths (64 Multiple
Spanning Tree Instances [MSTIs] and one Common and Internal Spanning Tree [CIST]),
each spanning a set of VLANs. The configuration names, revision level, and VLAN-to-MSTI
mapping must match in order to utilize the load-sharing capabilities of MSTP (otherwise,
each router will be in a different region).
[edit]
protocols {
mstp {
configuration-name mstp-for-R1-2-3; # The names must match to be in the same
region
revision-level 3; # The revision levels must match
bridge-priority 0; # This bridge acts as root bridge for VLAN 100 and 200
interface ae1;
interface ae2;
msti 1 {
vlan100; # This VLAN corresponds to MSTP instance 1
}
msti 2 {
vlan200; # This VLAN corresponds to MSTP instance 2
}
}
}
[edit]
protocols {
mstp {
configuration-name mstp-for-R1-2-3; # The names must match to be in the same
region
revision-level 3; # The revision levels must match
interface ae1;
interface ae3;
msti 1 {
vlan100; # This VLAN corresponds to MSTP instance 1
bridge-priority 4096; # This bridge acts as VLAN 100 designated bridge on
# the R2-R3 segment
}
msti 2 {
vlan200; # This VLAN corresponds to MSTP instance 2
}
}
}
[edit]
protocols {
mstp {
configuration-name mstp-for-R1-2-3; # The names must match to be in the same
region
revision-level 3; # The revision levels must match
interface ae2;
interface ae3;
msti 1 {
vlan100; # This VLAN corresponds to MSTP instance 1
}
msti 2 {
vlan200; # This VLAN corresponds to MSTP instance 2
bridge-priority 4096; # This bridge acts as VLAN 200 designated bridge on
# the R2-R3 segment
}
}
}
As a result of this configuration, VLAN 100 and VLAN 200 share physical links, but have
different designated ports, root ports, and alternate ports on the three different routers.
The designated, root, and alternate ports for the two VLANs on the three routers are
shown in Figure 6 on page 33.
Router 2 and Router 3 on the bridging network act as a kind of gateway to the Layer 3
routers in the rest of the network. Router 2 and Router 3 must be able to route packets
as well as bridge frames. This requires the configuration of integrated routing and bridging
(IRB) on Routers 2 and 3. The link to the router network is xe-2/1/0 on Router 2 and
xe-1/1/0 on Router 3.
2. Reference the IRB interface at the bridge domain level of the configuration.
IRB supports Layer 2 bridging and Layer 3 routing on the same interface. If the MAC
address on the arriving frame is the same as that of the IRB interface, then the packet
inside the frame is routed. Otherwise, the MAC address is learned or looked up in the MAC
address database.
NOTE: You configure IRB on Router 2 and Router 3. The Virtual Router
Redundancy Protocol (VRRP) is configured on the IRB interface so that both
links can be used to carry traffic between the bridge domain and the router
network.
[edit]
interfaces {
xe-2/1/0 {
unit 0 {
family inet {
address 10.0.10.2/24; # Routing interface
}
}
}
irb {
unit 0 {
family inet {
address 10.0.1.2/24 {
vrrp-group 1 {
virtual-address 10.0.1.51;
priority 254;
}
}
}
}
unit 1 {
family inet {
address 10.0.2.2/24 {
vrrp-group 2 {
virtual-address 10.0.2.51;
priority 100;
}
}
}
}
}
}
bridge-domains {
vlan-100 {
domain-type bridge;
vlan-id 100;
interface ge-2/2/2.100;
interface ae1.100;
interface ae3.100
routing-interface irb.0;
}
vlan-200 {
domain-type bridge;
vlan-id 200;
interface ge-3/3/3.200;
interface ae1.200;
interface ae3.200
routing-interface irb.1;
}
}
[edit]
interfaces {
xe-1/1/0 {
unit 0 {
family inet {
address 10.0.20.3/24; # Routing interface
}
}
}
irb {
unit 0 {
family inet {
address 10.0.1.3/24 {
vrrp-group 1 {
virtual-address 10.0.1.51;
priority 100;
}
}
}
}
unit 1 {
family inet {
address 10.0.2.3/24 {
vrrp-group 2 {
virtual-address 10.0.2.51;
priority 254;
}
}
}
}
unit 2 {
family inet {
address 10.0.3.2/24 {
}
}
unit 3 {
family inet {
address 10.0.3.3/24 {
}
}
unit 4 {
family inet {
address 10.0.3.4/24 {
}
}
unit 5 {
family inet {
address 10.0.3.5/24 {
}
}
unit 6 {
family inet {
address 10.0.3.6/24 {
}
}
unit 7 {
family inet {
address 10.0.3.7/24 {
}
}
unit 8 {
family inet {
address 10.0.3.8/24 {
}
}
}
}
bridge-domains {
vlan-100 {
domain-type bridge;
vlan-id 100;
interface ge-2/2/2.100;
interface ae2.100;
interface ae3.100;
routing-interface irb.0;
}
vlan-200 {
domain-type bridge;
vlan-id 200;
interface ge-3/3/3.200;
interface ae2.200;
interface ae3.200;
routing-interface irb.1;
}
vlan201 {
vlan-id 201;
routing-interface irb.2
}
vlan202 {
vlan-id 202;
routing-interface irb.3
}
vlan203 {
vlan-id 203;
routing-interface irb.4
}
vlan204 {
vlan-id 204;
routing-interface irb.5
}
vlan205 {
vlan-id 205;
routing-interface irb.6
}
}
Virtual Switches
Juniper Networks MX Series 3D Universal Edge Routers include all standard Ethernet
capabilities as well as enhanced mechanisms for service providers to provision and
support large numbers of Ethernet services in addition to all Layer 3 services. The MX
Series routers include several features to contain and control the Ethernet environment.
One of these features is the virtual switch. MX Series routers allow the collapsing of
multiple diverse switch networks to a single platform by running virtual instances of as
many Spanning Tree Protocols (STPs) as needed to support all broadcast domains. This
is important because there are many incompatible versions of STP, and without a way
to run multiple virtual instances, a separate switch would be needed to support each
one. With MX Series virtual switch configuration, you can continue to running existing
STP protocols with the option to migrate to a common STP protocol if desired.
Virtual switches also make it easy to separate independent switched Ethernet networks,
each possibly carrying several VLANs. Because the same VLAN ID can be used in multiple
switched networks, virtual switches can keep each VLAN and broadcast domain logically
separated.
For more information about STPs and virtual switches, see the Junos OS Layer 2
Configuration Guide.
You can configure two virtual switches as separate routing instances on an MX Series
router with bridge domains and VLANs.
Before you begin, you should have already configured a basic bridge domain environment.
For a general description of a basic bridge domain environment, see “Layer 2 Features
for a Bridging Environment” on page 21. For an example of a basic bridge domain
configuration, see “Example Roadmap: Configuring a Basic Bridge Domain Environment”
on page 22. More detailed examples are also provided for the four features generally
required in a Layer 2 environment:
At the end of this configuration, you create two virtual switches as separate routing
instances to separate the VLANs and broadcast domains. Because the same VLAN ID
can be used in multiple switched networks, virtual switches can keep each VLAN and
broadcast domain logically separated.
1. The following statements configure the first virtual switch in a routing instance.
[edit]
routing-instances {
virtual-switch-1 {
instance-type virtual-switch;
...virtual-switch-1 configuration with one STP/VLAN ID set...
}
}
2. The following statement configure the second virtual switch in a different routing
instance.
[edit]
routing-instances {
virtual-switch-2 {
instance-type virtual-switch;
...virtual-switch-2 configuration with another STP/VLAN ID set...
}
}
For more information about configuring virtual switches, see the Junos OS Layer 2
Configuration Guide.
A packet received on a physical port is only accepted for processing if the VLAN tags of
the received packet match the VLAN tags associated with one of the logical interfaces
configured on the physical port. The VLAN tags of the received packet are translated
only if they are different than the normalized VLAN tags. For the translation case, the
VLAN identifier tags specify the normalized VLAN. For this case, the terms “learn VLAN”
and “normalized VLAN” can be used interchangeably.
You can specify the normalized VLAN using one of the following conditions:
• The VLAN identifier is specified as “none,” meaning the VLAN tags are not translated
or generated
• The inner and outer VLAN identifier tags are both determined explicitly by configuration
• Configuring Learning Domains for VLAN IDs Bound to Logical Interfaces on page 47
• Example: Configuring a Provider Bridge Network with Normalized VLAN Tags on page 47
• Example: Configuring a Provider VPLS Network with Normalized VLAN Tags on page 51
Packets received over a Layer 2 logical interface for bridging are processed in a strict
sequence of steps.
Packets received over a Layer 2 logical interface for bridging when a normalized VLAN is
configured with a single or inner and outer VLAN identifier tags under the bridge domain
or the VPLS routing instance are processed with the following steps:
1. A packet received on a physical port is only accepted for further processing if the VLAN
tags of the received packet match the VLAN tags associated with one of the logical
interfaces configured on that physical port.
2. The VLAN tags of the received packet are compared with the normalized VLAN tags.
If the VLAN tags of the received packet are different from the normalized VLAN, then
the appropriate VLAN operations (such as push-push, pop-pop, pop-swap, swap-swap,
swap, and others) are done implicitly to convert the received VLAN tags to the
normalized VLAN tag value. For more information these operations, see the Junos
Routing Protocols Configuration Guide.
3. If the source MAC address of the received packet is not present in the source MAC
table, then it is learned based on the normalized VLAN tag value.
4. The packet is forwarded toward one or more egress Layer 2 logical interfaces based
on the destination MAC address. A packet with a known unicast destination MAC
address is only forwarded to one egress logical interface. For each egress Layer 2
logical interface, the normalized VLAN tag within the packet is compared with the
VLAN tags configured on that logical interface. If the VLAN tags associated with an
egress logical interface do not match the normalized VLAN tag in the frame, then
appropriate VLAN operations (such as push-push, pop-pop, pop-swap, swap-swap,
swap, and others) are implicitly done to convert the normalized VLAN tags to the
VLAN tags of the egress logical interface. For more information these operations, see
the Junos Routing Protocols Configuration Guide.
• Configuring Learning Domains for VLAN IDs Bound to Logical Interfaces on page 47
• Example: Configuring a Provider Bridge Network with Normalized VLAN Tags on page 47
• Example: Configuring a Provider VPLS Network with Normalized VLAN Tags on page 51
This topic provides configuration and operational information to help you manipulate
virtual local area networks (VLANs) within a bridge domain or a virtual private LAN service
(VPLS) instance. The VPLS configuration is not covered in this topic. For more information
about configuring Ethernet pseudowires as part of VPLS, see the Junos OS Feature Guides.
The manipulation of VLANs within a bridge domain or a VPLS instance can be done in
several ways:
• By using the vlan-map statements at the [edit interfaces] hierarchy level. This chapter
does not use vlan-map. For more information about VLAN maps, see the Junos OS
Network Interfaces Configuration Guide.
• By using vlan-id statements within a bridge domain or VPLS instance hierarchy. This
method is used in the configuration in this chapter.
The vlan-id and vlan-tags statements under the bridge domain or VPLS routing instance
are used to:
Then, the source MAC address of a received packet is learned based on the normalized
VLAN configuration.
For output packets, if the VLAN tags associated with an egress logical interface do not
match the normalized VLAN tags within the packet, then appropriate VLAN tag operations
(such as push-push, pop-pop, pop-swap, swap-swap, swap, and others) are implicitly
made to convert the normalized VLAN tags to the VLAN tags for the egress logical
interface. For more information about these operations, see the Junos OS Routing Protocols
Configuration Guide.
• vlan-id vlan-number—Tags all packets sent over the VPLS virtual interface with the
configured vlan-number. For an example of this configuration, see “Example: Configuring
One VPLS Instance for Several VLANs” on page 55.
If the incoming VLAN tags identifying a Layer 2 logical interface are removed when packets
are sent over VPLS virtual interfaces, use the vlan-id none statement.
NOTE: Even when the vlan-id none statement is configured, the packets can
still contain other customer VLAN tags.
• Use either the vlan-id vlan-number statement (to tag all packets with one normalized
VLAN tag) or the vlan-tags outer outer-vlan-number inner inner-vlan-number statement
(to tag all packets with the normalized outer and inner VLAN tags) if you want to tag
packets sent onto the VPLS pseudowires.
• Use the vlan-id none statement to remove the incoming VLAN tags identifying a Layer
2 logical interface when packets are sent over VPLS pseudowires. This statement is
also used to configure shared VLAN learning.
NOTE: The outgoing packets can still contain customer VLAN tags.
• If integrated routing and bridging (IRB) is configured for a bridge domain or a VPLS
routing instance, then you must configure a normalized VLAN using one of the following
statements:
• vlan-id vlan-number
• vlan-id none
• Use the vlan-id all statement to configure bridging for several VLANS with minimal
amount of configuration and switch resources. For an example of this configuration,
see “Example: Configuring One VPLS Instance for Several VLANs” on page 55.
• Example: Configuring a Provider Bridge Network with Normalized VLAN Tags on page 47
• Example: Configuring a Provider VPLS Network with Normalized VLAN Tags on page 51
A learning domain is a MAC address database to which the MAC addresses are added
based on the normalized VLAN tags. The normalized VLAN tags associated with a learning
domain are always carried within packets sent over VPLS virtual interfaces.
To configure bridging for several VLANs using a minimal amount of configuration and
switch resources, use the vlan-id all configuration statement to implicitly configure
multiple learning domains for a bridge domain or VPLS instance:
• For a logical interface with a single VLAN tag, the statement implicitly creates a learning
domain for each normalized VLAN of the interface.
• For a logical interface with dual VLAN tags, the statement implicitly creates a learning
domain for each inner VLAN (normalized VLAN).
This topic provides a configuration example to help you effectively configure a network
of Juniper Networks MX Series 3D Universal Edge Routers for a bridge domain or virtual
private LAN service (VPLS) environment. The emphasis here is on choosing the normalized
virtual LAN (VLAN) configuration. The VPLS configuration is not covered in this chapter.
For more information about configuring Ethernet pseudowires as part of VPLS, see the
Junos OS Feature Guides.
NOTE: This topic does not present exhaustive configuration listings for all
routers in the figures. However, you can use it with a broader configuration
strategy to complete the MX Series router network configurations.
The Layer 2 provider edge (PE) routers are MX Series routers. Each site is connected to
two provider (P) routers for redundancy, although both links are only shown for L2-PE1
at Site 1. Site 1 is connected to P0 and P1 (as shown), Site 2 is connected to P0 and P2
(not shown), Site 3 is connected to P2 and P3 (as shown), and Site 4 is connected to P1
and P3 (as shown). VPLS pseudowires configured on the PE and P routers carry traffic
between the sites.
The VLANs’ bridging paths are shown with distinct dashed and dotted lines. The VLANs
at each site are:
The following is the configuration of interfaces, virtual switches, and bridge domains for
MX Series router L2-PE1:
[edit]
interfaces ge-1/0/0 {
encapsulation flexible-ethernet-services;
flexible-vlan-tagging;
unit 1 {
encapsulation vlan-bridge;
vlan-id 100;
}
unit 11 {
encapsulation vlan-bridge;
vlan-id 301;
}
}
interface ge-2/0/0 {
encapsulation flexible-ethernet-services;
flexible-vlan-tagging;
unit 1 {
encapsulation vlan-bridge;
vlan-id 100;
}
}
interface ge-3/0/0 {
encapsulation flexible-ethernet-services;
flexible-vlan-tagging;
unit 1 {
encapsulation vlan-bridge;
vlan-id 200; # NOTE: 200 is translated to normalized VLAN value
}
}
interfaces ge-4/0/0 {
encapsulation flexible-ethernet-services;
flexible-vlan-tagging;
unit 1 {
encapsulation vlan-bridge;
vlan-tags outer 500 inner 100; # This places two VLAN tags on the provider
# pseudowire
}
}
interfaces ge-5/0/0 {
encapsulation flexible-ethernet-services;
flexible-vlan-tagging;
unit 1 {
encapsulation vlan-bridge;
vlan-tags outer 500 inner 100; # This places two VLAN tags on the provider
# pseudowire
}
unit 11 {
encapsulation vlan-bridge;
vlan-tags outer 600 inner 300; # This places two VLAN tags on the provider
# pseudowire
}
}
interfaces ge-6/0/0 {
encapsulation flexible-ethernet-services;
flexible-vlan-tagging;
unit 11 {
encapsulation vlan-bridge;
vlan-id 300;
}
}
routing-instances {
customer-c1-virtual-switch {
instance-type virtual-switch ;
bridge-domains {
c1-vlan-100 {
domain-type bridge;
vlan-id 100; # Customer VLAN 100 uses these five logical interfaces
interface ge-1/0/0.1;
interface ge-2/0/0.1;
interface ge-3/0/0.1;
interface ge-4/0/0.1;
interface ge-5/0/0.1;
} # End of c1-vlan-100
} # End of bridge-domains
} # End of customer-c1-virtual-switch
customer-c2-virtual-switch {
instance-type virtual-switch ;
bridge-domains {
c2-vlan-300 {
domain-type bridge;
vlan-id 300; # Customer VLAN 300 uses these three logical interfaces
interface ge-1/0/0.11;
interface ge-5/0/0.11;
interface ge-6/0/0.11;
} # End of c1-vlan-300
} # End of bridge-domains
} # End of customer-c2-virtual-switch
} # end of routing-instances
The association of the received packet to a logical interface is done by matching the
VLAN tags of the received packet with the VLAN tags configured on one of the logical
interfaces on that physical port. The vlan-id 100 configuration within the bridge domain
c1–vlan-100 sets the normalized VLAN value to 100.
• Packets received on logical interfaces ge-1/0/0.1 or ge-2/0/0.1 with a single VLAN tag
of 100 in the frame are accepted.
• Packets received on logical interface ge-3/0/0.1 with a single VLAN tag of 200 in the
frame are accepted and have their tag values translated to the normalized VLAN tag
value of 100.
• Packets received on logical interfaces ge-4/0/0.1 and ge-5/0/0.1 with outer tag values
of 500 and inner tag values of 100 are accepted.
• Unknown source MAC addresses and unknown destination MAC addresses are learned
based on their normalized VLAN values of 100 or 300.
• All packets sent on a logical interface always have their associated vlan-id value(s) in
their VLAN tag fields.
This topic provides a configuration example to help you effectively configure a network
of Juniper Networks MX Series 3D Universal Edge Routers for a bridge domain or virtual
private LAN service (VPLS) environment. The emphasis here is on choosing the normalized
virtual LAN (VLAN) configuration. The VPLS configuration is not covered in this chapter.
For more information about configuring Ethernet pseudowires as part of VPLS, see the
Junos OS Feature Guides.
NOTE: This topic does not present exhaustive configuration listings for all
routers in the figures. However, you can use it with a broader configuration
strategy to complete the MX Series router network configurations.
The Layer 2 PE routers are MX Series routers. Each site is connected to two P routers for
redundancy, although both links are only shown for L2-PE1 at Site 1. Site 1 is connected
to P0 and P1, Site 2 is connected to P0 and P2 (not shown), Site 3 is connected to P2
and P3, and Site 4 is connected to P1 and P3. VPLS pseudowires configured on the PE
and P routers carry traffic between the sites.
The pseudowires for the VPLS instances are shown with distinct dashed and dotted
lines. The VLANs at each site are:
Service provider SP-1 is providing VPLS services for customer C1 and C2. L2-PE1 is
configured with a VPLS instance called customer-c1-vsi. The VPLS instance sets up
pseudowires to remote Site 2 and Site 3. L2-PE1 is also configured with a VPLS instance
called customer-c2-vsi. The VPLS instance sets up a pseudowire to remote Site 4.
The following is the configuration of interfaces, virtual switches, and bridge domains for
MX Series router L2-PE1:
[edit]
interfaces ge-1/0/0 {
encapsulation flexible-ethernet-services;
flexible-vlan-tagging;
unit 1 {
encapsulation vlan-vpls;
vlan-id 100;
}
unit 11 {
encapsulation vlan-vpls;
vlan-id 301;
}
}
interfaces ge-2/0/0 {
encapsulation flexible-ethernet-services;
flexible-vlan-tagging;
unit 1 {
encapsulation vlan-vpls;
vlan-id 100;
}
}
interfaces ge-3/0/0 {
encapsulation flexible-ethernet-services;
flexible-vlan-tagging;
unit 1 {
encapsulation vlan-vpls;
vlan-id 200; # Should be translated to normalized VLAN value
}
}
interfaces ge-6/0/0 {
encapsulation flexible-ethernet-services;
flexible-vlan-tagging;
unit 11 {
encapsulation vlan-vpls;
vlan-id 302;
}
}
routing-instances {
customer-c1-vsi {
instance-type vpls;
vlan-id 100;
interface ge-1/0/0.1;
interface ge-2/0/0.1;
interface ge-3/0/0.1;
} # End of customer-c1-vsi
customer-c2-vsi {
instance-type vpls;
vlan-id none; # This will remove the VLAN tags from packets sent on VPLS for customer
2
interface ge-1/0/0.11;
interface ge-6/0/0.11;
} # End of customer-c2-vsi
} # End of routing-instances
Consider the first VLAN for customer C1. The vlan-id 100 statement in the VPLS instance
called customer-c1-vsi sets the normalized VLAN to 100. All packets sent over the
pseudowires have a VLAN tag of 100.
• Packets received on logical interfaces ge-1/0/0.1 or ge-2/0/0.1 with a single VLAN tag
of 100 in the frame are accepted.
• Packets received on logical interface ge-3/0/0.1 with a single VLAN tag of 200 in the
frame are accepted and have their tag values translated to the normalized VLAN tag
value of 100.
• Unknown source MAC addresses and unknown destination MAC addresses are learned
based on their normalized VLAN values of 100.
• All packets sent on the VPLS pseudowire have vlan-id 100 in their VLAN tag fields.
Now consider the second VLAN for Customer C2. The vlan-id none statement in the VPLS
instance called customer-c2-vsi removes the incoming VLAN tags before the packets
are sent over the VPLS pseudowires.
The following happens on the C2 VLAN as a result of the vlan-id none configuration:
• A MAC table is created for each instance of vlan-id none. All MAC addresses learned
over the interfaces belonging to this VPLS instance are added to this table. The received
or configured VLAN tags are not considered when the MAC addresses are added to
this table. This is a case of shared VLAN learning.
• Packets with a single VLAN tag value of 301 are accepted on interface ge-1/0/0.11. The
VLAN tag value 301 is then popped and removed from the frame of this packet.
• Packets with a single VLAN tag value of 302 are accepted on interface ge-6/0/0.11.
The VLAN tag value 302 is then popped and removed from the frame of this packet.
• All packets sent on pseudowires will not have any VLAN tags used to identify the
incoming Layer 2 logical interface.
NOTE: The packet can still contain other customer VLAN tags.
• Packets received from pseudowires are looked up in the MAC table associated with
the VPLS instance. Any customer VLAN tags in the frame are ignored.
This topic provides a configuration example to help you effectively configure a network
of Juniper Networks MX Series 3D Universal Edge Routers for a bridge domain or virtual
private LAN service (VPLS) environment. The emphasis here is on choosing the normalized
virtual LAN (VLAN) configuration. The VPLS configuration is not covered in this chapter.
For more information about configuring Ethernet pseudowires as part of VPLS, see the
Junos OS Feature Guides.
NOTE: This topic does not present exhaustive configuration listings for all
routers in the figures. However, you can use it with a broader configuration
strategy to complete the MX Series router network configurations.
The Layer 2 PE routers are MX Series routers. Each site is connected to two P routers for
redundancy, although both links are only shown for L2-PE1 at Site 1. Site 1 is connected
to P0 and P1, Site 2 is connected to P0 and P2 (not shown), Site 3 is connected to P2
and P3, and Site 4 is connected to P1 and P3. VPLS pseudowires configured on the PE
and P routers carry traffic between the sites.
The pseudowires for the VPLS instances are shown with distinct dashed and dotted
lines. Most sites have multiple VLANs configured.
Service provider SP-1 is providing VPLS services for customer C1, services that could span
several sites. Now customer C1 can have many VLANs in the range from 1 through 1000
(for example).
If VLANs 1 through 1000 for customer C1 span the same sites, then the vlan-id all and
vlan-range statements provide a way to switch all of these VLANs with a minimum
configuration effort and fewer switch resources.
NOTE: You cannot use the vlan-id all statement if you configure an IRB
interface on one or more of the VLANs.
The following example illustrates the use of the vlan-id all statement:
[edit]
interfaces ge-1/0/0 {
flexible-ethernet-services;
flexible-vlan-tagging;
unit 1 {
encapsulation vlan-vpls;
vlan-id-range 1-1000;
}
unit 11 {
encapsulation vlan-vpls;
vlan-id 1500;
}
}
interfaces ge-2/0/0 {
flexible-ethernet-services;
flexible-vlan-tagging;
unit 1 {
encapsulation vlan-vpls;
vlan-id-range 1-1000; # Note the use of the VLAN id range statement.
}
}
interfaces ge-3/0/0 {
flexible-ethernet-services;
flexible-vlan-tagging;
unit 1 {
encapsulation vlan-vpls;
vlan-id 1-1000;
}
}
interfaces ge-6/0/0 {
flexible-ethernet-services;
flexible-vlan-tagging;
unit 11 {
encapsulation vlan-vpls;
vlan-id 1500;
}
}
routing-instances {
customer-c1-v1-to-v1000 {
instance-type vpls;
vlan-id all; # Note the use of the VLAN id all statement
interface ge-1/0/0.1;
interface ge-2/0/0.1;
interface ge-3/0/0.1;
} # End of customer-c1-v1-to-v1000
customer-c1-v1500 {
instance-type vpls;
vlan-id 1500;
interface ge-1/0/0.11;
interface ge-6/0/0.11;
} # End of customer-c1-v1500
} # End of routing-instances
Note the use of the vlan-id all and vlan-id-range statements in the VPLS instance called
customer-c1-v1-to-v1000. The vlan-id all statement implicitly creates multiple learning
domains, each with its own normalized VLAN.
• Unknown source MAC addresses and unknown destination MAC addresses are learned
based on their normalized VLAN values of 1 through 1000.
• All packets sent on the VPLS pseudowire have a normalized VLAN tag after the source
MAC address field in the encapsulated Ethernet packet.
• Although there are only three logical interfaces in the VPLS instance called
customer-c1-v1-to-v1000, the same MAC address (for example, M1) can be learned on
different logical interfaces for different VLANs. For example, MAC address M1 could
be learned on logical interface ge-1/0/0.1 for VLAN 500 and also on logical interface
ge-2/0/0.1 for VLAN 600.
• Configuring Learning Domains for VLAN IDs Bound to Logical Interfaces on page 47
In some cases, service providers must deal with thousands of bridge domains on a single
switch. By default the router does not create more than one bridge domain. The
configuration of even several hundred bridge domains one at a time can be a burden.
However, you can configure multiple bridge domains with only one statement. Each
bridge domain will have the form prefix-vlan-number. The prefix and number are supplied
by the configuration statement.
In many cases, the VLAN identifiers on the frames of an interface’s packets are not exactly
correct. VLAN translation, or VLAN rewrite, allows you to configure bidirectional VLAN
identifier translation with a list on frames arriving on and leaving from a logical interface.
This lets you use unique VLAN identifiers internally and maintain legacy VLAN identifiers
on logical interfaces.
To perform VLAN translation on the packets on a trunk interface, insert the vlan-rewrite
statement at the [edit interfaces interface-name unit unit-number] hierarchy level. You
must also include the family bridge statement at the same level because VLAN translation
is only supported on trunk interfaces. The reverse translation takes place on egress. In
other words, if VLAN 200 is translated to 500 on ingress, VLAN 500 is translated to VLAN
200 on egress.
The following example translates incoming trunk packets from VLAN identifier 200 to
500 and 201 to 501 (other valid VLAN identifiers are not affected):
NOTE: This example also translates frame VLANs from 500 to 200 and 501
to 201 on egress.
To configure multiple bridge domains with one statement, include the vlan-id-list
statement at the [edit bridge-domains] hierarchy level.
The following example automatically configures 4093 bridge domains named sales-vlan-2
through sales-vlan-4094:
[edit]
bridge-domains {
sales { # This is the prefix
vlan-id-list [ 2–4096 ]; # These are the numbers
}
}
You can configure these bridge domains in a virtual switch routing instance. However, if
a VLAN identifier is already part of a VLAN identifier list in a bridge domain under a routing
instance, then you cannot configure an explicit bridge domain with that VLAN identifier.
In other words. there can be no overlap between a VLAN identifier list and another VLAN
identifier configuration.
The following example removes the VLAN identifier 5 from the original VLAN list
(vlan-id-list [ 1–10 ]) and configures the bridge domain explicitly:
bridge-domains {
bd-vlan–5 {
vlan-id 5;
}
bd {
vlan-id [ 1–4 6–10 ];
}
}
If a VLAN identifier is already part of a VLAN identifier list in a bridge domain under a
routing instance, then you must delete the VLAN identifier from the list before you can
configure an explicit or “regular” bridge domain. Also, the explicit bridge domain will not
perform properly unless it has the same name as the bridge domain in the VLAN identifier
list.
In other words, if sales-vlan-100 was part of a bridge domain VLAN list and you wish to
configure it explicitly, you must use the same naming convention:
[edit]
bridge-domains {
sales-vlan-100 { # You must use this name explicitly
vlan-id 100;
}
}
You display the status and other parameters for automatic bridge domains configured
with the vlan-id-list statement using the same show l2-learning instance command as
used for individually configured bridge domains.
• Dynamic interfaces, which are created after the router is booted and while it is running
A dynamic profile acts as a kind of template that enables you to create, update, or remove
a configuration that includes client access (for example, interface or protocol) or service
(for example, CoS) attributes. Using these profiles you can consolidate all of the common
attributes of a client (and eventually a group of clients) and apply the attributes
simultaneously. The router contains several predefined variables that enable dynamic
association of interfaces and logical units to incoming subscriber requests. While
configuring dynamic profile, use the variable $junos-interface-ifd-namefor a dynamic
physical interface and $junos-underlying-unit-numberfor a dynamic logical interface
(unit). When a client accesses the router, the dynamic profile configuration replaces the
predefined variable with the actual interface name or unit value for the interface the
client is accessing.
Dynamic profiles for VPLS are supported only on MX Series routers. For more information
about dynamic profiles, see the Junos OS Subscriber Access Configuration Guide
The following limitations apply to dynamic profiles for VPLS on MX Series routers:
In many cases, a configuration using dynamic profiles is more efficient than a static
configuration, as shown by the examples in this topic.
[edit routing-instances]
green {
instance-type vpls;
interface ge-0/0/1.1;
interface ge-0/0/2.1;
interface ge-0/0/3.1;
vlan-tags outer 200 inner 100;
protocols vpls {
vpls-id 10;
neighbor 10.1.1.20;
}
{...more...}
}
[edit interfaces]
ge-0/0/1 {
unit 0 {
vlan-id 10;
}
}
ge-0/0/2 {
unit 0 {
vlan-id 20;
}
}
ge-0/0/3 {
unit 0 {
vlan-id 30;
}
}
With this configuration, broadcast packets inside frames arriving with VLAN identifier 10
on ge-0/0/1 are normalized to a dual-tagged frame with an outer VLAN value of 200
and an inner VLAN value of 100. The broadcast packet and frames egressing ge-0/0/2
or ge-0/0/3 have the outer VLAN value stripped and the inner VLAN value swapped to
20 and 30 respectively, according to the interface configuration. However, this stripping
of the outer VLAN tag and the swapping is extra work, because the frames will still egress
the VPLS pseudowire in routing instance green with an outer VLAN tag value of 200 and
an inner VLAN tag value of 100, also according to the configuration.
The same configuration can be accomplished more effectively using dynamic profiles.
[edit routing-instances]
green {
instance-type vpls;
interface ge-0/0/1.1;
interface ge-0/0/2.1;
interface ge-0/0/3.1;
vlan-id 100; # Desired inner VLAN tag on the VPLS pseudowire
protocols vpls {
vpls-id 10;
neighbor 10.1.1.20 {
associate-profile green_vpls_pw_1; # The profile
}
}
{...more...}
}
[edit interfaces]
ge-0/0/1 {
unit 0 {
vlan-id 10;
}
}
ge-0/0/2 {
unit 0 {
vlan-id 20;
}
}
ge-0/0/3 {
unit 0 {
vlan-id 30;
}
}
[edit dynamic-profiles]
green_vpls_pw_1 interfaces $junos-interface-ifd-name {
unit $junos-underlying-unit-number {
vlan-tags outer 200 inner 100;
}
}
With this configuration, broadcast packets inside frames arriving with VLAN identifier 10
on ge-0/0/1 are normalized to a frame with VLAN identifier 100. The broadcast packet
and frames egressing ge-0/0/2 or ge-0/0/3 have this VLAN value swapped to 20 and
30 respectively, according to the interface configuration. Frames egress the VPLS
pseudowire in routing instance green with an outer VLAN tag value of 200 pushed on top
of the normalized value.
Consider the following configuration, which does not use dynamic profiles to manipulate
VLAN identifiers on a customer edge (CE) router with VLAN identifier 100:
[edit routing-instances]
green {
instance-type vpls;
interface ge-0/0/1.1;
interface ge-0/0/2.1;
interface ge-0/0/3.1;
vlan-tags outer 200 inner 100;
protocols vpls {
vpls-id 10;
neighbor 10.1.1.20;
}
{...more...}
}
[edit interfaces]
ge-0/0/1 {
unit 0 {
vlan-id 100;
}
}
ge-0/0/2 {
unit 0 {
vlan-id 100;
}
}
ge-0/0/3 {
unit 0 {
vlan-id 100;
}
}
With this configuration, broadcast packets inside frames arriving on ge-0/0/1 are
normalized to a dual-tagged frame with an outer VLAN value of 200 and an inner VLAN
value of 100. The same configuration can be accomplished using dynamic profiles.
[edit routing-instances]
green {
instance-type vpls;
interface ge-0/0/1.1;
interface ge-0/0/2.1;
interface ge-0/0/3.1;
vlan-id 100; # Desired inner VLAN tag on the VPLS pseudowire
protocols vpls {
associate-profile green_vpls_pw_2; # The profile
vpls-id 10;
neighbor 10.1.1.20;
}
{...more...}
}
[edit interfaces]
ge-0/0/1 {
unit 0 {
vlan-id 100;
}
}
ge-0/0/2 {
unit 0 {
vlan-id 100;
}
}
ge-0/0/3 {
unit 0 {
vlan-id 100;
}
}
[edit dynamic-profiles]
green_vpls_pw_2 interfaces $junos-interface-ifd-name {
unit $junos-underlying-unit-number {
vlan-tags outer 200 inner 100;
}
}
With this configuration, broadcast packets inside frames arriving with VLAN identifier
100 on ge-0/0/1 are normalized to a frame with VLAN identifier 100 (in this case, they
are unchanged). The broadcast packet and frames egressing ge-0/0/2 or ge-0/0/3 are
unchanged as well, according to the interface configuration. Frames egress the VPLS
pseudowire in routing instance green with an outer VLAN tag value of 200 pushed on top
of the normalized value.
Dynamic profiles for VPLS pseudowires can be helpful in a variety of VLAN configurations.
This section explores some of these situations through examples.
All of the examples in this section address the same basic topology. A routing instance
blue uses a trunk bridge to connect different departments in an organization, each with
their own VLANs, at two different sites. The organization uses a BGP-based VPLS with
a virtual switch to accomplish this.
instance-type virtual-switch;
route-distinguisher 10.1.1.10:1;
vrf-target target:1000:1;
interface ge-3/0/0; # The trunk interface
bridge-domains {
sales {
vlan-id 10;
interface ge-0/0/0.1;
... # Other interfaces and statements for Sales
}
engineering {
vlan-id 20;
interface ge-1/0/2.0;
... # Other interfaces and statements for Engineering
}
accounting {
vlan-id 30;
interface ge-2/0/3.0;
... # Other interfaces and statements for Accounting
}
others {
vlan-id—list [ 40 50 ]; # Other departments
}
}
protocols vpls {
site-range 10;
site sample-site-1 {
site-identifier 1;
}
}
... # Other statements for instance Blue
[edit interfaces]
ge-0/0/1 {
unit 0 {
vlan-id 100;
}
}
ge-3/0/0 {
unit 0 {
family bridge {
interface-mode trunk; # This is the trunk
vlan-id-list [ 10 20 30 40 50 ];
}
}
}
... # More interface statements
This configuration switches the departmental VLAN traffic (sales, engineering, etc.)
bridge domains over the VPLS pseudowire trunk connecting to the other site.
First, consider the requirement to push an outer VLAN tag value of 200 onto the VPLS
pseudowire frames on egress. Dynamic profiles easily satisfy this requirement.
[edit dynamic-profiles]
green_vpls_pw_1 interfaces $junos-interface-ifd-name {
unit $junos-underlying-unit-number {
vlan-id 200; # This is the outer tag
family bridge {
interface-mode trunk;
inner-vlan-id-list [ 10 20 30 40 50 ];
}
}
}
But what if the packets associated with the Accounting VLAN are not to be forwarding
to the remote site? Dynamic profiles are useful here as well.
This configuration keeps the Accounting frames from reaching the remote site.
[edit dynamic-profiles]
green_vpls_pw_2 interfaces $junos-interface-ifd-name {
unit $junos-underlying-unit-number {
family bridge {
interface-mode trunk;
inner-vlan-id-list [ 10 20 40 50 ]; # Removed Accounting VLAN 30
}
}
}
In this case, frames arriving on the interfaces are classified according to their bridge
domains and switched, if necessary, to the VPLS pseudowire trunk, except for Engineering
frames. Engineering frames (VLAN 30) are only switched within the interfaces listed
within bridge domain accounting and any statically configured trunk interfaces and are
prevented from crossing the VPLS pseudowire due to the absence of VLAN 30 on the
trunk.
We can combine the two examples and use dynamic profiles to forward the frames
(other than accounting frames) to the remote site with an out tag of 200.
This configuration keeps the Accounting frames from reaching the remote site and pushes
an outer tag of 200 on VPLS pseudowire traffic.
[edit dynamic-profiles]
green_vpls_pw_3 interfaces $junos-interface-ifd-name {
unit $junos-underlying-unit-number {
vlan-id 200; # This is the outer tag
family bridge {
interface-mode trunk;
inner-vlan-id-list [ 10 20 40 50 ]; # Removed Accounting VLAN 30
}
}
}
In this case, frames arriving on the interfaces are classified according to their bridge
domains and switched, if necessary, to the VPLS pseudowire trunk with an outer VLAN
tag of 200, except for Engineering frames. Engineering frames (VLAN 30) are only
switched within the interfaces listed within bridge domain accounting and any statically
configured trunk interfaces and are prevented from crossing the VPLS pseudowire due
to the absence of VLAN 30 on the trunk.
[edit dynamic-profiles]
green_vpls_pw_4 interfaces $junos-interface-ifd-name {
unit $junos-underlying-unit-number {
family bridge {
interface-mode trunk;
vlan-id-list [ 10 20 30 40 50 ]; # All VLANs
vlan-rewrite translate 110 10; # Sales VLAN
vlan-rewrite translate 120 20; # Engineering VLAN
}
}
}
This translates the sales and engineering VLAN tags egressing the VPLS pseudowire
accordingly. At the ingress of the VPLS pseudowire, VLANs 110 and 120 are translated
back to 10 and 20, respectively.
The Dynamic Host Configuration Protocol (DHCP) is used by a DHCP client (host) to
determine Layer 3 information (such as an IP address) from a DHCP server. DHCP uses
the client’s MAC (Layer 2) address to query the server. A router can be used as a DHCP
relay agent to pass the query on to a server while the router appears to reply to the client.
You can configure a Juniper Networks MX Series Ethernet Services Router to act as a
DHCP relay agent. The MX Series router configuration at Layer 2 accesses the Layer 3
information with DHCP snooping.
DHCP servers and relay agents have a level of trust in the MAC addresses used in DHCP
client queries. A hacker can spoof invalid MAC addresses and overwhelm the server or
relay agent with flooded traffic. Or the hacker can try to determine other information,
such as the IP address range used by devices on the network. The DHCP process should
only trust MAC addresses that are valid for a particular network.
You can configure the MX Series router to use MAC addresses obtained by the Layer 2
address learning process to control the flooding of DHCP packets.
• All statements referring to “option 82” (including circuit information in DHCP relay
messages) are not supported on the MX Series routers.
• This feature works for static IP/MAC bindings on the MX Series routers.
• The DHCP snooping database table is not restored after a Routing Engine reboot.
• The DHCP Discover message is not flooded to the DHCP server when broadband service
aggregator (BSA) and broadband service router (BSR) are provisioned on the same
switch.
For more information on configuring DHCP, see the Junos OS Subscriber Access Configuration
Guide.
The following example configures DHCP relay in a VPLS environment to trust only the
MAC addresses learned on the listed interfaces.
[edit]
routing-instances {
classic-vpls {
instance-type vpls;
interface ge-1/1/1.0;
interface ge-1/1/2.0;
interface ge-1/1/3.0;
interface ge-1/1/4.0;
interface ge-1/1/5.0;
vlan-id 20;
forwarding-options {
dhcp-relay { # Here is where DHCP is configured.
group vlan-20–bridge {
interface ge-1/1/1.0;
interface ge-1/1/2.0;
interface ge-1/1/3.0;
interface ge-1/1/4.0;
interface ge-1/1/5.0;
}
}
}
protocol vpls {
site-id 567;
# Other VPLS configuration statements...
}
}
}
Only MAC addresses learned on the five listed Gigabit Ethernet interfaces will be trusted
for DHCP relay purposes.
For more information on configuring DHCP, see the Junos OS Subscriber Access Configuration
Guide.
The following example configures DHCP relay in a bridge domain (VLAN) environment.
The MX Series router will trust only the MAC addresses learned on the listed interfaces.
The router has three interfaces: two interfaces (ge-2/2/4 and ge-2/2/6) using VLAN 100
for the DHCP clients, and one (xe-9/2/0) leading to the DHCP server. The router performs
the DHCP snooping (relay) function.
interface ge-2/2/4.0;
interface ge-2/2/6.0;
}
}
}
}
}
}
user@router1> show dhcp relay binding routing-instance vs1 bridge-domains bd1 detail
2 clients, (2 bound, 0 selecting, 0 renewing, 0 rebinding)
Clients bindings information:
IP address : 192.168.1.1
Hardware address : 00:00:00:42:a8:e3
Type : active
Lease expires at : 2008–12–12 15:56:04 PST
State : bound
interface : ge—2/2/6.0
IP address : 192.168.1.2
Hardware address : 00:00:00:42:a8:e4
Type : active
Lease expires at : 2008–12–12 15:56:10 PST
State : bound
interface : ge—2/2/4.0
You can configure an MX Series router as part of an ATM Ethernet interworking function
(IWF) scenario mapping outer and inner VLAN tags to ATM Virtual Path Identifier (VPI)
and Virtual Channel Identifier (/VCI).
The ATM Ethernet interworking scenario is shown in Figure 10 on page 77. The MX Series
router is configured as the Provider Edge 2 (PE2) router in the figure to support the ATM
Ethernet IWF. Ethernet is the only transport type supported.
LSP1
CE1 PE1 PE2 CE2
LSP2
The PE1 router translates between ATM and Ethernet VLANs. Only an M Series router
can function as the PE1 router.
The PE1 router translates between the ATM VPI and VCI and Ethernet VLAN tags as
follows:
• ATM VPI to and from outer VLAN tag of the Ethernet frame
• ATM VCI to and from inner VLAN tag of the Ethernet frame
Because of the translation, the flow of packets and frames between PE1 (the M Series
router) and PE2 (the MX series router) routers is not symmetrical, as is shown in Figure
11 on page 78.
2. PE2 PE1
g017429
L3 Ethertype SA DA Inner VLAN MPLS Ethernet
For PE1 to PE2 traffic, the 8 bytes following the MPLS header is an ATM cookie added by
the M Series ATM PIC. The first two bytes are the inner VLAN tag, which is why the field
extends to the right of the figure.
The traffic between PE2 and CE2 is a normal flow of stacked Ethernet frames.
You can also configure a CCC with remote interface switch or Layer 2 circuit over
Aggregated Ethernet on the MX Series router (PE2). When CCC is configured for
Aggregated Ethernet, the flow of packets is as shown in Figure 12 on page 78.
2. Stacked-vlan to CCC
Consider the router topology shown in Figure 13 on page 79. The MX Series router is
configured as the Router PE2 (the provider edge 2 router) in the figure to support the
ATM Ethernet IWF.
LSP1
CE1 PE1 PE2 CE2
LSP2
g017428
The relevant router interfaces are as follows:
• On Router PE1:
• On Router PE2:
[edit]
interfaces {
at-2/0/0 {
encapsulation ethernet-over-atm;
atm-options {
vpi 100;
}
unit 0 {
vci 100.34;
family inet {
address 30.1.1.1/24;
}
}
}
}
}
}
ldp {
interface all;
}
l2circuit {
neighbor 10.255.171.14 {
interface at-2/0/1.0 {
virtual-circuit-id 100;
}
}
}
}
}
}
You verify your configuration on the MX Series router with the show l2circuit connections
command:
[edit]
interfaces {
at-2/0/0 {
encapsulation ethernet-over-atm;
atm-options {
vpi 100;
}
unit 0 {
vci 100.34;
family inet {
address 30.1.1.1/24;
}
}
}
}
}
}
Router PE2 Configure the Layer 2 circuit over aggregated Ethernet on the MX Series router.
Configuration
[edit]
chassis {
aggregated-devices {
ethernet {
device-count 1;
}
}
}
interfaces {
ge-0/2/0 {
gigether-options {
802.3ad ae0;
}
}
ge-0/2/8 {
unit 0 {
family inet {
address 20.1.1.10/24;
}
family mpls;
}
}
ae0 {
vlan-vci-tagging;
encapsulation vlan-vci-ccc;
unit 0 {
vlan-id 100;
inner-vlan-id-range start 32 end 63;
}
}
}
protocols {
mpls {
interface ge-0/2/8.0;
}
ospf {
area 0.0.0.0 {
interface ge-0/2/8.0;
interface lo0.0 {
passive;
}
}
}
ldp {
interface all;
}
l2circuit {
neighbor 10.255.171.45 {
interface ae0.0 {
virtual-circuit-id 100;
}
}
}
}
You verify your configuration on the MX Series router with the show l2circuit connections
command:
[edit]
interfaces {
at-2/0/0 {
encapsulation ethernet-over-atm;
atm-options {
vpi 100;
}
unit 0 {
vci 100.34;
family inet {
address 30.1.1.1/24;
}
}
}
}
connections {
remote-interface-switch rws1 {
interface at-2/0/1.0;
transmit-lsp lsp1-2;
receive-lsp lsp2-1;
}
}
}
Router PE2 Configure the remote interface switch on the MX Series router.
Configuration
[edit]
interfaces {
ge-0/2/0 {
vlan-vci-tagging;
encapsulation vlan-vci-ccc;
unit 0 {
vlan-id 100;
inner-vlan-id-range start 32 end 63;
}
}
ge-0/2/8 {
unit 0 {
family inet {
address 20.1.1.10/24;
}
family iso;
family mpls;
}
}
}
protocols {
rsvp {
interface ge-0/2/8.0;
}
mpls {
label-switched-path lsp2-1 {
from 10.255.171.14;
to 10.255.171.45;
}
label-switched-path lsp1-2 {
from 10.255.171.45;
to 10.255.171.14;
}
interface ge-0/2/8.0;
}
isis {
interface ge-0/2/8.0;
}
connections {
remote-interface-switch rws1 {
interface ge-0/2/0.0;
transmit-lsp lsp2-1;
receive-lsp lsp1-2;
}
}
You verify your configuration on the MX Series router with the show connections command:
user@PE2>show connections
CCC and TCC connections [Link Monitoring On]
Legend for status (St) Legend for connection types
UN -- uninitialized if-sw: interface switching
NP -- not present rmt-if: remote interface switching
WE -- wrong encapsulation lsp-sw: LSP switching
DS -- disabled tx-p2mp-sw: transmit P2MP switching
Dn -- down rx-p2mp-sw: receive P2MP switching
-> -- only outbound conn is up
<- -- only inbound conn is up Legend for circuit types
Up -- operational intf -- interface
RmtDn -- remote CCC down tlsp -- transmit LSP
Restart -- restarting rlsp -- receive LSP
Configuring Router PE2 with a Remote Interface Switch over Aggregated Ethernet
Router CE1 The configuration of the remote interface switch is based on RSVP-signaled MPLS
Configuration connections.
[edit]
interfaces {
at-2/0/0 {
encapsulation ethernet-over-atm;
atm-options {
vpi 100;
}
unit 0 {
vci 100.34;
family inet {
address 30.1.1.1/24;
}
}
}
}
}
}
}
Router PE2 Configure the remote interface switch over aggregated Ethernet on the MX Series router.
Configuration
[edit]
chassis {
aggregated-devices {
ethernet {
device-count 1;
}
}
}
interfaces {
ge-0/2/0 {
gigether-options {
802.3ad ae0;
}
}
ge-0/2/8 {
unit 0 {
family inet {
address 20.1.1.10/24;
}
family iso;
family mpls;
}
}
ae0 {
vlan-vci-tagging;
encapsulation vlan-vci-ccc;
unit 0 {
vlan-id 100;
inner-vlan-id-range start 32 end 63;
}
}
}
protocols {
rsvp {
interface ge-0/2/8.0;
}
mpls {
label-switched-path lsp2-1 {
from 10.255.171.14;
to 10.255.171.45;
}
label-switched-path lsp1-2 {
from 10.255.171.45;
to 10.255.171.14;
}
interface ge-0/2/08.0;
}
isis {
interface ge-02/08.0; {
}
connections {
remote-interface-switch rwsl {
interface ae0.0 {
transmit-lsp- lsp-1sp2-1;
receive-lsp lsp1-2;
}
}
}
You verify your configuration on the MX Series router with the show connections command:
user@PE2>show connections
CCC and TCC connections [Link Monitoring On]
Legend for status (St) Legend for connection types
UN -- uninitialized if-sw: interface switching
NP -- not present rmt-if: remote interface switching
WE -- wrong encapsulation lsp-sw: LSP switching
DS -- disabled tx-p2mp-sw: transmit P2MP switching
Dn -- down rx-p2mp-sw: receive P2MP switching
-> -- only outbound conn is up
<- -- only inbound conn is up Legend for circuit types
Up -- operational intf -- interface
RmtDn -- remote CCC down tlsp -- transmit LSP
Restart -- restarting rlsp -- receive LSP
Juniper Networks MX Series 3D Universal Edge Routers support firewall filters for the
bridge and vpls protocol families. You configure these firewall filters to control traffic
within bridge domains and VPLS instances. This chapter explores some of the ways that
filters can be used in a Layer 2 environment to control traffic.
• Input interfaces
• Output interfaces
You use a firewall filter after taking the following two steps:
1. You configure any policers and the firewall filter at the [edit firewall] hierarchy level.
NOTE: You should deploy firewall filters carefully because it is easy to cause
unforeseen side effects on all traffic, especially traffic that is not the intended
target of the filter. For more information about configuring firewall filters,
see the Junos OS Policy Framework Configuration Guide.
This example firewall filter allows a service provider to limit the aggregate broadcast
traffic entering the virtual private LAN service (VPLS) core. The broadcast, unknown
unicast, and non-IP multicast traffic received from one of the service provider’s customers
on a logical interface has a policer applied. The service provider has also configured a
two-rate, three-color policer to limit the customer’s IP multicast traffic. For more
information on the configuration of policers, see the Junos OS Class of Service Configuration
Guide.
• The policer for broadcast, unknown unicast, and non-IP multicast traffic. This example
marks the loss priority as high if this type of traffic exceeds 50 Kbps.
• The two-rate, three-color policer for IP multicast traffic. This example configures a
committed information rate (CIR) of 4 Mbps, a committed burst size of 256 Kbytes, a
peak information rate of 4.1 Mbps, and a peak burst size of 256 Kbytes (the same as
the CIR).
• The application of the filter to the customer interface configuration as an input filter.
NOTE: This example does not present exhaustive configuration listings for
all routers in the figures. However, you can use this example with a broader
configuration strategy to complete the MX Series router network Ethernet
Operations, Administration, and Maintenance (OAM) configurations.
[edit firewall]
policer bcast-unknown-unicast-non-ip-mcast-policer {
if-exceeding {
bandwidth-limit 50k;
burst-size-limit 150k;
}
then loss-priority high;
}
[edit firewall]
three-color-policer ip-multicast-traffic-policer {
two-rate {
color-blind;
committed-information-rate 4m;
committed-burst-size 256k;
peak-information-rate 4100000;
peak-burst-size 256k;
}
}
3. Configure customer-1, a firewall filter that uses the two policers to limit and mark
customer traffic. The first term marks the IP multicast traffic based on the destination
MAC address, and the second term polices the broadcast, unknown unicast, and
non-IP multicast traffic:
[edit firewall]
family vpls {
filter customer-1 {
term t0 {
from {
destination-mac-address {
01:00:5e:00:00:00/24;
}
}
then {
three-color-policer {
two-rate ip-multicast-traffic-policer;
}
forwarding-class expedited-forwarding;
}
}
term t1 {
from {
traffic-type [ broadcast unknown-unicast multicast ];
}
then policer bcast-unknown-unicast-non-ip-mcast-policer;
}
}
}
4. Apply the firewall filter as an input filter to the customer interface at ge-2/1/0:
[edit interfaces]
ge-2/1/0 {
vlan-tagging;
encapsulation flexible-ethernet-services;
unit 5 {
encapsulation vlan-vpls;
vlan-id 9;
family vpls {
filter {
input customer-1;
}
}
}
}
This example firewall filter finds frames with a certain source MAC address
(88:05:00:29:3c:de/48), then counts and silently discards them. For more information
about configuring firewall filter match conditions, see the Junos OS Policy Framework
Configuration Guide. The filter is applied to the VLAN configured as vlan100200 as an
input filter on Router 1.
NOTE: This example does not present exhaustive configuration listings for
all routers in the figures. However, you can use this example with a broader
configuration strategy to complete the MX Series router network Ethernet
Operations, Administration, and Maintenance (OAM) configurations.
[edit firewall]
family bridge {
filter evil-mac-address {
term one {
from {
source-mac-address 88:05:00:29:3c:de/48;
}
then {
count evil-mac-address; # Counts frame with the bad source MAC address
discard;
}
term two {
then accept; # Make sure to accept other traffic
}
}
}
}
[edit routing-instances]
virtual-switch-R1-1 {
bridge-domains {
vlan100200 {
domain-type bridge;
forwarding-options {
filter {
input evil-mac-address;
}
}
}
}
}
• Example: Configuring Policing and Marking of Traffic Entering a VPLS Core on page 96
For the bridge and vpls protocol families only, MX Series router firewall filters can be
configured to provide matching on IEEE 802.1p priority bits in packets with VLAN tagging:
• To configure a firewall filter term that includes matching on IEEE 802.1p learned VLAN
priority (in the outer VLAN tag), use the learn-vlan-1p-priority or
learn-vlan-1p-priority-except match condition.
• To configure a firewall filter term that includes matching on IEEE 802.1p user priority
(in the inner VLAN tag), use the user-vlan-1p-priority or user-vlan-1p-priority-except
match condition.
For more detailed information about configuring firewall filters and configuring filter
match conditions for Layer 2 bridging traffic on the MX Series routers, see the Junos OS
Policy Framework Configuration Guide.
NOTE: Layer 2 bridging is supported only on the MX Series routers. For more
information about how to configure Layer 2 bridging, see the Junos OS Policy
Framework Configuration Guide, the Junos OS Routing Protocols Configuration
Guide, and the Junos OS Feature Guides.
This example Layer 2 bridging firewall filter finds any incoming frames with an IEEE 802.1p
learned VLAN priority level of either 1 or 2, and then classifies the packet in the best-effort
default forwarding class.
NOTE: This example does not present exhaustive configuration listings for
all routers in the figures. However, you can use this example with a broader
configuration strategy to complete the MX Series router network Ethernet
Operations, Administration, and Maintenance (OAM) configurations.
[edit firewall]
family bridge {
filter filter-learn-vlan-configure-forwarding {
term 0 {
from {
learn-vlan-1p-priority [1 2];
}
then forwarding-class best-effort;
}
}
}
[edit interfaces]
ge-0/0/0 {
unit 0 {
family bridge {
filter {
input filter-learn-vlan-configure-forwarding;
}
}
}
}
• Example: Configuring Policing and Marking of Traffic Entering a VPLS Core on page 96
To configure an MX Series router firewall filter to provide matching on the packet loss
priority (PLP) level carried in the frame, use the loss-priority or loss-priority-except match
condition. Packet loss priority matching is available for all protocols. For more detailed
information about configuring firewall filters and configuring filter match conditions for
Layer 2 bridging traffic on the MX Series routers, see the Junos OS Policy Framework
Configuration Guide.
NOTE: Layer 2 bridging is supported only on the MX Series routers. For more
information about how to configure Layer 2 bridging, see the Junos OS Network
Interfaces Configuration Guide, the Junos OS Routing Protocols Configuration Guide,
and the Junos OS Feature Guides.
This example Layer 2 bridging firewall filter finds any incoming frames with a packet loss
priority (PLP) level of medium-high, and then classifies the packet in the
expedited-forwarding default forwarding class.
NOTE: This example does not present exhaustive configuration listings for
all routers in the figures. However, you can use this example with a broader
configuration strategy to complete the MX Series router network Ethernet
Operations, Administration, and Maintenance (OAM) configurations.
[edit firewall]
family bridge {
filter filter-plp-configure-forwarding {
term 0 {
from {
loss-priority medium-high;
}
then forwarding-class expedited-forwarding;
}
}
}
2. Configure a Layer 2 bridging domain bd for the ge-0/0/0 interface (that has already
been configured at the [edit interfaces] hierarchy level):
[edit bridge-domains]
bd {
domain-type bridge {
interface ge-0/0/0;
}
}
[edit interfaces]
ge-0/0/0 {
unit 0 {
family bridge {
filter {
input filter-plp-configure-forwarding;
}
}
}
}
• Example: Configuring Policing and Marking of Traffic Entering a VPLS Core on page 96
This topic provides an overview to help you effectively configure Ethernet Operations,
Administration, and Maintenance (OAM) on a network of Juniper Networks MX Series
3D Universal Edge Routers. For more information about configuring OAM parameters on
Ethernet interfaces, see the Junos OS Network Interfaces Configuration Guide.
Ethernet OAM provides the tools that network management software and network
managers can use to determine how a network of Ethernet links is functioning. Ethernet
OAM should:
• Rely only on the media access control (MAC) address or virtual local area network
(VLAN) identifier for troubleshooting
• Work independently of the actual Ethernet transport and function over physical Ethernet
ports, or a virtual service such as pseudowire, and so on.
• Isolate faults over a flat (or single operator) network architecture or a nested or
hierarchical (or multi-provider) networks.
OAM can provide simple link-level information, provide performance statistics, or track
end-to-end connectivity across the network. Simple link fault management (LFM) for
Ethernet links is defined in IEEE 802.3ah.
• Fault isolation, verification, and recovery (isolation and verification are provided by a
combination of protocols, while recovery is the function of protocols such as spanning
tree)
The loopback protocol used in Ethernet OAM is modeled on the standard IP ping. After
a fault is detected, the loopback protocol performs fault verification and isolation under
the direction of a network operator. The loopback is performed using request and response
message pairs. A unicast loopback message is generated by a MEP and a loopback reply
is generated by the destination MIP or MEP. The target MAC address is learned by the
continuity check protocol or linktrace protocol. The loopback message's packet is always
forwarded to a unique port by the originating MEP, as determined by a MAC table lookup
or the MEP interface MAC address. The target MIP or MEP generates a unicast loopback
reply in response to the received loopback message. The loopback message follows the
same path as a data packet, and intermediate bridges simply forward the packet to the
destination MIP or MEP.
The most complete connectivity fault management (CFM) is defined in IEEE 802.1ag.
This topic emphasizes the use of CFM in a Metro Ethernet environment.
• Fault monitoring using the continuity check protocol. This is a neighbor discovery and
health check protocol which discovers and maintains adjacencies at the VLAN or link
level.
• Path discovery and fault verification using the linktrace protocol. Similar to IP traceroute,
this protocol maps the path taken to a destination MAC address through one or more
bridged networks between the source and destination.
• Fault isolation using the loopback protocol. Similar to IP ping, this protocol works with
the continuity check protocol during troubleshooting.
CFM partitions the service network into various administrative domains. For example,
operators, providers, and customers may be part of different administrative domains.
Each administrative domain is mapped into one maintenance domain providing enough
information to perform its own management, thus avoiding security breaches and making
end-to-end monitoring possible. Each maintenance domain is associated with a
maintenance domain level from 0 through 7. Level allocation is based on the network
hierarchy, where outermost domains are assigned a higher level than the innermost
domains. Customer end points have to highest maintenance domain level. In a CFM
MEPs can be up MEPs or down MEPs. A link can connect a MEP at level 5 to a MEP at
level 7. The interface at level 5 is an up MEP (because the other end of the link is at MEP
level 7) and the interface at level 7 is a down MEP (because the other end of the link is
at MEP level 5).
• By the service provider to check the connectivity among its provider edge (PE) routers
• By the customer to check the connectivity among its customer edge (CE) routers
NOTE: The configured customer CFM level must be greater than service
provider CFM level.
In many Metro Ethernet networks, CFM is used to monitor connectivity over a VPLS and
bridge network.
In this example, both the customer and service provider are running Ethernet CFM over
a VPLS and a multiprotocol label switching (MPLS) network. The network is shown in
Figure 15 on page 106. The customer has configured Ethernet CFM on MX Series routers
L2-CE1 and L2-CE2. The service provider has configured Ethernet CFM on MX Series
routers PE1, P, and PE2.
The service provider is using CFM level 5 and the customer is using CFM level 7. The
boundaries are marked with “up mep” and “down mep” CFM terminology in the figure.
The following are the configurations of the VPLS and CFM on the service provider routers.
[edit interfaces]
ge-1/0/7 {
encapsulation flexible-ethernet-services;
vlan-tagging;
unit 1 {
encapsulation vlan-vpls;
vlan-id 2000;
}
}
ge-0/0/0 {
unit 0 {
family inet {
address 10.200.1.1/24;
}
family mpls;
}
}
lo0 {
unit 0 {
family inet {
address 10.255.168.231/32 {
primary;
}
address 127.0.0.1/32;
}
}
}
[edit routing-instances]
vpls-vlan2000 {
instance-type vpls;
vlan-id 2000;
interface ge-1/0/7.1;
route-distinguisher 10.255.168.231:2000;
vrf-target target:1000:1;
protocols {
vpls {
site-range 10;
site vlan2000-PE1 {
site-identifier 2;
}
}
}
}
[edit protocols]
rsvp {
interface ge-0/0/0.0;
}
mpls {
label-switched-path PE1-to-PE2 {
to 10.100.1.1;
}
interface ge-0/0/0.0;
}
bgp {
group PE1-to-PE2 {
type internal;
local-address 10.200.1.1;
family l2vpn {
signaling;
}
local-as 65000;
neighbor 10.100.1.1;
}
}
ospf {
traffic-engineering;
reference-bandwidth 4g;
area 0.0.0.0 {
interface all;
interface fxp0.0 {
disable;
}
interface ge-0/0/0.0;
}
}
oam {
ethernet {
connectivity-fault-management {
maintenance-domain customer-site1 {
level 5;
maintenance-association customer-site1 {
continuity-check {
interval 1s;
}
mep 100 {
interface ge-1/0/7.1;
direction up;
auto-discovery;
}
}
}
}
}
}
[edit interfaces]
ge-5/0/9 {
vlan-tagging;
encapsulation flexible-ethernet-services;
unit 1 {
encapsulation vlan-vpls;
vlan-id 2000;
}
}
ge-5/2/7 {
unit 0 {
family inet {
address 10.100.1.1/24;
}
family mpls;
}
}
lo0 {
unit 0 {
family inet {
address 10.255.168.230/32 {
primary;
}
address 127.0.0.1/32;
}
}
}
[edit routing-instances]
vpls-vlan2000 {
instance-type vpls;
vlan-id 2000;
interface ge-5/0/9.1;
route-distinguisher 10.255.168.230:2000;
vrf-target target:1000:1;
protocols {
vpls {
site-range 10;
site vlan2000-PE2 {
site-identifier 1;
}
}
}
}
[edit protocols]
rsvp {
interface ge-5/2/7.0;
}
mpls {
label-switched-path PE2-to-PE1 {
to 10.200.1.1;
}
interface ge-5/2/7.0;
}
bgp {
group PE2-to-PE1 {
type internal;
local-address 10.100.1.1;
family l2vpn {
signaling;
}
local-as 65000;
neighbor 10.200.1.1;
}
}
ospf {
traffic-engineering;
reference-bandwidth 4g;
area 0.0.0.0 {
interface all;
interface fxp0.0 {
disable;
}
interface ge-5/2/7.0;
}
}
oam {
ethernet {
connectivity-fault-management {
maintenance-domain customer-site1 {
level 5;
maintenance-association customer-site1 {
continuity-check {
interval 1s;
}
mep 200 {
interface ge-5/0/9.1;
direction up;
auto-discovery;
}
}
}
}
}
}
[edit]
protocols {
rsvp {
interface ge-0/1/0.0;
interface ge-5/2/7.0;
}
mpls {
interface ge-0/1/0.0;
interface ge-5/2/7.0;
}
ospf {
traffic-engineering;
reference-bandwidth 4g;
area 0.0.0.0 {
interface all;
interface fxp0.0 {
disable;
}
interface ge-0/1/0.0;
interface ge-5/2/7.0;
}
}
}
[edit interfaces]
ge-5/2/3 {
vlan-tagging;
unit 0 {
vlan-id 2000;
}
}
[edit interfaces]
ge-0/2/9 {
vlan-tagging;
unit 0 {
vlan-id 2000;
}
}
}
mep 700 {
interface ge-0/2/9.0;
direction down;
auto-discovery;
}
}
}
}
}
In this example, both the customer and service provider are running Ethernet CFM over
a simple bridge network. The network is shown in Figure 16 on page 112. The customer
has configured Ethernet CFM on MX Series routers L2-CE1 and L2-CE2. The service provider
has configured Ethernet CFM on MX Series routers PE1 and PE2.
The service provider is using CFM level 3 for the link between PE1 and PE2 and level 5
from one CE facing port to the other. The customer is using CFM level 7. The boundaries
are marked with “up mep” and “down mep” CFM terminology in the figure.
encapsulation flexible-ethernet-services;
unit 0 {
encapsulation vlan-bridge;
vlan-id 2000;
}
}
ge-5/1/7 {
vlan-tagging;
encapsulation flexible-ethernet-services;
unit 0 {
encapsulation vlan-bridge;
vlan-id 2000;
}
}
[edit bridge-domains]
bridge-vlan2000 {
domain-type bridge;
vlan-id 2000;
interface ge-5/0/9.0;
interface ge-5/1/7.0;
}
unit 0 {
encapsulation vlan-bridge;
vlan-id 2000;
}
}
ge-5/2/3 {
vlan-tagging;
encapsulation flexible-ethernet-services;
unit 0 {
encapsulation vlan-bridge;
vlan-id 2000;
}
}
[edit bridge-domains]
bridge-vlan2000 {
domain-type bridge;
interface ge-5/2/3.0;
interface ge-5/1/7.0;
}
CFM can be used to monitor the physical link between two routers. This functionality is
similar to that supported by the IEEE 802.3ah LFM protocol.
In Junos OS Release 9.3 and later, CFM also supports aggregated Ethernet interfaces.
On interfaces configured on Modular Port Concentrators (MPCs) and Modular Interface
Cards (MICs) on MX Series routers, CFM is not supported on untagged aggregated Ethernet
member links. MPCs and MICs do support CFM on untagged and tagged aggregated
Ethernet logical interfaces.
In the following example, two routers (Router 1 and Router 2) are connected by a
point-to-point Gigabit Ethernet link. The link between these two routers is monitored
using CFM. This is shown in Figure 17 on page 116. The single boundary is a “down mep”
in CFM terminology.
[edit]
interfaces ge-1/0/1 {
unit 0 {
family inet;
}
}
protocols {
oam {
ethernet {
connectivity-fault-management {
maintenance-domain private {
level 0;
maintenance-association private-ma {
continuity-check {
interval 1s;
}
mep 100 {
interface ge-1/0/1;
direction down;
auto-discovery;
}
}
}
}
}
}
}
The configuration on Router 2 mirrors that on Router 1, with the exception of the mep-id.
[edit]
interfaces ge-0/2/5 {
unit 0 {
family inet;
}
}
protocols {
oam {
ethernet {
connectivity-fault-management {
maintenance-domain private {
level 0;
maintenance-association private-ma {
continuity-check {
interval 1s;
}
mep 200 {
interface ge-0/2/5;
direction down;
auto-discovery;
}
}
}
}
}
}
}
On a Juniper Networks MX Series Ethernet Services Router equipped with the Distributed
Port Concentrator (MX-DPC) only, you can perform Ethernet frame delay measurements
(referred to as ETH-DM in Ethernet specifications). This feature allows you to configure
on-demand Operation, Administration, and Maintenance (OAM) statements for the
measurement of frame delay and frame delay variation (jitter). You can configure Ethernet
frame delay measurement in either one-way or two-way (round-trip) mode to gather
frame delay statistics and simultaneous statistics from multiple sessions. Ethernet frame
delay measurement provides fine control to operators for triggering delay measurement
on a given service and can be used to monitor Service Level Agreements (SLAs).
Ethernet frame delay measurement also collects other useful information, such as worst
and best case delays, average delay, and average delay variation. Ethernet frame delay
measurement supports hardware-based timestamping in the receive direction for delay
measurements. It also provides runtime display of delay statistics when two-way delay
measurement is triggered. Ethernet frame delay measurement records the last 100
samples collected per remote maintenance end point (MEP) or per connectivity fault
management (CFM) session. You can retrieve the history at any time using simple
commands. You can clear all Ethernet frame delay measurement statistics and PDU
counters. Ethernet frame delay measurement is fully compliant with the ITU-T Y.1731
(OAM Functions and Mechanisms for Ethernet-based Networks) specification.
Ethernet frame delay measurement uses the IEEE 802.1ag CFM infrastructure.
• One-way
• Two-way (round-trip)
For one-way Ethernet frame delay measurement, either MEP can send a request to begin
a one-way delay measurement to its peer MEP. However, the statistics are collected only
at the receiver MEP. This feature requires the clocks at the transmitting and receiving
MEPs to be synchronized. If these clocks fall out of synchronization, only one-way delay
variation and average delay variation values are computed correctly (and therefore valid).
Use the show commands at the receiver MEP to display one-way delay statistics.
For two-way (round-trip) Ethernet frame delay measurement, either MEP can send a
request to begin a two-way delay measurement to its peer MEP, which responds with
timestamp information. Run-time statistics are collected and displayed at the initiator
MEP. The clocks do not need to be synchronized at the transmitting and receiving MEPs.
The Junos OS supports the optional timestamps in delay measurement reply (DMR)
frames to increase the accuracy of delay calculations. The Junos OS also supports
hardware-assisted timestamping for Ethernet frame delay protocol data units (PDUs)
in the reception path.
Use the show commands at the initiator MEP to display two-way delay statistics, and at
the receiver MEP to display one-way delay statistics.
The following are some limitations with regard to using Ethernet frame delay
measurement:
• Ethernet frame delay measurements are available only when the distributed periodic
packet management daemon (ppmd) is enabled.
• The statistics collected are lost after graceful Routing Engine switchover (GRES).
• You can monitor only one session to the same remote MEP or MAC address.
• The use of Ethernet frame delay measurements on aggregated Ethernet and pseudowire
interfaces is not supported.
Ethernet frame delay measurement is a useful tool for providing performance statistics
or supporting or challenging Service Level Agreements (SLAs). By default, Ethernet frame
delay measurement uses software for timestamping and delay calculations. You can
optionally use hardware timing to assist in this process and increase the accuracy of the
delay measurement results. This assistance is available on the reception path.
Before you can perform Ethernet frame delay measurements on MX Series routers, you
must have done the following:
At the end of this configuration, you create two MX Series routers that can perform and
display Ethernet frame delay measurements on Ethernet interfaces using optional
hardware timestamping. By default, Ethernet frame delay measurement uses software
for timestamping and delay calculations. You can optionally use hardware timing to
assist in this process and increase the accuracy of the delay measurement results. This
assistance is available on the reception path.
[edit]
protocols {
oam {
ethernet {
connectivity-fault-management {
performance-monitoring {
hardware-assisted-timestamping; # Enable timestamping in hardware.
}
}
}
}
2. Ethernet frame delay measurement requires that distributed PPMD is enabled. Before
you can gather statistics for Ethernet frame delay measurement, you must make sure
that PPMD is configured properly. Without distributed PPMD, delay measurement
results are not valid.
To perform Ethernet frame delay measurement, make sure that the following
configuration statement is NOT present:
[edit routing-options]
ppm {
no-delegate-processing; # This turns distributed PPMD OFF.
}
Before Ethernet frame delay measurement statistics can be displayed, they must be
collected. To trigger Ethernet frame delay measurement, use the monitor ethernet
delay-measurement (one-way | two-way) (remote-mac-address | mep identifier)
maintenance-domain name maintenance-association ma-id [count count] [wait time]
operational command.
The fields for this command are described in Table 3 on page 123.
remote-mac-address Unicast MAC address Send delay measurement frames to the destination unicast MAC address
(use the format xx:xx:xx:xx:xx:xx). Multicast MAC addresses are not
supported.
mep identifier 1–8191 The MEP identifier to use for the measurement. The discovered MAC
address for this MEP identifier is used.
maintenance-domain Existing MD name Specifies an existing maintenance domain (MD) to use for the
name measurement.
maintenance-association Existing MA identifier Specifies an existing maintenance association (MA) identifier to use for
ma-id the measurement.
count count 1–65535 (default: 10) (Optional) Specifies the number of Ethernet frame delay frames to send.
The default is 10.
wait time 1–255 seconds (Optional) Specifies the number of seconds to wait between frames. The
(default: 1) default is 1 second.
If you attempt to monitor delays to a nonexistent MAC address, you must exit the
application manually using ^C:
Once Ethernet frame delay measurement statistics have been collected, they can be
displayed.
To retrieve the last 100 Ethernet frame delay measurement statistics per remote MEP
or per CFM session, two types of show commands are provided:
• For all OAM frame counters and Ethernet frame delay measurement statistics
To retrieve all Ethernet frame delay measurement statistics for a given session, use the
show oam ethernet connectivity-fault-management mep-statistics maintenance-domain
name maintenance-association name [local-mep identifier] [remote-mep identifier] [count
count] command.
To retrieve only Ethernet frame delay measurement statistics for a given session, use
the show oam ethernet connectivity-fault-management delay-statistics
maintenance-domain name maintenance-association name [local-mep identifier]
[remote-mep identifier] [count count] command.
NOTE: The only difference in the two commands is the use of the
mep-statistics and delay-statistics keyword.
The fields for these commands are described in Table 4 on page 125.
maintenance-domain name Existing MD name Specifies an existing maintenance domain (MD) to use.
maintenance-association ma-id Existing MA identifier Specifies an existing maintenance association (MA) identifier
to use.
local-mep identifier 1–8191 When a MEP has been specified, display statistics only for the
local MEP.
remote-mep identifier 1–8191 When a MEP has been specified, display statistics only for the
discovered MEP.
count count 1–100 (default:100) The number of entries to display in the results table. By default,
all 100 entries are displayed if they exist.
NOTE: For each MEP, you will see frame counters for sent and received
Ethernet frame delay measurement frames whenever MEP statistics are
displayed.
This example uses two MX Series routers: MX-1 and MX-2. The configuration creates a
CFM down MEP session on a VLAN-tagged logical interface connecting the two (ge-5/2/9
on Router MX-1 and ge-0/2/5 on Router MX-2).
[edit]
interfaces {
ge-5/2/9 {
vlan-tagging;
unit 0 {
vlan-id 512;
}
}
}
protocols {
oam {
ethernet {
connectivity-fault-management {
traceoptions {
file eoam_cfm.log size 1g files 2 world-readable;
flag all;
}
linktrace {
path-database-size 255;
age 10s;
}
maintenance-domain md6 {
level 6;
maintenance-association ma6 {
continuity-check {
interval 100ms;
hold-interval 1;
}
mep 201 {
interface ge-5/2/9.0;
direction down;
auto-discovery;
}
}
}
}
}
}
}
[edit]
interfaces {
ge-0/2/5 {
vlan-tagging;
unit 0 {
vlan-id 512;
}
}
}
protocols {
oam {
ethernet {
connectivity-fault-management {
traceoptions {
file eoam_cfm.log size 1g files 2 world-readable;
flag all;
}
linktrace {
path-database-size 255;
age 10s;
}
maintenance-domain md6 {
level 6;
maintenance-association ma6 {
continuity-check {
interval 100ms;
hold-interval 1;
}
mep 101 {
interface ge-0/2/5.0;
direction down;
auto-discovery;
}
}
}
}
}
}
}
The counters are displayed as part of the local MEP database on Router MX-2.
Statistics:
CCMs sent : 1590
CCMs received out of sequence : 0
LBMs sent : 0
Valid in-order LBRs received : 0
Valid out-of-order LBRs received : 0
LBRs received with corrupted data : 0
LBRs sent : 0
LTMs sent : 0
LTMs received : 0
LTRs sent : 0
LTRs received : 0
Sequence number of next LTM request : 0
1DMs sent : 10
Valid 1DMs received : 0
Invalid 1DMs received : 0
DMMs sent : 0
DMRs sent : 0
Valid DMRs received : 0
Invalid DMRs received : 0
Remote MEP count: 1
Identifier MAC address State Interface
201 00:90:69:0a:43:94 ok ge-0/2/5.0
The remote Router MX-1 should also collect the delay statistics (up to 100 per session)
for display with mep-statistics or delay-statistics.
2 357
3 344
4 332
5 319
6 306
7 294
8 281
9 269
10 255
Average one-way delay : 312 usec
Average one-way delay variation: 11 usec
Best case one-way delay : 255 usec
NOTE: When two systems are close to each other, their one-way delay values
are very high compared to their two-way delay values. This is because
one-way delay measurement requires the timing for the two systems to be
synchronized at a very granular level and MX Series routers do not support
this granular synchronization. However, two-way delay measurement does
not require synchronized timing, making two-way delay measurements more
accurate.
This example uses two MX routers: MX-1 and MX-2. The configuration creates a CFM
down MEP session on a VLAN-tagged logical interface connecting the two (ge-5/2/9 on
Router MX-1 and ge-0/2/5 on Router MX-2).
[edit]
interfaces {
ge-5/2/9 {
vlan-tagging;
unit 0 {
vlan-id 512;
}
}
}
protocols {
oam {
ethernet {
connectivity-fault-management {
traceoptions {
file eoam_cfm.log size 1g files 2 world-readable;
flag all;
}
linktrace {
path-database-size 255;
age 10s;
}
maintenance-domain md6 {
level 6;
maintenance-association ma6 {
continuity-check {
interval 100ms;
hold-interval 1;
}
mep 201 {
interface ge-5/2/9.0;
direction down;
auto-discovery;
}
}
}
}
}
}
}
[edit]
interfaces {
ge-0/2/5 {
vlan-tagging;
unit 0 {
vlan-id 512;
}
}
}
protocols {
oam {
ethernet {
connectivity-fault-management {
traceoptions {
file eoam_cfm.log size 1g files 2 world-readable;
flag all;
}
linktrace {
path-database-size 255;
age 10s;
}
maintenance-domain md6 {
level 6;
maintenance-association ma6 {
continuity-check {
interval 100ms;
hold-interval 1;
}
mep 101 {
interface ge-0/2/5.0;
direction down;
auto-discovery;
}
}
}
}
}
}
}
The counters are displayed as part of the MEP database on Router MX-1 maintenance
domain MD6.
The collected MEP statistics are saved (up to 100 per remote MEP or per CFM session)
and displayed as part of the MEP statistics on Router MX-1.
8 92
9 92
10 108
Average two-way delay : 103 usec
Average two-way delay variation: 8 usec
Best case two-way delay : 92 usec
Worst case two-way delay : 122 usec
The collected delay statistics are also saved (up to 100 per session) and displayed as
part of the MEP delay statistics on Router MX-1.
Ethernet frame delay measurements are supported on untagged interfaces. All commands
are the same as for tagged interfaces. Only the configurations are different. This section
shows the untagged interface configurations for Routers MX-1 and MX-2.
[edit]
interfaces {
ge-5/0/0 {
unit 0;
}
ge-5/2/9 {
unit 0;
}
}
protocols {
oam {
ethernet {
connectivity-fault-management {
traceoptions {
file eoam_cfm.log size 1g files 2 world-readable;
flag all;
}
linktrace {
path-database-size 255;
age 10s;
}
maintenance-domain md6 {
level 6;
maintenance-association ma6 {
continuity-check {
interval 100ms;
hold-interval 1;
}
mep 201 {
interface ge-5/0/0;
direction down;
auto-discovery;
}
}
}
}
}
}
}
[edit]
interfaces {
ge-0/2/2 {
unit 0;
}
ge-0/2/5 {
unit 0;
}
}
protocols {
oam {
ethernet {
connectivity-fault-management {
traceoptions {
file eoam_cfm.log size 1g files 2 world-readable;
flag all;
}
linktrace {
path-database-size 255;
age 10s;
}
maintenance-domain md6 {
level 6;
maintenance-association ma6 {
continuity-check {
interval 100ms;
hold-interval 1;
}
mep 101 {
interface ge-0/2/2;
direction down;
auto-discovery;
}
}
}
}
}
}
}
Link Fault Management (LFM) can be used for physical link-level fault detection and
management. The IEEE 802.3ah LFM works across a point-to-point Ethernet link either
directly connected or through repeaters.
• Report and receive link error events such as framing or symbol errors.
LFM runs at the physical or aggregated interface level. When configured on an aggregated
interface, LFM is run individually on each member link. LFM is a link-layer protocol and
does not need a Layer 3 (IPv4 or IPv6) address to operate. This allows for LFM to function
on circuit cross-connect/transport cross-connect (CCC/TCC) encapsulated interfaces.
In this example, LFM is enabled on an IP link between the provider edge (PE) and customer
edge (CE) interfaces. If the link goes down, the fault will be detected by LFM and the
interfaces on both sides will be marked Link-Layer-Down. This results in notifications to
various subsystems (for example, routing) which will take appropriate action.
[edit]
interfaces ge-1/1/0 {
unit 0 {
family inet {
address 11.11.11.1/24;
}
}
}
protocols {
oam {
ethernet {
link-fault-management {
interface ge-1/1/0 {
pdu-interval 1000;
pdu-threshold 5;
}
}
}
}
}
[edit]
interfaces ge-1/1/0 {
unit 0 {
family inet {
address 11.11.11.2/24;
}
}
}
protocols {
oam {
ethernet {
link-fault-management {
interface ge-1/1/0 {
pdu-interval 1000;
pdu-threshold 5;
}
}
}
}
}
In this example, LFM is configured between two PEs (PE1 and PE2) connected using CCC.
With LFM in place, a link fault will be detected immediately, instead of depending on
routing protocols to find the fault on end-to-end CCC connection. This also helps in
detecting the exact failed link instead of only finding that the end-to-end CCC connectivity
has failed. Also, because LFM runs at the link-layer level, it does not need a IP address
to operate and so can be used where bidirectional fault detection (BFD) cannot.
[edit]
interfaces ge-1/1/0 {
encapsulation ethernet-ccc;
unit 0;
}
protocols {
oam {
ethernet {
link-fault-management {
interface ge-1/1/0 {
pdu-interval 1000;
pdu-threshold 5;
}
}
}
}
}
[edit]
interfaces ge-1/0/0 {
encapsulation ethernet-ccc;
unit 0;
}
protocols {
oam {
ethernet {
link-fault-management {
interface ge-1/0/0 {
pdu-interval 1000;
pdu-threshold 5;
}
}
}
}
}
The use of LFM with aggregated Ethernet is shown in Figure 21 on page 140.
[edit]
chassis {
aggregated-devices {
ethernet {
device-count 1;
}
}
}
interfaces ge-1/0/1 {
gigether-options {
802.3ad ae0;
}
}
interfaces ge-2/0/0 {
gigether-options {
802.3ad ae0;
}
}
interfaces ae0 {
unit 0 {
family inet {
address 11.11.11.2/24;
}
}
}
protocols {
oam {
ethernet {
link-fault-management {
interface ae0;
}
}
}
}
[edit]
chassis {
aggregated-devices {
ethernet {
device-count 1;
}
}
}
interfaces ge-1/0/0 {
gigether-options {
802.3ad ae0;
}
}
interfaces ge-5/0/0 {
gigether-options {
802.3ad ae0;
}
}
interfaces ae0 {
unit 0 {
family inet {
address 11.11.11.1/24;
}
}
}
protocols {
oam {
ethernet {
link-fault-management {
interface ae0;
}
}
}
}
In this example, LFM is configured between PE and CE. The PE can put the CE in remote
loopback mode. This allows the PE to have all the traffic sent to the CE looped back for
diagnostics purposes, as shown in Figure 22 on page 142.
[edit]
interfaces ge-1/0/0 {
unit 0 {
family inet {
address 11.11.11.1/24;
}
}
}
protocols {
oam {
ethernet {
link-fault-management {
interface ge-1/0/0 {
pdu-interval 1000;
pdu-threshold 5;
remote-loopback;
}
}
}
}
}
[edit]
interfaces ge-1/1/0 {
unit 0 {
family inet {
address 11.11.11.2/24;
}
}
}
protocols {
oam {
ethernet {
link-fault-management {
interface ge-1/1/0 {
pdu-interval 1000;
pdu-threshold 5;
negotiation-options {
allow-remote-loopback;
}
}
}
}
}
}
Link failure is often an unavoidable part of networking. However, there are methods of
improving the reliability of a router or bridge network even when link failures occur. For
example, SONET/SDH seal-healing rings are frequently used to add a level of robustness
to router networks. This ring protection switching is now extended to Ethernet links. You
can configure Ethernet ring protection for a series of two or more systems so that if one
link fails, traffic is rerouted around the failure on the ring.
The basic idea of Ethernet ring protection is to use one specific link to protect the whole
ring. This special link is the ring protection link (RPL). When all links are up and running,
the RPL blocks traffic and remains idle. The RPL itself is controlled by the designated
RPL owner node. There is only one RPL owner node on the ring and the RPL owner node
is responsible for blocking the RPL interface under normal operating conditions. However,
if a link failure occurs on the ring, the RPL owner node is responsible for unblocking the
RPL interface and protection–switching the traffic on the alternate path around the ring.
An Ethernet ring automatic protection switching (R-APS) messaging protocol coordinates
the protection activities of all nodes on the ring. The APS blocks traffic over the failed
link and unblocks traffic over the RPL.
When the failed link is repaired, the traffic reverts to its normal pattern. That is, the RPL
owner blocks the RPL link and unblocks traffic over the cleared link.
Two or more nodes form a ring. Links between the nodes form a chain, with the last node
also connecting the first. Every ring node therefore has two ports related to the ring, one
in each direction. In this chapter, these directions are referred to as east and west.
• RPL owner node—This node owns the RPL and blocks or unblocks the RPL as conditions
require. This node initiates the R-APS message.
• Normal node—All other nodes on the ring (that is, those that are not the RPL owner
node) operate as normal nodes and have no special role on the ring.
In addition to roles, each node on the Ethernet ring can be in one of several states:
• Idle—The node is performing normally (there is no link failure on the ring). In this state,
traffic is unblocked on both ring ports, except for the RPL owner node, which blocks
the RPL port (the other RPL owner port is unblocked).
• Protection—When a failure occurs on the ring, a normal node will have traffic blocked
on the ring port that connects to the failed link. The RPL owner, if it is not at one end
of the failed link, will then unblock the RPL port so both ports are active.
NOTE: The R-APS protocol does not detect the number of RPL owner nodes
configured on the ring. You must configure only one RPL and RPL owner per
ring or protection switching will not work properly.
Ethernet ring protection only works when one link on the ring fails. Multiple link failures
will break the ring and cause protection switching to fail.
• The Ethernet ring protection configured as a single instance only works at the physical
level (adjacent nodes must be directly connected). The ring protection operates at
the interface (port) level and not at the VLAN level.
• Nonrevertive switching is not supported. When the link failure is cleared, traffic always
returns to normal operation.
You can configure Ethernet ring protection to optomize traffic load-balancing by using
multiple ring instances. For more information about multiple ring instances, see “Ethernet
Ring Protection Using Ring Instances for Load Balancing” on page 147
• Example: Viewing Ethernet Ring Protection Status—Normal Ring Operation on page 171
• Example: Viewing Ethernet Ring Protection Status—Ring Failure Condition on page 172
• Ethernet Ring Protection Using Ring Instances for Load Balancing on page 147
• Example: Configuring Load Balancing Within Ethernet Ring Protection for MX Series
Routers on page 154
Juniper Network MX Series 3D Universal Edge Routers support Ethernet ring protection
(ERP) to help achieve high reliability and network stability. ERP is used in router or bridge
networks to protect against link failure. A single-ring topology is configured that uses one
specific link called a ring protection link (RPL) to protect the whole ring. When all links
are up and running, the RPL blocks traffic and remains idle. However, if a link fails, the
RPL routes traffic to bypass the failure on the ring.
NOTE: To learn how ERP works in a single-ring topology, see “Ethernet Ring
Protection” on page 145.
MX Series routers now support ERP ring instances. Whereas traffic in a single-ring topology
follows the same path, traffic within ring instances allows some traffic to pass through
one path while other traffic can follow a different path. Dividing traffic in this way supports
traffic load balancing in the physical ring.
Ring instances are like traffic channels that contain different sets of virtual LANS (VLANs).
A ring instance is responsible for the protection of a subset of VLANs that transport traffic
over the physical ring. When ring instances are configured for the ring, each ring instance
should have its own RPL owner, an east and a west interface, and a ring protection link
end.
Each ring instance has a control channel and a specific data channel. A data channel is
a group of bridge domain VLAN IDs. All VLAN IDs within the same ring interface share
the same data-forwarding properties controlled by the ERP. If no data channel is defined
in the ring configuration, ERP will only operate on the physical link instead of as a ring
instance using logical links.
When operating ERP in a topology with other protocols, the following considerations
should be observed:
• ERP and Per-VLAN Spanning Tree (PVST) can be configured on the same topology
as long as PVST doesn't share the same VLAN with any Ethernet ring instance
configured on the physical port.
• If ERP is configured only as a physical ring instance (a ring without a data channel) in
a topology also configured for PVST, ERP checks the PVST configuration on two ring
interfaces and automatically creates a data channel excluding VLANs used by PVST.
This example configures Ethernet ring protection for three MX Series router nodes:
Example Topology
The links connecting the three MX Series routers are shown in Figure 23 on page 148.
ge-1/2/4 ge-1/0/1
1
West East R-APS
Channel
pg101
g016988
ge-1/0/4 ge-1/2/1
West West
ge-1/0/3 ge-1/0/2
3 2
East East
pg103 pg102
This example uses the following topology details for Ethernet ring protection:
• Router 1 is the RPL owner. The node identification for Router 1 is MAC address
00:01:01:00:00:01.
• The RPL link is ge-1/0/1.1 (this is also the R-APS messaging control channel).
• Traffic flows among the nodes in the configured bridge domains. (That is, only the
control channels are configured.)
• Router 1’s east control channel interface is ge-1/0/1.1 (the RPL) and the west control
channel interface is ge-1/2/4.1. The protection group is pg101.
• Router 2’s east control channel interface is ge-1/0/2.1 (the RPL) and the west control
channel interface is ge-1/2/1.1. The protection group is pg102.
• Router 3’s east control channel interface is ge-1/0/3.1 (the RPL) and the west control
channel interface is ge-1/0/4.1. The protection group is pg103.
NOTE: Although not strictly required for physical ring protection, this example
configures Ethernet OAM with MEPs.
[edit]
interfaces {
ge-1/0/1 {
vlan-tagging;
encapsulation flexible-ethernet-services;
unit 1 {
encapsulation vlan-bridge;
vlan-id 100;
}
}
ge-1/2/4 {
vlan-tagging;
encapsulation flexible-ethernet-services;
unit 1 {
encapsulation vlan-bridge;
vlan-id 100;
}
}
}
[edit]
bridge-domains {
bd1 {
domain-type bridge;
interface ge-1/2/4.1;
interface ge-1/0/1.1;
}
}
[edit]
protocols {
protection-group {
ethernet-ring pg101 {
node-id 00:01:01:00:00:01;
ring-protection-link-owner;
east-interface {
control-channel ge-1/0/1.1;
ring-protection-link-end;
}
west-interface {
control-channel ge-1/2/4.1;
}
}
}
}
[edit]
protocols {
oam {
ethernet {
connectivity-fault-management {
action-profile rmep-defaults {
default-action {
interface-down;
}
}
maintenance-domain d1 {
level 0;
maintenance-association 100 {
mep 1 {
interface ge-1/0/1;
remote-mep 2 {
action-profile rmep-defaults;
}
}
}
}
maintenance-domain d2 {
level 0;
maintenance-association 100 {
mep 1 {
interface ge-1/2/4;
remote-mep 2 {
action-profile rmep-defaults;
}
}
}
}
}
}
}
}
Router 2 Configuration
To configure Router 2:
[edit]
interfaces {
ge-1/0/2 {
vlan-tagging;
encapsulation flexible-ethernet-services;
unit 1 {
encapsulation vlan-bridge;
vlan-id 100;
}
}
ge-1/2/1 {
vlan-tagging;
encapsulation flexible-ethernet-services;
unit 1 {
encapsulation vlan-bridge;
vlan-id 100;
}
}
}
[edit]
bridge-domains {
bd1 {
domain-type bridge;
interface ge-1/2/1.1;
interface ge-1/0/2.1;
}
}
[edit]
protocols {
protection-group {
ethernet-ring pg102 {
east-interface {
control-channel ge-1/0/2.1;
}
west-interface {
control-channel ge-1/2/1.1;
}
}
}
}
[edit]
protocols {
oam {
ethernet {
connectivity-fault-management {
action-profile rmep-defaults {
default-action {
interface-down;
}
}
maintenance-domain d1 {
level 0;
maintenance-association 100 {
mep 2 {
interface ge-1/2/1;
remote-mep 1 {
action-profile rmep-defaults;
}
}
}
}
maintenance-domain d3 {
level 0;
maintenance-association 100 {
mep 1 {
interface ge-1/0/2;
remote-mep 2 {
action-profile rmep-defaults;
}
}
}
}
}
}
}
}
Router 3 Configuration
To configure Router 3:
[edit]
interfaces {
ge-1/0/4 {
vlan-tagging;
encapsulation flexible-ethernet-services;
unit 1 {
encapsulation vlan-bridge;
vlan-id 100;
}
}
ge-1/0/3 {
vlan-tagging;
encapsulation flexible-ethernet-services;
unit 1 {
encapsulation vlan-bridge;
vlan-id 100;
}
}
}
[edit]
bridge-domains {
bd1 {
domain-type bridge;
interface ge-1/0/4.1;
interface ge-1/0/3.1;
}
}
[edit]
protocols {
protection-group {
ethernet-ring pg103 {
east-interface {
control-channel ge-1/0/3.1;
}
west-interface {
control-channel ge-1/0/4.1;
}
}
}
}
[edit]
protocols {
oam {
ethernet {
connectivity-fault-management {
action-profile rmep-defaults {
default-action {
interface-down;
}
}
maintenance-domain d2 {
level 0;
maintenance-association 100 {
mep 2 {
interface ge-1/0/4;
remote-mep 1 {
action-profile rmep-defaults;
}
}
}
}
maintenance-domain d3 {
level 0;
maintenance-association 100 {
mep 2 {
interface ge-1/0/3;
remote-mep 1 {
action-profile rmep-defaults;
}
}
}
}
}
}
}
}
• Example: Viewing Ethernet Ring Protection Status—Normal Ring Operation on page 171
• Example: Viewing Ethernet Ring Protection Status—Ring Failure Condition on page 172
Example: Configuring Load Balancing Within Ethernet Ring Protection for MX Series
Routers
MX Series routers support Ethernet ring protection (ERP) to help achieve high reliability
and network stability. ERP is used in router or bridge networks to protect against link
failure. A single-ring topology is configured that uses one specific link called a ring
protection link (RPL) to protect the whole ring. When all links are up and running, the
RPL blocks traffic and remains idle. However, if a link fails, the RPL routes traffic to bypass
the failure on the ring.
MX Series routers now support ERP ring instances. Whereas traffic in a ring topology
follows the same path, traffic within a ring instance uses data channels to allow some
traffic to pass through one path while other traffic can follow a different one. Dividing
traffic in this way supports traffic load-balancing in the ring.
This example describes how to use ERP with ring instances to load-balance traffic while
still providing network protection from link failure:
Requirements
This example uses the following hardware and software components:
the ring coordinate protection activities by exchanging messages through the Ethernet
ring automatic protection switching (R-APS) messaging protocol. Each ring instance has
an RPL owner. The ring-1 RPL owner is CS1; the ring-2 RPL owner is CS2. The RPL owners
block or unblock the RPL as conditions require and initiate R-APS messages.
Each ring instance has two interface ports (an east interface and a west interface) that
participate in the instance. Interface ge-2/0/8.0, the west interface on CS2, is the ring
protection link end where ring-2’s RPL terminates. Interface ge-3/2/4.0, the east interface
on CS1, is the ring protection link end where ring-1’s RPL terminates.
Each ring instance has a data channel. A data channel is a group of bridge domain virtual
LAN (VLAN) IDs. All VLAN IDs within the same ring interface share the same
data-forwarding properties controlled by the ERP. The data channel on ring-1 is [200,
300]. The data channel on ring-2 is [500, 600].
Two customer site switches are connected to AS1. Customer site 1 uses VLANs 200 and
300. Customer site 2 uses VLANs 500 and 600.
ring-1 ring-2
data-channel [200,300] data-channel [500,600]
RPL owner RPL owner
ring-1 ring-2
ge-5/2/3.0 ge-2/0/4.0
CS1 CS2
west-interface east-interface
ge-3/2/4.0 ge-2/0/8.0
east-interface west-interface
RP link end ring-1 RP link end ring-2
ge-2/0/5.0 ge-2/1/1.0
west-interface east-interface
AS1
g017469
Property Settings
Ring instances • ring-1—Data channel [200,300]
• ring-2—Data channel [500,600]
• RPL owner—ring-1.
• East interface—ge-3/2/4.0.
• West interface—ge-5/2/3.0.
• Data channel for ring-1—VLAN 200, VLAN 300.
• Data channel for ring-2—VLAN 500, VLAN 600.
• Ring protection link end for ring-1—ge-3/2/4.0.
• Routing instance—vs.
• Bridge domains:
• bd100 is associated with vlan-id 100.
• bd101 is associated with vlan-id 101.
• bd200 is associated with vlan-id 200.
• bd300 is associated with vlan-id 300.
• bd500 is associated with vlan-id 500.
• bd600 is associated with vlan-id 600.
• RPL owner—ring-2.
• East interface—ge-2/0/4.0.
• West interface—ge-2/0/8.0.
• Ring protection link end for ring-2—ge-2/0/8.0.
• Data channel for ring-1—VLAN 200, VLAN 300.
• Data channel for ring-2—VLAN 500, VLAN 600.
Property Settings
AS1 router AS1 has the following protection group properties:
• East interface—ge-2/0/5.0.
• West interface—ge-2/1/1.0.
• Data channel for ring-1—VLAN 200, VLAN 300.
• Data channel for ring-2—VLAN 500, VLAN 600.
Configuration
To enable ERP with ring instances on CS1, CS2, and AS1, perform these tasks:
CLI Quick To quickly configure CS1 for ERP, copy the following commands and paste them into the
Configuration switch terminal window of CS1:
[edit]
set interfaces ge-3/2/4 vlan-tagging
set interfaces ge-3/2/4 unit 0 family bridge interface-mode trunk
set interfaces ge-3/2/4 unit 0 family bridge vlan-id-list 100-1000
set interfaces ge-5/2/3 vlan-tagging
set interfaces ge-5/2/3 unit 0 family bridge interface-mode trunk
set interfaces ge-5/2/3 unit 0 family bridge vlan-id-list 100-1000
set protocols protection-group ethernet-ring ring-1 ring-protection-link-owner
set protocols protection-group ethernet-ring ring-1 east-interface control-channel ge-3/2/4.0
set protocols protection-group ethernet-ring ring-1 east-interface control-channel vlan 100
set protocols protection-group ethernet-ring ring-1 east-interface ring-protection-link-end
set protocols protection-group ethernet-ring ring-1 west-interface control-channel ge-5/2/3.0
set protocols protection-group ethernet-ring ring-1 west-interface control-channel vlan 100
set protocols protection-group ethernet-ring ring-1 data-channel vlan [200, 300]
set protocols protection-group ethernet-ring ring-2 east-interface control-channel ge-3/2/4.0
set protocols protection-group ethernet-ring ring-2 east-interface control-channel vlan 101
set protocols protection-group ethernet-ring ring-2 west-interface control-channel ge-5/2/3.0
set protocols protection-group ethernet-ring ring-2 west-interface control-channel vlan 101
set protocols protection-group ethernet-ring ring-2 data-channel vlan [500, 600]
set routing-instances vs instance-type virtual-switch
set routing-instances vs interface ge-3/2/4.0
set routing-instances vs interface ge-5/2/3.0
set routing-instances vs bridge-domains bd101 vlan-id 101
2. Enable ERP, specifying the control channels and data channels for ring-1 and ring-2,
and configure ring-1 as the ring protection link owner:
[edit protection-group]
user@cs1# set ethernet-ring ring-1 ring-protection-link-owner
user@cs1# set ethernet-ring ring-1 east-interface control-channel ge-3/2/4.0
user@cs1# set ethernet-ring ring-1 east-interface control-channel vlan 100
user@cs1# set ethernet-ring ring-1 east-interface ring-protection-link-end
user@cs1# set ethernet-ring ring-1 west-interface control-channel ge-5/2/3.0
user@cs1# set ethernet-ring ring-1 west-interface control-channel vlan 100
user@cs1# set ethernet-ring ring-1 data-channel vlan [200, 300]
user@cs1# set ethernet-ring ring-2 east-interface control-channel ge-3/2/4.0
user@cs1# set ethernet-ring ring-2 east-interface control-channel vlan 101
user@cs1# set ethernet-ring ring-2 west-interface control-channel ge-5/2/3.0
user@cs1# set ethernet-ring ring-2 west-interface control-channel vlan 101
user@cs1# set ethernet-ring ring-2 data-channel vlan [500, 600]
3. Configure the routing instance, the bridge domains, and the VLAN IDs associated
with each bridge domain:
[edit routing-instances]
user@cs1# set vs instance-type virtual-switch
user@cs1# set vs interface ge-3/2/4.0
user@cs1# set vs interface ge-5/2/3.0
user@cs1# set vs bridge-domains bd100 vlan-id 100
user@cs1# set vs bridge-domains bd101 vlan-id 101
user@cs1# set vs bridge-domains bd200 vlan-id 200
user@cs1# set vs bridge-domains bd300 vlan-id 300
user@cs1# set vs bridge-domains bd500 vlan-id 500
user@cs1# set vs bridge-domains bd600 vlan-id 600
CLI Quick To quickly configure CS2 for ERP, copy the following commands and paste them into
Configuration the switch terminal window of CS2:
[edit]
set interfaces ge-2/0/4 unit 0 family bridge interface-mode trunk
set interfaces ge-2/0/4 unit 0 family bridge vlan-id-list 100-1000
set interfaces ge-2/0/8 unit 0 family bridge interface-mode trunk
set interfaces ge-2/0/8 unit 0 family bridge vlan-id-list 100-1000
set protocols protection-group ethernet-ring ring-1 east-interface control-channel ge-2/0/4.0
set protocols protection-group ethernet-ring ring-1 east-interface control-channel vlan 100
set protocols protection-group ethernet-ring ring-1 west-interface control-channel ge-2/0/8.0
set protocols protection-group ethernet-ring ring-1 west-interface control-channel vlan 100
set protocols protection-group ethernet-ring ring-1 data-channel vlan [200, 300]
set protocols protection-group ethernet-ring ring-2 ring-protection-link-owner
set protocols protection-group ethernet-ring ring-2 east-interface control-channel ge-2/0/4.0
set protocols protection-group ethernet-ring ring-2 east-interface control-channel vlan 101
set protocols protection-group ethernet-ring ring-2 west-interface control-channel ge-2/0/8.0
set protocols protection-group ethernet-ring ring-2 west-interface ring-protection-link-end
set protocols protection-group ethernet-ring ring-2 west-interface control-channel vlan 101
set protocols protection-group ethernet-ring ring-2 data-channel vlan [500, 600]
set bridge-domains bd100 vlan-id 100
2. Enable ERP, specifying the control channels and data channels for ring-1 and ring-2,
and configure ring-2 as the ring protection link owner:
[edit protection-group]
user@cs2# set ethernet-ring ring-1 east-interface control-channel ge-2/0/4.0
user@cs2# set ethernet-ring ring-1 east-interface control-channel vlan 100
user@cs2# set ethernet-ring ring-1 west-interface control-channel ge-2/0/8.0
user@cs2# set ethernet-ring ring-1 west-interface control-channel vlan 100
user@cs2# set ethernet-ring ring-2 data-channel vlan [200, 300]
user@cs2# set ethernet-ring ring-2 east-interface control-channel ge-2/0/4.0
user@cs2# set ethernet-ring ring-2 east-interface control-channel vlan 101
user@cs2# set ethernet-ring ring-2 ring-protection-link-owner
user@cs2# set ethernet-ring ring-2 west-interface control-channel ge-2/0/8.0
user@cs2# set ethernet-ring ring-2 west-interface control-channel vlan 101
user@cs2# set ethernet-ring ring-2 west-interface ring-protection-link-end
user@cs2# set ethernet-ring ring-2 data-channel vlan [500, 600]
3. Configure the routing instance, the bridge domains, and the VLAN IDs associated
with each bridge domain:
[edit bridge-domains]
user@cs2# set bd100 vlan-id 100
user@cs2# set bd101 vlan-id 101
user@cs2# set bd200 vlan-id 200
user@cs2# set bd300 vlan-id 300
user@cs2# set bd500 vlan-id 500
user@cs2# set bd600 vlan-id 600
family bridge {
interface-mode trunk;
vlan-id-list 100-1000;
}
}
}
ge-2/0/8 {
unit 0 {
family bridge {
interface-mode trunk;
vlan-id-list 100-1000;
}
}
}
protocols {
protection-group {
ethernet-ring ring-1 {
east-interface {
control-channel {
ge-2/0/4.0;
vlan 100;
}
}
west-interface {
control-channel {
ge-2/0/8.0;
vlan 100;
}
}
data-channel {
vlan [200, 300];
}
}
}
ethernet-ring ring-2 {
east-interface {
control-channel {
ge-2/0/4.0;
vlan 101;
}
}
west-interface {
control-channel {
ge-2/0/8.0;
vlan 101;
}
ring-protection-link-end;
}
data-channel {
vlan [500, 500];
}
}
}
bridge-domains {
bd100 {
vlan-id 100;
}
bd101 {
vlan-id 101;
}
bd200 {
vlan-id 200;
}
bd300 {
vlan-id 300;
}
bd500 {
vlan-id 500;
}
bd600 {
vlan-id 600;
}
}
}
CLI Quick To quickly configure AS1 for ERP, copy the following commands and paste them into the
Configuration switch terminal window of AS1:
[edit]
set interfaces ge-2/0/5 unit 0 family bridge interface-mode trunk
set interfaces ge-2/0/5 unit 0 family bridge vlan-id-list 100-1000
set interfaces ge-2/1/1 unit 0 family bridge interface-mode trunk
set interfaces ge-2/1/1 unit 0 family bridge vlan-id-list 100-1000
set protocols protection-group ethernet-ring ring-1 east-interface control-channel ge-2/0/5.0
set protocols protection-group ethernet-ring ring-1 east-interface control-channel vlan 100
set protocols protection-group ethernet-ring ring-1 west-interface control-channel ge-2/1/1.0
set protocols protection-group ethernet-ring ring-1 west-interface control-channel vlan 100
set protocols protection-group ethernet-ring ring-1 data-channel vlan [200, 300]
set protocols protection-group ethernet-ring ring-2 east-interface control-channel ge-2/0/5.0
set protocols protection-group ethernet-ring ring-2 east-interface control-channel vlan 101
set protocols protection-group ethernet-ring ring-2 west-interface control-channel ge-2/1/1.0
set protocols protection-group ethernet-ring ring-2 west-interface control-channel vlan 101
set protocols protection-group ethernet-ring ring-2 data-channel vlan [500, 600]
set bridge-domains bd100 vlan-id 100
set bridge-domains bd101 vlan-id 101
set bridge-domains bd200 vlan-id 200
set bridge-domains bd300 vlan-id 300
set bridge-domains bd500 vlan-id 500
set bridge-domains bd600 vlan-id 600
2. Enable ERP, specifying the control channels and data channels for ring-1 and ring-2:
[edit protection-group]
user@as1# set ethernet-ring ring-1 east-interface control-channel ge-2/0/5.0
user@as1# set ethernet-ring ring-1 east-interface control-channel vlan 100
user@as1# set ethernet-ring ring-1 west-interface control-channel ge-2/1/1.0
user@as1# set ethernet-ring ring-1 west-interface control-channel vlan 100
user@as1# set ethernet-ring ring-2 east-interface control-channel ge-2/0/5.
user@as1# set ethernet-ring ring-2 east-interface control-channel vlan 101
user@as1# set ethernet-ring ring-2 west-interface control-channel ge-2/1/1.0
user@as1# set ethernet-ring ring-2 west-interface control-channel vlan 101
user@as1# set ethernet-ring ring-2 data-channel vlan [500, 600]
3. Configure the routing instance, the bridge domains, and the VLAN IDs associated
with each bridge domain:
[edit bridge-domains]
user@as1# set bd100 vlan-id 100
user@as1# set bd101 vlan-id 101
user@as1# set bd200 vlan-id 200
user@as1# set bd300 vlan-id 300
user@as1# set bd500 vlan-id 500
user@as1# set bd600 vlan-id 600
}
}
west-interface {
control-channel {
ge-2/1/1.0;
vlan 100;
}
}
data-channel {
vlan [200, 300];
}
}
}
}
protection-group {
ethernet-ring ring-2 {
east-interface {
control-channel {
ge-2/0/5.0;
vlan 101;
}
}
west-interface {
control-channel {
ge-2/1/1.0;
vlan 101;
}
}
data-channel {
vlan [500, 600];
}
}
}
bridge-domains {
bd100 {
vlan-id 100;
}
bd101 {
vlan-id 101;
}
bd200 {
vlan-id 200;
}
bd300 {
vlan-id 300;
}
bd500 {
vlan-id 500;
}
bd600 {
vlan-id 600;
}
}
}
Verification
To confirm that the ERP configuration for multiple ring instances is operating, perform
these tasks:
Action Show the status of the ring automatic protection switching (R-APS) messages to
determine if there is a ring failure:
Meaning The output displayed shows that protection groups ring-1 and ring-2 have a Request/state
of NR, meaning there is no request for APS on the ring. If a Request/state of SF is displayed,
it indicates there is a signal failure on the ring. The output also shows that the ring
protection link is not blocked. The No Flush field displays No, indicating that MAC
addresses will be flushed when the ring nodes receive this message first time. A value of
Yes would indicate MAC address flushing is not needed. The Originator field for ring-1
displays yes, indicating that this node is an R-APS originator.
Action List the interfaces acting as the control channels and their respective data channels
(represented by the Spanning Tree Protocol (STP) index number):
Meaning The output displayed shows the STP index number used by each interface in ring instances
ring-1 and ring-2. The STP index controls the forwarding behavior for a set of VLANs on
the data channel of a ring instance on a ring interface. For ring instances, there are multiple
STP index numbers (here representing VLANs 200, 300, 500, and 600). The Forward
State shows whether the data channel is forwarding or discarding traffic.
Purpose Verify the data channel logical interfaces and the VLAN IDs controlled by a ring instance
data channel.
Meaning The output displayed shows the ring interfaces ge-3/2/4 and ge-5/2/3 in protection
groups ring-1 and ring-2. For ring-1, VLAN 200 and VLAN 300 are being supported on both
STP Index 122 and 123 on bridge domains bd200 and bd300. For ring-2, VLAN 500 and
VLAN 600 are being supported on both STP Index 124 and 125 on bridge domains bd500
and bd600. The data channel controls the traffic on the VLAN IDs to facilitate load
balancing.
Action Show the status of the ring APS (R-APS) messages to determine if there is a ring failure:
Meaning The output displayed shows that protection groups ring-1 and ring-2 have a Request/state
of NR, meaning there is no request for APS on the ring. If a Request/state of SF is displayed,
it indicates there is a signal failure on the ring. The output also shows that the ring
protection link is not blocked. The No Flush field displays No, indicating that MAC
addresses will be flushed when the ring nodes receive this message first time. A value of
Yes would indicate MAC address flushing is not needed. The Originator field for ring-1
displays yes, indicating that this node is an R-APS originator. The Originator field for ring-2
dispays No, indicating that this node is not an R-APS originator.
Action List the interfaces acting as the control channels and their respective data channels
(represented by the STP index number):
Meaning The output displayed shows the STP index number used by each interface in ring instances
ring-1 and ring-2. The STP index controls the forwarding behavior for a set of VLANs on
the data channel of a ring instance on a ring interface. For ring instances, there are multiple
STP index numbers (here representing VLANs 200, 300, 500, and 600). The Forward
State shows whether the data channel is forwarding or discarding traffic.
Purpose Verify the data channel logical interfaces and the VLAN IDs controlled by a ring instance
data channel.
Meaning The output displayed shows the ring interfaces ge-2/0/4 and ge-2/0/8 in protection
groups ring-1 and ring-2. For ring-1, VLAN 200 and VLAN 300 are being supported on both
STP Index 44 and 45 on bridge domains bd200 and bd300. For ring-2, VLAN 500 and
VLAN 600 are being supported on both STP Index 46 and 47 on bridge domains bd500
and bd600. The data channel controls the traffic on the VLAN IDs to facilitate load
balancing.
Action Show the status of the ring APS (R-APS) messages to determine if there is a ring failure:
Meaning The output displayed shows that protection groups ring-1 and ring-2 have a Request/state
of NR, meaning there is no request for APS on the ring. If a Request/state of SF is displayed,
it indicates there is a signal failure on the ring. The output also shows that the ring
protection link is not blocked. The No Flush field displays No, indicating that MAC
addresses will be flushed when the ring nodes receive this message first time. A value of
Yes would indicate MAC address flushing is not needed. The Originator field for ring-1 and
ring-2 displays No, indicating that this node is not the R-APS originator.
Action List the interfaces acting as the control channels and their respective data channels
(represented by the STP index number):
Meaning The output displayed shows the STP index number used by each interface in ring instances
ring-1 and ring-2. The STP index controls the forwarding behavior for a set of VLANs on
the data channel of a ring instance on a ring interface. For ring instances, there are multiple
STP index numbers (here representing VLANs 200, 300, 500, and 600). The Forward
State shows whether the data channel is forwarding or discarding traffic. All data channels
are forwarding traffic.
Purpose Verify the data channel logical interfaces and the VLAN IDs controlled by a ring instance
data channel.
Meaning The output displayed shows the ring interfaces ge-2/0/5 and ge-2/1/1 in protection groups
ring-1 and ring-2. For ring-1, VLAN 200 and VLAN 300 are being supported on both STP
Index 22 and 23 on bridge domains bd200 and bd300. For ring-2, VLAN 500 and VLAN
600 are being supported on both STP Index 24 and 25 on bridge domains bd500 and
bd600. The data channel controls the traffic on the VLAN IDs to facilitate load-balancing.
Related • Ethernet Ring Protection Using Ring Instances for Load Balancing on page 147
Documentation
• Ethernet Ring Protection on page 145
Under normal operating conditions, when Ethernet ring protection is configured correctly,
the ring protection link (RPL) owner (Router 1 in the configuration example) will see the
following:
Note that the ring protection link is blocked and the node is marked as the originator of
the protection.
Note that the protection interface is discarding while the other interface is forwarding.
Note that only minimal RAPS messages have been sent to establish the ring.
Under normal operating conditions, the other routers on the ring (Router 2 and Router
3) will see the following similar output:
Note that both interfaces are forwarding. Router 3 will see almost identical information.
Note that Router 2 is not the owner. Router 3 will see almost identical information.
• Example: Configuring Ethernet Ring Protection for MX Series Routers on page 148
• Example: Viewing Ethernet Ring Protection Status—Ring Failure Condition on page 172
This section assumes that Ethernet ring protection is configuring correctly, that Router
1 is the ring protection link (RPL) owner, and that there is a link failure between Router 2
and Router 3 in the configuration example.
Note that the ring protection link is no longer blocked and the node is no longer marked
as originator.
Note that the protection interface is now forwarding (so is the other interface).
Note that the R-APS messages have recorded the remote failure.
Under a failure condition, the other routers on the ring (Router 2 and Router 3) will see
the following similar output:
Note the failure event (SF). Router 3 will see almost identical information.
Note that the failed interface (ge-1/0/2.1) is not forwarding. Router 3 will see almost
identical information.
Note that Router 2 is not the owner. Router 3 will see almost identical information.
Note that the R-APS messages have recorded the remote failure. Router 3 will see almost
identical information.
• Example: Configuring Ethernet Ring Protection for MX Series Routers on page 148
• Example: Viewing Ethernet Ring Protection Status—Normal Ring Operation on page 171
Index
• Index on page 177
T
technical support
contacting JTAC............................................................xviii
terminology
Ethernet................................................................................3
U
user priority (IEEE 802.1p), filtering on...........................99
V
virtual switches
configuration...................................................................40
overview............................................................................39
VLAN
translation on MX Series.............................................59
VLAN tags....................................................................................11
nesting.................................................................................13
VLAN translation
MX Series examples.....................................................59
VLANs
and VPLS..........................................................................46
bridge network example..............................................47
implicit learning domains............................................47
MX Series examples..............................................59, 60
MX Series examples with VPLS..................47, 51, 55
normalization and translation...........................43, 45
normalized.......................................................................46
single VPLS example....................................................55
translation.........................................................................45
VPLS labels example.....................................................51
VPLS
MX Series examples..............................................59, 60
MX Series VLAN examples............................47, 51, 55
virtual interfaces............................................................46
VPLS pseudowires
with dynamic profiles on MX
Series..............................................................63, 64, 68