You are on page 1of 32

©MikroTik2008

M i k r o Ti k R o u t e r OS W o r k s h o p
Qo S B e s t P r a c t i c e
Chicago,IL
MUM USA 2008
©MikroTik2008 2
Plan
Discuss best QoS practice for
Large scale user spee li!itations
Prioriti"ation of traffic base on traffic t#pe
I!ple!ent best practice
$ou %ill be able to follo% the progress & 'ust
connect to SSID (QoS) an open up the *inbo+
to aress ,0-,-,-2./ 0efault user na!e an
pass%or1
©MikroTik2008 3
User Li!itation
~40 Mbps
T3/E3 line

You have more than 400 clients

Task:

Divide clients into 3 groups

Business (4Mbps/Mbps!
connection

"tandard (#$0%bps/&$0%bps!
connection

Basic (3#$%bps/&$%bps!
connection
©MikroTik2008 4
Si!ple Queue 2or 3ach Client
3ach si!ple 4ueue creates 5 separate 4ueues6
7ne in global8in 0(irect) part1
7ne in 9lobal8out 0(re:erse) part1
7ne in 9lobal8total 0(total) part1
Si!ple 4ueues are orere 8 si!ilar to fire%all
rules
further o%n ; longer pac<et processing
further o%n ; s!aller chance to get traffic
0necessar# to reuce nu!ber of 4ueues1
©MikroTik2008 5
Possible Solutions
=outer7S ha:e / 4ueue t#pes6
2I27 & 2irst In 2irst 7ut 0for >#tes or for Pac<ets1
=3D & =ano! 3arl# Detect 0or Drop1
S2Q & Stochastic 2airness Queuing
PCQ & Per Connection Queuing 0Mi<ro?i< Proprietar#1
2ire%all Mangle an Aress8lists
Queue ?ree
©MikroTik2008 6
Default Queue ?#pes
©MikroTik2008 7
©MikroTik2008 8
©MikroTik2008 9
S2Q
Behaviour:
>ase on hash :alue fro! source an
estination aress S2Q i:ies traffic into
,02/ sub8strea!s
?hen =oun =obin
algorith! %ill istribute
e4ual a!ount of traffic
to each sub8strea!
©MikroTik2008 10
©MikroTik2008 11
PCQ
Behaviour:
>ase on classifier PCQ i:ies traffic into sub8
strea!s- 3ach sub8strea! can be consiere
as 2I27 4ueue %ith 4ueue si"e specifie b#
(li!it) option
After this PCQ can be
consiere as 2I27
4ueue %here 4ueue
si"e is specifie b#
(total8li!it) option-
©MikroTik2008 12
©MikroTik2008 13
©MikroTik2008 14
©MikroTik2008 15
Plan
Create an aress list for client classes
Use (connection8!ar<) 0!angle1 feature to
classif# all connections base on client class
Use (pac<et8!ar<) 0!angle1 feature to classif#
all traffic base on client class
Create a PCQ 4ueue for each client class %ith
rate option specifie
---%hat about user8user co!!unications@@@
---%hat about un!ar<e traffic @
©MikroTik2008 16
Aress Lists
©MikroTik2008 17
*here@
?here are . places to !angle
?here are / places to li!it
©MikroTik2008 18
Connection8!ar< rule
©MikroTik2008 19
Pac<et8!ar< rule
©MikroTik2008 20
*or<ing Mangle8 *inbo+ :ie%
©MikroTik2008 21
*or<ing Mangle8 3+port :ie%
©MikroTik2008 22
Queuing Place!ent
Li!itation for in !angle chain (for%ar) !ar<e
traffic can be place in the (global8out) or
interface 4ueue
If 4ueues %ill be place in the interface 4ueues
4ueues on the public interface %ill capture onl#
client uploa
4ueues on the local interface %ill capture onl#
clientAs o%nloa
If 4ueues %ill be place in global8out o%nloa
an uploa %ill be li!ite together 0separate !ar<s
neee1
©MikroTik2008 23
PCQ ?#pes & *inbo+ Bie%
©MikroTik2008 24
Queue ?ree & *inbo+ Bie%
©MikroTik2008 25
Queue ?ree & 3+port Bie%
©MikroTik2008 26
PCQ Queue Si"e
?otalCli!it ; D can ta<e up to
DE02000 b#tes F 200 b#tes1 of =AM
2000 b#tes & buffer for , pac<et
200 b#tes & ser:ice ata for , pac<et
totalCli!it ; 2000 ;G /,2M> =AM
totalCli!it ; .000 ;G ,0,.M> =AM
It can ta<e onl# /0
users to fill the 4ueue
0because totalCli!itHli!it ; 2000H.0 ; /01
It is necessar# to
increase (totalCli!it)
or 0an1 ecrease the
(li!it) :alue
?here !ust be at
least ,0820 pac<et
places in 4ueue
a:ailable per user
©MikroTik2008 27
PCQ A'ust!ents
?here are I5/0 >asic class clients so6
pc4Cli!it ; /0
pc4CtotalCli!it ; J000 0 I20E5/01 0I,.M>1
?here are I/0 Stanar class clients so6
pc4Cli!it ; 50
pc4CtotalCli!it ; ,000 0 I20E/01 0I2M>1
?here are I20 >usiness class clients so6
pc4Cli!it ; 20 0KKK1
pc4CtotalCli!it ; .00 0 I20E201 0I,M>1
©MikroTik2008 28
?raffic Prioriti"ation
Business 'lass 'lients
"tandard 'lass 'lients
Basic 'lass 'lients
~40 Mbps
T3/E3 line
You have problems (ith on)line
communications (video* audio* +,-.*
games!
Task:
Ma%e necessar/ tra00ic
prioriti1ation
~$Mbps abroad
©MikroTik2008 29
Prioriti"ation plan
©MikroTik2008 30
*here@
?here are . places to !angle
?here are / places to li!it
©MikroTik2008 31
Lo%@
©MikroTik2008 32
Priorities
Create pac<et !ar<s in the !angle chain
(Prerouting) for traffic prioriti"ation in the global8
in 4ueue
3nsignCser:ices 0Priorit#;,1
UserCre4uests 0Priorit#;51
Co!!unicationCser:ices 0Priorit#;.1
Do%nloaCser:ices 0Priorit#;J1
P2PCser:ices 0Priorit#;81