680 likes | 734 Views
Fungsi untuk mengukur dan mengontrol komunikasi data<br>(trafik, paket) pada jaringan, untuk menghindari overload,<br>atau ada yang memonopoli jaringan, yang berakibat pada<br>congestion dan performa jaringan yang buruk
E N D
QoS,HTB, Multicore RouterOS v6.xx ValensRiyadi(Citraweb) info@mikrotik.co.id
AboutMe ValensRiyadi,Citraweb(ID) MikroTik CertifiedEngineer (MTCNA,MTCWE,MTCRE,MTCTCE,MTCUME,MTCINE) MikroTik CertifiedTrainersince2004 MikroTik CertifiedConsultant MikroTik AcademyCoordinator Citra.net.id WISPCEO ManagerforIDNIC(IndonesiaNationalInternet Registry)2009– May2015 ITExpertonDisasterRelief Proudmemberof“RoutedWorld”community QoS onMulticore – Mikrotik Indonesia 2
RecommendedResources CCRStatusUpdate(JanisMegis – Video) http://tiktube.com/video/GJil3aqniCGJCIqqpGnrGznrClGoJGJo= • DynamicQoS onRouterOS v6(ValensRiyadi) http://mum.mikrotik.com/presentations/IT14/valens.pdf • QoS onRouterOSv6(ValensRiyadi) http://mum.mikrotik.com/presentations/HR13/valens.pdf • HTBvs PCQ(ValensRiyadi) http://mum.mikrotik.com/presentations/HU11/valens.pdf • QoS andTrafficPriorities(JanisMegis) http://mum.mikrotik.com/presentations/CZ09/QoS_Megis.pdf • HTBQoS (ValensRiyadi) http://mum.mikrotik.com/presentations/US09/Valens-MUM2009USA.pdf • QoSonMulticore– MikrotikIndonesia 3
QoS concept Fungsi untuk mengukur dan mengontrol komunikasi data (trafik,paket)pada jaringan,untuk menghindari overload, atau ada yangmemonopoli jaringan,yangberakibat pada congestiondan performa jaringan yangburuk. QoS onMulticore – Mikrotik Indonesia 4
Untuk apa? QoS concept QoS onMulticore – Mikrotik Indonesia 5
QoS onRouterOS • MikroTik RouterOS adalah salah satu bandwidthmanagementpalingcanggih,jika dibandingkan dengan merk lainnya. • Mengapa? – Konfigurasi HTByangmendalam – Doublelimitation+Burst – Adabanyak pilihan dan parameterà packet-mark QoS onMulticore – Mikrotik Indonesia 6
10mbps QoS onMulticore – Mikrotik Indonesia 7
name=User_A max-limit=5M 5mbps name=User_B max-limit=5M 5mbps 10mbps QoS onMulticore – Mikrotik Indonesia 8
Max-limit Besarnya kapasitas maksimum yangbisa dicapai oleh usertertentu QoSonMulticore– MikrotikIndonesia 10
Bagaimana jika user Atidak menggunakan internet,userBdapat menggunakan semua sisa bandwidthyang tersedia? QoSonMulticore– MikrotikIndonesia 11
HTB • Sebagian besar implementasi QoS pada RouterOS berdasarkan HierarchicalToken Bucket(HTB) • HTBmemungkinkan kita membuat struktur queueberjenjang dan menentukan relasi antara parentdengan child,ataupun antar sesama child. • RouterOS v6mengenal 1virtualHTBs(global), dan satu diakhir setiap interface QoS onMulticore – Mikrotik Indonesia 12
HTBSample Parent/innerqueue A B C D E F G I H Child=leafqueue QoS onMulticore – Mikrotik Indonesia 13
HTBFeatures • Hirarki – DirouterOS,kita bisa membuat hingga 8levelhirarki • Grouping – Kitabisa mengelompokkan beberapa clientdidalam satu parent – Clientyangsatu bisa meminjam bandwidthdari client lainnya,jika dibutuhkan dan tersedia • Tiap leafqueuebisa memiliki settingyang berbeda.Semua leafakan dianggap sama,di hirarki palingbawah MTCTCE- Sys-DataCom- Citraweb 14
HTBImplementationExample MTCTCE- Sys-DataCom- Citraweb 15
name=User_A parent=q_parent limit-at=5M max-limit=10M 5mbps name=q_parent max-limit=10M name=User_B parent=q_parent limit-at=5M max-limit=10M 5mbps 10mbps QoS onMulticore – Mikrotik Indonesia 16
Limit-at Besarnya kapasitas yangdijamin dapat diterima oleh usertertentu,selama bandwidthmasih tersedia QoSonMulticore– MikrotikIndonesia 18
name=User_A parent=q_parent limit-at=3M max-limit=10M 3mbps name=User_VIP parent=q_parent limit-at=4M max-limit=10M 4mbps name=User_B parent=q_parent limit-at=3M max-limit=10M 3mbps 10mbps QoS onMulticore – Mikrotik Indonesia 19
X name=User_A parent=q_parent limit-at=3M max-limit=10M 3mbps name=User_VIP parent=q_parent limit-at=4M max-limit=10M 7M? 4mbps name=User_B parent=q_parent limit-at=3M max-limit=10M 3mbps 10mbps QoS onMulticore – Mikrotik Indonesia 20
name=User_A parent=q_parent limit-at=3M max-limit=10M priority=8 X 3mbps name=User_VIP parent=q_parent limit-at=4M max-limit=10M priority=1 4mbps 7mbps 3mbps 3mbps name=User_B parent=q_parent limit-at=3M max-limit=10M priority=8 10mbps QoS onMulticore – Mikrotik Indonesia 21
Priority Memberikan prioritas untuk usertertentu dibanding userlainnya,jika semua limit-at sudah terpenuhi. QoSonMulticore– MikrotikIndonesia 22
QueueParameter • limit-at(CIR) • max-limit(MIR) • burst(threshold,limit,time) • queuetype(FIFO,RED,SFQ,PCQ) • parent QoS onMulticore – Mikrotik Indonesia 23
childA:limit-at=4mbps max-limit=8mbps 4mbps childB:limit-at=6mbps max-limit=8mbps 6mbps parentmax-limit10mbps QoS onMulticore – Mikrotik Indonesia 24
2mbps childA childB:limit-at=6mbps max-limit=8mbps 8mbps parentmax-limit10mbps QoS onMulticore – Mikrotik Indonesia 25
childA:0mbps childB:limit-at=6mbps max-limit=8mbps 8mbps parentmax-limit10mbps QoS onMulticore – Mikrotik Indonesia 26
withoutparent,with10mbpslink childA child A childA childA childB childB childB childB QoS onMulticore – Mikrotik Indonesia 27
Tanpa parent, parameterlimit-atdan priorityakan diabaikan. QoS onMulticore – Mikrotik Indonesia 28
HTBDistribution(1) 4mbps Name: A Parent: interface Max-limit: 4mbps Name: B Parent: A Limit-at: 2mbps Max-limit: 4mbps 2mbps Name: C Parent: A Limit-at: 2mbps Max-limit: 4mbps 2mbps If Child B and C use the link, they will have 2mbps each, but if child C is not using it, child B will get 4 mbps. MTCTCE- Sys-DataCom - Citraweb 29
HTBDistribution(2) 4mbps Name: A Parent: interface Max-limit: 2mbps Name: B Parent: A Limit-at: 2mbps Max-limit: 4mbps 2mbps Name: C Parent: A Limit-at: 2mbps Max-limit: 4mbps 2mbps Eventhemax-limitoftheparentis2mbps,butchildBandchildCwillstillget2 mbpseach(totalof4mbps).IfCisnotusethelink,Bwillstillget2mbps,cannot extendto4mbps,becauselimitedbymax-limitofitsmax-limitparent.Max-limit ofparentAshouldbeatleast4mbps. MTCTCE- Sys-DataCom- Citraweb 30
HTBDistribution(3) 5mbps Name: A Parent: interface Max-limit: 5mbps Name: B Parent: A Limit-at: 2mbps Max-limit: 4mbps Priority: 1 Name: C Parent: A Limit-at: 2mbps Max-limit: 4mbps Priority: 8 3mbps 2mbps Bcanextendfrom2mbpsto3mbps,becauseparentAstillhaveremaining bandwidth,andBhavehigherprioritythanC. MTCTCE- Sys-DataCom- Citraweb 31
HTBDistribution(4) 6mbps Name: A Parent: interface Max-limit: 6mbps 4mbps Name: C Parent: A Limit-at: 2mbps Max-limit: 4mbps Name: B Parent: A Limit-at: 2mbps Max-limit: 4mbps 2mbps Name: C1 Parent: C Limit-at: 2mbps Max-limit: 4mbps 2mbps Name: C2 Parent: C Limit-at: 2mbps Max-limit: 4mbps 2mbps B,C1,andC2,willget2mbpseach,assetatlimit-at. MTCTCE- Sys-DataCom- Citraweb 32
HTBDistribution(5) 6mbps Name: A Parent: interface Max-limit: 6mbps 4mbps Name: C Parent: A Limit-at: 4mbps Max-limit: 4mbps Name: B Parent: A Limit-at: 2mbps Max-limit: 4mbps 2mbps Name: C1 Parent: C Limit-at: 1mbps Max-limit: 2mbps 2mbps Name: C2 Parent: C Limit-at: 1mbps Max-limit: 2mbps 2mbps C1andC2canget2mbps(max-limit),becausetheirparent(C)haslimit-at4 mbps. MTCTCE- Sys-DataCom- Citraweb 33
HTBDistribution(6) Name: A Parent: interface Max-limit: 8mbps 8mbps 4mbps Name: C Parent: A Limit-at: 4mbps Max-limit: 6mbps Name: B Parent: A Limit-at: 2mbps Max-limit: 4mbps Priority: 1 Name: C1 Parent: C Limit-at: 2mbps Max-limit: 3mbps Priority: 4 Name: C2 Parent: C Limit-at: 2mbps Max-limit: 3mbps Priority: 8 4mbps 2mbps 2mbps Afteralllimit-atfulfill,remainingbandwidthwilldistributedbaseonpriority MTCTCE- Sys-DataCom- Citraweb 34
HTBDistribution(7) Name: A Parent: interface Max-limit: 8mbps 8mbps 4mbps Name: C Parent: A Limit-at: 4mbps Max-limit: 6mbps Priority: 1 Name: B Parent: A Limit-at: 2mbps Max-limit: 4mbps Priority: 2 Name: C1 Parent: C Limit-at: 2mbps Max-limit: 3mbps Priority: 4 Name: C2 Parent: C Limit-at: 2mbps Max-limit: 3mbps Priority: 8 4mbps 2mbps 2mbps Onlypriorityonclient(leaf)willcount. MTCTCE- Sys-DataCom- Citraweb 35
HTBDistribution(8) Name: A Parent: interface Max-limit: 10mbps 10mbps 6mbps 4mbps Name: C Parent: A Limit-at: 4mbps Max-limit: 6mbps Name: B Parent: A Limit-at: 2mbps Max-limit: 4mbps Name: B1 Parent: B Limit-at: 2mbps Max-limit: 3mbps Priority: 8 Name: B2 Parent: B Limit-at: 2mbps Max-limit: 3mbps Priority: 8 Name: C1 Parent: C Limit-at: 2mbps Max-limit: 3mbps Priority: 8 Name: C2 Parent: C Limit-at: 2mbps Max-limit: 3mbps Priority: 8 Name: C3 Parent: C Limit-at: 2mbps Max-limit: 3mbps Priority: 8 2mbps 2mbps 2mbps 2mbps 2mbps Allleafqueuewillget2mbps. MTCTCE- Sys-DataCom- Citraweb 36
HTBDistribution(9) Name: A Parent: interface Max-limit: 8mbps 8mbps 6mbps 2mbps Name: C Parent: A Limit-at: 3mbps Max-limit: 6mbps Priority: 8 Name: B Parent: A Limit-at: 2mbps Max-limit: 4mbps Priority: 1 Name: B1 Parent: B Limit-at: 1mbps Max-limit: 2mbps Priority: 5 Name: B2 Parent: B Limit-at: 1mbps Max-limit: 2mbps Priority: 6 Name: C1 Parent: C Limit-at: 1mbps Max-limit: 2mbps Priority: 2 Name: C2 Parent: C Limit-at: 1mbps Max-limit: 2mbps Priority: 3 Name: C3 Parent: C Limit-at: 1mbps Max-limit: 2mbps Priority: 4 1mbps 1mbps 2mbps 2mbps 2mbps C1,C2,C3willget2mbps,becausetheyhavehigherprioritythanB1andB2 MTCTCE- Sys-DataCom- Citraweb 37
HTBDistribution(10) Name: A Parent: interface Max-limit: 8mbps 8mbps 4mbps 4mbps Name: C Parent: A Limit-at: 3mbps Max-limit: 6mbps Priority: 1 Name: B Parent: A Limit-at: 4mbps Max-limit: 4mbps Priority: 8 Name: B1 Parent: B Limit-at: 1mbps Max-limit: 2mbps Priority: 5 Name: B2 Parent: B Limit-at: 1mbps Max-limit: 2mbps Priority: 6 Name: C1 Parent: C Limit-at: 1mbps Max-limit: 2mbps Priority: 2 Name: C2 Parent: C Limit-at: 1mbps Max-limit: 2mbps Priority: 3 Name: C3 Parent: C Limit-at: 1mbps Max-limit: 2mbps Priority: 4 2mbps 2mbps 2mbps 1mbps 1mbps Bget4mbpsbecauseitslimit-at,andthendividedtoB1andB2(2mbpseach). C1>C2andC3becausehavehigherpriority. MTCTCE- Sys-DataCom- Citraweb 38
HTBDistribution(11) Name: A Parent: interface Max-limit: 8mbps 8mbps 4,8mbps 3,2mbps Name: C Parent: A Limit-at: 3mbps Max-limit: 6mbps Priority: 8 Name: B Parent: A Limit-at: 2mbps Max-limit: 4mbps Priority: 1 Name: B1 Parent: B Limit-at: 1mbps Max-limit: 2mbps Priority: 8 Name: B2 Parent: B Limit-at: 1mbps Max-limit: 2mbps Priority: 8 Name: C1 Parent: C Limit-at: 1mbps Max-limit: 2mbps Priority: 8 Name: C2 Parent: C Limit-at: 1mbps Max-limit: 2mbps Priority: 8 Name: C3 Parent: C Limit-at: 1mbps Max-limit: 2mbps Priority: 8 1,6mbps 1,6mbps 1,6mbps 1,6mbps 1,6mbps Bandwidthdevided equaly toB1,B2,C1,C2,C3becase theyhavesame priority. MTCTCE- Sys-DataCom- Citraweb 39
Tipe Queue • SimpleQueue • QueueTree QoSonMulticore– MikrotikIndonesia 40
SimpleQueue • Mudah digunakan • Untuk limitasi src-addressdan dst-address,dapat digunakan tanpa fitur bantulainnya (mangle) • 1ruledapat digunakan sekaligus untuk trafficuplink dan downlink • Dapat digunakan untuk melimit totaltraffic(downlink+ uplink) • Jika dibutuhkan,dapat memanfaatkan packet-markdan juga parent • Proseshanya dapat dilakukan pada interfacevirtual (global) QoSonMulticore– MikrotikIndonesia 41
QueueTree • Membutuhkan packet-markuntuk menandai traffic • Dapat digunakan dengan prioritydan parent • 1rulehanya untuk downlinkatau uplink • Prosesdapat dilakukan diinterfacefisik, ataupun diinterfacevirtual(global) QoSonMulticore– MikrotikIndonesia 42
PacketFlow QoSonMulticore– MikrotikIndonesia 43
MULTICORE? QoSonMulticore– MikrotikIndonesia 44
Queue&MulticoreProcessing • Sebagian besar waktu yang dihabiskan sebuah paket adalah menunggu dalam queue. • Supaya tidak memboroskan siklus CPUcore saat menunggu,coretersebut akan meninggalkan paket diqueue. • Paket akandiambil secara randomdari antrian untuk diproses pada coretertentu. • Secara sederhana:queue akanmembagikan paket untuk CPUCoretertentu. QoS onMulticore – Mikrotik Indonesia 45
Perubahan PacketFlow • Pada RouterOS v5.x,paket melalui proses queue beberapa kali,sehingga proses pemilihan corejuga terjadi beberapa kali. • Untuk RouterOS v6,proses QoS dirombak sehingga proses queue hanya terjadi disuatu kelompok proses,pada akhir flow. QoS onMulticore – Mikrotik Indonesia 46
HTBinRoS v5 QoS onMulticore – Mikrotik Indonesia 47
HTBinRoS v6 QoS onMulticore – Mikrotik Indonesia 48
QueueTreeonMulticore • Jika ditinjau dari perspektif Kernel, keseluruhan HTBtree adalah satu queue, sehingga diproses hanya oleh satu core • Optimasi seperti yangdilakukan padasimple queue akan jugadilakukan padaqueue tree. • Saran: – Gunakan HTBdengan interface,danhindari menggunakan HTBglobal. – Gunakan simplequeue. QoS onMulticore – Mikrotik Indonesia 49
QueueChangein6.19 DiRouterOS v6.19,ada pengubahan softwareuntuk meningkatkan kinerja queue: Sebelumnya:coreakan meninggalkan paket diqueue, dan corelainnya akan dipilih secara randomuntuk mengatur paket tersebut Sekarang:coretersebut tidak hanya meninggalkan paket,tapi juga harus mengambil paket lainnya yang sudah ada diqueue. Jika limitdiqueuebelum tercapai,paket yangsama akan ditinggalkan dan langsung diambil lagi oleh core yangsama,membuat prosesini jauh lebih cepat. • • • QoS onMulticore – Mikrotik Indonesia 50