Membedakan Traffic Download dan Upload

Contoh Kasus

Sering kita jumpai keadaan dimana ketika ada satu client yang melakukan download, terutama menggunakan IDM, maka client yang lain akan menjadi lambat. Client yang tidak mendapatkan bandiwdth sesuai tentu akan protes. Hal ini akan sangat berpengaruh ketika kita menjalankan bisnis warung internet. Apa kemudian kita memasang pengumuman larangan menggunakan Download Manager ?, saya rasa itu akan menjadi hal yang tidak begitu smart. Apalagi kita tahu bahwa browsing dan download biasanya menggunakan port yang sama, yaitu port 80. Jika kita menggunakan mikrotik, dengan simple qeuue sebenarnya masalah akan beres, namun ketika si pelaku download browsing, maka bandwidth yang di alokasikan untuk dia akan habis digunakan untuk download dan dia akan sedikit kesulitan untuk browsing. Benar begitu ?!.. Kemudian adakah cara yang menarik untuk mengatasi kasus seperti itu?. Dan ternyata mulai dari versi 3.30, mikrotik memiliki fitur Connection Rate

Connection Rate

Connection rate merupakan salah satu fungsi firewall yang memungkinkan untuk menangkap traffick berdasarkan kecepatan suatu koneksi. Setiap entri di table connection tracking, menginformasikan komunikasi dua arah. Dan setiap paket data yang terkait entry tertentu, nilai ukuran paket termasuk ip-header akan ditambahkan sebagai entry “connection-bytes”. Disini Connection Rate menghitung kecepatan koneksi berdasarkan perubahan pada “connection-bytes”. Connection Rate menghitung setiap detik dan tidak memiliki nilai rata-rata. Saat ini “connection-bytes” dan “connection-rate” hanya bekerja pada protokol TCP dan UDP.

Contoh Aplikasi (Prioritas Traffick Download vs Upload)

Dengan fitur connection-rate ini, kita bisa menentukan sebuah koneksi dengan kriteria tertentu untuk kemudian kita anggap sebagai traffick berat yang akan membebani bandwidth dalam contoh kasus ini kita anggap sebagi traffick Download. Kita asumsikan bahwa traffick browsing HTTP normal memiliki panjang koneksi kurang dari 500kB. Kemudian VOIP membutuhkan kecepatan koneksi kurang dari 200kbps. Dengan ini kita menentukan jika traffick memiliki koneksi pertama lebih dari 500kB dan masih membutuhkan speed diatas 200kbps, maka traffick ini akan kita anggap sebagai traffick Download atau traffick berat, terserah Anda ingin menyebutnya apa. P2P, FTP, HTTP Download biasanya akan membuat koneksi yang membutuhkan rate yang cepat dan waktu yang lama. Anda bisa menentukan “connection-bytes” dan “connection-rate” sesuai kebutuhan network Anda, Anda tidak harus membuatnya sama persis dengan rule di artikel ini. Kita akan membuat conoth implementasi di jaringan yang memiliki bandwidth 6mbps.

Quick Start Untuk Yang Sudah Tidak Sabar

ip firewall mangle
add chain=forward action=mark-connection connection-mark=!traffic_download \
    new-connection-mark=traffic_browsing
add chain=forward action=mark-connection connection-bytes=500000-0 \
    connection-mark=traffic_browsing connection-rate=200k-100M \
    new-connection-mark=traffic_download protocol=tcp
add chain=forward action=mark-connection connection-bytes=500000-0 \
    connection-mark=traffic_browsing connection-rate=200k-100M \
    new-connection-mark=traffic_download protocol=udp
add chain=forward action=mark-packet connection-mark=traffic_download \
    new-packet-mark=mark_packet_traffic_download passthrough=no
add chain=forward action=mark-packet connection-mark=traffic_browsing \
    new-packet-mark=mark_packet_traffic_browsing passthrough=no

/queue tree
add name=upload parent=public max-limit=6M
add name=other_upload parent=upload limit-at=4M max-limit=6M \
    packet-mark=mark_packet_traffic_browsing priority=1
add name=heavy_upload parent=upload limit-at=128K max-limit=512K \
    packet-mark=mark_packet_traffic_download priority=8
add name=download parent=local max-limit=6M
add name=other_download parent=download limit-at=4M max-limit=6M \
    packet-mark=mark_packet_traffic_browsing priority=1
add name=heavy_download parent=download limit-at=128K max-limit=512K \
    packet-mark=mark_packet_traffic_download priority=8

Note : Anda bisa copy-paste rule diatas di menu “New Terminal” jika Anda menggunakan winbox. tapi saran saya untuk anda yagn baru belajar jangan di copy melainkan di manual agar anda mengerti perintah dan maksudnya.

Penjelasan

Pertama kita akan membuat mangle untuk membagi koneksi menjadi 2 kategori, Browsing dan Download. Rencananya kita akan memberikan bandwidth yang terbatas bagi user yang melakukan download. Dan kita berikan bandwith maksimum untuk user yang hanya browsing.

Rule Pertama :

/ip firewall mangle
add chain=forward action=mark-connection connection-mark=!traffic_download \
    new-connection-mark=traffic_browsing


Rule ini akan menandai setiap koneksi yang bukan merupakan koneksi download, maka akan dianggap sebagaikoneksi browsing. Contoh pembuatan rule jika Anda menggunakan Winbox, masuk ke Menu IP –> Firewall –> Tab Mangle –> Klik Tombol + (plus) :

winbox-mangle

































Rule Yang Menandai Traffick Download (Protokol UDP maupun TCP):
/ip firewall mangle
add chain=forward action=mark-connection connection-bytes=500000-0 \
    connection-mark=traffic_browsing connection-rate=200k-100M \
    new-connection-mark=traffic_download protocol=tcp
add chain=forward action=mark-connection connection-bytes=500000-0 \
    connection-mark=traffic_browsing connection-rate=200k-100M \
    new-connection-mark=traffic_download protocol=udp

Rule diatas bisa diartikan, ketika ada sebuah koneksi baik TCP maupun UDP yang memiliki nilai connection-bytes lebih dari 500kB dan connection-rate lebih dari 200kbps, maka traffick tersebut akan dianggap traffick download. 
Contoh pembuatan rule jika Anda menggunakan Winbox, masuk ke Menu IP –> Firewall –> Tab Mangle –> Klik Tombol + (plus) :


winbox-mangle-mark-connection






















winbox-mangle-advanced

































winbox-mangle-mark-con-action






































Selanjutnya, Anda tinggal buat rule mark-connection traffick download untuk protokol UDP.
Stepnya sama seperti diatas, Anda tinggal ganti pada parameter protokol di tab general menjadi protokol UDP.

Mark Packet

/ip firewall mangle
add chain=forward action=mark-packet connection-mark=traffic_download \
    new-packet-mark=mark_packet_traffic_download passthrough=no
add chain=forward action=mark-packet connection-mark=traffic_browsing \
    new-packet-mark=mark_packet_traffic_browsing passthrough=no

Rule diatas merupakan mark-packet untuk mark-connection yang sudah kita buat sebelumnya.
Contoh pembuatan rule jika Anda menggunakan Winbox,
masuk ke Menu IP –> Firewall –> Tab Mangle –> Klik Tombol + (plus).

Pertama kita akan membuat rule packet -mark untuk menandai traffick Download.

winbox-mangle-mark-packet-down-general

































winbox-mangle-mark-packet-action

































Selanjutnya kita buat mark-packet untuk traffick browsing.

winbox-mangle-mark-packet-browsing

































Proses pembuatan mangle telah selesai. Hasil akhir mangle akan tampak seperti gambar berikut :

mangle-akhir























Hasil akhir pembuatan mangle.

pastikan sesuai dengan gambar diatas jika tidak cek kembali configurasi anda.

Queue Tree

Setelah proses pembuatan mangle selesai, sekarang kita tinggal membuat Queue untuk melakukan limitasi berdasarkan

paket yang sudah kita tandai. Disini saya menggunakan Queue Tree. Contoh command :

/queue tree
add name=upload parent=public max-limit=6M
add name=other_upload parent=upload limit-at=4M max-limit=6M \
    packet-mark=mark_packet_traffic_browsing priority=1
add name=heavy_upload parent=upload limit-at=128K max-limit=512K \
    packet-mark=mark_packet_traffic_download priority=8
add name=download parent=local max-limit=6M
add name=other_download parent=download limit-at=4M max-limit=6M \
    packet-mark=mark_packet_traffic_browsing priority=1
add name=heavy_download parent=download limit-at=128K max-limit=512K \
    packet-mark=mark_packet_traffic_download priority=8

Rule yang digunakan untuk membatasi bandwith untuk masing – masing tipe koneksi yang sudah kita kategorikan. Contoh setting jika Anda menggunakan winbox, klik gambar untuk mendapatkan resolusi yang lebih besar.

Queue Tree Parent

queue-tree-parent




















Queue Tree Download

queue-tree-download






















Queue Tree Upload
queue-tree-upload


















Setting telah selesai, saatnya melakukan test. Coba dengan melakukan download menggunakan IDM.
Hasil dari percobaan saya bisa Anda lihat di gambar berikut :

queue-download

























kalau dilihat dari mikrotik via winbox seperti gambar dibawah ini

queue-tree-winbox
























Mungkin ada yang bingung kenapa downloadnya dapat 66KBps padahal saya set di Queue max-limit nya 512kbps.
Yang perlu Anda perhatikan adalah “B” besar dan “b” kecil. “B” besar merupakan identitas dari Bytes,
sedangkan “b” kecil adalah bits. Perbandingan Bytes : Bits adalah 1:8 .
Di winbox, parameter yang digunakan adalah Bits. Jika saya isi dengan 512kbps berarti
traffick download yang bisa digunakan user adalah 512/8 jadi kurang lebih 64KBps.
Sama seperti yang tertera di speed IDM.
sumber dari sini dan sini

Leave a Reply