1. Mengapa Manajemen Bandwidth Penting?
Manajemen bandwidth adalah proses mengatur dan membatasi penggunaan jaringan agar setiap pengguna mendapatkan bagian bandwidth yang adil. Tanpa manajemen bandwidth yang baik, satu pengguna yang melakukan download besar-besaran bisa menghabiskan seluruh kapasitas jaringan dan membuat pengguna lain mengalami koneksi yang sangat lambat.
Konsep Fair Usage
Fair usage atau penggunaan adil adalah prinsip dasar di mana setiap pengguna di jaringan mendapatkan alokasi bandwidth yang proporsional. Dalam konteks RT/RW net atau warnet, fair usage memastikan bahwa pelanggan dengan paket 5 Mbps benar-benar mendapatkan kecepatan maksimal 5 Mbps, sementara pelanggan paket 10 Mbps mendapatkan 10 Mbps.
Tanpa pembagian bandwidth yang adil, pengguna yang membayar paket lebih mahal bisa saja mendapatkan kecepatan yang sama dengan pengguna paket murah β atau bahkan lebih lambat jika ada heavy downloader di jaringan yang sama.
Kualitas Layanan (QoS)
QoS (Quality of Service) adalah mekanisme untuk memprioritaskan jenis traffic tertentu agar aplikasi yang sensitif terhadap latency seperti VoIP (voice call), video conference, dan gaming online tetap berjalan lancar meskipun jaringan sedang sibuk.
| Tipe Traffic | Sensitivitas | Prioritas | Catatan |
|---|---|---|---|
| VoIP / Telepon | π΄ Sangat Sensitif Latency | Tinggi (1) | Butuh latency <150ms, jitter <30ms |
| Gaming Online | π΄ Sensitif Latency | Tinggi (2) | Butuh latency rendah, bandwidth kecil |
| Video Conference | π‘ Sedang | Sedang (3) | Butuh bandwidth stabil & minimal 2 Mbps |
| Browsing / Email | π’ Tidak Sensitif | Normal (4) | Intermittent traffic, toleran latency |
| Download / Torrent | π’ Tidak Sensitif | Rendah (8) | Bulk transfer, bisa ditunda |
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Total Bandwidth: 50 Mbps β
β β
β βββββββββββ βββββββββββ ββββββββββββ βββββββββββββββββββββ β
β β VoIP β β Gaming β β Browsing β β Download/Bulk β β
β β 5 Mbps β β 5 Mbps β β 20 Mbps β β 20 Mbps β β
β βPriority β βPriority β β Priority β β Priority Low β β
β β 1 β β 2 β β 4 β β 8 β β
β βββββββββββ βββββββββββ ββββββββββββ βββββββββββββββββββββ β
β β
β β Traffic prioritas tinggi DIPROSES DULU di queue β
β β Traffic prioritas rendah menunggu jika bandwidth penuh β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
RouterOS MikroTik menyediakan fitur queue yang sangat powerful dan fleksibel β mulai dari Simple Queue untuk setup cepat, hingga Queue Tree dengan HTB (Hierarchical Token Bucket) untuk manajemen traffic tingkat lanjut. Semua fitur ini tersedia tanpa lisensi tambahan, menjadikan MikroTik pilihan populer untuk RT/RW net, warnet, dan ISP kecil-menengah di Indonesia.
2. Simple Queue: Setup Dasar Bandwidth Management
Simple Queue adalah metode paling sederhana untuk membatasi bandwidth di MikroTik. Setiap queue bisa dibuat untuk IP address tertentu, subnet, atau bahkan seluruh interface. Simple Queue menggunakan algoritma FIFO (First In, First Out) dan sangat mudah dikonfigurasi.
Membuat Simple Queue via WinBox
Buka WinBox β Queue β Simple Queue. Klik tanda + untuk menambah queue baru. Beberapa parameter utama yang perlu diatur:
| Parameter | Deskripsi | Contoh |
|---|---|---|
| Name | Nama identifikasi queue | User-Rumah-A |
| Target | IP address atau subnet yang dibatasi | 192.168.10.2 |
| Max Limit | Batas maksimum kecepatan upload/download | Down: 5M / Up: 2M |
| Limit At | Batas minimum yang dijamin (untuk HTB) | Down: 1M / Up: 512k |
| Queue Type | Algoritma penjadwalan queue | default (FIFO) |
Membuat Simple Queue via Terminal
# Queue untuk pengguna dengan paket 5 Mbps
/queue simple add name="User-A-Rumah" \
target=192.168.10.2 \
max-limit=5M/2M \
limit-at=1M/512k \
burst-limit=8M/3M \
burst-threshold=3M/1M \
burst-time=8s/8s \
priority=8/8 \
queue=default-small/default-small \
comment="Paket 5Mbps - Rumah A"
# Queue untuk pengguna dengan paket 10 Mbps
/queue simple add name="User-B-Rumah" \
target=192.168.10.3 \
max-limit=10M/5M \
limit-at=2M/1M \
burst-limit=15M/8M \
burst-threshold=7M/3M \
burst-time=10s/10s \
priority=8/8 \
queue=default-small/default-small \
comment="Paket 10Mbps - Rumah B"
# Queue untuk pengguna dengan paket 2 Mbps (hemat)
/queue simple add name="User-C-Rumah" \
target=192.168.10.4 \
max-limit=2M/1M \
limit-at=512k/256k \
priority=8/8 \
queue=default-small/default-small \
comment="Paket 2Mbps - Rumah C"
Memahami Parameter Burst
Burst adalah fitur yang memungkinkan pengguna melebihi batas max-limit secara
sementara selama periode waktu tertentu, asalkan rata-rata penggunaan dalam periode tersebut
masih di bawah threshold. Burst membantu mengakomodasi lonjakan traffic sesaat seperti
loading halaman web.
| Parameter Burst | Fungsi | Nilai Contoh |
|---|---|---|
| Burst Limit | Batas kecepatan saat burst aktif | 8M (download) |
| Burst Threshold | Ambang rata-rata untuk memicu burst | 3M (download) |
| Burst Time | Periode perhitungan rata-rata | 8 detik |
Kecepatan
(Mbps)
8 β€ ββββ β Burst Limit (8M)
β β β
5 β€ β ββββββββββββββββββ β Max Limit (5M)
β β β ββββ
3 β€ββΌβββΌβββ€ βββββββββββ β Burst Threshold (3M)
β β β β β
1 β€ β β β βββ β Limit At (1M, guaranteed)
β β β β β
0 β€ββ΄βββ΄βββ΄βββ΄ββββββββββββββββββββββββββββ Time
β
Saat rata-rata dibawah threshold,
burst diaktifkan secara otomatis
Gunakan parameter parent pada Simple Queue untuk membuat hierarki. Queue
parent akan membatasi total bandwidth, sementara child queue membatasi masing-masing
pengguna. Ini penting untuk memastikan total penggunaan tidak melebihi bandwidth ISP yang
tersedia.
3. Queue Tree: HTB dan Hierarchical Traffic Control
Queue Tree adalah metode queue tingkat lanjut yang menggunakan algoritma HTB (Hierarchical Token Bucket). Berbeda dengan Simple Queue yang hanya memproses traffic pada satu arah per queue, Queue Tree memproses traffic melalui pohon hierarki dan menggunakan firewall mangle untuk menandai paket yang akan diqueue.
Keunggulan Queue Tree vs Simple Queue
| Fitur | Simple Queue | Queue Tree (HTB) |
|---|---|---|
| Performa | CPU lebih berat (per-connection) | Lebih ringan, proses per-packet |
| Hirarki | Terbatas (max 1 level parent) | Hirarki mendalam, fleksibel |
| Prioritas | Prioritas 1-8 (per queue) | Prioritas 1-10 per level hierarki |
| Parent | Satu parent saja | Banyak child per parent |
| Skalabilitas | Cocok untuk <50 pengguna | Cocok untuk ratusan pengguna |
| Packet Marking | Tidak perlu mangle | Harus pakai firewall mangle |
Konfigurasi Queue Tree dengan HTB
Berikut adalah contoh konfigurasi Queue Tree untuk jaringan RT/RW dengan total bandwidth 30 Mbps dari ISP:
# ============================================
# STEP 1: Tandai packet dengan Mangle
# ============================================
# Tandai semua paket download (dari internet ke user)
/ip firewall mangle add chain=forward action=mark-packet \
new-packet-mark=download-all \
src-address=192.168.10.0/24 \
comment="Mark download - all users"
# Tandai semua paket upload (dari user ke internet)
/ip firewall mangle add chain=forward action=mark-packet \
new-packet-mark=upload-all \
dst-address=192.168.10.0/24 \
comment="Mark upload - all users"
# Tandai traffic VoIP (port 5060 UDP)
/ip firewall mangle add chain=forward action=mark-packet \
new-packet-mark=voip-traffic \
protocol=udp dst-port=5060 \
comment="Mark VoIP"
# Tandai traffic game online (port gaming umum)
/ip firewall mangle add chain=forward action=mark-packet \
new-packet-mark=game-traffic \
src-port=27015,7777,3074 \
comment="Mark Gaming"
# Tandai traffic download besar (TCP dengan port 80, 443)
/ip firewall mangle add chain=forward action=mark-packet \
new-packet-mark=bulk-traffic \
protocol=tcp dst-port=80,443 \
connection-state=new \
comment="Mark Bulk Download"
# ============================================
# STEP 2: Buat Queue Tree (Parent & Child)
# ============================================
# Parent Queue untuk Download (total dari ISP)
/queue tree add name="TOTAL-DOWNLOAD" \
parent=ether1 \
packet-mark=download-all \
max-limit=30M \
limit-at=30M \
priority=1 \
queue=default \
comment="Total download bandwidth"
# Parent Queue untuk Upload
/queue tree add name="TOTAL-UPLOAD" \
parent=ether1 \
packet-mark=upload-all \
max-limit=10M \
limit-at=10M \
priority=1 \
queue=default \
comment="Total upload bandwidth"
# --- Child Queue Download ---
# Prioritas Tinggi: VoIP (5 Mbps guaranteed)
/queue tree add name="VOIP-Download" \
parent="TOTAL-DOWNLOAD" \
packet-mark=voip-traffic \
max-limit=5M \
limit-at=5M \
priority=1 \
queue=default \
comment="VoIP download priority"
# Prioritas Tinggi: Gaming (5 Mbps guaranteed)
/queue tree add name="GAME-Download" \
parent="TOTAL-DOWNLOAD" \
packet-mark=game-traffic \
max-limit=5M \
limit-at=5M \
priority=2 \
queue=default \
comment="Gaming download priority"
# Prioritas Normal: Browsing & Web (15 Mbps)
/queue tree add name="BROWSING-Download" \
parent="TOTAL-DOWNLOAD" \
max-limit=20M \
limit-at=10M \
priority=4 \
queue=default-small/default-small \
comment="Browsing download"
# Prioritas Rendah: Bulk/Download (sisa bandwidth)
/queue tree add name="BULK-Download" \
parent="TOTAL-DOWNLOAD" \
packet-mark=bulk-traffic \
max-limit=20M \
limit-at=2M \
priority=8 \
queue=default-small/default-small \
comment="Bulk download - lowest priority"
βββββββββββββββββββ
β TOTAL-DOWNLOAD β
β Max: 30M β
β Parent: ether1 β
ββββββββββ¬βββββββββ
β
ββββββββββββββββββββββΌβββββββββββββββββββββ
β β β
ββββββββββ΄βββββββββ ββββββββββ΄βββββββββ ββββββββββ΄βββββββββ
β VOIP-Download β β GAME-Download β β BROWSING-Down β
β Max: 5M β β Max: 5M β β Max: 20M β
β Priority: 1 β β Priority: 2 β β Priority: 4 β
βββββββββββββββββββ βββββββββββββββββββ ββββββββββ¬βββββββββ
β
ββββββββββ΄βββββββββ
β BULK-Download β
β Max: 20M β
β Priority: 8 β
βββββββββββββββββββ
Prioritas 1 = Diproses paling awal (VoIP)
Prioritas 8 = Diproses terakhir (Bulk Download)
Queue Type untuk Performa Optimal
MikroTik menyediakan beberapa algoritma queue type yang bisa digunakan pada Queue Tree. Pemilihan queue type yang tepat sangat mempengaruhi performa dan keadilan distribusi bandwidth.
# Lihat queue type yang tersedia
/queue type print
# Queue type default yang umum digunakan:
# - default : FIFO queue (100 packet)
# - default-small : FIFO queue (50 packet), lebih ringan
# - pcq-download : PCQ untuk download
# - pcq-upload : PCQ untuk upload
# - pfifo : Priority FIFO
# Buat custom queue type untuk latency-sensitive
/queue type add name="fast-pfifo" kind=pfifo \
limit=50 comment="Queue cepat untuk VoIP/Gaming"
Queue Tree TIDAK bisa bekerja tanpa firewall mangle. Kamu harus menandai paket (packet marking) terlebih dahulu sebelum membuat Queue Tree. Jika tidak ada packet mark, queue tree tidak akan memproses traffic apapun β ini adalah kesalahan umum pemula.
4. PCQ (Per Connection Queue): Solusi untuk Banyak User
PCQ (Per Connection Queue) adalah fitur MikroTik yang memungkinkan pembagian bandwidth secara otomatis dan adil untuk banyak pengguna dalam satu subnet tanpa perlu membuat queue terpisah untuk setiap IP. PCQ sangat ideal untuk RT/RW net, warnet, atau hotspot dengan banyak pengguna.
Bagaimana PCQ Bekerja?
PCQ bekerja dengan mendeteksi setiap koneksi unik berdasarkan parameter tertentu (biasanya source address atau destination address). Setiap koneksi akan mendapat alokasi bandwidth yang sama secara merata dari total limit yang ditentukan.
| Parameter PCQ | Deskripsi | Contoh |
|---|---|---|
| Rate | Limit kecepatan per koneksi (0 = unlimited) | 1M (per koneksi maks 1 Mbps) |
| Dst. Address | Berikan IP unik ke setiap destination | 192.168.10.0/24 |
| Src. Address | Berikan IP unik ke setiap source | 192.168.10.0/24 |
| Interfaces | Interface yang dipantau PCQ | ether1, ether2 |
| Queue Type | Algoritma penjadwalan | pcq-upload, pcq-download |
Setup PCQ untuk RT/RW Net
# ============================================
# Konfigurasi PCQ untuk 100+ pengguna RT/RW
# Total bandwidth ISP: 50 Mbps down / 15 Mbps up
# ============================================
# --- STEP 1: Buat PCQ Type ---
# PCQ Type untuk download (berdasarkan source IP)
/queue type add name="pcq-download" kind=pcq \
pcq-classifier=src-address \
pcq-rate=0 \
pcq-total-limit=2000 \
pcq-burst-rate=0 \
pcq-burst-threshold=0 \
pcq-burst-time=10s \
pcq-dst-address6-mask=128 \
pcq-src-address6-mask=128 \
comment="PCQ Download - fair share per user"
# PCQ Type untuk upload (berdasarkan destination IP)
/queue type add name="pcq-upload" kind=pcq \
pcq-classifier=dst-address \
pcq-rate=0 \
pcq-total-limit=2000 \
pcq-burst-rate=0 \
pcq-burst-threshold=0 \
pcq-burst-time=10s \
pcq-dst-address6-mask=128 \
pcq-src-address6-mask=128 \
comment="PCQ Upload - fair share per user"
# --- STEP 2: Tandai Packet dengan Mangle ---
# Tandai download (traffic masuk dari internet ke user)
/ip firewall mangle add chain=forward \
src-address=192.168.10.0/24 \
action=mark-packet \
new-packet-mark=pcq-download-mark \
passthrough=yes \
comment="PCQ mark download"
# Tandai upload (traffic keluar dari user ke internet)
/ip firewall mangle add chain=forward \
dst-address=192.168.10.0/24 \
action=mark-packet \
new-packet-mark=pcq-upload-mark \
passthrough=yes \
comment="PCQ mark upload"
# --- STEP 3: Buat Queue Tree dengan PCQ ---
# Parent download queue
/queue tree add name="PCQ-Download" \
parent=ether1 \
packet-mark=pcq-download-mark \
max-limit=50M \
limit-at=50M \
queue=pcq-download \
priority=8 \
comment="PCQ total download 50M"
# Parent upload queue
/queue tree add name="PCQ-Upload" \
parent=ether1 \
packet-mark=pcq-upload-mark \
max-limit=15M \
limit-at=15M \
queue=pcq-upload \
priority=8 \
comment="PCQ total upload 15M"
Dengan PCQ, kamu tidak perlu menghitung alokasi per user secara manual. Misalnya total bandwidth download adalah 50 Mbps dengan 100 pengguna aktif β PCQ akan otomatis membagi bandwidth secara merata (~500 Kbps per pengguna). Saat pengguna aktif berkurang ke 50 orang, masing-masing akan mendapatkan ~1 Mbps. Ini yang membuat PCQ sangat efisien untuk RT/RW net.
PCQ dengan Rate Limit Per User
Jika ingin memberikan batasan per-koneksi tertentu, gunakan parameter pcq-rate:
# PCQ dengan rate limit per koneksi 2 Mbps
/queue type set pcq-download pcq-rate=2M
# Atau buat tipe baru untuk pengguna paket tertentu
/queue type add name="pcq-down-1m" kind=pcq \
pcq-classifier=src-address \
pcq-rate=1M \
pcq-total-limit=1000 \
comment="PCQ Download limit 1Mbps per koneksi"
5. Mangle untuk Traffic Classification
Firewall Mangle adalah fitur MikroTik yang sangat penting dalam manajemen bandwidth. Mangle berfungsi untuk menandai (mark) paket, header, atau connection berdasarkan kriteria tertentu. Tanda ini kemudian digunakan oleh Queue Tree, Simple Queue, dan firewall rules lainnya untuk memproses traffic secara diferensial.
Jenis-Jenis Mark di Mangle
| Jenis Mark | Fungsi | Penggunaan |
|---|---|---|
| Mark Packet | Menandai setiap paket individual | Queue Tree, traffic shaping |
| Mark Connection | Menandai seluruh koneksi berdasarkan paket pertama | Mark connection untuk diteruskan ke mark packet |
| Mark Flow | Menandai flow tertentu | Netflow, analisis traffic |
| Mark Routing | Menandai paket untuk routing berbeda | Policy-based routing, load balancing |
| Mark DSCP | Mengubah DSCP value pada header IP | QoS inter-operability |
Contoh Mangle untuk Klasifikasi Traffic
# ============================================
# Klasifikasi Traffic Berdasarkan Port Aplikasi
# ============================================
# --- VoIP ---
/ip firewall mangle add chain=forward protocol=udp \
dst-port=5060-5080 src-port=5060-5080 \
action=mark-connection new-connection-mark=voip-conn \
passthrough=yes comment="VoIP SIP Connection"
/ip firewall mangle add chain=forward protocol=udp \
dst-port=10000-20000 \
connection-mark=voip-conn \
action=mark-packet new-packet-mark=voip-pkt \
passthrough=yes comment="VoIP Packets"
# --- Gaming ---
/ip firewall mangle add chain=forward protocol=udp \
dst-port=3074,27015-27030,7777-7781 \
action=mark-connection new-connection-mark=game-conn \
passthrough=yes comment="Gaming Connection"
/ip firewall mangle add chain=forward \
connection-mark=game-conn \
action=mark-packet new-packet-mark=game-pkt \
passthrough=yes comment="Gaming Packets"
# --- Streaming (YouTube, Netflix) ---
/ip firewall mangle add chain=forward protocol=tcp \
dst-port=443 content="youtube.com" \
action=mark-connection new-connection-mark=stream-conn \
passthrough=yes comment="YouTube Connection"
/ip firewall mangle add chain=forward \
connection-mark=stream-conn \
action=mark-packet new-packet-mark=stream-pkt \
passthrough=yes comment="Streaming Packets"
# --- Download Besar (torrent, ftp) ---
/ip firewall mangle add chain=forward protocol=tcp \
dst-port=6881-6889,6969,21 \
action=mark-connection new-connection-mark=bulk-conn \
passthrough=yes comment="Bulk Download Connection"
/ip firewall mangle add chain=forward \
connection-mark=bulk-conn \
action=mark-packet new-packet-mark=bulk-pkt \
passthrough=yes comment="Bulk Download Packets"
Sequential Marking: Connection β Packet
Best practice dalam menggunakan mangle adalah menggunakan dua langkah: pertama mark connection, lalu mark packet berdasarkan connection mark tersebut. Pendekatan ini lebih efisien karena MikroTik hanya perlu memeriksa paket pertama koneksi untuk mark connection, sementara paket selanjutnya otomatis menggunakan connection mark yang sama.
Mangle rules dieksekusi dari atas ke bawah secara berurutan. Pertama, buat
mark-connection untuk setiap kategori traffic, BARU setelah itu buat
mark-packet berdasarkan connection mark. Jangan lupa set
passthrough=yes pada mark-connection agar paket bisa di-mark oleh
rule berikutnya.
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β ALUR MARKING TRAFFIC β
β β
β Paket Masuk βββΆ ββββββββββββββββββββ β
β β Mark Connection β (periksa port/proto) β
β β voip-conn β β
β ββββββββββ¬ββββββββββ β
β βΌ β
β ββββββββββββββββββββ β
β β Mark Packet β (berdasarkan conn) β
β β voip-pkt β β
β ββββββββββ¬ββββββββββ β
β βΌ β
β ββββββββββββββββββββ β
β β Queue Tree β (prioritas tinggi) β
β β VOIP-Queue β β
β ββββββββββββββββββββ β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
6. Bandwidth Test & Monitoring
Setelah mengkonfigurasi queue, sangat penting untuk menguji dan memantau apakah pembagian bandwidth berjalan sesuai harapan. MikroTik menyediakan berbagai tools bawaan untuk melakukan ini.
Built-in Bandwidth Test
# Jalankan bandwidth test dari router
/tool bandwidth-test address=192.168.10.1 \
duration=30s \
direction=both \
protocol=udp \
rx-rate=yes \
tx-rate=yes
# Test ke server speedtest eksternal
/tool bandwidth-test address=speedtest.telkom.id \
duration=30s \
direction=receive \
protocol=tcp
# Test untuk memverifikasi queue per user
# (jalankan dari PC user tertentu)
# Buka browser ke: https://speedtest.net
Monitor Queue Secara Real-time
# Monitor simple queue secara real-time
/queue simple monitor 0
# Lihat traffic per queue (total)
/queue simple print stats
# Monitor queue tree
/queue tree print stats
# Monitoring rate saat ini per simple queue
/queue simple print where target=192.168.10.2
# Cek queue yang melebihi batas
/queue simple print where rate>limit-at
# Grafik traffic untuk interface tertentu
/tool traffic-monitor name=download-graph \
interface=ether1 \
admin-address=192.168.10.1 \
rx=yes \
tx=yes
Script Monitoring Otomatis
# Script untuk mengecek pengguna yang melebihi batas
/system scheduler add name="monitor-queue" \
interval=5m \
on-event={
:local violators [/queue simple find where rate>max-limit]
:foreach v in=$violators do={
:local name [/queue simple get $v name]
:local rate [/queue simple get $v rate]
:log warning "Queue VIOLATION: $name using $rate"
}
}
comment="Monitor queue violations every 5 minutes"
# Script untuk reset counter traffic harian
/system scheduler add name="daily-reset" \
start-time=00:00:00 \
interval=1d \
on-event={
/queue simple reset-counters-all
:log info "Queue counters reset successfully"
}
comment="Reset queue counters setiap tengah malam"
Aktifkan SNMP pada MikroTik untuk monitoring dengan Zabbix, LibreNMS, atau PRTG. Setiap queue dapat dipantau melalui OID SNMP yang tersedia. Kamu bisa membuat alert otomatis jika traffic user tertentu melebihi batas atau jika total utilisasi link melebihi threshold tertentu.
7. Prioritas Traffic: VoIP, Gaming, Download
Strategi prioritas traffic adalah inti dari implementasi QoS yang efektif. Dengan memberikan prioritas yang tepat, aplikasi yang sensitif terhadap latency dan jitter akan tetap berjalan lancar meskipun jaringan sedang penuh.
Contoh Prioritas untuk Jaringan RT/RW
# ============================================
# Prioritas Traffic - Konfigurasi Lengkap
# Total BW: 30 Mbps down, 10 Mbps up
# ============================================
# --- STEP 1: Mangle untuk klasifikasi ---
# (Gunakan contoh mangle dari bagian sebelumnya)
# --- STEP 2: Queue Tree dengan Prioritas ---
# Parent Download
/queue tree add name="BW-DOWN" parent=ether1 \
max-limit=30M limit-at=30M priority=1 comment="BW Total Down"
# Parent Upload
/queue tree add name="BW-UP" parent=ether1 \
max-limit=10M limit-at=10M priority=1 comment="BW Total Up"
# --- PRIORITAS 1: VoIP ---
/queue tree add name="VoIP-DL" parent="BW-DOWN" \
packet-mark=voip-pkt max-limit=5M limit-at=3M \
priority=1 queue=default comment="VoIP Download P1"
/queue tree add name="VoIP-UL" parent="BW-UP" \
packet-mark=voip-pkt max-limit=2M limit-at=1M \
priority=1 queue=default comment="VoIP Upload P1"
# --- PRIORITAS 2: Gaming ---
/queue tree add name="Game-DL" parent="BW-DOWN" \
packet-mark=game-pkt max-limit=8M limit-at=5M \
priority=2 queue=default comment="Gaming Download P2"
/queue tree add name="Game-UL" parent="BW-UP" \
packet-mark=game-pkt max-limit=3M limit-at=2M \
priority=2 queue=default comment="Gaming Upload P2"
# --- PRIORITAS 3: Video Conference ---
/queue tree add name="Video-DL" parent="BW-DOWN" \
packet-mark=video-pkt max-limit=10M limit-at=5M \
priority=3 queue=default-small comment="Video Conf Download P3"
/queue tree add name="Video-UL" parent="BW-UP" \
packet-mark=video-pkt max-limit=3M limit-at=2M \
priority=3 queue=default-small comment="Video Conf Upload P3"
# --- PRIORITAS 4: Browsing (Default) ---
/queue tree add name="Browse-DL" parent="BW-DOWN" \
max-limit=25M limit-at=10M \
priority=4 queue=default-small/comment="Browsing Download P4"
/queue tree add name="Browse-UL" parent="BW-UP" \
max-limit=8M limit-at=3M \
priority=4 queue=default-small comment="Browsing Upload P4"
# --- PRIORITAS 8: Bulk/Download ---
/queue tree add name="Bulk-DL" parent="BW-DOWN" \
packet-mark=bulk-pkt max-limit=15M limit-at=1M \
priority=8 queue=default-small comment="Bulk Download P8"
/queue tree add name="Bulk-UL" parent="BW-UP" \
packet-mark=bulk-pkt max-limit=5M limit-at=256k \
priority=8 queue=default-small comment="Bulk Upload P8"
Saat bandwidth penuh (30 Mbps download):
Prioritas 1 ββββββββββββββββββββ VoIP (3-5M) β DIPROSES DULU
Prioritas 2 ββββββββββββββββββ Gaming (5-8M)
Prioritas 3 ββββββββββββββββ Video Conf (5-10M)
Prioritas 4 ββββββββββββ Browsing (10-25M)
Prioritas 8 ββββ Bulk/DL (1-15M) β TERAKHIR
β = Bandwidth yang dialokasikan
Ketika jaringan tidak penuh, setiap traffic bisa
menggunakan bandwidth maksimum tanpa batasan prioritas.
Konfigurasi Simple Queue dengan Prioritas Per User
# Simple Queue dengan priority per user
# User VIP (prioritas lebih tinggi)
/queue simple add name="VIP-User" \
target=192.168.10.10 \
max-limit=10M/5M \
limit-at=5M/2M \
priority=1/1 \
comment="VIP User - Prioritas Tinggi"
# User reguler (prioritas normal)
/queue simple add name="Regular-User" \
target=192.168.10.20 \
max-limit=5M/2M \
limit-at=2M/1M \
priority=8/8 \
comment="Regular User - Prioritas Normal"
# Nilai priority pada Simple Queue:
# 1 = Highest priority (diproses paling awal)
# 8 = Lowest priority (diproses paling akhir)
# Default = 8
Pada Queue Tree, nilai priority berlaku dalam satu parent queue. Artinya, child queue
dengan priority=1 pada parent "A" tidak akan mengambil bandwidth dari parent "B" meskipun
parent "B" memiliki child dengan priority=8. Untuk pembagian antar-parent, gunakan
parameter limit-at sebagai jaminan minimum bandwidth.
8. Template Queue untuk RT/RW Net
Berikut adalah template lengkap konfigurasi manajemen bandwidth untuk jaringan RT/RW Net dengan 50-200 pengguna. Template ini bisa disesuaikan sesuai kebutuhan dan bandwidth ISP yang tersedia.
Skema Topologi RT/RW Net
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β ββββββββββββ β
β β ISP β β
β β30M/10M β β
β ββββββ¬ββββββ β
β β ether1 (WAN) β
β ββββββ΄ββββββββββββββββββββββββββββββββββββββ β
β β MikroTik RB750Gr3 β β
β β RouterOS v7.x β β
β β β β
β β Queue: PCQ + Queue Tree + Mangle β β
β β Total: 30M down / 10M up β β
β ββββββ¬ββββββββββ¬ββββββββββ¬ββββββββββ¬ββββββββ β
β βether2 βether3 βether4 βether5 β
β β β β β β
β ββββββ΄βββ ββββββ΄βββ ββββββ΄βββ ββββββ΄βββ β
β β Blok Aβ β Blok Bβ β Blok Cβ β AP β β
β β10 userβ β15 userβ β12 userβ βWiFi β β
β β 5Mbps β β 5Mbps β β 5Mbps β β8 user β β
β βββββββββ βββββββββ βββββββββ βββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Script Lengkap Template Queue RT/RW
# ============================================
# TEMPLATE MANAJEMEN BANDWIDTH RT/RW NET
# Bandwidth: 30 Mbps Down / 10 Mbps Up
# Users: 45+ pengguna per-blok
# ============================================
# ---------- KONFIGURASI INTERFACE ----------
# Pastikan interface sudah dikonfigurasi dengan benar
# ether1 = WAN (ke ISP)
# ether2-5 = LAN (ke user/switch/blok)
# ---------- STEP 1: BUAT ADDRESS LIST ----------
# Grouping subnet per blok
/ip firewall address-list
add address=192.168.10.0/28 list=blok-a comment="Blok A (1-15)"
add address=192.168.10.16/28 list=blok-b comment="Blok B (16-30)"
add address=192.168.10.32/28 list=blok-c comment="Blok C (31-45)"
add address=192.168.10.48/28 list=blok-d comment="Blok D/WiFi (46-60)"
# ---------- STEP 2: MANGLE RULES ----------
# Mark download semua user
/ip firewall mangle add chain=forward \
src-address-list=blok-a \
action=mark-packet new-packet-mark=dl-blok-a \
passthrough=yes comment="DL Mark Blok A"
/ip firewall mangle add chain=forward \
src-address-list=blok-b \
action=mark-packet new-packet-mark=dl-blok-b \
passthrough=yes comment="DL Mark Blok B"
/ip firewall mangle add chain=forward \
src-address-list=blok-c \
action=mark-packet new-packet-mark=dl-blok-c \
passthrough=yes comment="DL Mark Blok C"
/ip firewall mangle add chain=forward \
src-address-list=blok-d \
action=mark-packet new-packet-mark=dl-blok-d \
passthrough=yes comment="DL Mark Blok D"
# Mark upload semua user
/ip firewall mangle add chain=forward \
dst-address-list=blok-a \
action=mark-packet new-packet-mark=ul-blok-a \
passthrough=yes comment="UL Mark Blok A"
/ip firewall mangle add chain=forward \
dst-address-list=blok-b \
action=mark-packet new-packet-mark=ul-blok-b \
passthrough=yes comment="UL Mark Blok B"
/ip firewall mangle add chain=forward \
dst-address-list=blok-c \
action=mark-packet new-packet-mark=ul-blok-c \
passthrough=yes comment="UL Mark Blok C"
/ip firewall mangle add chain=forward \
dst-address-list=blok-d \
action=mark-packet new-packet-mark=ul-blok-d \
passthrough=yes comment="UL Mark Blok D"
# ---------- STEP 3: QUEUE TREE ----------
# Total bandwidth
/queue tree add name="TOTAL-DL" parent=ether1 \
max-limit=30M limit-at=30M queue=default \
priority=1 comment="Total Download"
/queue tree add name="TOTAL-UL" parent=ether1 \
max-limit=10M limit-at=10M queue=default \
priority=1 comment="Total Upload"
# Per-blok download (masing-masing 7.5M, burstable)
/queue tree add name="DL-Blok-A" parent="TOTAL-DL" \
packet-mark=dl-blok-a max-limit=8M limit-at=5M \
priority=8 queue=default-small \
comment="Download Blok A - 7.5M"
/queue tree add name="DL-Blok-B" parent="TOTAL-DL" \
packet-mark=dl-blok-b max-limit=8M limit-at=5M \
priority=8 queue=default-small \
comment="Download Blok B - 7.5M"
/queue tree add name="DL-Blok-C" parent="TOTAL-DL" \
packet-mark=dl-blok-c max-limit=8M limit-at=5M \
priority=8 queue=default-small \
comment="Download Blok C - 7.5M"
/queue tree add name="DL-Blok-D" parent="TOTAL-DL" \
packet-mark=dl-blok-d max-limit=8M limit-at=5M \
priority=8 queue=default-small \
comment="Download Blok D/WiFi - 7.5M"
# Per-blok upload (masing-masing 2.5M)
/queue tree add name="UL-Blok-A" parent="TOTAL-UL" \
packet-mark=ul-blok-a max-limit=3M limit-at=2M \
priority=8 queue=default-small \
comment="Upload Blok A - 2.5M"
/queue tree add name="UL-Blok-B" parent="TOTAL-UL" \
packet-mark=ul-blok-b max-limit=3M limit-at=2M \
priority=8 queue=default-small \
comment="Upload Blok B - 2.5M"
/queue tree add name="UL-Blok-C" parent="TOTAL-UL" \
packet-mark=ul-blok-c max-limit=3M limit-at=2M \
priority=8 queue=default-small \
comment="Upload Blok C - 2.5M"
/queue tree add name="UL-Blok-D" parent="TOTAL-UL" \
packet-mark=ul-blok-d max-limit=3M limit-at=2M \
priority=8 queue=default-small \
comment="Upload Blok D/WiFi - 2.5M"
Scheduler untuk Backup & Maintenance
# Backup konfigurasi harian ke floppy
/system scheduler add name="daily-backup" \
start-time=03:00:00 \
interval=1d \
on-event={
/system backup save name="auto-backup-[/system clock get date]"
:log info "Auto backup completed"
} comment="Backup harian jam 3 pagi"
# Log traffic per user ke file harian
/system scheduler add name="log-traffic" \
start-time=00:00:00 \
interval=1d \
on-event={
/tool fetch url="http://192.168.10.1/api/traffic" \
http-data="[queue simple print stats as-value]" \
http-method=post
:log info "Traffic log exported"
} comment="Export traffic log harian"
# Auto-reset counter bulanan
/system scheduler add name="monthly-reset" \
start-time=00:05:00 \
interval=1mo \
on-event={
/queue simple reset-counters-all
/ip firewall mangle reset-counters-all
:log info "Monthly counter reset"
} comment="Reset counters bulanan"
Untuk RT/RW Net dengan banyak pelanggan, pertimbangkan menggunakan sistem billing seperti Mikhmon, userman, atau SUMMA yang terintegrasi dengan MikroTik. Sistem ini bisa mengelola paket pelanggan, pembayaran, dan otomatis mengaktifkan/menonaktifkan queue berdasarkan status langganan.
9. Quiz: Uji Pemahamanmu
Jawab pertanyaan berikut untuk menguji pemahaman kamu tentang manajemen bandwidth di MikroTik. Pilih satu jawaban terbaik untuk setiap pertanyaan.