Yes, I know that MPLS doesn't care about L3 and higher levels and it is one of its features. But I do not really understand its role in L2/L3 VPNs.

L2VPN - we are building xconnects to PE's AC. Why does xconnect need to be configured to be encapsulated in MPLS (encapsulation mpls command)? Why cannot we just land our xconnect to PE's loopback for example? We have IP connectivity, we land it to PE's loopback, sounds pretty clear but what's the role of MPLS there?

L3VPN - we are sending VPNv4 routes from PE to PE using MPBGP. And same question again: we have IP connectivity between them and iBGP should work fine, why do we need MPLS there?

It's kinda specific questions so I wasn't able to find answers on the Internet. Thanks!

  • 1
    Hello and welcome to Network Engineering! MPLS is used as fast L2 transport, and with help of RSVP-TE you can achieve more flexibility that any dynamic routing protocol can provide. Nov 22, 2018 at 7:51
  • Did any answer help you? If so, you should accept the answer so that the question doesn't keep popping up forever, looking for an answer. Alternatively, you can provide and accept your own answer.
    – Ron Maupin
    Dec 25, 2018 at 10:02

1 Answer 1


The real strengths of MPLS are that it provides a clear boundary between service and transport and is highly extensible - the fact that you can configure L2 or L3 VPNs across the same IP underlay is testament to this.

I'm not clear what you're suggesting in your L2VPN example, but the xconnect is mapped to the AC so that there is some way of identifying the ingress/egress interface of the service. Consider if you had 10 L2 Services terminating on the same box without this, how would you know which port to deliver which service to?

In your L3VPN example - while IBGP would work for one customer on a PE, consider what that would look like with 10 customers - all their routes would be mixed together - what would happen if they all used the same RFC1918 address space? You could create a routing-instance for each customer, and link them together with other PEs via independent IBGP sessions across unique VLANs, but as the number of PEs grows, this would become incredibly complex to manage. Having a single MP-BGP session carrying all PE routes, and then an MPLS wrapper for transport.

As to why MPLS, and not simply using an IP-in-IP or GRE tunnel, using Label switching allows hop-by-hop routing to be implemented, rather than relying on the underlay IGP to find the best path. This allows you to utilise all paths in the network, rather than just the "best" according to your underlay.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.