Saturday, January 23, 2016

Setting HTB Mikrotik Untuk Bandwidth Management

Semua tutor yang ada di internet sudah penulis coba mulai dari Simple Queue, PCQ dan lain2 tutor yg banyak bertebaran di internet. tp tidak satu pun yg sesuai keinginan penulis.

Contoh 1 : saat penulis menggunakan bandwidth management simple queue pada warnet (misal user A di limit 512k) maka sepanjang waktu user tsb akan mendapatkan bandwidth hanya 512k dan akan terus seperti itu.
Walaupun mungkin warnet tsb sepi dan tidak ada yg menggunakan bandwidth. Lalu sisa bandwidth yg 2,5mbps nya buat apa ? tentu akan mubazir begitu saja jika tidak digunakan, sedangkan anda tetap harus bayar bandwidth 3Mb per bulan.
Contoh 2 : di percobaan lain penulis mencoba menggunakan bandwdith management PCQ. embel2 didepannya sangat bagus, yaitu membagi bandwidth menjadi rata (bandwdith dinamis).
Gambarannya : misal warnet anda 3mbps dan anda mempunyai 10 user. dengan metode  bandwidth management PCQ dikatakan bahwa apabila 1 User online sendirian maka user tsb akan mendapat bandwidth 3mbps, jika 3 User yg online maka bandwidth akan terbagi rata menjadi 1mbps per user nya (3mbps/3user = 1mbps per user) dan seterusnya hingga 10 User online bersamaan maka tiap user akan mendapat 300kbps per user nya. tentu saja dgn keunggulan metode PCQ tsb diatas penulis mencoba menerapkan bandwidth management tsb dan menemukan beberapa hal yg menurut penulis masih kurang cocok untuk diterapkan di warnet, kantor maupun jaringan lainnya.
Masalah 1 PCQ :
Metode PCQ tidak mendefinisikan Queue per user, jadi hanya membuat queue secara global untuk seluruh user jaringan. sehingga penulis jd tidak tau bahwa sebetulnya bandwidth yang dikonsumsi oleh masing2 user itu berapa.
Lalu masalah lain adalah penulis tidak akan pernah tau apakah bandwidth tsb benar2 terbagi rata atau tidak. atau apakah bandwidth management PCQ yg dikatakan dapat benar2 membagi bandwidth menjadi rata tsb betul atau tidak.
Seperti disebutkan diatas, bandwidth management PCQ hanya mendefinisikan penggunaan bandwidth global bukan per User (per IP).
Masalah 2 PCQ : penulis coba mengetest pada beberapa user dgn perilaku penggunaan internet yg berbeda, misal : User A menggunakan IDM, user B maen game, User C hanya browsing biasa, User D streaming youtube.
Hasilnya adalah User A yang menggunakan IDM akan selalu mendominasi penggunaan bandwidth atau serakah dalam menggunakan bandwidth sehingga user lain akan selalu merasa kehabisan bandwidth (baca: lag) karena bandwidth akan habis disedot oleh User A yg menggunakan IDM (istilah bandwidth management bolong/bocor).
Masalah 3 PCQ : repotnya lagi saat penulis mencoba menerapkan bandwidth management PCQ seperti diatas (masalah 2 PCQ) ping akan melonjak membesar (ratusan/ribuan digit) bahkan bisa menjadi request time out (RTO) karena ketidakstabilan ping pada jaringan disebabkan beberapa user menggunakan heavy bandwidth misal IDM, Streaming dan lain2.
Dengan masalah tsb tentunya metode ini tidak mungkin diterapkan oleh penulis di warnet, karena warnet terutama warnet game akan membutuhkan ping yang stabil dan kecil. (catatan : game hanya butuh ping yg kecil dan stabil, bukan bandwidth besar).

Bandwidth Management Mikrotik with HTB
Hingga akhirnya penulis menemukan artikel tentang HTB mikrotik di sini :
HTB Mikrotik
Penulis tidak akan membahas banyak artikel tsb, karena tidak terlalu jelas langkah/tutorial dan cara untuk menerapkan HTB di artikel tsb, hingga akhirnya penulis mencoba menterjemahkan sendiri maksud dari artikel Bung Valens tsb dan mengimplementasikannya dengan modal trial error.
Seperti di metode bandwidth management sebelumnya, penulis mencoba eksperimen dgn bermodal artikel diatas. dan Alhamdulillah akhirnya sesuai dgn harapan penulis untuk metode Bandwidth Management Dinamis yg efektif.
untuk metode Bandwidth Management Mikrotik HTB penulis mencoba mengambil beberapa point sbb :
- Metode ini sangat jelas definisi penggunaan bandwdith tiap user karena metode ini bisa di implementasikan sampai level bawah ( per IP User)
- Sesuai dgn artikel bung valen diatas bahwa pembagian bandwidth memang betul2 dapat terbagi rata.
anda tidak percaya ? berikut saya berikan salah satu contoh buktinya
Bandwidth Management HTB
- Bandwidth Management Mikrotik HTB tidak bisa ditembus oleh IDM, DAP, Streaming atau aplikasi download accelerator. jd jika penulis menerapkan metode ini di warnet game, tentunya user Game tidak akan bermasalah lagi karena ping latency akan tetap aman dan stabil karena para downloader sudah tidak bisa seenaknya ngabisin bandwidth :)
- Lalu Bandwidth Management Mikrotik HTB ini sifatnya dinamis, jadi apabila hanya satu atau dua user yang online maka user tsb akan mendapatkan bandwidth yang maksimal dan apabila semua user online makan bandwdith akan terbagi rata dengan sendirinya.

Contoh HTB
Dibawah ini script untuk menerapkan HTB sesuai dengan artikel saya diatas yang sifatnya sangat dasar sekali. silahkan apabila pembaca ingin memodifikasi atau utak atik sendiri script dibawah ini.
“Saat anda memberikan sedikit kepada sesama, maka anda akan mendapat banyak dari Dunia.”
#Definisikan network LAN agar tidak terlimit bandwidth lokalnya
/ip firewall address-list
add address=192.168.1.0/24 disabled=no list=lokal
#Buat Mangle
/ip firewall mangle
add action=mark-packet chain=forward comment=”" disabled=no dst-address=\
192.168.1.2 new-packet-mark=client.2 passthrough=no src-address-list=\
!lokal
add action=mark-packet chain=forward comment=”" disabled=no dst-address=\
192.168.1.3 new-packet-mark=client.3 passthrough=no src-address-list=\
!lokal
add action=mark-packet chain=forward comment=”" disabled=no dst-address=\
192.168.1.4 new-packet-mark=client.4 passthrough=no src-address-list=\
!lokal
add action=mark-packet chain=forward comment=”" disabled=no dst-address=\
192.168.1.5 new-packet-mark=client.5 passthrough=no src-address-list=\
!lokal
add action=mark-packet chain=forward comment=”" disabled=no dst-address=\
192.168.1.6 new-packet-mark=client.6 passthrough=no src-address-list=\
!lokal
add action=mark-packet chain=forward comment=”" disabled=no dst-address=\
192.168.1.7 new-packet-mark=client.7 passthrough=no src-address-list=\
!lokal
add action=mark-packet chain=forward comment=”" disabled=no dst-address=\
192.168.1.8 new-packet-mark=client.8 passthrough=no src-address-list=\
!lokal
add action=mark-packet chain=forward comment=”" disabled=no dst-address=\
192.168.1.9 new-packet-mark=client.9 passthrough=no src-address-list=\
!lokal
add action=mark-packet chain=forward comment=”" disabled=no dst-address=\
192.168.1.10 new-packet-mark=client.10 passthrough=no src-address-list=\
!lokal
#Buat Queue Tree Parent
/queue tree
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=200k \
max-limit=2M name=AllDownload parent=global-out \
priority=8
#Buat Queue Tree Child
/queue tree
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=200k \
max-limit=512k name=PC-Client.2 packet-mark=client.2 parent=AllDownload \
priority=8 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=200k \
max-limit=512k name=PC-Client.3 packet-mark=client.3 parent=AllDownload \
priority=8 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=200k \
max-limit=512k name=PC-Client.4 packet-mark=client.4 parent=AllDownload \
priority=8 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=200k \
max-limit=512k name=PC-Client.5 packet-mark=client.5 parent=AllDownload \
priority=8 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=200k \
max-limit=512k name=PC-Client.6 packet-mark=client.6 parent=AllDownload \
priority=8 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=200k \
max-limit=512k name=PC-Client.7 packet-mark=client.7 parent=AllDownload \
priority=8 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=200k \
max-limit=512k name=PC-Client.8 packet-mark=client.8 parent=AllDownload \
priority=8 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=200k \
max-limit=512k name=PC-Client.9 packet-mark=client.9 parent=AllDownload \
priority=8 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=200k \
max-limit=512k name=PC-Client.10 packet-mark=client.10 parent=AllDownload \
priority=8 queue=default

Sekali lagi, langkah tsb di atas adalah hanya setingan standart HTB, untuk setingan yg lebih optimal lagi bisa mampir ke Jasa Setting Mikrotik

Sedikit kutipan dari artikel Bung Valens untuk sekedar mengingatkan pembaca akan syarat untuk terpenuhinya metode Bandwidth Management Mikrotik HTB
Yang perlu diingat mengenai Setting HTB Mikrotik:

  1. HTB hanya bisa berjalan, apabila rule queue client berada di bawah setidaknya 1 level parent, setiap queue client memiliki parameter limit-at dan max-limit, dan parent queue harus memiliki besaran max-limit.
  2. Jumlah seluruh limit-at client tidak boleh melebihi max-limit parent.
  3. Max-limit setiap client harus lebih kecil atau sama dengan max-limit parent.
  4. Untuk parent dengan level tertinggi, hanya membutuhkan max-limit (tidak membutuhkan parameter limit-at).
  5. Untuk semua parent, maupun sub parent, parameter priority tidak diperhitungkan. Priority hanya diperhitungkan pada child queue.
  6. Perhitungan priority baru akan dilakukan setelah semua limit-at (baik pada child queue maupun sub parent) telah terpenuhi.
Panduan praktis cara perhitungan limit-at dan max-limit
Di asumsikan bandwidth yang tersedia sebesar 2000kbps. Dan jumlah seluruh client adalah 10.  Yang perlu diketahui adalah :
  1. Berapa jumlah maksimal client yang menggunakan internet pada saat yang bersamaan. Jumlah ini belum tentu sama dengan jumlah komputer yang ada, apabila semua client tidak pernah terkoneksi secara bersamaan. Sebagai contoh, untuk kasus ini kita asumsikan adalah 10.
  2. Berapa jumlah minimal client yang menggunakan internet pada saat yang bersamaan. Sebagai contoh, untuk kasus ini kita asumsikan adalah 4
Maka, untuk setiap client (1 client dibuatkan 1 rule queue), limit-at nya adalah 2000 / 10 = 200kbps, dan max-limit nya adalah 2000 / 4 = 512 kbps.
Jangan lupa untuk menambahkan parent dengan max-limit sebesar 2000kbps (tidak perlu limit-at), dan memasukkan semua queue client di bawah parent queue. Jika untuk terminal tertentu membutuhkan priority lebih besar, maka kita bisa menggunakan priority yang berbeda-beda, tergantung dengan urutan prioritasnya.

6 comments:

  1. Terimakasih banyak mas bro..
    Nice info..

    ReplyDelete
    Replies
    1. Gunjam Blog'S: Setting Htb Mikrotik Untuk Bandwidth Management >>>>> Download Now

      >>>>> Download Full

      Gunjam Blog'S: Setting Htb Mikrotik Untuk Bandwidth Management >>>>> Download LINK

      >>>>> Download Now

      Gunjam Blog'S: Setting Htb Mikrotik Untuk Bandwidth Management >>>>> Download Full

      >>>>> Download LINK PF

      Delete
  2. Nice info, memang secara harfiah htb lebih baik dari pcq kalau diterapkan buat jaringan lokal

    ReplyDelete
  3. emang klo pake pcq user bandel pake idm alhasil disedot semua bandwithnya
    ane pake htb aman2x saja

    ReplyDelete
  4. Setingnya bisa di winbox aja atau harus make script?

    ReplyDelete
  5. Gunjam Blog'S: Setting Htb Mikrotik Untuk Bandwidth Management >>>>> Download Now

    >>>>> Download Full

    Gunjam Blog'S: Setting Htb Mikrotik Untuk Bandwidth Management >>>>> Download LINK

    >>>>> Download Now

    Gunjam Blog'S: Setting Htb Mikrotik Untuk Bandwidth Management >>>>> Download Full

    >>>>> Download LINK

    ReplyDelete