C. Persiapan Software dan Hardware - Contoh penerapan management bandwidth

Squid adalah sebuah daemon yang digunakan sebagai proxy server dan web cache. Squid
memiliki banyak jenis penggunaan, mulai dari mempercepat server web dengan melakukan
caching permintaan yang berulang-ulang, caching DNS, caching situs web, dan caching
pencarian komputer di dalam jaringan untuk sekelompok komputer yang menggunakan sumber
daya jaringan yang sama, hingga pada membantu keamanan dengan cara melakukan penyaringan
(filter) lalu lintas. Meskipun seringnya digunakan untuk protokol HTTP dan FTP, Squid juga
menawarkan dukungan terbatas untuk beberapa protokol lainnya termasuk Transport Layer
Security (TLS), Secure Socket Layer (SSL), Internet Gopher, dan HTTPS. Versi Squid 3.1
mencakup dukungan protokol IPv6 dan Internet Content Adaptation Protocol (ICAP).
Squid pada awalnya dikembangkan oleh Duane Wessels sebagai "Harvest object cache", yang
merupakan bagian dari proyek Harvest yang dikembangkan di University of Colorado at
Boulder. Pekerjaan selanjutnya dilakukan hingga selesai di University of California, San Diego
dan didanai melalui National Science Foundation. Squid kini hampir secara eksklusif
dikembangkan dengan cara usaha sukarela.
Squid umumnya didesain untuk berjalan di atas sistem operasi mirip UNIX, meski Squid juga
bisa berjalan di atas sistem operasi Windows. Karena dirilis di bawah lisensi GNU General
Public License, maka Squid merupakan perangkat
Bandwidth adalah besaran yang menunjukkan seberapa banyak data yang dapat dilewatkan
dalam koneksi melalui sebuah network. Istilah ini berasal dari bidang teknik listrik, di mana
bandwidth yang menunjukkan total jarak atau berkisar antara tertinggi dan terendah sinyal pada
saluran komunikasi (band).

Manajemen Bandwidth adalah pengalokasian yang tepat dari suatu bandwidth untuk
mendukung kebutuhan atau keperluan aplikasi atau suatu layanan jaringan. Pengalokasian
bandwidth yang tepat dapat menjadi salah satu metode dalam memberikan jaminan kualitas suatu
layanan jaringan.

B. Latar Belakang
Kebutuhan akan akses Internet dewasa ini sangatlah penting. Baik untuk mencari informasi,
artikel, pengetahuan terbaru atau bahkan hanya untuk chating. Pembagian bandwidth pada setiap
network atau host adalah satu bagian yang penting untuk dilakukan bagi penyedia layanan
internet ataupun administrator jaringan pada sebuah perushaan. Kenapa pembagian bandwidth
begitu penting ?, karena tidak semua network dalam sebuah jaringan memerlukan bandwidth
yang besar dalam melakukan aktivitasnya. Dalam pembagian bandwidth, kita harus tahu mana
network yang memerlukan bandwidth yang besar dan mana network yang memerlukan
bandwidth yang kecil. Lalu bagaiman cara melakukan pembagian bandwidth dengan cara yang
mudah ?. Salah satu solusinya adalah menggunakan salah satu aplikasi yang ada di sistem
operasi linux, yaitu Squid.

C. Persiapan Software dan Hardware












Sumber internet melalui PPPOE
Komputer Server Debian sebagai Router
Komputer Server Proxmox
VPS / VM yang telah terinstall dengan debian server pada proxmoxnya
1 Switch
1 Mikrotik RB 750
Access Point
Kabel penghubung Straight dan Crossover seperlunya
Laptop (digunakan sebagai Client)

D. Maksud dan Tujuan

Kegiatan ini bermaksud agar kita dapat melakukan konfigurasi pengaturan pembagian
bandwith pada tiap-tiap network dengan menggunakan salah satu aplikasi pada linux, yaitu
Squid. Dengan menggunakan aplikasi ini kita dapat mengelola jaringan kita dengan baik, karena
kita dapat memprioritaskan mana network yang memerlukan bandwidth lebih dan mana network
yang memerlukan bandwidth kecil.

E. Tahapan Pelaksanaan Kegiatan
1. Untuk topologi dan pembagian bandwidthnya, pada kali ini saya samakan dengan postingan
yang dulu tentang limitasi menggunakan wonder shaper. Gambaran topologinya seperti dibawah
ini.

2. Sedangkan konfigurasi-konfigurasi yang saya lakukan adalah sebagai berikut :

Pada Komputer Debian Router
 PPPOE Client : agar Server mendapatkan koneksi internet dari PPPOE Server
 VLAN : agar dapat membuat beberapa jalur virtual pada sebuah enthernet, sehingga kita
dapat membuat network yang lebih banyak.
 Proxy Server (dengan Squid) : agar kita dapat melakukan pemblokiran terhadap situssitus yang dilarang maupun file yang di download oleh client.
 NAT : agar koneksi dari internet dapat diteruskan ke client-client yang terhubung dengan
debian router.

 DHCP Server : Agar bisa memberikan IP DHCP ke network Public Hotspot
 Atur IP interface eth0 secara static (eth0 merupakan interface yang digunakan untuk
menyediakan DHCP server ke Hotspot).
Pada Server Proxmox :
 Atur ip secara Static satu jaringan dengan Debian Router
 Buat VM dan atur Vlan Tagnya sesuai dengan Vlan ID pada topologi, VM ini yang
nantinya kita gunakan sebagai VPS
Pada VPS :
 Atur IPnya satu jaringan / satu subnet dengan interface VLan yang telah di buat pada
Debian Router (interface VLannya sesuai dengan VLAN ID yang tersetting pada
pembuatan VM)
 Atur Gatewaynya dengan ip interface VLAN pada debian router
 Atur DNSnya pada /etc/resolv.conf
Pada Switch :
 Hubungkan ethernet-ethernet ke port-port di switch sesuai dengan topologi.
Pada Mikrotik :
 Buat interface Bridge, dan lakukan bridge pada semua port yang ada di mikrotik sehingga
dapat seolah-olah router Mikrotik kita menjadi Switch
 Buat interface VLAN pada setiap port yang mengarah ke client (Port eth2, eth3, eth4,
eth5) agar dapat meneruskan VLAN yang telah di buat pada server.

Pada Access point :
 Atur SSID untuk Access pointnya.
 Atur Frequencynya agar tidak bertabrakan dengan Wifi lain yang berada di sekitar kita.

 Hubungkan Acces Point dengan Switch.
 Jika perlu, anda juga dapat mengatur password untuk Wifi anda.
Pada Komputer Admin, Staff, HRD, dan Manager :
 Lakukan instalasi VLAN "apt-get install vlan"
 Buatlah interface VLAN dengan VLAN ID sesuai dengan VLAN ID yang di khususkan
untuk komputer tersebut / sesuai dengan topologi diatas.
 Atur IP pada interface VLAN satu jaringan dengan interface VLAN pada Debian Router
yang dikhususkan bagi jaringan tersebut.
 Atur Gatewaynya
 Atur DNSnya
3. Selanjutnya kita buat terlebih dahulu perencanaan pemberian bandwidth pada masing-masing
jaringan, seperti contoh di bawah ini.

5. Pertama kita akses terlebih dahulu server yang berfungsi sebagai router kita, dengan
melakukan konfigurasi langsung dengan server atau mengaksesnya dengan SSH melalui perintah
"ssh user@ip_server".


4. Setelah masuk ke debian router pastikan anda sudah melakukan instalasi Squid. Jika anda
belum tahu bagaimana instalasi dan konfigurasi pada squid, anda bisa membaca postingan saya
yang dulu di sini .

5. Untuk melakukan konfigurasi pembagian / limitasi bandwidth dengan menggunakan Squid,
kita harus mengedit file konfigurasi squid dengan mengetikkan perintah
# nano /etc/squid3/squid.conf

6. Pada file konfigurasi Squid, carilah kalimat "ACL CONNECT" dengan menekan CTRL + W
kemudian ketikkan kalimat tersebut dan tekan enter.

7. Selanjutnya kita akan buat ACL untuk masing-masing network pada topologi di atas atau lebih

tepatnya adalah mendefinisikan subnet yang akan di manage bandwidthnya ke Squid. untuk
daftar subnet dari topologi di atas adalah sebagai berikut :














Bagian VPS1 :
192.168.103.0/24
Bagian VPS2 :
192.168.104.0/24
Bagian VPS3 :
192.168.105.0/24
Bagian VPS4 :
192.168.106.0/24
Bagian VPS5 :
192.168.107.0/24
Bagian VPS6 :

192.168.108.0/24
Bagian VPS7 :
192.168.109.0/24
Bagian Admin :
192.168.110.0/24
Bagian Staff :
192.168.111.0/24
Bagian HRD :
192.168.112.0/24
Bagian Manager :
192.168.113.0/24
Bagian Public Hotspot : 192.168.101.0/24

8. Lakukan konfigurasi ACL pada subnet-subnet tersebut seperti pada gambar di bawah ini :

9. Selanjutnya baru kita lakukan konfigurasi untuk pembagian bandwidth pada masing masing
subnet sesuai dengan kebijakan yang telah kita buat. Jika dalam wonder shaper kita
menggunakan satuan kilobit, maka pada Squid ini satuan yang akan kita gunakan adalah Byte.

Keterangan :

1. delay_pools
menyatakan berapa banyak bagian/pool yang akan dibuat
misal delay_pools 2 .
2. delay_class
menentukan klas/tipe pembagian bandwith dari setiap pool. 1 pool hanya boleh memiliki 1
clas, tidak lebih atau kurang. Bagian merupakan nomer urut dari jumlah pool didelay pool, jadi
ada 1 s/d n bagian dimana n merupakan angka jumlah pada delay_pools tipe merupakan tipe
class delay yang dipakai.
Secara umum tipe menyatakan bagaimana cara membagi bandwidth, ada 3 tipe:
a. Tipe class 1
semua bandwidth yang ada akan dibagi sama rata untuk semua user squid contoh ada
bandwidth 128 dan semua bandwith dipakai untuk browsing
b. Tipe class 2
membatasi pemakaian bandwith dari total bandwidth yang ada, dan bandwith yang
diperuntukan squid akan dibagi semua user dengan sama rata.

Contoh : ada bandwidth 128 dimana 28 kbit dipakai untuk email dan sisanya (128-28) 100 kbit
dipakai untuk browsing
c. Tipe class 3
membatasi pemakaian bandwidth dari total bandwidth yang ada, setiap network class C akan

mendapat bandwidth sama besar, setiap user pernetwork akan mendapat bandwidth yang sama
besar dari total bandwidth per network
Contoh: bandwidth tersedia 512 kb, untuk browsing disediakan bandwidth 384 kb, sisanya
untuk aktifitas lain. Di jaringan tersebut ada 3 departement dengan network yang berbeda misal
lab (192.168.1.0/24), manajer(192.168.2.0/24), sales(192.168.3.0/24). Nah misah oleh admin di
set bahwa pernetwork mendapat jatah 128 kb/s. Maka user² di sales akan mendapat pembagian
bandwidth sama besar dari total 128 kb/s. Maka user² di lab akan mendapat pembagian
bandwidth sama besar dari total 128 kb/s. Maka user² di manajer akan mendapat pembagian
bandwidth sama besar dari total 128 kb/s.
misal:
delay_class 1 2 # pool 1 memakai clas tipe 2
delay_class 2 3 # pool 2 memakai clas tipe 3
3. delay_access
Memberi batasan siapa saja yang boleh mempergunakan delay pools ini.
Penting untuk diingat sebaiknya setelah menetukan batasan jangan lupa di akhiri dengan deny
all.
misal:
delay_access 1 allow manajer
delay_access 1 deny all
delay_access 2 allow sales

delay_access 2 deny all
4. delay_parameters
Ini adalah bagian terpenting dari delay pools memberikan aturan main setiap delay pools yang
dibentuk. Delay parameter mempunyai format yang disesuaikan dengan tipe/class yang dipakai.
Tapi disetiap tipe yang dipakai ada 1 format baku yaitu restore/max.
class 1
delay_parameters
Contoh: delay_parameters 1 1000/64000
Berarti semua network akan mendapat bandwidth yang sama di pool no 1.
Sebesar 1 kbytes/sec (8 kbits/sec), dengan burstable file 64 kb.
class 2
delay_parameters
Contoh: delay_parameters 1 32000/32000 1000/64000
Berarti squid akan memakai bandwidth maksimum (32000*8) 256kbits dari semua bandwidth.

Bila terdapat lebih dari 1 network class C, maka total yang dihabiskan tetap 256 kbit/sec dan tiap
user akan mendapat bandwidth maksimum 1 kbytes/sec (8 kbits/sec), dengan burstable file 64
kb.
class 3
delay_parameters
Contoh: delay_parameters 1 32000/32000 8000/8000 1000/64000
Berarti squid akan memakai bandwidth maksimum (32000*8) 256kbits dari semua bandwidth.
Bila terdapat lebih dari 1 network class C, maka setiap network akan dipaksa maksimum sebesar
(8000*8) 64 kbits/sec dan tiap user pada satu network akan mendapat bandwidth maksimum 1
kbytes/sec (8 kbits/sec), dengan burstable file 64 kb.
10. Kemudian save pengaturan yang sudah anda lakukan dengan menekan CTRL + X, kemudian
ketikkan "y" dan tekan Enter.

11. Coba check pakah konfigurasi squid anda sudah benar atau belum, dengan mengetikkan
perintah "squid -z". jika hasilnya seperti dibawah ini, maka konfigurasi anda sudah benar.

12. Restartlah service dari squid3 anda dengan mengetikkan perintah "service squid3 restart "
agar konfigurasi yang telah kita lakukan dapat diterapkan.

13. Lakukan perbandingan speed download dari salah satu network sebelum diatur bandwidthnya
dengan setelah diatur bandwidthnya. Jika terdapat perubahan setelah di limit bandwidthnya dan
kecepatannya hampir sama dengan yang telah kita atur, berarti pengaturan limitasi bandwidth
anda telah berhasil.

Speed download sebelum di limit

Speed download setelah di limit

F. Referensi
+ https://lqman.wordpress.com/2008/06/25/bandwidth-management-menggunakan-squid/
+ https://bayuart.wordpress.com/2006/09/30/contoh-squid-delay-pool/
+ https://id.wikipedia.org/wiki/Squid
https://ivanzramadhanz.blogspot.co.id/2016/09/management-bandwith-padajaringan.html