1. Home
  2. Docs
  3. MikroTik
  4. QoS
  5. Konfigurasi QoS Dengan CAKE di MikroTik v7 untuk Mengatasi Bufferbloat

Konfigurasi QoS Dengan CAKE di MikroTik v7 untuk Mengatasi Bufferbloat

CAKE (Common Applications Kept Enhanced) di Mikrotik adalah fitur manajemen bandwidth di RouterOS v7 yang sangat efektif untuk mengatasi bufferbloat, yaitu lonjakan latensi saat jaringan sedang penuh. Algoritma ini memprioritaskan paket-paket kecil dan membagi bandwidth secara merata atau adil ke setiap perangkat yang juga mengatasi masalah koneksi gaming, voice call, atau video conference menjadi lag dan patah-patah.

CAKE Mikrotik

Artikel ini memberikan contoh konfigurasi QoS Smart Flow dengan Queue CAKE pada MikroTik, yang membagi bandwidth secara adil (fair sharing) dan mengatasi masalah koneksi gaming, voice call, atau video conference menjadi lag dan patah-patah.

Persiapan dan Prasyarat

Sebelum memulai konfigurasi, pastikan kriteria berikut sudah terpenuhi:

  • Spesifikasi Yang Cukup: Algoritma CAKE sangat membebani Router jadi bergantung pada spesifikasi hardware (Routerboard), total bandwidth dan jumlah user.
  • RouterOS: Menggunakan RouterOS v7.x (fitur CAKE hanya tersedia di v7 ke atas).
  • Topologi Jaringan:
    • ether1: Interface WAN (Gateway: 192.168.1.1)
    • bridge-lan: Interface LAN Utama (192.168.88.0/24)
  • Total Bandwidth Internet: Ketahui kapasitas riil download dan upload dari ISP Anda (misalnya: 100 Mbps Download / 100 Mbps Upload).

Buat Queue Type Dengan Algoritma CAKE

Buat dua profil queue type baru khusus untuk download dan upload menggunakan algoritma CAKE.

/queue type
add name="CAKE-Download" kind=cake cake-ack-filter=filter cake-autorate-ingress=no cake-diffserv=besteffort cake-flowmode=triple-isolate cake-nat=yes cake-wash=yes
add name="CAKE-Upload" kind=cake cake-ack-filter=filter cake-autorate-ingress=no cake-diffserv=besteffort cake-flowmode=triple-isolate cake-nat=yes cake-wash=yes

Sedikit Penjelasan Tentang Parameter CAKE

Berikut sedikit penjelasan mengenai parameter di konfigurasi CAKE diatas:

  • cake-flowmode=triple-isolate:
    • Mode pembagian bandwidth paling adil (Fair Queueing). triple-isolate akan mengisolasi trafik data berdasarkan Source IP, Destination IP, dan Host/Masing-masing Koneksi.
    • Jika User A sedang mengunduh file besar dengan 10 connection thread (seperti IDM) dan User B sedang bermain game online (1 thread), CAKE tidak membagi bandwidth berdasarkan jumlah thread, melainkan membagi bandwidth secara adil per Host/IP terlebih dahulu, lalu membagi flow-nya. User B tidak akan mengalami lag.
  • cake-nat=yes:
    • Memberitahu algoritma CAKE bahwa router menggunakan fitur NAT (Network Address Translation).
    • Tanpa parameter ini, CAKE hanya melihat semua trafik keluar menuju internet berasal dari satu IP Publik router. Dengan cake-nat=yes, CAKE mampu “melihat menembus NAT” untuk mengetahui IP lokal asli (192.168.88.x) di balik paket tersebut sehingga pembagian triple-isolate berjalan akurat.
  • cake-wash=yes:
    • Membersihkan atau mereset tanda DiffServ/TOS (Type of Service) lama pada header IP paket data yang masuk dari internet.
    • Beberapa ISP atau server luar menandai paket dengan prioritas yang salah atau acak. cake-wash=yes menghapus tanda sampah tersebut agar CAKE dapat mengklasifikasikan ulang prioritas trafik secara mandiri.
  • cake-ack-filter=filter:
    • Mengompresi atau memfilter paket TCP ACK (paket konfirmasi terima data) pada jalur upload.
    • Saat Anda mengunduh file besar (misal 1 Gbps), komputer Anda secara terus-menerus mengirimkan jutaan paket ACK kecil ke internet sebagai laporan “data sudah diterima”. Jika jalur upload Anda sempit, paket ACK ini akan menyumbat jalur upload. Parameter ini menghapus paket ACK yang berlebihan tanpa merusak transmisi TCP, menjaga jalur upload tetap lega.
  • cake-diffserv=besteffort:
    • Menentukan cara CAKE menangani prioritas paket (traffic prioritization). Mode besteffort memperlakukan semua jenis trafik secara merata dalam satu antrean, tanpa memisahkan bandwidth ke dalam tin (sub-antrean) terpisah yang bisa menyebabkan alokasi menjadi kaku.

Buat Queue Tree / Simple Queue

Catatan Penting: Atur max-limit sebesar 85% – 90% dari total bandwidth riil ISP Anda. Hal ini krusial agar antrean terjadi di MikroTik (di mana CAKE bekerja), bukan di modem ISP. Misalkan bandwidth ISP Anda adalah 100 Mbps Download dan 100 Mbps Upload, maka atur limitasi sekitar 90 Mbps / 90 Mbps.

Simple Queue

Menerapkan pembatasan pada interface WAN (ether1) atau subnet lokal sederhana dengan menggunakan Simple Queue.

/queue simple
add name="QoS-SmartFlow-CAKE" target=192.168.88.0/24 max-limit=90M/90M queue=CAKE-Upload/CAKE-Download total-queue=default

Kalau Anda memakai metode parent queue yang dipisah berdasarkan interface WAN (ether1):

/queue simple
add name="QoS-WAN-CAKE" interface=ether1 max-limit=90M/90M queue=CAKE-Upload/CAKE-Download

Queue Tree

Contoh konfigurasi Queue Tree menggunakan jenis antrean CAKE, lengkap dengan mark-packet via Mangle dan alokasi batas kecepatan maksimal

1. Buat Mangle

Berbeda dengan Simple Queue yang bisa langsung mengarahkan target IP, Queue Tree murni bekerja berdasarkan Packet Mark yang dibuat di Mangle terlebih dahulu.

Jalankan perintah berikut di Terminal:

/ip firewall mangle
# 1. Mark Packet Download & Upload - LAN Utama (192.168.99.0/24)
add chain=forward src-address=192.168.88.0/24 out-interface=ether1 action=mark-packet new-packet-mark=lan-upload-pkt passthrough=no comment="Mark Upload - LAN Utama"
add chain=forward dst-address=192.168.88.0/24 in-interface=ether1 action=mark-packet new-packet-mark=lan-download-pkt passthrough=no comment="Mark Download - LAN Utama"

2. Buat Queue Tree

Dalam Queue Tree, kita akan membuat Parent Queue sebagai limit total bandwidth ISP dan Child Queue untuk membagi jatah bandwidth ke masing-masing subnet nantinya.

Asumsi total alokasi ISP Anda: 100 Mbps Download / 100 Mbps Upload (diset 90% menjadi 90M Download / 90M Upload).

/queue tree
# --- PARENT QUEUES (Batas Total ISP) ---
add name="GLOBAL-UPLOAD" parent=ether1 max-limit=90M queue=default
add name="GLOBAL-DOWNLOAD" parent=global max-limit=90M queue=default

# --- CHILD QUEUES (Pembagian per Subnet/VLAN) ---
# 1. LAN Utama (Diberikan prioritas full sampai limit Max Parent)
add name="LAN-Main-Upload" parent=GLOBAL-UPLOAD packet-mark=lan-upload-pkt queue=CAKE-Upload
add name="LAN-Main-Download" parent=GLOBAL-DOWNLOAD packet-mark=lan-download-pkt queue=CAKE-Download
  1. parent=ether1 (Upload) vs parent=global (Download):
    • Di RouterOS v7, penanganan Upload ditempatkan pada interface keluar WAN (ether1).
    • Download ditempatkan pada parent global agar paket yang ditandai dari arah ingress (masuk) dapat di-limit sebelum didistribusikan ke masing-masing interface lokal/VLAN.

Verifikasi dan Pengujian

Setelah konfigurasi selesai, pastikan fitur CAKE bekerja sesuai ekspektasi melalui langkah berikut:

  1. Bufferbloat (Speedtest):
    • Buka browser dan jalankan tes kualitas jaringan di Waveform Bufferbloat Test atau LibreQoS Internet Quality Test.
    • Nilai ideal yang diharapkan adalah Grade A atau A+, di mana penambahan latency (unloaded vs loaded) tidak melebihi 5–15 ms. Jika masih dibawah A coba turunkan max-limit ke 80Mbps dan seterusnya sampai Grade A atau A+.
    • Pastikan test menggunakan kabel lan dan ethernet gigabit (jangan wifi karena total bandwidth Anda 100Mbps).

Kesimpulan

Penerapan QoS CAKE di RouterOS v7 adalah solusi terbaru untuk mengatasi masalah bufferbloat tanpa harus membuat mangle rules yang rumit dan buanyak. Dengan menggabungkan Simple Queue/Queue Tree + CAKE untuk kontrol trafik Internet, QoS MikroTik dapat membagi bandwidth secara adil dan merata, sekaligus menjaga latency pada game, voice, dan video conference tetap stabil.

Pertanyaan Umum (FAQ)

Tags
guest

0 Comments
Oldest
Newest Most Voted