← Interview Prep
MC-LAG — Multi-Chassis Link Aggregation
Dual-homing to two switches as one active LAG (no STP blocking): the peer-link/ICL, separate keepalive, common LACP system-ID, MAC/ARP sync, orphan ports; vPC/MLAG/CLAG naming, the vPC loop-avoidance rule, split-brain handling, and MC-LAG vs stacking/VSS vs EVPN ESI multihoming.
A normal LAG bundles links to one switch — so that switch is a single point of failure, and if you
dual-home to two switches instead, spanning tree blocks the second uplink. MC-LAG (Multi-Chassis
Link Aggregation) makes two switches present one LAG to the downstream device: both uplinks forward,
no STP blocking, and either switch can fail without an outage.
The magic: two peer switches share state and advertise a common LACP system-ID, so the
downstream sees a single partner and bundles all links. STP is taken out of the forwarding decision; both members are
active.
How it works
- Peer-link / ICL (Inter-Chassis Link) — a high-bandwidth trunk between the two peers that
carries synchronized MAC/ARP state and any traffic destined to an orphan or a failed member.
- Peer keepalive — a separate heartbeat (often out-of-band / mgmt) used only to detect
that the peer is alive, so a peer-link failure isn't mistaken for a peer death (split-brain).
- Common system-ID — both peers use the same LACP system identifier for the MC-LAG, so the
partner treats the links as one bundle.
- State sync — MAC and ARP/ND tables are mirrored across the peer-link so either switch can
forward for the pair; consistency checks catch VLAN/config mismatches.
- Orphan ports — single-homed devices; their traffic may need the peer-link to reach the other
side.
Vendor names (same idea)
| Name | Vendor / note |
| vPC | Cisco Nexus — two independent control planes, one LAG downstream. |
| MLAG | Arista (and Cumulus CLAG) — same model. |
| MC-LAG | Juniper / Nokia — the generic term. |
| VSS / StackWise-Virtual | Cisco — a single logical switch (one control plane), a different approach. |
| EVPN ESI multihoming | Standards-based, no ICL needed — the modern replacement. |
vPC specifics worth knowing
- Domain, roles, priority — a vPC domain ID ties the pair; a primary/secondary role is elected.
Roles matter mainly on peer-link failure.
- Consistency checks — Type-1 mismatches bring the vPC down; Type-2 mismatches just warn.
- The loop-avoidance rule — traffic that arrives on the peer-link is not
forwarded out a vPC member port. This prevents duplicating flooded frames; the consequence is that a member-port
failure (making a destination reachable only via the peer) is a special case the peer-link handles.
- peer-gateway / ARP sync / peer-switch — let each peer route for the other's MAC and keep FHRP
active-active so both switches forward first-hop traffic (no hairpin, unlike plain VRRP/HSRP).
Split-brain & failures
- Peer-link down, keepalive up → the secondary shuts its vPC member ports (and often
SVIs) so only the primary forwards — avoids a dual-active loop/duplication.
- Keepalive down too (real dual-active) → both think they're alone; this is why the keepalive
must be an independent path.
- A whole peer fails → the survivor keeps the LAG up on its half; the downstream just sees
reduced bandwidth, no topology change.
MC-LAG vs stacking vs EVPN multihoming
| MC-LAG / vPC | Stacking / VSS | EVPN ESI |
| Control planes | Two (independent) | One logical switch | Two (BGP-coordinated) |
| Dedicated ICL | Yes (peer-link) | Stack cable | No — uses the fabric |
| Upgrade blast radius | One switch at a time | Whole stack (unless ISSU) | One switch at a time |
| Scale | Pairs | Small stacks | Fabric-wide, N-way |
| Standard | Mostly proprietary | Proprietary | Open (RFC 7432) |
Two independent control planes (MC-LAG) means you can reload one switch without dropping the LAG — the big
operational win over a single-brain stack. EVPN ESI generalizes all-active multihoming across a whole
fabric without an ICL — see L2VPN / EVPN
and VLAN & VXLAN. Contrast the L3
gateway side in VRRP / FHRP and the loops MC-LAG lets
you avoid in STP.
Likely interview questions
- What problem does MC-LAG solve that a normal LAG + STP can't? (dual-home, both links active, no blocking)
- What makes the downstream see one bundle across two switches? (common LACP system-ID)
- Peer-link vs peer-keepalive — why two separate things? (state/traffic vs split-brain detection)
- The vPC loop-avoidance rule — what and why? (no forwarding peer-link traffic out a vPC port)
- What happens on peer-link failure? (secondary shuts vPC ports)
- MC-LAG vs stacking/VSS — the upgrade/blast-radius trade-off? (two control planes vs one)
- How does EVPN ESI multihoming improve on MC-LAG? (no ICL, fabric-wide, standards-based)