Inter-AS MPLS L3VPN per RFC 4364: Option A (back-to-back VRF), Option B (MP-eBGP VPNv4 between ASBRs, next-hop-self + label swap), Option C (RR-to-RR VPNv4 + labeled-IPv4 loopbacks, stateless ASBR), plus Option AB and what people mean by "Option D".
Within one AS, an MPLS L3VPN is easy: MP-BGP carries VPNv4 routes (RD + RT + VPN label) PE-to-PE, and the IGP+LDP/SR builds the transport LSP. The hard question is crossing an AS boundary — two providers, or two ASes of one provider — where the VPN routes and a working label path must survive the handoff at the ASBRs. RFC 4364 gives three answers: Option A, B, C (informally 10a/10b/10c).
The axis is how much VPN state the ASBR holds and how far the LSP stretches. A keeps full per-VRF state and no MPLS across the link; C keeps zero VPN state on the ASBR and one end-to-end LSP. B is the middle.
The ASBRs treat each other as a CE: one sub-interface (or VLAN) per VPN, plain IP between them, no MPLS on the inter-AS link. Each ASBR has a VRF for every customer and re-advertises routes normally.
The ASBRs run a single MP-eBGP VPNv4 session and exchange labeled VPN routes
directly; MPLS runs on the inter-AS link. The ASBR sets next-hop-self and
swaps the VPN label as routes cross.
The most scalable: ASBRs carry no VPN state at all. They only exchange PE loopbacks as labeled IPv4 (BGP-LU, RFC 3107/8277) so an end-to-end LSP exists across both ASes; the actual VPNv4 routes go directly between the route reflectors over a multi-hop MP-eBGP session.
Vendors add a hybrid, Option AB: it keeps Option A's per-VRF control and QoS but signals all VPNs over a single MP-BGP session in the global table (Option B's scalability) — the best of both, at the cost of vendor-specific config.
Not as a standard. RFC 4364 defines only A / B / C; Cisco adds AB / AB+. "Option D" is used loosely in some materials — usually meaning the AB hybrid, or Carrier-Supporting-Carrier (CsC), where one provider is a customer of another's MPLS core and BGP-LU hands labels to the customer-carrier's PEs. If someone says "Option D," ask which they mean.
| Option A | Option B | Option C | |
|---|---|---|---|
| ASBR VPN state | Full VRF per VPN | All VPNv4 routes | None |
| Inter-AS link | Plain IP, per-VRF subif | MP-eBGP VPNv4 + MPLS | Labeled IPv4 (BGP-LU) |
| VPNv4 exchange | Redistributed per VRF | ASBR↔ASBR | RR↔RR (multi-hop) |
| LSP | Two separate (per AS) | Stitched at ASBR | End-to-end |
| Scalability | Low | Medium | High |
| Isolation / QoS | Best | Weaker | Weakest |
| Inter-provider trust | Least | Some | Most |
Rule of thumb: A for a few VPNs / strict isolation between distrustful providers; B for scale within reasonable trust; C for one operator's own multi-AS backbone where full trust and maximum scale are fine. Background: MP-BGP, MPLS, LDP.
next-hop-self + label swap happen? (Option B ASBR)