Interdomain LDP-BGP VPLS
Interworking
Amit Shukla
Juniper Networks
Background
Virtual private LAN service (VPLS) glues together
several individual LANs across a packet-switched
network to appear and function as a single LAN
There are two standards for VPLS control plane
that are deployed today:
• BGP-based (BGP-VPLS): uses BGP for auto-discovery
and signaling of PWs (RFC 4761)
• LDP-based (LDP-VPLS): uses LDP for signaling of PWs
(RFC 4762), with discovery via provisioning
The data plane used by both these standards is
same
• Flooding of unknown unicast, learning/aging MAC
addresses, etc.
• A key notion in the data plane is of split-horizon
forwarding
• MPLS pseudo-wire encapsulation
2
Business Drivers for LDP-BGP VPLS
interworking solution
To interconnect domains running a
different VPLS control plane technologies
To expand LDP-based VPLS service out of
metro domain to WAN in a scalable and
efficient manner.
• By using BGP-VPLS.
3
Expanding VPLS service using BGP-VPLS
Why BGP-VPLS in WAN
• Scalable
• Auto-discovery
• Inter-provider support
Why LDP-VPLS in Metro
• Legacy
Proposed solution requires no changes in
Metro network running LDP-VPLS
4
Interconnecting Domains running different VPLS
control plane technologies (BGP-VPLS and LDP-
VPLS)
Existing inter-AS VPLS options are not
designed for ASes running different VPLS
technologies (BGP-VPLS and LDP-VPLS)
• Option-A can be used but doesn’t scale.
It is apparent that interworking function is
required between BGP-VPLS and LDP-VPLS.
VPLS-A
VPLS-A CPE1
MPE1
CPE2 VPLS-A
M-ASBR C-ASBR
MPE3 Metro-A WAN core
(BGP-VPLS)
(LDP-VPLS)
LDP-VPLS PW CPE3
MPE2 VPLS-A
VPLS-A BGP-VPLS PW
VPLS-A
5
Extending the reach of LDP-VPLS metro-domain to
WAN via BGP-VPLS to enable region/nation-wide
VPLS service
VPLS-A
VPLS-A
MPE3 MPE1
WAN
(BGP-VPLS)
M-ASBR2
RR M-ASBR1
Metro-B
(LDP-VPLS)
C-ASBR2 C-ASBR1
Metro-A
(LDP-VPLS)
MPE2
MPE4
VPLS-A
VPLS-A
C-ASBR3 MPE5 VPLS-A
M-ASBR3
BGP Session Metro-C
VPLS-A
LDP Session (LDP-VPLS) 6
MPE6
Overview of LDP-BGP VPLS interworking
Interworking operation localized at WAN border-
router (ASBRs)
Proposed Interworking mechanism require no
changes in both
• LDP/BGP VPLS control plane specifications (and)
• Current LDP-VPLS Metro network design
VPLS-A
VPLS-A CPE1
MPE1
M-ASBR C-ASBR
WAN core
METRO-A
(LDP-VPLS) (BGP-VPLS)
CPE2
MPE2 VPLS-A
VPLS-A 7
Control Plane Operation
Interworking Autonomous System Border Router
(interworking ASBR)
• Supports both LDP and BGP VPLS control planes
• Setup full-mesh of LDP/BGP PWs per interdomain VPLS
Scalable
• Only one additional LDP session provisioned per LDP-VPLS
PE
• Only one additional PW setup on each LDP-VPLS PE per
VPLS
VPLS-A CPE1 VPLS-A
MPE1
M-ASBR C-ASBR
WAN core
METRO-A
(LDP-VPLS) (BGP-VPLS)
VPLS-A
LDP-VPLS PW CPE2
MPE2 BGP-VPLS PW
VPLS-A 8
How BGP-VPLS view LDP-VPLS
BGP-VPLS view the LDP-VPLS domain like
a VPLS site with a single CE.
LDP-VPLS BGP-VPLS
MPE1 CPE1 BGP Site-ID:2
VPLS-A (Interworking ASBR) VPLS-A
C-ASBR
BGP Site-ID:1 Metro-A WAN
BGP Site-ID:3
VPLS-A VPLS-A
MPE2 CPE2
Advertised BGP
Signaling
Route
<Local-site:1, Offset:1, Label-base:800>
VPLS site BGP-VPLS pseudowire LDP-VPLS pseudowire 9
How LDP-VPLS view BGP-VPLS
LDP-VPLS view the BGP-VPLS domain like
a VPLS site with a single CE.
LDP-VPLS BGP-VPLS
MPE1 CPE1
VPLS-A (Interworking ASBR) VPLS-A
C-ASBR
Metro-A WAN
VPLS-A VPLS-A
MPE2 CPE2
VPLS site BGP-VPLS pseudowire LDP-VPLS pseudowire 10
Data Plane Operation
Fundamental data operations perform on each
incoming frame on a PW:
• LDP and BGP VPLS PWs terminates on the interworking
ASBR
• Common MAC-table maintained to stitch the set of fully-
meshed LDP and BGP VPLS pseudowires
• MAC-table populated via learning a source-MAC address
from incoming frame
• Destination MAC-address lookup to determine destination
pseudowire
11
Mesh Group
Mesh group concept introduced on an
interworking ASBR
• Groups all the fully meshed PWs of each domain.
Existing split-horizon forwarding rule applicable
for each mesh group
• Allows forwarding across pseudowires part of a different
mesh-group.
• Prohibits forwarding across pseudowires part of a same
mesh-group.
12
Mesh Groups: Flooding
CE-1 MPE1 Mesh-group “Metro-A” Mesh-group “WAN” CPE1 CE-3
C-ASBR VPLS-A
VPLS-A
CE-2 CE-4
VPLS-A MPE2 CPE2 VPLS-A
Floodingpacket flow LDP-VPLS PW BGP-VLS PW
From CE-1
Assume CE-1 sends a broadcast ARP request packet. It will be flooded by
MPE1, to all PEs in “Metro-A” domain (including C-ASBR) as it’s fully-meshed.
C-ASBR receives this packet from MPE1 and forwards it to all the
mesh-groups (PWs) except the one in which packet is received, as a
result packet is forwarded on all PWs part of mesh-group “WAN”.
Upon receiving this packet from MPE1, C-ASBR learns the CE-1 Mac-address
via MPE1 PW. Destination forwarding table on C-ASBR looks like:
MAC-Addr Next Hop
MAC(CE-1) PW(MPE1)
13
Mesh Groups: “Normal” Known Unicast
CE-3
CE-1 Mesh-group “Metro-A” Mesh-group “WAN”
MPE1 CPE1
VPLS-A
VPLS-A C-ASBR
CE-2 CE-4
MPE2 CPE2
VPLS-A VPLS-A
BGP-VLS PW
LDP-VPLS PW
Mac-addr Next-hop Unicastpacket
Mac(CE-1) PW(MPE1)
Here, CE-3 is sending a unicast packet to CE-1 and it’s assumed that
CE-1’s MAC address has been learned on all PEs. CPE1 has learned
CE-1’s MAC via C-ASBR so it forwards the packet to C-ASBR.
C-ASBR forwards this unicast packet on MPE1 PW since both
incoming and outgoing PWs are in different mesh-groups.
14
Mesh Groups Full-mesh Domains
LDP-BGP VPLS interworking
MPE1 M-ASBR1 using common-mac table
CPE1 VPLS-A
VPLS-A
WAN
(BGP-VPLS) CPE3
VPLS-A
METRO-A MPE2
(LDP-VPLS)
MPE3
C-ASBR
VPLS-A
VPLS-A
M-ASBR2 VPLS-A
CPE2
METRO-B VPLS-A
(LDP-VPLS)
MPE4 LDP-VPLS PW
BGP-VPLS PW
Interconnecting multiple metro domains using a single
interworking ASBR.
Each metro domain is mapped to a dedicated mesh group.
15
Interworking Device With Attached CEs
Interworking ASBR can provide PE router
functionality at the same time performing the
LDP-BGP VPLS interworking task.
#(&*$& #'
CPE1
MPE1 VPLS-A
VPLS-A VPLS-A
METRO-A WAN
(BGP-VPLS)
(LDP-VPLS) M-ASBR VPLS-A
C-ASBR
VPLS-A
CPE2
MPE2 LDP-VPLS PW BGP-VLS PW
'(&"'
&$)%'$#$&
#(
$#$&(&$ #
#!!+$#$&('((
' 16
Resiliency
Interworking ASBR becomes critical for
inter-domain VPLS service
Resiliency becomes critical to complete this
solution
• Solution is redundancy
CPE1
MPE1
VPLS-A M-ASBR C-ASBR VPLS-A
METRO-A WAN
(BGP-VPLS)
(LDP-VPLS) VPLS-A
VPLS-A
CPE2
MPE2 LDP-VPLS PW BGP-VLS PW
17
Background: CE-device resiliency using
BGP-VPLS multihoming
CE device dual-homed to
PE devices for redundancy
PE1 PE4
CE2
CE1
PE3 CE3
PE2
BGP-VPLS multihoming procedures enables loop-
free redundancy to attached CE devices without
relying on Spanning Tree Protocol (STP).
18
Redundancy using BGP-VPLS multihoming
Existing BGP-VPLS multihoming procedure used
with no changes to enable redundancy for LDP-
VPLS metro.
C-ASBR1 CPE1
MPE1 VPLS-A WAN
M-ASBR (BGP-VPLS)
VPLS-A
METRO-A
BGP Site-1 VPLS-A
(LDP-VPLS)
VPLS-A C-ASBR2
CPE2
MPE2 LDP-VPLS PW BGP-VLS PW
19
Resiliency for multiple LDP-VPLS Metros
Why use BGP-VPLS multihoming
• Scalable: Supports multiple metro domains
• Flexible: Precise control over designated forwarder
• Load balancing: Distribution of VPLS customers
MPE1
VPLS-A WAN
BGP SITE 1 M-ASBR1 (BGP-VPLS)
C-ASBR1
CPE1
VPLS-A VPLS-A
METRO-A MPE2
(LDP-VPLS)
MPE3 M-ASBR2
VPLS-A
VPLS-A
BGP SITE 2
VPLS-A CPE2
C-ASBR2
METRO-B LDP-VPLS PW
(LDP-VPLS) MPE4
BGP-VPLS PW
20
Extending the reach of LDP-VPLS metro-domain to
WAN via BGP-VPLS
Scalable way to enable region/nation-wide VPLS
service using BGP-VPLS in WAN.
VPLS-A
Interdomain LDP-BGP VPLS-A
Interdomain LDP-BGP
MPE1 interworking interworking
WAN MPE3
(BGP-VPLS)
Metro-A RR M-ASBR1
Metro-B
(LDP-VPLS) (LDP-VPLS)
M-ASBR2
C-ASBR2 C-ASBR1
MPE2 MPE4
MPE5
VPLS-A VPLS-A
VPLS-A C-ASBR3 VPLS-A
MPE6
Interdomain LDP-BGP
interworking
M-ASBR3
BGP Session
Metro-C VPLS-A
LDP Session (LDP-VPLS) 21
MPE7
Resiliency using BGP-VPLS multi-homing
Enabling resiliency for LDP-VPLS domain “Metro-B”
VPLS-A
Redundant Interworking
ASBRs VPLS-A
MPE1 MPE3
WAN
C-ASBR2 (BGP-VPLS)
Metro-A RR M-ASBR1
Metro-B
(LDP-VPLS) (LDP-VPLS)
M-ASBR2
C-ASBR1
MPE4
MPE2 C-ASBR3 VPLS-A
VPLS-A C-ASBR3 VPLS-A
MPE5
M-ASBR3
BGP Session Metro-C
VPLS-A
LDP Session (LDP-VPLS) 22
MPE6
Efficient flooding and broadcasting using P2MP
LSP in WAN running BGP-VPLS control plane
Path of multicast traffic originating from site A3
!
!
!
VPLS-A
VPLS-A
MPE3 RR
MPE3
C-ASBR2 WAN
(BGP-VPLS) M-ASBR1
Metro-A
P Metro-B
(LDP-VPLS)
(LDP-VPLS)
M-ASBR2
C-ASBR1
MPE4
MPE4
! VPLS-A
VPLS-A C-ASBR3 VPLS-A
MPE5
#"
M-ASBR3
Traffic forwarded using ingress replication Metro-C
VPLS-A
Traffic forwarded over P2MP LSP (LDP-VPLS) 23
MPE6
Summary
It works with existing LDP-VPLS standard
Scalable (and minor changes to metro design)
• Only one (or couple) additional LDP sessions per PE in
metro
• Only one (or couple) additional PWs setup per PE per
VPLS
Easier to manage
• Adding new sites or PE in a metro area does not require
any provisioning on other remote Metro area
• BGP auto-discovery simplifies provisioning task in WAN
24
Summary (Cont…)
Resilient
• Native BGP-VPLS multi-homing support provides loop-
free redundancy without the need of Spanning-Tree
Protocol
Efficient
• Interworking ASBR provides dual functionality of PE
router and LDP-BGP interworking
• Multiple metro-domains can be interconnected via
single interworking ASBR
• BGP-VPLS with point-to-multipoint LSP instead of
ingress replication for multicast/broadcast unknown
25
Thank You !
26