1. Pengenalan MPLS
MPLS (Multiprotocol Label Switching) adalah teknologi yang menggabungkan kecepatan switching Layer 2 dengan fleksibilitas routing Layer 3. MPLS menggunakan label (angka pendek) untuk meneruskan paket, bukan berdasarkan IP address lookup yang kompleks.
MPLS sangat populer di kalangan ISP untuk backbone network karena mendukung VPN, traffic engineering, dan fast reroute — fitur yang sulit dicapai dengan IP routing murni.
Push label
L3 switching
Pop label
1.1 Komponen MPLS
| Komponen | Nama Lengkap | Fungsi |
|---|---|---|
| LER | Label Edge Router | Router di tepi yang menambah/menghapus label |
| LSR | Label Switch Router | Router di core yang menukar label |
| LSP | Label Switched Path | Jalur MPLS dari ingress ke egress |
| FEC | Forwarding Equivalence Class | Kelompok paket dengan treatment sama |
| LDP | Label Distribution Protocol | Protokol untuk distribusi label otomatis |
| RSVP-TE | Resource Reservation Protocol-TE | Protokol untuk traffic engineering |
1.2 MPLS Label Structure
- Label Value: 20 bit (0-1048575) — nomor label
- TC (Traffic Class): 3 bit — QoS / EXP bits
- S (Bottom of Stack): 1 bit — menandai label terbawah
- TTL: 8 bit — Time To Live
2. LDP — Label Distribution Protocol
LDP adalah protokol yang digunakan untuk mendistribusikan label MPLS secara otomatis antar router. LDP membuat LSP (Label Switched Path) yang mengikuti jalur IGP terpendek (biasanya OSPF atau IS-IS).
2.1 Cara Kerja LDP
- Setiap LSR menjalankan IGP (OSPF/IS-IS) untuk mengetahui topologi jaringan
- LSR membuat label lokal untuk setiap FEC (prefix) yang diketahui
- LSR meng-announce label ke LDP neighbor via TCP port 646
- LSR menerima label dari neighbor dan membangun LFIB (Label Forwarding Information Base)
- Paket diteruskan berdasarkan swap/push/pop label, bukan IP lookup
2.2 Konfigurasi LDP di MikroTik
# Aktifkan MPLS pada interface core /mpls ldp set enabled=yes \ transport-address=10.0.0.1 \ lsr-id=10.0.0.1 # Tambah interface LDP (interface yang terhubung ke LSR lain) /mpls ldp interface add interface=ether1 /mpls ldp interface add interface=ether2 # Verifikasi LDP neighbors /mpls ldp neighbor print # Verifikasi LDP bindings (label) /mpls ldp bindings print # Verifikasi LSP /mpls forwarding-table print
2.3 LDP vs RSVP-TE
| Fitur | LDP | RSVP-TE |
|---|---|---|
| Konfigurasi | Otomatis (mengikuti IGP) | Manual (explicit path) |
| Traffic Engineering | Tidak (shortest path only) | Ya (bisa pilih jalur) |
| Bandwidth Reservation | Tidak | Ya |
| Fast Reroute | Tidak | Ya (FRR) |
| Kompleksitas | Rendah | Tinggi |
| Cocok Untuk | Topologi sederhana | Backbone ISP besar |
3. RSVP-TE dan Traffic Engineering
RSVP-TE (Resource Reservation Protocol - Traffic Engineering) memungkinkan Anda membuat LSP eksplisit yang tidak mengikuti jalur IGP terpendek, melainkan jalur yang Anda tentukan sendiri berdasarkan kebutuhan bandwidth dan policy.
3.1 Konsep Traffic Engineering
Tanpa TE, semua traffic akan mengikuti jalur terpendek — yang bisa menyebabkan link utama overload sementara link lain idle. Dengan TE, Anda bisa mendistribusikan traffic merata ke semua link yang tersedia.
# Aktifkan RSVP-TE pada interface /mpls traffic-eng interface add \ interface=ether1 \ bandwidth=100M /mpls traffic-eng interface add \ interface=ether2 \ bandwidth=100M # Buat tunnel RSVP-TE dengan explicit path /mpls traffic-eng tunnel add \ name=tunnel-to-siteB \ to-address=10.0.0.2 \ primary-path=path1 \ bandwidth=50M \ record-route=yes # Definisikan explicit path /mpls traffic-eng path add \ name=path1 \ node=10.0.0.3 strict=yes /mpls traffic-eng path add \ name=path1 \ node=10.0.0.2 strict=yes
4. Fast Reroute & Protection
Fast Reroute (FRR) adalah mekanisme untuk memulihkan LSP dengan sangat cepat (< 50ms) ketika terjadi kegagalan link. Ini kritis untuk layanan yang membutuhkan availability tinggi seperti VoIP dan video conference.
4.1 Jenis Protection
- Facility Backup (Many-to-One): Satu backup tunnel melindungi banyak LSP yang melewati link yang sama. Lebih efisien.
- One-to-One (Detour): Setiap LSP memiliki backup path sendiri. Lebih presisi tapi kurang scalable.
- Link Protection: Melindungi kegagalan link tertentu.
- Node Protection: Melindungi kegagalan node tertentu (lebih komprehensif).
MikroTik RouterOS mendukung RSVP-TE fast reroute dengan backup tunnel. Konfigurasikan backup path pada tunnel RSVP-TE untuk proteksi otomatis terhadap kegagalan link.
5. VPLS — Virtual Private LAN Service
VPLS memungkinkan Anda membuat koneksi Layer 2 (Ethernet) point-to-multipoint di atas jaringan MPLS. Ini seperti memiliki switch virtual yang tersebar di beberapa lokasi geografis.
5.1 Konfigurasi VPLS di MikroTik
# Buat VPLS tunnel (PE Router A) /interface vpls add \ name=vpls-siteB \ remote-peer=10.0.0.2 \ vpls-id=100:1 \ l2mtu=1500 \ disabled=no # Buat bridge untuk menggabungkan VPLS dengan local interface /interface bridge add name=bridge-vpls /interface bridge port add bridge=bridge-vpls interface=ether3 /interface bridge port add bridge=bridge-vpls interface=vpls-siteB # Di PE Router B (site lain): /interface vpls add \ name=vpls-siteA \ remote-peer=10.0.0.1 \ vpls-id=100:1 \ l2mtu=1500 \ disabled=no /interface bridge add name=bridge-vpls /interface bridge port add bridge=bridge-vpls interface=ether3 /interface bridge port add bridge=bridge-vpls interface=vpls-siteA
5.2 Kegunaan VPLS
- Transparent LAN Service: Menghubungkan kantor cabang dalam satu segmen Ethernet
- Layer 2 Extension: Memperpanjang VLAN antar lokasi
- Data Center Interconnect: Menghubungkan DC yang berbeda
- Broadcast/Multicast: Mendukung L2 broadcast dan multicast
6. Layer 3 VPN (VRF)
Layer 3 VPN (L3VPN) menggunakan MPLS untuk membuat VPN berbasis routing. Setiap pelanggan memiliki routing table terpisah (VRF) yang diisolasi dari pelanggan lain.
6.1 Konfigurasi VRF di MikroTik
# Buat routing instance (VRF) untuk pelanggan A
/routing table add \
name=customer-a \
fib
# Assign interface ke VRF
/ip address add address=10.1.1.1/24 interface=ether3 \
routing-table=customer-a
# Konfigurasi BGP untuk VPN
/routing bgp instance add \
name=vpn-a \
as=65000 \
routing-table=customer-a
/routing bgp peer add \
name=remote-pe \
instance=vpn-a \
remote-address=10.0.0.2 \
remote-as=65000 \
address-families=ip \
vrf=customer-a
# Route leaking antar VRF (jika diperlukan)
/routing filter add \
chain=leak-to-customer-a \
rule="if (dst in 10.2.2.0/24) { accept }"
7. Konfigurasi MPLS Lengkap di MikroTik
# LANGKAH 1: Pastikan IGP (OSPF) sudah berjalan /routing ospf instance set [find] mpls-te-area=0.0.0.0 # LANGKAH 2: Aktifkan MPLS /mpls set enabled=yes # LANGKAH 3: Konfigurasi LDP /mpls ldp set enabled=yes \ transport-address=10.0.0.1 \ lsr-id=10.0.0.1 # LANGKAH 4: Tambah LDP interface /mpls ldp interface add interface=ether1 /mpls ldp interface add interface=ether2 # LANGKAH 5: Verifikasi /mpls ldp neighbor print /mpls ldp bindings print /mpls forwarding-table print /interface mpls print
MPLS membutuhkan IGP (OSPF atau IS-IS) yang sudah berjalan dengan stabil. Pastikan semua LSR memiliki routing table yang konsisten sebelum mengaktifkan MPLS. Juga pastikan semua interface MPLS memiliki MTU yang memadai (minimal 1526 bytes) untuk menampung label header.
9. LDP Session States & Monitoring
Memahami LDP session state dan cara monitoring sangat penting untuk troubleshooting MPLS backbone.
9.1 LDP Session States
| State | Keterangan |
|---|---|
| Non Existent | Session belum dimulai |
| Initialized | TCP connection established, menunggu init message |
| Open Recv | Init message diterima, menunggu keepalive |
| Operational | Session aktif, label exchange berjalan |
9.2 Label Operations
- Push: Menambahkan label baru ke packet stack (ingress LER)
- Swap: Menukar label lama dengan label baru (core LSR)
- Pop: Menghapus label dari stack (egress LER)
- PHP (Penultimate Hop Popping): LSR sebelum egress pop label, sehingga egress tinggal forward IP packet
9.3 MPLS MTU Considerations
# Set MPLS MTU pada interface # Setiap label MPLS = 4 bytes, jadi perlu ruang ekstra # Minimal MPLS MTU = IP MTU + 4 * jumlah label # Set interface MTU ke 1526+ untuk MPLS /interface ethernet set ether1 mtu=1526 /interface ethernet set ether2 mtu=1526 # Set MPLS MTU /mpls set mtu=1526 # Verifikasi /interface ethernet print detail where name~"ether" /mpls print # Troubleshooting MTU issues: # - Packet fragmentasi → naikkan MTU # - TCP MSS clamp → pastikan MSS <= MTU - 40 (IP+TCP header) # - Ping test dengan DF bit set: # /ping 10.0.0.2 size=1500 do-not-fragment=yes
9.4 MPLS Label Distribution Modes
| Mode | Keterangan |
|---|---|
| Independent Control | Label langsung di-assign tanpa menunggu downstream (default MikroTik) |
| Ordered Control | Label di-assign setelah menerima label dari downstream |
| Unsolicited Downstream | Label di-announce ke semua neighbor proactively |
| Downstream on Demand | Label diminta oleh upstream router |
MikroTik menggunakan mode Independent Control + Unsolicited Downstream secara default. Ini berarti label langsung di-assign dan di-announce tanpa menunggu — sehingga konvergensi lebih cepat. Untuk jaringan besar, pastikan semua LSR memiliki konsistensi dalam mode distribusi label.
10. Troubleshooting MPLS
| Masalah | Penyebab | Solusi |
|---|---|---|
| LDP neighbor tidak muncul | IGP belum converge | Pastikan OSPF/IS-IS berjalan stabil |
| Label binding kosong | Loopback tidak ter-announce | Pastikan loopback di-announce via IGP |
| VPLS tidak terbentuk | VPLS ID salah | Pastikan vpls-id sama di kedua PE |
| Packet drop di MPLS | MTU terlalu kecil | Naikkan MTU minimal 1526 bytes |
| VPN routing salah | VRF tidak ter-assign | Cek routing-table assignment |
# Debug MPLS /mpls ldp neighbor print detail /mpls ldp bindings print detail /mpls forwarding-table print detail # Cek label untuk prefix tertentu /mpls forwarding-table print where dst-address~"10.0.0" # Trace route dengan MPLS /tool traceroute address=10.0.0.2 use-mpls=yes # Log MPLS /system logging add topics=mpls action=memory /log print where topics~"mpls"
Quiz Pemahaman
🧠 Tes Pemahaman: MPLS & TE
1. Apa keunggulan utama MPLS dibanding IP routing murni?
2. LDP mengikuti jalur apa untuk membuat LSP?
3. Apa itu VPLS?
4. Apa yang dimaksud dengan PHP (Penultimate Hop Popping)?
5. Mengapa Fast Reroute penting untuk ISP?
11. MPLS Best Practices Summary
- Always run IGP first — pastikan OSPF/IS-IS stabil sebelum aktifkan MPLS
- Use loopback for LSR-ID — loopback interface tidak pernah down, sehingga LDP session stabil
- Set consistent MTU — semua interface MPLS harus MTU yang sama (minimal 1526)
- Use RSVP-TE for backbone — LDP untuk edge, RSVP-TE untuk core
- Implement FRR — fast reroute untuk link kritis
- Monitor LSP health — gunakan SNMP atau script untuk monitoring
- Document VPLS/VPN config — buat diagram MPLS topology dengan VPLS ID
- Test failover regularly — simulasi link failure untuk validasi FRR bekerja
Untuk ISP kecil-menengah, SD-WAN bisa menjadi alternatif MPLS yang lebih murah dan mudah. Namun, untuk ISP besar dengan backbone sendiri, MPLS tetap menjadi pilihan utama karena kontrol penuh terhadap path, QoS, dan reliability yang tidak bisa ditandingi oleh overlay SD-WAN.
11.1 MPLS Deployment Checklist
- Pastikan IGP (OSPF/IS-IS) stabil dan converge dengan cepat
- Set MPLS MTU minimal 1526 bytes pada semua interface
- Konfigurasi LDP transport-address ke loopback
- Aktifkan RSVP-TE hanya untuk link yang butuh TE
- Setup backup tunnel FRR untuk link kritis backbone
- Konfigurasi VPLS dengan VPLS ID yang terdokumentasi
- Test failover dengan simulasi link failure
- Monitor LDP neighbor dan forwarding table secara berkala