advert

BANDWIDTH LIMITER dengan HTB TOOLS FOR LINUX


Kita   mungkin   sudah   banyak   mengenal   banyak   cara   untuk   melakukan   shaper   htb  spt menggunakan  tc   sendiri  atau  bantuan  scripts  htb.init,   cbq.init,  mastershaper,  dan  banyak  lagi utility untuk melakukan  pengaturan bandwidth. tapi  kali ini  saya  coba  bahas  salah satu  utility untuk mempermudah kita dalam pengaturan bandwidth yaitu htb-tools [http://htb-tools.arny.ro]. menurut saya tool ini sangat sederhana terutama dalam hal konfigurasinya dan cukup efektif.



Instalasi HTB-Tools & bahan-bahan yang diperlukan :


Htb-tools akan di install didalam gateway selain untuk routing juga untuk limiter, Anda bisa juga menggunakan bandwidth manager tersendiri yang di bridging diantara gateway dan isp, tapi dalam hal ini saya tidak bahas dlm bagian ini.
* OS Linux (pastinya :D), kernel yg mendukung QOS seharusnya distro-distro sekarang yg memakai kernel >= 2.6 sudah mendukung module tsb. dalam hal ini sistem yang saya gunakan adalah debian


darkstar:/boot# cat /etc/debian_version 4.0


darkstar:/boot# uname -a

Linux darkstar 2.6.18-4-686 #1 SMP Mon Mar 26 17:17:36 UTC 2007 i686

GNU/Linux


lakukan pengecekan module


"darkstar:/boot# cat /boot/config-2.6.18-4-686 |grep SCH "

CONFIG_IOSCHED_NOOP=y

CONFIG_IOSCHED_AS=y

CONFIG_IOSCHED_DEADLINE=y

CONFIG_IOSCHED_CFQ=y

CONFIG_DEFAULT_IOSCHED="cfq"

CONFIG_SCHED_SMT=y

CONFIG_SCHED_MC=y

CONFIG_NET_SCHED=y

CONFIG_NET_SCH_CLK_JIFFIES=y

# CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set

# CONFIG_NET_SCH_CLK_CPU is not set

CONFIG_NET_SCH_CBQ=m

CONFIG_NET_SCH_HTB=m

CONFIG_NET_SCH_HFSC=m

CONFIG_NET_SCH_ATM=m

CONFIG_NET_SCH_PRIO=m

CONFIG_NET_SCH_RED=m

CONFIG_NET_SCH_SFQ=m

CONFIG_NET_SCH_TEQL=m

CONFIG_NET_SCH_TBF=m

CONFIG_NET_SCH_GRED=m

CONFIG_NET_SCH_DSMARK=m

CONFIG_NET_SCH_NETEM=m

CONFIG_NET_SCH_INGRESS=m

CONFIG_CHR_DEV_SCH=m

CONFIG_SENSORS_FSCHER=m

# CONFIG_USB_EHCI_TT_NEWSCHED is not set



    * Paket htb-tools (http://htb-tools.arny.ro/download.php), versi yang saya gunakan htb_tools-0.2.6
    * Paket iproute2 >=  iproute2-2.6.10-ss050124 http://developer.osdl.rg/dev/iproute2/download
    * Paket flex kalau belum ada ("http://flex.sourceforge.net/")




Saya tidak akan membahas cara-cara instalasi paket yg diperlukan oleh htb-tools, silahkan baca manual/referensi dari masing-masing distro yg digunakan



Instalasi:

download htb-tools di http://htb-tools.arny.ro/download.php), versi yang saya gunakan

htb_tools-0.2.6, taruh di /tmp


darkstar:/tmp# cd /tmp/

darkstar:/tmp# cd /tmp/

darkstar:/tmp# tar -xvzf htb_tools-0.2.6.tar.gz

darkstar:/tmp# make

darkstar:/tmp# make install



konfigurasi


Sebelum melakukan konfigurasi lebih lanjut, sebaiknya ada beberapa hal yang perlu kita ketahui mengenai format konfigurasi htb-tools, sbb:

- format konfigurasi htb-tools mirip seperti format konfigurasi bind

- bandwidth masing-masing user di bagi menjadi class - class

- masing-masing class tidak dapat membagi/meminjam bandwidth dari kelas lain

- anggota dari sebuah class (client) dapat saling berbagi bandwidth sesuai dengan yang telah di definisikan sebelumnya

- sebuah class bisa terdiri dari 1 atau lebih client

- transfer rate dalam kbit

- baris yang memiliki # di karakter pertama suatu baris akan diabaikan / dianggap komentar

- field src dan dst hanya dapat didefinisikan di dalam client BUKAN di class



sntax class


- bandwidth 192 : minimum bandwidth yang di guarantee dari suatu class; merepresentasikan jumlah toal bandwidth yang di guarantee untuk client dari suatu class


- limit 256 : maksimum transfer rate dari suatu class


- burst 2 : maksimum jumlah kbits yang di kirim sekali waktu oleh suatu class


Note: jika di set dengan nilai yang tidak benar, limit mungkin t idak akan berkerja dengan benar.

contoh: untuk limit 10000kbit maka gunakan burst 12kbit


- burst 0 : HANYA di HTB-tools 0.3.0 - jika di set 0 maka htb tools akan menghitung jumlah burst nya.


- priority 1 : priority class (priority 0 - 7) secara ascending (dari kecil ke besar). prioritas paling kecil akan di prioritaskan


- que sfq : menspesifikasikan qdisc (queue discipline) untuk class, jika tidak di spesifikasikan

defaultnya adalah pfifo limit 5 (atau esfq) (http://fatooh.org/esfq-2.6/)


Untuk menerapkan htb-tools saya coba membuat sebuah contoh konfigurasi sederhana dengan 3

buah client dan 1 router, dan andaikan kita mempunyai bandwidth 256kbps (download dan

upload) dari ISP akan dibagikan ke 3 client, berikut skemanya







Router

eth1 (local/internal interface) : 192.168.1.1/32

eth0 (public/external interface) : 124.xxx.xxx.xxx/32


pc1: 192.168.1.2/32

pc2: 192.168.1.3/32

pc3: 192.168.1.4/32



kita menginginkan pc1 dialokasikan download dan upload (128kbps), pc2 dan pc3 dialokasikan (64kbps) dan jika salah satu client tidak menggunakan bandwidth maka client lain dapat meminjam dari client tsb.


darkstar:/tmp# cd /etc/htb


konfigurasi untuk download (dalam kasus ini kita limit di interface internal eth0)


darkstar:/etc/htb# vi eth0-qos.cfg




# DOWNLOAD

class LAN_1 {

 bandwidth 256;# garansi bandwidth yg dialokasikan untuk LAN

 limit 256; # maksimal bandwidth yang bisa dicapai untuk LAN

 burst 2;

 priority 1;

 que sfq;

 client pc1 {

     bandwidth 128;# garansi bandwidth yang di alokasikan untuk pc1

     limit 192;# bandwidth maksimal yg bisa di capai untuk pc1

     burst 2;

     priority 1;

     dst {

         192.168.1.2/32;

     };

 };

 client pc2 {

     bandwidth 64;

     limit 96;

     burst 2;

     priority 1;

     dst {

         192.168.1.2/32;

     };

 };

 client pc3 {

     bandwidth 64;

     limit 96;

     burst 2;

     priority 1;

     dst {

         192.168.1.2/32;

     };

 };

};





Konfigurasi upload


darkstar:/etc/htb# vi eth1-qos.cfg

# UPLOAD

class LAN_1 {

 bandwidth 256;

 limit 256;

 burst 2;

 priority 1;

 que sfq;

 client pc1 {

     bandwidth 128;

     limit 192;

     burst 2;

     priority 1;

     src {

         192.168.1.2/32;

     };

 };

 client pc2 {

     bandwidth 64;

     limit 96;

     burst 2;

     priority 1;

     src {

         192.168.1.2/32;

     };

 };

 client pc3 {

     bandwidth 64;

     limit 96;

     burst 2;

     priority 1;

     src {

         192.168.1.2/32;

     };

 };

};



Test config dan jalankan shapper


darkstar:/etc/htb# htb eth0 start


Applying traffic rules for device eth0

Checking the config file....OK

Checking kernel support for HTB: present.

Delete previous root qdisc

Add root qdisc

Add root class


Add default class

"rate" is required.

RTNETLINK answers: Invalid argument


Add class LAN_1, que sfq

Add client pc3


darkstar:/etc/htb# htb eth1 start


Applying traffic rules for device eth1

Checking the config file....OK

Checking kernel support for HTB: present.

Delete previous root qdisc

Add root qdisc

Add root class

Add default class

"rate" is required.

RTNETLINK answers: Invalid argument



Add class LAN_1, que sfq

Add client pc3



Untuk melihat/monitoring status htb jalankan :


darkstar:/etc/htb# htb eth0 stats

darkstar:/etc/htb# htb eth1 stats



lakukan percobaan download/upload dari pc1, pc2 dan pc3.


htb-tools bisa menjadi solusi murah untuk memanage bandwidth bagi sebuah organisasi,

perusahaan, kantor dll.



sebenarnya di versi htb-tools 0.3.0 sudah disediakan tools untuk konfigurasi htb-tool melalui

web dan monitoringnya jg, silahkan di coba.





Komunitas eLearning IlmuKomputer.Com



3 comments:

  1. Arttikel yang menarik mas, anda sudah aku follow, follow balik yah

    ReplyDelete
    Replies
    1. Syukur alhamdulillah saya ucapkan kepada ALLAH karna atas kehendaknya melalui AKI DARMO saya sekaran sudah bisa buka toko sendiri dan bahkan saya berencana ingin membangun hotel dan itu semua berkat bantuan AKI DARMO,saya tidak pernah menyanka kalau saya sudah bisa sesukses ini,atas bantuan AKI DARMO yang telah memberikan nomor selama 3x putaran dan alhamdulillah itu semuanya tembus bahkan beliau juga membantu saya dengan dana ghaib dan itu juga benar benar terbukti, AKI DARMO juga menawarkan minyak penarik kepada saya dan katanya minyak ini bisa digunakan untuk berbagai jenis keperluan dan baru kali ini saya temukan paranormal yang bisa dipercaya,,bagi teman teman yang ingin dibantu untuk dikasi nomor yang benar benar terbukti tembus atau dana ghaib dan kepengen ingin membeli minyak penglaris jualang silahkan hubungi AKI DARMO di 082-310-142-255 ini benar benar terbukti nyata karna saya sendiri yang sudah membuktikannya –ATAU KTIK ALAMAT BLOG AKI -http://pendidikan-merangin.blogspot.co.id

      Delete
  2. pusing bang tri susah belajarnya pecah kepala ku kalau pelajari semuannya.........
    lebih baikk pilih salah satu aja lah
    follow balik bang tri

    ReplyDelete