Monday, April 15, 2013

Memahami Queue Tree dan PCQ di Mikrotik

Queue Tree 
Queue Tree berfungsi untuk melimit bandwidth pada mikrotik yang mempunyai 2 koneksi internet karna  packet marknya lebih berfungsi daripada di Simple Queue
Digunakan untuk membatasi satu arah koneksi saja baik itu download maupun upload.
 Penjelasan beberapa argumen di Queue Tree :
Parent : berguna untuk menentukan apakah queue yang dipilih bertugas sebagai child queue
Ada beberapa pilihan default di parent queue tree yang biasanya digunakan untuk induk queue:
          - Global-in : Mewakili semua input interface pada umumnya. Maksudnya disini interface yang menerima input data/trafik sebelum difilter seperti trafik upload
          - Global-out : Mewakili semua output interface pada umumnya. Maksudnya disini interface yang mengeluarkan output data/trafik yang sudah difilter seperti trafik download
          - Global-total : Mewakili semua input dan output interface secara bersama, dengan kata lain merupakan penyatuan dari global-in dan global-out.                                  
          - <interface name>: ex: lan atau wan : Mewakili salah satu interface keluar. Maksudnya disini hanya trafik yang keluar dari interface ini yang akan diqueue.
Packet Mark : Digunakan untuk menandai paket yang sudah ditandai di /ip firewall mangle.
Priority ( 1 s/d 8) : Digunakan untuk memprioritaskan child queue dari child queue lainnya. Priority tidak bekerja pada induk queue. Child Queue yang mempunyai priority satu (1) akan mencapai limit-at lebih dulu dari pada child queue yang berpriority (2).
 Queue Type : Digunakan untuk memilih type queue yang bisa dibuat secara khusus dibagian queue types
 Limit At : Bandwidth minimal yang diperoleh oleh target/ip yang diqueue
Max Limit : Bandwidth maksimal yang bisa dicapai oleh target/ip yang diqueue.
Burst limit : Bandwidth maksimal yang bisa dicapai oleh target/ip yang diqueue ketika burst sedang aktif
Burst time : Periode waktu dalam detik ,dimana  data Rate rata2 dikalkulasikan.
Burst Threshold : Digunakan ketika data Rate dibawah nilai burst threshold maka burst diperbolehkan.Ketika data Rate sama dengan nilai burst threshold burst dilarang. Untuk mengoptimalkan burst nilai burst threshold harus diatas nilai Limit At dan dibawah nilai Max Limit.
Catatan penting :
Limit-at akan diproses terlebih dahulu sebelum prority diperhitungkan di child atau sub parent. Sehingga kalau limit-at pada child atau sub parent sudah terpenuhi maka akan diperhitungkan prioritynya , setelah priority diperhitungkan maka child atau sub parent yang memiliki priority tertinggi akan mencapai max-limitnya terlebih dahulu dari pada child yang memiliki priority terendah. Tapi limit-at bandwith pada child dgn priority rendah akan dijaga oleh mikrotik agar tidak dibawah limit-atnya.

contoh kasus : 
Parent = 3mbps , 
client1 max-limit=3mbps limit-at=500kbps priority=3, 
client2 max-limit=3mbps limit-at=1mbps priority=4. 
Client1 dan client2 mendownload file yg sama berbarengan , client1 akan mencapai max bandwith 2mbps karna prioritynya (3 ) lebih tinggi dari client2 ( 4 ) dan client2 menerima bandiwth 1mbps, kenapa client1 cuma mendapat bandiwth 2mbps karna adanya limit-at 1mbps pada client2 sehingga MT menjamin bandwith client2 tetap di 1mbps walaupun proritynya lebih rendah dari client1.

Source : http://wiki.mikrotik.com/wiki/Manual:HTB

PCQ ( Per Connection Queuing) 
: Digunakan untuk mengenali arah arus.  Misalnya jika Classifier yang digunakan adalah src-address pada Local interface, maka aliran pcq akan menjadi koneksi upload. Begitu juga dgn dst-address akan menjadi pcq download.

Penjelasan Beberapa Argumen di PCQ :

Fungsi Rate inilah yang berfungsi sama dengan pengaturan simple queue. Dengan memasukkan angka pada rate ini (default: 0) maka maksimal download yang akan didapatkan per IP akan dibatasi mis. 128k (kbps).



Limit berfungsi untuk membatasi jumlah koneksi paralel yang diperkenankan bagi tiap IP. artinya bila kita meletakkan nilai 50, maka cuma 50 koneksi simultan yang bisa didapat oleh 1 IP address ( baik itu source / destination ).

Total Limit adalah total keseluruhan koneksi paralel yang diperkenankan untuk seluruh ip addresss ( baik itu source ataupun destination ).

 Classifier ini yang paling penting dalam pcq, sebab dia mengelompokkan  jumlah koneksi untuk satu ip address ( source atau destination ) . Misalnya anda me-mark packet dari 192.168.1.2 ke 110.1.1.1:80, disini yang source adalah 192.168.1.2 dam 110.1.1.1 adalah destination-nya. Dan dalam koneksi itu ada 3 aliran sub-koneksi misal : 192.168.1.2:240 ->  110.1.1.1:80 , 192.168.1.2:241 -> 110.1.1.1:80 , 192.168.1.2 :242 -> 110.1.1.1:80. Jika anda memilih src. Address sebagai  Classifier-nya maka sub-koneksi tersebut akan dikelompokkan : 192.168.1.2 :  110.1.1.1:80
                                                                                          110.1.1.1:80
                                                                                          110.1.1.1:80

Jika anda memilih Dst. Address sebagai  Classifier-nya maka sub-koneksi tersebut akan dikelompokkan menjadi : 110.1.1.1 : 192.168.1.2:240
                                192.168.1.2:241
                                192.168.1.2:242
Dan Limit yang akan membatasi  jumlah koneksi untuk satu kelompok tsb. Misalnya dilimit  50 maka 1 kelompok itu batasnya cuma sampai 50 saja.


Contoh penerapan PCQ dan Queue Tree di Mikrotik

 /ip firewall address-list
add address=192.168.2.103 comment="" disabled=no list=Gateway

 Pertama kita tandai dulu koneksi dan packet download yang akan kita queue nantinya di /ip firewall mangle :
/ ip firewall mangle
add action=mark-connection chain=prerouting comment="MARK LOCAL-IN CONN" disabled=no dst-address-list=!Gateway in-interface=lan new-connection-mark=all.pre_conn passthrough=yes
add action=mark-packet chain=prerouting comment="" connection-mark=all.pre_conn disabled=no new-packet-mark=all.pre_pkt passthrough=no

add chain=forward out-interface=lan action=mark-connection \
    new-connection-mark=all.post_conn passthrough=yes comment="Mark Koneksi \
    dari Luar ke Local" disabled=no

add chain=forward dst-address=192.168.2.11 protocol=tcp \
    connection-mark=all.post_conn action=mark-packet new-packet-mark=kom09 \
    passthrough=no comment="Mark Packet kom09" disabled=no
add chain=forward dst-address=192.168.2.12 protocol=tcp \
    connection-mark=all.post_conn action=mark-packet new-packet-mark=kom10 \
    passthrough=no comment="Mark Packet kom10" disabled=no
add chain=forward dst-address=192.168.2.13 protocol=tcp \
    connection-mark=all.post_conn action=mark-packet new-packet-mark=kom11 \
    passthrough=no comment="Mark Packet kom11" disabled=no
add chain=forward dst-address=192.168.2.14 protocol=tcp \
    connection-mark=all.post_conn action=mark-packet new-packet-mark=kom08 \
    passthrough=no comment="Mark Packet kom08" disabled=no


Kemudian kita buat PCQ di Queue Types :
/queue type
add name="pcq_down" kind=pcq pcq-rate=0 pcq-limit=50 pcq-classifier=dst-address pcq-total-limit=2000
add name="pcq_up" kind=pcq pcq-rate=0 pcq-limit=50 pcq-classifier=src-address pcq-total-limit=2000

Setelah itu kita limit masing ip/target di Queue Tree :
/ queue tree
add name="download" parent=global-out packet-mark="" limit-at=0 queue=pcq_down priority=8 max-limit=1000000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes
add name="kom9" parent=download packet-mark=kom09 limit-at=256000 queue=pcq_down priority=3 max-limit=1000000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes
add name="kom10" parent=download packet-mark=kom10 limit-at=256000 queue=pcq_down priority=3 max-limit=1000000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes
add name="kom11" parent=download packet-mark=kom11 limit-at=256000 queue=pcq_down priority=3 max-limit=1000000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes
add name="kom8" parent=download packet-mark=kom08 limit-at=256000 queue=pcq_down priority=3 max-limit=1000000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes
add name="upload" parent=global-in packet-mark="all.pre_pkt" limit-at=0 queue=pcq_up priority=8 max-limit=512000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no

Pada gambar dibawah tampak data Rate rata2 terbagi secara merata walaupun salah satu pc mendownload dengan IDM

Demikianlah penjelasan dan penerapan PCQ di Queue Tree, semoga bisa dimengerti dan dipahami.

Source :

http://wiki.mikrotik.com/wiki/Manual:Queue
http://wiki.warneter.net/memahami-classifier-dst-address-dst-port-pada-pcq-type
http://wiki.warneter.net/tutorial-mikrotik-pcc-balancing
http://1h2j.gaptekupdate.com/mikrotik-pcq-queue-tidak-mampu-melawan-idm/
http://wiki.mikrotik.com/wiki/Manual:Queues_-_PCQ

3 comments:

  1. Terima kasih atas postinganya, sangat membantu saya dalam memahai penggunaan PCQ

    ReplyDelete
  2. gan untuk rule ini kog gak digunakan di queue tree dan di screnshot mangle nya kog gak keliatan?

    "/ ip firewall mangle
    add action=mark-connection chain=prerouting comment="MARK LOCAL-IN CONN" disabled=no dst-address-list=!Gateway in-interface=lan new-connection-mark=all.pre_conn passthrough=yes
    add action=mark-packet chain=prerouting comment="" connection-mark=all.pre_conn disabled=no new-packet-mark=all.pre_pkt passthrough=yes"

    ReplyDelete
  3. Tutorial For Newbie: Memahami Queue Tree Dan Pcq Di Mikrotik >>>>> Download Now

    >>>>> Download Full

    Tutorial For Newbie: Memahami Queue Tree Dan Pcq Di Mikrotik >>>>> Download LINK

    >>>>> Download Now

    Tutorial For Newbie: Memahami Queue Tree Dan Pcq Di Mikrotik >>>>> Download Full

    >>>>> Download LINK

    ReplyDelete