qos concepts

9
QoS Concepts,Packet Flow Diagram,Firewall Mangle,Simple Queue,Queue Tree,QoS With Proxy,PCQ,Transparent Bandwidth Management,Best Practice Pengaturan Quality of Service (QoS) Diposting oleh admin No CommentsTinggalkan komentar Sampai sekarang dokumentasi qos memang tidak tersedia. yang perlu diperhatikan adalah, QoS sepertinya hanya berjalan baik jika IPFire berjalan sebagai gateway (minimal 2 interface RED – PPPoE dan GREEN – LAN). Jika IPFire menggunakan gateway lain (misalnya mikrotik) maka QoS tidak berjalan efektif (dalam beberapa kasus malahan koneksi IPFire jadi malah ancur). Silakan sediakan cemilan jika anda ingin membaca tulisan selanjutnya, karena ulasan QoS cukup panjang dan berputar-putar… namun jika anda sudah menguasai konsepnya dengan baik, implementasi QoS akan menjadi hal yang sangat mudah. ________________ Setting kasar QoS kurang lebih seperti ini : Pada halaman QoS isi alokasi untuk downlink dan uplink dengan besaran total bandwidth dari ISP dikurangi 10 – 15% (untuk reserved bandwidth). Kemudian pilih “Preset” agar IPFire dapat menggenerate rules default QoS.Jika QOS berhasil di generate maka masbro akan lihat ada 2 grafik : imq0 dan ppp0. ppp0 adalah grafik untuk UPLOAD, sedangkan imq0 adalah grafik untuk DOWNLOAD. Jadi jangan lupa : ppp0 = Upload dan imq0 = Download. Dibagian bawah grafik terdapat table pengaturan (rules) untuk QoS. Tabel-table ini terdiri dari beberapa class. Class untuk UPLOAD terdiri dari class dengan nomor 101, 102, 103, (kepala 100) dan seterusnya. Class untuk DOWNLOAD terdiri dari class dengan nomor 200, 203, 204 (kepala 200) dan seterusnya. ppp0 = Upload = Class kepala 100 imq0 = Download = Class kepala 200 WARNING! Jangan melanjutkan membaca kebawah kalo masbro belum mengerti tulisan diatas. silakan ulangi membaca, sampai masbro mengerti

Upload: sutajitar

Post on 24-Oct-2015

25 views

Category:

Documents


8 download

DESCRIPTION

pengertian bandwidth management

TRANSCRIPT

Page 1: QoS Concepts

QoS Concepts,Packet Flow Diagram,Firewall Mangle,Simple Queue,Queue Tree,QoS With Proxy,PCQ,Transparent Bandwidth Management,Best Practice

Pengaturan Quality of Service (QoS)Diposting oleh admin

No CommentsTinggalkan komentar

Sampai sekarang dokumentasi qos memang tidak tersedia. yang perlu

diperhatikan adalah, QoS sepertinya hanya berjalan baik jika IPFire berjalan

sebagai gateway (minimal 2 interface RED – PPPoE dan GREEN – LAN). Jika IPFire

menggunakan gateway lain (misalnya mikrotik) maka QoS tidak berjalan efektif

(dalam beberapa kasus malahan koneksi IPFire jadi malah ancur).

Silakan sediakan cemilan jika anda ingin membaca tulisan selanjutnya, karena

ulasan QoS cukup panjang dan berputar-putar… namun jika anda sudah

menguasai konsepnya dengan baik, implementasi QoS akan menjadi hal yang

sangat mudah.

________________

Setting kasar QoS kurang lebih seperti ini :

Pada halaman QoS isi alokasi untuk downlink dan uplink dengan besaran total

bandwidth dari ISP dikurangi 10 – 15% (untuk reserved bandwidth).

Kemudian pilih “Preset” agar IPFire dapat menggenerate rules default QoS.Jika

QOS berhasil di generate maka masbro akan lihat ada 2 grafik : imq0 dan ppp0.

ppp0 adalah grafik untuk UPLOAD, sedangkan imq0 adalah grafik untuk

DOWNLOAD.

Jadi jangan lupa : ppp0 = Upload dan imq0 = Download.

Dibagian bawah grafik terdapat table pengaturan (rules) untuk QoS. Tabel-table

ini terdiri dari beberapa class.

Class untuk UPLOAD terdiri dari class dengan nomor 101, 102, 103, (kepala 100)

dan seterusnya.

Class untuk DOWNLOAD terdiri dari class dengan nomor 200, 203, 204 (kepala

200) dan seterusnya.

ppp0 = Upload = Class kepala 100

imq0 = Download = Class kepala 200

WARNING!

Jangan melanjutkan membaca kebawah kalo masbro belum mengerti tulisan

diatas. silakan ulangi membaca, sampai masbro mengerti konsep pembagian

rules class untuk upload dan download (ppp0 dan imq0).

_________________

Page 2: QoS Concepts

Udah ngerti? Oke kita lanjut kebagian selanjutnya…  ;)

Class (baik class untuk upload atau download) pada prinsipnya adalah sebuah

grup dari beberapa aturan untuk lalu lintas data tertentu yang memiliki jatah

bandwidth atau prioritas yang sama.

Sebagai contoh, silakan amati screenshot class: 101 berikut ini (klik untuk

“memperbesar”):

Setiap class memiliki nilai priority, guaranteed bandwidth, maximum bandwidth,

burst, ceil burst, dan TOS.

Priority

Priority atau prioritas adalah ketentuan prioritisasi untuk paket data. Prioritas

disusun dengan nilai 1 sampai dengan 7, dimana priority 1 memiliki prioritas

tertinggi dan priority 7 memiliki prioritas paling rendah.

Setiap class yang memiliki priority 1 akan selalu di prioritaskan oleh sistem

daripada priority 2, priority 3, dan seterusnya. Begitu juga dengan class yang

memiliki priority 2 akan lebih di prioritaskan daripada priority 3, priority 4, dan

seterusnya.

Class yang memiliki priority tinggi berhak untuk “mengambil bandwidth” dari

class yang memiliki priority lebih rendah saat koneksi sedang full terpakai.

Guaranteed bandwidth

Guaranteed bandwidth dalam istilah HTB disebut dengan Rate. Rate adalah

jumlah bandwidth yang digaransi dalam sebuah kelas.

Maximum bandwidth

Maximum bandwidth (ceil rate) adalah batas atas/maksimum bandwidth yang

dialokasikan untuk sebuah kelas.

Burst dan Ceil Burst (cburst)

Burst dan cburst adalah parameter besaran jumlah data yang dapat disampaikan

dengan kecepatan akses maksimum saat class lain sedang tidak digunakan.

ToS

ToS adalah singkatan dari Type of Services. Datagram TOS berada di IP header,

dan sistem akan membedakan “perlakuan” koneksi untuk TOS tertentu. Kita

dapat memanipulasi TOS untuk memprioritaskan atau mengurangi prioritas

untuk paket data tertentu, misalnya memprioritaskan ping (ICMP) atau

mengurangi prioritas untuk grup torrent.

Page 3: QoS Concepts

TOS pada IPFire ada 5, yaitu :

Disabled [TOS 0] : TOS tidak dimanipulasi. Ini adalah nilai default untuk class di

IPFire

Minimum Delay [TOS 8] : Digunakan untuk menandai paket data yang

memerlukan latensi rendah dan bersifat critical, misalnya ping (icmp), dns, atau

games online.

Maximum Throughput [TOS 4] : Digunakan untuk menandai paket data yang

harus dikirimkan dengan kecepatan maksimum, misalnya untuk FTP.

Maximum Reliability [TOS 2] : Digunakan untuk menandai paket data yang anda

yakin paket data tersebut sampai ketujuan tanpa melakukan retransmisi,

contohnya SNMP.

Minimum Cost [TOS 1] : Sesuai dengan namanya, TOS ini digunakan untuk

mengurangi pengeluaran bandwidth, misalnya untuk protokol torrent. :)

Pada IPFire, lalu lintas data / network traffic dapat diklasifikasikan berdasarkan 3

kategori aturan:

 Port-Rules (berdasarkan protokol, port tujuan, port asal, IP address tujuan atau

IP address asal)

Level7-Rules (berdasarkan filter/tipe Layer7)

TOS-Rules (berdasarkan prioritisasi pengantaran/pengambilan paket data)

Perhatikan sekali lagi gambar berikut ini :

Dari gambar dapat diketahui bahwa :

- Class 101 – Upload

- Memiliki priority 1 – prioritas tertinggi

- Jatah bandwidth yang digaransi 192 kbps

- Jatah bandwidth maksimal 384 kbps

- TOS 8 – Minimum Delay

Secara default, class 101 yg digenerate IPFire dialokasikan untuk ACKNOWLEDGE

(ACKs) yakni paket data yg kecil-kecil dan perlu latensi rendah.

Dan secara default, IPFire hanya menggunakan class ini untuk ICMP (paket ping).

Agar koneksi bisa memiliki kinerja maksimal, anda juga dapat mengalokasikan

class ini untuk DNS / nameserver lookup (seperti yang terlihat pada screenshot

diatas).

Let’s go! From zero to hero…

Page 4: QoS Concepts

Bagaimana cara menambahkan rules?

Sebagai contoh, kita akan menambahkan rules DNS ke class 101.

Level7-Rule DNS

1. Pada tabel class 101, klik icon pinsil hijau dengan tanda +

2. Klik pada Level7-Rule

3. Pada bagian protocol, pilih dns.

4. Terakhir klik Save

port-rule DNS – UDP

1. Pada tabel class 101, klik icon pinsil hijau dengan tanda +

2. Klik pada Port-Rule

3. Pada bagian protocol, pilih udp.

4. Destination port isikan 53

5. Kolom lain dapat masbro kosongkan, terakhir klik Save

port-rule DNS – TCP (sebenernya dns cuman menggunakan udp, tapi buat jaga-

jaga kita tambahkan juga tcp)

1. Pada tabel class 101, klik icon pinsil hijau dengan tanda +

2. Klik pada Port-Rule

3. Pada bagian protocol, pilih udp.

4. Destination port isikan 53

5. Kolom lain dapat masbro kosongkan, terakhir klik Save

Pada saat ini seharusnya class 101 di IPFire masbro akan tampak seperti gambar

diatas.

Selamat!!! Congratulations!!! Anda sudah berhasil mengimplementasikan

prioritisasi ICMP dan DNS untuk UPLOAD.

Selanjutnya, cari rules DNS di class UPLOAD yang lain, kemudian hapus dengan

mengklik icon bak sampah (pada screenshot saya, untuk menghapus klik tanda

silang merah – saya udah customize icon-icon webgui, hehehe)

PERHATIAN!

Saat membuat rules pada class tertentu, jangan pernah mengklik back pada

browser, karena class tersebut akan otomatis dihapus.

Ada UPLOAD ada juga DOWNLOAD… :D

Selain perlu menyesuaikan rules DNS di class Upload, masbro juga harus

menyesuaikan rules DNS dan ICMP di class DOWNLOAD. Silakan edit class 200

(VoIP), kemudian tambahkan rules DNS dan ICMP disana. Anda dapat merubah

nama class VoIP menjadi (misalnya) Critical (klik pinsil kuning paling atas, ganti

Remarks dari VoIP menjadi Critical atau sesuai keinginan anda kemudian Save).

Jangan lupa juga menghapus rules DNS di class DOWNLOAD selain class 200.

Page 5: QoS Concepts

Dengan memprioritaskan DNS/nameserver lookup pada class Download dan

Upload maka secara tidak langsung semua aktivitas internet (misalnya browsing)

yang memerlukan banyak nameserver lookup akan menjadi lebih responsif.

Wowww!!

Proof of concept

Anda mungkin akan bertanya-tanya, bagaimana cara membuktikan bahwa rules

diatas sudah berjalan dengan baik… well, berikut saya perlihatkan efek QoS

ditempat saya.. klik gambar untuk memperbesar. (imgbox sedang down –

gambar akan segera di re-upload)

Spot the difference? Lihat perbedaannya?  

Pembagian traffic dan priority

Preset QoS IPFire akan menggenerate class yang disusun berdasarkan prioritas,

dari yang tertinggi sampe yg terendah. Setiap class berisi rules untuk port atau

protokol tertentu (baik untuk interface UPLOAD atau DOWNLOAD).

Jika protokol/trafik data tidak di definisikan dalam class, maka trafik data

tersebut akan dimasukkan ke class DEFAULT.

Class DEFAULT untuk UPLOAD adalah class 110

Class DEFAULT untuk DOWNLOAD adalah class 210

Keduanya memiliki priority 6, alias prioritas “sedang-sedang saja”. Class ini

bandwidth-nya dapat “dipinjam” oleh class lain dengan prioritas yang lebih

tinggi.

Bagaimana dengan torrent?

Torrent (berdasarkan L7 rules) memiliki prioritas 8 – paling rendah dan class

terbawah. Akan tetapi jika koneksi torrent terenkripsi, maka akan diarahkan ke

class DEFAULT. Oleh karena itu, masbro dapat mempertimbangkan untuk

mengatur jatah badwidth class DEFAULT dengan lebih ketat.

Bagaimana dengan game online?

Anda dapat meletakkan rules game online di class dengan priority 2 dan TOS 8.

Jatah bandwidth biarkan default sesuai preset IPFire. Games online tidak

memerlukan bandwidth yang besar (128 – 384 kbps sudah sangat cukup), akan

tetapi memerlukan latensi kecil, oleh karena itu TOS 8 adalah pilihan yang

sangat tepat.

Bagaimana dengan squid / proxy HIT?

Lupakan tentang squid HIT pada IPFire yang bekerja sebagai gateway (2

interface – GREEN/RED), karena squid hit sudah bekerja out-of-the-box.

Do it yourself!

Page 6: QoS Concepts

Tugas anda sekarang adalah menentukan rules lainnya (game online, browsing,

dsb) sesuai dengan lingkungan jaringan anda. Silakan bereksperimen dan

mengopreks class lainnya, sehingga kinerja bandwidth di tempat anda menjadi

lebih efektif.

Sekedar gambaran, hirarki class yang ada di tempat saya seperti gambar berikut

ini (mungkin berbeda untuk anda):

Good luck guys!  

Untuk anda yang punya mikrotik, anda dapat juga dapat mengadaptasi aturan

QoS seperti ini. Tandai paket-paket dapat berdasarkan protokol/port, kemudian

gunakan Queue Tree untuk mengatur jatah bandwidth dan prioritasnya.

Page 7: QoS Concepts

MENGENAL KONSEP HTB PADA MIKROTIK

Berbicara mengenai HTB tidak terlepas dari istilah Queue. Apa itu Queue? Queuedigunakan untuk membatasi atau memprioritaskan traffik tertentu. Queue mampu:

Membatasi traffik yang ditentukan berdasarkan IP tertentu, subnet, port dan parameter lainnya. Membatasi traffik peer-to-peer. Memprioritaskan beberapa paket aliran data atas yang lainnya. Menggunakan traffik burst untuk browsing yang lebih cepat. Membatasi traffik berdasarkan waktu. Memiliki kemampuan bandwidth sharing.Ada dua macam Queue di Mikrotik RouterOS:

1. Queue Simple : dirancang sesederhana mungkin dan mudah dalam melakukan konfigurasi antrian baik pada jaringan skala kecil sampai menengah. Mampu membatasi pemakaian client tunggal download/upload, membatasi traffik P2P, dan lain-lain.2. Queue Tree : mirip seperti queue simple tapi lebih rumit. Mampu melaksanakan tugas antrian yang lebih canggih dan kompleks, melakukan pembatasan bandwidth berdasarkan kelompok pengguna, penerapan prioritas antrian secara global, dan sebagainya. Kita harus mengaktifkan fitur Mangle pada Firewall jika ingin menggunakan Queue Tree. Penerapan Queue didasarkan pada Hierarchical Token Bucket (HTB). HTB (Hirarchical Token Bukcet) adalah metode pengelompokan queue (antrian) yang berguna untuk menangani berbagai jenis traffik. HTB memungkinkan kita untuk membuat struktur antrian berjenjang serta kaitannya antar antrian seperti parent-child atau child-child

Setidaknya ada 3 langkah dasar yang harus kita ikuti sebelum membuat HTB:

Page 8: QoS Concepts

1. Klasifikasi dan menandai traffik - yaitu mengklasifikasikan traffik untuk digunakan lebih lanjut. 

2. Membuat aturan untuk menandai traffik - yaitu menempatkan traffik ke dalam kelompok tertentu, antrian tertentu, kemudian menentukan tindakan yang akan diambil untuk masing-masing kelompok tadi.

3. Menerapkan aturan untuk antarmuka tertentu - aturan yang bisa ditambahkan (global-in, global-out, global-total) dapat diterapkan untuk seluruh antarmuka, atau antarmuka tertentu, atau jenis parent antrian terentu.Di Mikrotik RouterOS, struktur hirarki/berjenjang dapat dipasang pada 4 tempat yang berbeda yang biasanya digunakan sebagai pilihan parent antrian:

1. global-in: mewakili antarmuka input secara umum. Maksudnya, antrian yang masuk ke global-in berlaku untuk traffik sebelum difilter seperti traffik upload.2. global-out: mewakili semua antarmuka output secara umum. Maksudnya, antrian yang keluar dari global-out berlaku untuk traffik setelah difilter seperti traffik download.3. global-total: mewakili semua antarmuka input dan output bersama-sama (dengan kata lain itu adalah penyatuan global-in dan global-out). Digunakan dalam kasus ketika pelanggan memiliki batas untuk upload dan download. 4. <interface name>: merupakan salah satu outgoing interface tertentu. Hanya traffik yang keluar dari antarmuka ini yang bisa diqueue/masuk kedalam daftar antrian. Namun untuk versi 6 keatas parent global-in, global-out, dan global-total untukQueue Tree diganti dengan global yang setara dengan global-total untuk versi sebelumnya. Lihat kembali apa yang baru di versi 6.

Limitasi

Antrian pada HTB dibatasi oleh 2 rate:

CIR (Comitted Information Rate) - batas bawah atau minimal traffik (limit-at) yang dapat diperoleh antrian. Limit-at membatasi minimal traffik suatu antrian, tidak peduli walau dalam kondisi apapun antrian tidak akan mendapat traffik dibawah batas ini.  MIR (Maximal Information rate) - batas atas atau maximal traffik (max-limit) yang bisa diperoleh antrian. Max-limit membatasi maximal traffik suatu antrian, dan setiap antrian akan mencapai batas ini jika parentmasih memiliki cadangan bandwidth.Sederhananya, pertama-tama traffik yang lewat akan mendapat batas minimal traffik (limit-at) kemudian setiap antrian mencoba mendekati batas maximal (max-limit) dengan meminjam bandwidth yang tersisa dari parent.

Oleh karenanya untuk mendapatkan hasil terbaik penggunaan fitur limitasi diatas sangat dianjurkan. Jika kita menggunakan parent antrian, maka total jumlah limit-atuntuk child antrian pada semua tingkatan harus kurang dari atau sama dengan jumlah

Page 9: QoS Concepts

traffik yang tersedia pada parent.CIR (parent)  >= CIR (child1) + CIR (child2) + CIR (child)3+ ... 

Dan max-limit masing-masing child antrian pada semua tingkatan harus kurang dari atau sama dengan traffik maksimal parent.MIR (parent)  >= MIR (child1) & MIR (parent) >= MIR (child2) & MIR (parent) >= ...

Prioritas

Sudah kita ketahui bahwa semua antrian tidak akan mendapatkan traffik dibawah nilai limit-at pada kondisi apapun. Maka nilai prioritas bertanggungjawab untuk mendistribusikan bandwidth yang tersisa dari parent antrian kepada child antrian sehingga mereka mampu mencapai nilai max-limit.

Antrian dengan prioritas lebih tinggi akan mencapai nilai max-limit daripada antrian dengan prioritas yang lebih rendah. 8 adalah prioritas terendah dan 1 adalah prioritas tertinggi. Perlu dicatat bahwa prioritas akan bekerja jika nilai max-limitbukan nol (0). Untuk antrian yang melewati nilai limit-at dan max-limit parent antrian (leaf queue), prioritas di dalam (inner) antrian tidak akan memiliki arti.

Properti HTB

Properti yang sering dipakai pada HTB bisa dilihat pada contoh Queue Simple danQueue Tree.

Referensihttp://wiki.mikrotik.com