Home » MPLS Fundamentals: Label Switching, LDP, RSVP-TE และ VPN
MPLS Fundamentals: Label Switching, LDP, RSVP-TE และ VPN
MPLS Fundamentals: Label Switching, LDP, RSVP-TE และ VPN
MPLS (Multiprotocol Label Switching) เป็น forwarding mechanism ที่ใช้ labels แทน IP lookup สำหรับ forward packets ทำให้ routing เร็วขึ้นและรองรับ traffic engineering, VPN services และ QoS ได้ดี MPLS เป็น backbone ของ service provider networks ทั่วโลก ใช้ LDP สำหรับ label distribution และ RSVP-TE สำหรับ traffic engineering
Traditional IP routing ใช้ longest prefix match ทุก hop ซึ่งทำได้แค่ shortest path MPLS แก้ปัญหานี้: ใช้ labels สำหรับ fast forwarding + สร้าง LSPs (Label Switched Paths) ที่กำหนด path ได้ตามต้องการ (traffic engineering) + สร้าง VPN services (L2VPN, L3VPN) บน shared infrastructure
MPLS Concepts
| Concept |
ความหมาย |
| Label |
20-bit identifier ที่ใช้แทน IP lookup (insert ระหว่าง L2 และ L3 header) |
| LSP (Label Switched Path) |
Path ที่ packets ใช้ผ่าน MPLS network (unidirectional) |
| FEC (Forwarding Equivalence Class) |
Group of packets ที่ forward ด้วย path เดียวกัน (same label) |
| LER (Label Edge Router) |
Router ที่ขอบของ MPLS domain — push/pop labels (ingress/egress) |
| LSR (Label Switch Router) |
Router ภายใน MPLS domain — swap labels |
| Push |
Ingress LER เพิ่ม label ให้ packet (เข้า MPLS domain) |
| Swap |
LSR เปลี่ยน label จาก incoming เป็น outgoing |
| Pop |
Egress LER ถอด label ออก (ออกจาก MPLS domain) |
| PHP (Penultimate Hop Popping) |
Second-to-last router pop label → egress router ไม่ต้อง lookup label |
MPLS Label Header
| Field |
Size |
Purpose |
| Label |
20 bits |
Label value (0-1048575) |
| EXP (TC) |
3 bits |
Traffic Class / QoS (เหมือน DSCP) |
| S (Bottom of Stack) |
1 bit |
1 = bottom label (last in stack) |
| TTL |
8 bits |
Time to Live (prevent loops) |
LDP (Label Distribution Protocol)
| Feature |
รายละเอียด |
| Purpose |
Distribute labels ระหว่าง LSRs (bind label → FEC) |
| Transport |
TCP port 646 |
| Discovery |
UDP multicast 224.0.0.2:646 (Hello messages) |
| Label Assignment |
Downstream Unsolicited (ส่ง label โดยไม่ต้องขอ) |
| LSP Creation |
Follow IGP shortest path (LDP ไม่ทำ TE) |
| Limitation |
ไม่สามารถ engineer path ได้ — follow IGP best path เท่านั้น |
RSVP-TE (Traffic Engineering)
| Feature |
รายละเอียด |
| Purpose |
Create explicit LSPs ที่กำหนด path ได้ (traffic engineering) |
| Path Setup |
Explicit route: specify each hop ที่ LSP ต้องผ่าน |
| Bandwidth Reservation |
Reserve bandwidth ตลอด path (guaranteed QoS) |
| CSPF |
Constrained SPF — compute path ตาม constraints (BW, affinity) |
| Fast Reroute (FRR) |
Pre-computed backup path — failover ใน 50ms |
| Make-before-break |
สร้าง new LSP ก่อน tear down old (hitless reroute) |
| Soft State |
LSP ต้อง refresh ด้วย PATH/RESV messages ทุก 30 sec |
MPLS VPN Types
| Type |
Layer |
Technology |
Use Case |
| L3VPN |
Layer 3 |
VRF + MP-BGP + MPLS labels |
Enterprise WAN (routed VPN) |
| L2VPN (VPWS) |
Layer 2 |
Pseudowire (point-to-point) |
Ethernet circuit emulation |
| L2VPN (VPLS) |
Layer 2 |
Pseudowire mesh (multipoint) |
Bridged LAN extension |
| EVPN |
Layer 2+3 |
BGP EVPN + MPLS/VXLAN |
Modern DC + WAN (replaces VPLS) |
L3VPN (VRF + MP-BGP)
| Component |
Purpose |
| VRF |
Virtual Routing and Forwarding — isolated routing table per customer |
| RD (Route Distinguisher) |
Make overlapping prefixes unique ใน MP-BGP (ASN:nn or IP:nn) |
| RT (Route Target) |
Control route import/export ระหว่าง VRFs (extended community) |
| MP-BGP |
Multiprotocol BGP — carry VPNv4/v6 routes + labels |
| PE (Provider Edge) |
Router ที่เชื่อม customer → run VRFs + MP-BGP |
| CE (Customer Edge) |
Customer router ที่เชื่อมกับ PE |
| P (Provider) |
Core router — run MPLS only (ไม่รู้ customer routes) |
| Label Stack |
Outer label (transport LSP) + Inner label (VPN label) → 2-label stack |
Segment Routing (SR) — MPLS Evolution
| Feature |
MPLS (LDP/RSVP) |
Segment Routing |
| Label Distribution |
LDP or RSVP-TE (separate protocols) |
IGP extensions (IS-IS SR, OSPF SR) |
| State |
Per-LSP state on every hop |
Stateless (source routing with SID list) |
| Traffic Engineering |
RSVP-TE (complex, stateful) |
SR-TE (simpler, controller-based) |
| Scalability |
Limited (per-LSP state) |
Better (no per-flow state in core) |
| Fast Reroute |
RSVP FRR |
TI-LFA (Topology Independent LFA) |
ทิ้งท้าย: MPLS = Label-Based Forwarding + Services
MPLS Labels replace IP lookup: push (ingress) → swap (transit) → pop (egress) LDP = label distribution (follow IGP path), RSVP-TE = traffic engineering (explicit path) L3VPN: VRF + MP-BGP + 2-label stack (transport + VPN) L2VPN: VPWS (P2P), VPLS (multipoint), EVPN (modern) Segment Routing = MPLS evolution (stateless, IGP-based, simpler TE)
อ่านเพิ่มเติมเกี่ยวกับ BGP Route Filtering และ EVPN-VXLAN Fabric ที่ siamlancard.com หรือจาก icafeforex.com และ siam2r.com