In a new protocol deep-dive series, Nick Russo and Russ White return to discuss MPLS. In part one, we discuss the primary use cases for MPLS, label allocation, and what SD-WAN means for the future of MPLS.
Show Notes:
- MPLS solves 3 fundamental problems, individually or in concert
- Multi-tenancy/VPNs
- Traffic engineering
- Fast reroute
- 4 bytes in a shim header, technically not a label, but we call it that
- 20 bits for label value, 2^20 ~= 1 million values (this is important)
- 3 bits for EXP, QoS really
- 1 S-bit to signal bottom of stack
- 8 bits TTL
- Label depth is theoretically infinite, but some HW platforms have a tolerance
- Many ways to allocate labels
- LDP transport
- LDP pseudowire
- BGP labeled unicast
- BGP based IP VPNs (VPNv4/v6)
- BGP pseudowire
- SR (really built into OSPF and ISIS for distribution)
- RSVP-TE
- Some forward rules are worth mentioning (basic LDP/BGP-LU environment)
- If route learned via IGP/static, LDP label must be used
- If route learned via BGP, BGP label must be used
- No exceptions
- Penultimate Hop Popping: second to last hop removes topmost label when signaled with imp-null from last hop along a given LSP, saves a lookup
- Is MPLS is a tunnel or not:
- Nick says always
- Russ says sometimes, depending on label depth
- Dispel rumor: MPLS is a technology, not a service. It’s incorrect to ask “Will SD-WAN supplant MPLS?” This is akin to saying “Will pizza delivery service supplant water?” A more reasonable question would be “Will SD-WAN supplant private WANs?”