Mungkin temen-temen pernah ketemu sama user bandel yang selalu menyedot bandwidth internet tanpa peduli sekitarnya (yang lagi sama-sama ngenet dengan si user bandel), untuk mengatasi user bandel tersebut biasanya saya selalu menggunakan aplikasi TC (traffic Control) yang sudah terinstall default di Ubuntu Server 8.04 LTS, sebenernya ada beberapa cara untuk mengatur bandwidth tiap-tiap user, seperti penggunaan Proxy (Squid) yang dipadukan dengan delay_pools sebagai salah satunya, di TC bisa juga dipadukan dengan marking (penanda) iptables di rantai MANGLE, atau bisa juga langsung diarahkan pada alamat IP yang dipake si User “bandel” tersebut. Pada tulisan saya ini, saya simulasikan penggunaan TC dengan metode HTB untuk mengatur bandwidth suatu ruangan kecil yang terdiri dari 1 router dan 4 klien …more

tengkyu mas tutirnya. Mo nyoba
kalo udah 50 clinet gimana cara pengaturanya
kepala devisi 10 orang
sisanya yang 50 untuk kariyawan biasa. gmana caranya ya… kau binngung utuk membagi bwnya menggunakan htb tolls sedangkan bw yang ada sekitar 512 KBSP,
sebenernya kalo membagi bandwidth ada banyak cara, salah satunya adalah memakai HTB dengan konfigurasi yang saya tulis di atas, menurut saya sebaiknya anda pelajari dulu medan yang ada, kemudian tentukan policynya baru sesuaikan tool yang akan dipake dengan policy yang akan dipake, nha sekarang anda mau bikin yang seperti apa?
mas… maksud handle 40:prio protocol dan ip u32 itu apa mas??
mohon penjelasannya mas..
ip u32 digunakan untuk mencocokkan dengan IP yang akan dimanajemen bandwidthnya, kemudian kalo handle 40: prio digunakan untuk membuat child class dari aturan parent sebelumnya, yang nantinya child class itu digunakan untuk menampung filter2 yang akan dimanjemen bandwidthnya …
I’m frequently searching for new posts in the WWW about this subject. Thx!!
cara ngetestnya gimana?
bikin aja 2 koneksi peer 2 peer, satu client dan satunya server web/ftp, koneksi client dibatesin dari server web/ftp, terus client coba donlot file dari server, silakan dicoba dengan HTB atau tanpa HTB biar kerasa bedanya …
Gan, gimana klo setting bandwith itu dengan IP antara 192.168.0.3 s/d 192.168.0.10
mohon pencerahannya gan 🙂
/sbin/tc qdisc add dev eth1 parent 1:2 handle 20: prio
/sbin/tc filter add dev eth1 parent 1:0 prio 1 protocol ip u32 match ip dst 192.168.0.3 flowid 1:2
/sbin/tc filter add dev eth1 parent 1:0 prio 1 protocol ip u32 match ip dst 192.168.0.4 flowid 1:2
/sbin/tc filter add dev eth1 parent 1:0 prio 1 protocol ip u32 match ip dst 192.168.0.5 flowid 1:2
…
…
/sbin/tc filter add dev eth1 parent 1:0 prio 1 protocol ip u32 match ip dst 192.168.0.10 flowid 1:2
Terima kasih tutorialnya, sangat membantu sekali saya dalam hal pembatasan koneksi sebuah client ke server.
sama-sama, semoga membantu dan terima kasih sudah berkunjung …
Kalo pake ip/netmask bisa ga ya misalnya “match ip dst 192.168.1.0/24”?
Thanks
Son H
ga bisa sepengalaman saya mas … itu susahnya…
kok masih lolos ya bandwidthnya??
anda memakai sistem operasi apa? artikel di atas saya coba memakai Ubuntu Server 8.04LTS saat itu, dan untuk versi diatasnya belum pernah saya coba lagi …
Saya orang baru nih, dan saat mengenal tc saya terarahkan ke webhtb yang web base sementara untuk cli tc saya gelagapan, mohon sedikit advice nya.
Berikut adalah potong tc mas di atas, sedikit di beri urutan nomor supaya memudahkan saya pada pertanyaan di bawah :
1.a /sbin/tc qdisc add dev eth1 root handle 1:0 htb
1.b /sbin/tc class add dev eth1 parent 1:0 classid 1:1 htb rate 256Kbit ceil 256Kbit
2.a /sbin/tc class add dev eth1 parent 1:1 classid 1:2 htb rate 64Kbit ceil 256Kbit
2.b /sbin/tc class add dev eth1 parent 1:1 classid 1:3 htb rate 128Kbit ceil 256Kbit
3.a /sbin/tc qdisc add dev eth1 parent 1:2 handle 20: prio
3.b /sbin/tc filter add dev eth1 parent 1:0 prio 1 protocol ip u32 match ip dst 192.168.0.11 flowid 1:2
4.a /sbin/tc qdisc add dev eth1 parent 1:3 handle 30: prio
4.b /sbin/tc filter add dev eth1 parent 1:0 prio 1 protocol ip u32 match ip dst 192.168.0.12 flowid 1:3
PERTANYAAN
Pada point “1.a” adalah parent root dalam 1 interfaces yah (mungkin), parentnya ini bisa di bagi lagi gak? misal parent 1 = 256, parent 2 = 512
Pada point “1.b” di classid 1:1, maksudnya itu apakah identitas kelas apa gimana? berarti itu bisa lebih dari 1 classid dong dalam 1 parent root, misal classid 1:1, classid 1:2, dst atau pendekatan lain misal pada 1 interfaces downstream ada kelas IX, kelas IIX, dan kelas GAME?
Tolong di koreksi mas benar gak tangkapan saya akan artikel di atas sebagai berikut :
1.a rule penambahan di eth1 yg menghandle besaran trafic keseluruhan asli
1.b kelas id yang mengekor ke parent root 1:0 dengan antrian htb
2.a besaran traffic untuk classid 1:2 yang mengekor ke parent 1:1
2.b besaran traffic untuk classid 1:3 yang mengekor ke parent 1:1
3.a mencantumkan host id 11 pada network id 192.168.0 ke parent 1:2 pd point “2.a”
3.b mencantumkan host id 11 saat semua klien aktif mendapat besaran BW dari classid 1:2 di point “2.a” dan jika klien lainnya sedang idle (BW tidak terpakai) maka dapat mendapat supply dari parent 1:0 di point “1.b”
4.a sama dengan 3.a, beda sedikit.
4.b sama dengan 3.b, beda sesikit.
pada point 1.a benar parent root untuk mendeklarasikan interface yang di handle HTB, dari situ parentnya bisa dibagi di 1:1 dan 1:2 dst
misal
/sbin/tc class add dev eth1 parent 1:0 classid 1:1 htb rate 256Kbit ceil 256Kbit
/sbin/tc class add dev eth1 parent 1:0 classid 1:2 htb rate 512Kbit ceil 512Kbit
kalo saya memang langsung memberikan maksimal bandwidth yang bisa dipake di interface itu, yaitu 256Kbps tapi kalo anda punya bandwidth yang besar, saran saya berikan maksmal bandwidth lalu baru bagi lagi di child-childnya maksimal bandwidth yang bisa dipakai, nanti anda tinggal mengarahkan klien mau ikut bandwidth maksimal atau ikut bandwidth yang sudah dibagi …
kalo penamaan kelas seperti kelas IX, kelas IIX dan kelas GAME sepertinya tidak bisa, mungkin lebih baik dimasukkan sebagai komentar keterangan
untuk 3a dan 4a saya sampai sekarang kurang tau maksudnya, tapi untuk 3b dan 4b ada sedikit ralat seperti di bawah:
mencantumkan host id 11 saat semua klien aktif mendapat besaran BW dari classid 1:2 di point “2.a” dan jika klien lainnya sedang idle (BW tidak terpakai) maka dapat mendapat supply ceil nya sehingga maksimal bandwdth yang dipakai bisa mencapai 256 Kbps
Thanks respon cepatnya, kalah slogan Quick Respon milik Polantas kalau kayak gini..hehe.
Tanya lagi yah, masih seputar tc juga, untuk menage traffic uploadnya kurang lebih seperti pada sample konfigurasinya mas yah dan sedikit disesuaiin di destination di ganti source bukan mas? ama interfaces (kalau kernel tidak pacthing buat support IMQ)? karena saya liat-liat man pages nya di LARTC gak ada singgungan beda konfig up dan down.
Satu lagi yah mas, bisa sedikit kasih saya clue umum manage IIX ama IX nya, ini karena BW yang saya punya tidak berasio 1:1
Terima Kasih.
Revisi, maksud saya soal IX dan IIX adalah bandwidth ke lokal dan interlokal
“untuk menage traffic uploadnya kurang lebih seperti pada sample konfigurasinya mas yah dan sedikit disesuaiin di destination di ganti source bukan mas”, iya benar
“Satu lagi yah mas, bisa sedikit kasih saya clue umum manage IIX ama IX nya, ini karena BW yang saya punya tidak berasio 1:1” kalo HTB itu dipukul rata, kalo dibedain mas bisa coba pake squid dengan fitur delay pool, nanti dibedainnya di dst network IIX ato bukan … ato bisa dengan cara ini https://mahardianto.wordpress.com/2009/01/16/traffic-control-tc-with-iptables-marking/
Saya udah baca link nya soal tc dengan marking paket, bagus sekali. Ini mungkin sama yah dengan markingan squid zph oleh iptables ?
kalo HTB itu dipukul rata, kalo dibedain mas bisa coba pake squid dengan fitur delay pool, nanti dibedainnya di dst network IIX ato bukan
Maaf nih rada melebar, delay_pools sudah saya coba cuma hasil kesimpulan saya delay_pools squid gak mempan kalau ngelambatin web streaming (di custom juga udah dan gak nemu dengan apa yang mau, mungkin pengetahuan saya yang kurang), selain itu kerja server proxy saya kurang nge-hit karena resorce RAM yang kecil di tambah service yg jalan banyak spt apache, db, openvpn,routing LAN, dll.
TC saya sekarang ini yg sudah berjalan yaitu webhtb, traffic ke lokal cache proxy (squid zph), server indonesia atau ke server luar negri juga udah ke manage (tidak bocor), hanya saja webhtb yang saya pakai ini versi free nya dan kekurangannya gak bisa manage traffic upload nya (disclamir home page webhtb).
Makanya saya tertarik sekali make tc basis cli ini, cuma infonya belum saya pahami semua baik lisan or tulisan, jadi deh saya banyak tanya ke yang lebih pengalaman di tc default linux.
terima kasih