Sehubungan dengan banyaknya pertanyaan mengenai cara membatasi
download aktifity, berikut ada trik lain selain “delaypool rasa
mikrotik”.
Adapun trik ini adalah dengan memanfaatkan fasilitas “connection bytes” pada mangle.
Mengenai fungsi connection bytes kalo tidak salah adalah : mendeteksi
jumlah bytes yang telah tertransfer dalam satu koneksi antar dua pihak.
Sebagai contoh :
ip 192.168.10.12 melakukan koneksi ke 202.1.2.xx. Nah selama koneksi ini
terjadi, connection bytes akan mencatat trafic bandwitdh yang terjadi
dalam koneksi ini. dari 0 byte sampai tak terhingga dan penghitungan
akan dihentikan setelah koneksi terputus. Dan untuk connection bytes ini
akan mumpuni jika dilakukan pada queue tree.
Sebagai ilustrasi, saya akan membatasi client dengan ip 192.168.10.12.
Jika melakukan koneksi pada satu web dengan jumlah bytes masih antara
0-128 KB, maka koneksi ini diberi prioritas 1, dan diberi jatah bandwith
128kbps. namun setelah bytes lebih dari 128KB pada koneksi itu, maka
priority akan diturunkan menjadi prio 8 dan bandwith akan dicekek ke
32kbps
Mangle :
Pertama lakukan mark connection pada setiap aktifitas LAN ke luar
Quote:
chain=postrouting out-interface=ether1
dst-address=192.168.10.0/24 protocol=tcp src-port=80
action=markconnection new-connection-mark=http_conn passthrough=yes
Selanjutnya menangkap bytes yang tertransfer dari suatu web ke ip
192.168.10.12. dimana pada mangle pertama mendeteksi hanya pada transfer
antara 0-128KB. jika lebih dari itu maka akan ditangani oleh mangle
kedua.
Quote:
chain=postrouting out-interface=ether1 dst-address=192.168.10.12
connection-mark=http_conn connectionbytes= 0-131072 action=mark-packet
new-packet-mark=client12_browsing passthrough=no chain=postrouting
out-interface=ether1 dst-address=192.168.10.12 connection-mark=http_conn
connectionbytes= 131073-4294967295 action=mark-packet
new-packet-mark=client12_download passthrough=no
Selesai dimangle sekarang kita lakukan shaping pada kedua mangle
tersebut dengan queue tree. Pada queue tree ini kita memanfaatkan queue
type pcq, dan untuk byte antara 0-128KB kita beri rate 128kbps,
sementara jika lebih dari 128KB maka akan diberi rate 32kbps.
queue type :
Quote:
name=”browsing” kind=pcq pcq-rate=128000 pcq-limit=50 pcq-classifier=dst-address pcq-total-limit=2000
name=”download” kind=pcq pcq-rate=32000 pcq-limit=50 pcq-classifier=dst-address pcq-total-limit=2000
Selanjutnya masuk ke queue tree:
queue tree :
Pertama bikin parent queue
Quote:
name=”choi” parent=ether1 packet-mark=”" limit-at=1024000
queue=default priority=3 max-limit=1024000 burst-limit=0
burst-threshold=0 burst-time=0s
Selanjutnya bikin child queue khusus untuk ip 192.168.10.12 tersebut dimangle diatas
Quote:
name=”client12_browsing” parent=choi packet-mark=”client12_browsing” limit-at=0 queue=browsing
priority=1 max-limit=0 burst-limit=0 burst-threshold=0
name=”client12_download” parent=choi packet-mark=”client12_download” limit-at=0 queue=download
priority=8 max-limit=0 burst-limit=0 burst-threshold=0
Quote:
chain=postrouting out-interface=ether1 dst-address=192.168.10.0/24 protocol=tcp src-port=80 action=markconnection new-connection-mark=http_conn passthrough=yes
Saya coba modifikasi sedikit sehingga arah setingannya lebih ‘global’
tidak hanya berdasarkan ip client, menggunakan webproxy dan sejauh ini
berjalan dengan baik. (menggunakan list nice, sehingga aktifitas
browsing/download IIX tidak dibatasi). Saya juga menggunakan prerouting
pada manglenya.
di mangle
Code:
chain=prerouting protocol=tcp dst-port=80 dst-address-list=!nice action=markconnection
new-connection-mark=http_conn passthrough=yes
chain=prerouting connection-mark=http_conn connection-bytes=0-131072 action=markpacket new-packet-mark=browsing passthrough=no
chain=output connection-mark=http_conn connection-bytes=0-131072 action=mark-packet new-packet-mark=browsing passthrough=no
chain=prerouting connection-mark=http_conn connection-bytes=131073-4294967295
action=mark-packet new-packet-mark=download passthrough=no
chain=output connection-mark=http_conn connection-bytes=131073-4294967295
action=mark-packet new-packet-mark=download passthrough=no
pada queue type
Code:
name=”browsing” kind=pcq pcq-rate=512000 pcq-limit=50 pcq-classifier=dst-address
pcq-total-limit=2000
name=”download” kind=pcq pcq-rate=32000 pcq-limit=50 pcq-classifier=dst-address pcqtotal-
limit=2000
pada queue tree
Code:
name=”clovanzo” parent=LAN packet-mark=”" limit-at=10000000 queue=default priority=3
max-limit=10000000 burst-limit=0 burst-threshold=0 burst-time=0s
name=”client_browsing” parent=clovanzo packet-mark=browsing limit-at=0
queue=browsing priority=1 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s
name=”client_download” parent=clovanzo packet-mark=download limit-at=0
queue=download priority=8 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s
Sumber: http://tutorialmikrotik.com/detect-dan-shapping-download-connection-byte.php
Detect dan shapping download connection byte
Posted by Full Tutorial For You My Friends on Wednesday, September 25, 2013Labels: mikrotik
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment