Sumber: dadhee.blogspot.com
Pada installasi squid di artikel sebelumnya saya membuat satu blok script dengan nama Parameter Delaypool pada file /etc/squid.conf, berikut ini cuplikannya:
#--------------------------------------------------------------------------
# Parameter Delaypool
#--------------------------------------------------------------------------
acl dadhee src 192.168.0.111/255.255.255.255 # Access Control List dengan nama dadhee
acl server src 192.168.0.254/255.255.255.255 # acl dengan nama server
acl umum src 192.168.0.0/255.255.255.0
acl fenti src 192.168.0.11
acl TIME time SMTWHFA 08:00-17:00 # acl dengan nama TIME [nama_hari] [waktu_akses]
acl download url_regex -i ftp \.exe$ \.mp3$ \.mp4$ \.tar.gz$ \.gz$ \.tar.bz2$ \.rpm$ \.zip$ \.rar$
acl download url_regex -i ftp \.mp3$ \.mp4$ \.tar.gz$ \.gz$ \.tar.bz2$ \.rpm$ \.zip$ \.rar$
acl download url_regex -i \.avi$ \.mpg$ \.mpeg$ \.rm$ \.iso$ \.wav$ \.mov$ \.dat$ \.mpe$ \.mid$
acl download url_regex -i \.midi$ \.rmi$ \.wma$ \.wmv$ \.ogg$ \.ogm$ \.m1v$ \.mp2$ \.mpa$ \.wax$
acl download url_regex -i \.m3u$ \.asx$ \.wpl$ \.wmx$ \.dvr-ms$ \.snd$ \.au$ \.aif$ \.asf$ \.m2v$
acl download url_regex -i \.m2p$ \.ts$ \.tp$ \.trp$ \.div$ \.divx$ \.mod$ \.vob$ \.aob$ \.dts$
acl download url_regex -i \.ac3$ \.cda$ \.vro$ \.deb$
delay_pools 4
delay_class 1 1
delay_parameters 1 -1/-1
delay_access 1 allow dadhee
delay_access 1 allow server
delay_access 1 deny all
# bandwidth 8 kbytes/sec, bila file yang diakses melebihi 64Kbte
delay_class 2 2
delay_parameters 2 8000/8000 1000/64000
delay_access 2 allow umum
delay_access 2 allow download TIME
delay_access 2 deny all
# bandwidth unlimited
delay_class 3 1
delay_parameters 3 -1/-1
delay_access 3 allow umum
delay_access 3 allow download !TIME
delay_access 3 deny all
# bandwidth 4 kbytes/sec, bila file yang diakses melebihi 32 Kbyte
delay_class 3 1
delay_parameters 3 4000/32000
delay_access 3 allow fenti
delay_access 3 allow download TIME
delay_access 3 deny all
Penjelasan:
delay_pools [jumlah delay_pools]
Adalah pen-deklarasian berapa delay_pools yang akan kita buat.
delay_class
Adalah pen-deklarasian mengenai class pembagian bandwidth dari setiap pool. Dengan syarat 1 pool hanya boleh memiliki 1 class.
Berikut adalah pembagian class bagaimana cara membagi bandwidth:
Class 1:
Bandwidth yang tersedia akan diberikan sama rata kepada setiap user squid.
Contoh: apabila total bandwidth 256 kbps, maka akan dipakai bersama untuk keperluan browsing.
Class 2:
Bandwidh yang tersedia akan dibatasi untuk keperluan download dan sisanya digunakan untuk keperluan browsing secara bersama oleh user-user squid.
Contoh: apabila total bandwidth 256 kbps, Dipakai 64 kbps untuk keperluan download dan sisanya 192 kbps untuk keperluan browsing.
Class 3:
Bandwidth yang tersedia akan dibatasi menurut jumlah network yang terkoneksi. Dan tiap-tiap user squid dalam wilayah network tersebut akan menerima sama rata sesuai dengan total bandwidth per network.
Contoh: Misal total bandwidth 256 kbps, 64 kbps dipakai untuk browsing dan sisanya dipakai untuk keperluan lain. Dalam jaringan terbagi 3 network, A(192.168.1.0/24), B(192.168.2.0/24) dan C(192.168.3.0/24). Misal oleh admin jatah tiap-tiap network tersebut 64 kbps. Maka,
User-user yang online pada net A akan mendapat bandwidth sama besar dari total 64 kbps.
User-user yang online pada net B akan mendapat bandwidth sama besar dari total 64 kbps.
User-user yang online pada net C akan mendapat bandwidth sama besar dari total 64 kbps.
misal:
delay_class 1 2 # pool 1 menggunakan type class 2
delay_class 2 3 # pool 2 menggunakan type class 3
delay_access [nama_acl]
Memberikan batasan siapa saja yang diperbolehkan menggunakan delay pools ini dengan memanggil nama bagian acl (Access Control List). Dengan catatan setelah menentukan batasan jangan lupa akhiri dengan 'deny all'.
Contoh:
delay_access 1 allow dadhee
delay_access 1 deny all
delay_access 2 allow admin
delay_access 2 deny all
delay_parameters
Ini adalah rule terpenting dari delay_pools, mempunyai format yang disesuaikan dengan class yang dipakai. Di setiap tipe yang dipakai hanya ada satu aturan main yaitu restore/max.
restore adalah indikator maksimum kecepatan data yang dapat dilewatkan bila harga max sudah terlampaui, dalam satuan bytes/second.
max adalah besarnya file yang dapat dilewatkan tanpa melewati proses delay, dalam satuan bytes.
Misalkan:
Class 1:
delay_parameter [pool individual]
Contoh: delay_parameters 1 1000/128000
Berarti semua network akan mendapatkan bandwidth yang sama di pool nomor 1. Sebesar 1 kbytes/second atau setara dengan 8 kbps dengan burstable (maks bandwidth yang dapat diakses) sebesar 128 kb.
Class 2:
Contoh: delay_parameters 1 64000/64000 1000/128000
Berarti squid akan memakai bandwidth maksimum (64000*8) sama dengan 512 kbps dari semua bandwidth. Apabila terdapat network yang berbeda, maka total yang dihabiskan tetap 512 kbps dan tiap user akan mendapat bandwidth maksimum 1 kbytes.second (8 kbps), dengan burstable 64 kb.
Class 3:
Contoh: delay_parameters 1 32000/32000 8000/8000 1000/128000
Berarti squid akan memakai bandwidth maksimum (32000*8) sama dengan 256 kbits dari semua bandwidth. Apabila terdapat lebih dari satu network, maka setiap network akan dipaksa maksimum (8000*8) sama dengan 64 kbps dan tiap user pada satu network akan mendapat bandwidth maksimum 1 kbytes/sec (8 kbps), dengan burstable 64 kb.
CATATAN:
1 byte = 8 bit.
Waktu akses:
Penjelasan pada baris:
acl TIME time SMTWHFA 08:00-17:00
Adalah bentuk acl pewaktuan yang dimana SMTWHFA berarti:
S=Sunday, M=Monday, T=Tuesday, dan seterusnya
Bentuk baris acl TIME time SMTWHFA 08:00-17:00 harus diikuti dengan:
delay_access [delay_pools] allow [nama_acl_download] TIME untuk memperbolehkan menggunakan fasilitas download berlaku selama 7 hari dan dengan batasan waktu dari jam 08:00 sampai 17:00. Atau delay_access [delay_pools] deny [nama_acl_download] TIME untuk menolak menggunakan fasilitas download pada waktu yang sudah ditentukan.
No comments:
Post a Comment
Pengunjung yang terhormat, Silakan tinggalkan jejak Anda