Difference between revisions of "Manual:Queue"

From MikroTik Wiki
Jump to: navigation, search
Line 5: Line 5:
 
Submenu level: '''/queue'''
 
Submenu level: '''/queue'''
  
Queue implementation in MikroTik RouterOS is based on Hierarchical Token Bucket (HTB). HTB allows to create hierarchical queue structure and determine relations between queues(parent-child, child priority). RouterOS support 3 virtual HTBs (global-in, global-total, global-out) and one more just before every outgoing interface.
+
Queue implementation in MikroTik RouterOS is based on Hierarchical Token Bucket (HTB). HTB allows to create hierarchical queue structure and determine relations between queues(parent-child, child priority).  
  
There are two ways how to add queues in RouterOS:<ul>
+
In RouterOS it is possible to add queue in 4 different places (HTBs):
 +
<ul>
 +
<li>'''global-in''' &mdash; represents all the input interfaces in general (INGRESS queue). Queues attached to global-in apply to traffic that is received by the router before the packet filtering
 +
<li>'''global-out''' &mdash; represents all the output interfaces in general (EGRESS queue).
 +
<li>'''global-total''' &mdash;
 +
<li>'''<interface name>''' &mdash;
 +
</ul>
 +
 
 +
 
 +
 
 +
There are two ways how to add queues in RouterOS:
 +
<ul>
 
<li>'''/queue simple''' menu - more user-friendly implementation of queues designed to ease configuration of simple,everyday queuing tasks (such as single client upload/download limitation, p2p traffic limitation, etc.).
 
<li>'''/queue simple''' menu - more user-friendly implementation of queues designed to ease configuration of simple,everyday queuing tasks (such as single client upload/download limitation, p2p traffic limitation, etc.).
 
<li>'''/queue tree''' menu -  simplest way to implement advanced queuing tasks (such as global prioritization policy, user group limitations) require market packet flows from '''/ip firewall mangle''' facility.
 
<li>'''/queue tree''' menu -  simplest way to implement advanced queuing tasks (such as global prioritization policy, user group limitations) require market packet flows from '''/ip firewall mangle''' facility.
Line 17: Line 28:
  
 
<p>lalala</p>
 
<p>lalala</p>
 +
  
 
<h4>Flow Identifiers</h4>
 
<h4>Flow Identifiers</h4>
 +
  
 
<p><h5><var>target-addresses</var></h5> (comma separated list of IP prefixes) &mdash; </p>
 
<p><h5><var>target-addresses</var></h5> (comma separated list of IP prefixes) &mdash; </p>
Line 27: Line 40:
 
<p><h5><var>p2p</var></h5> () &mdash; </p>
 
<p><h5><var>p2p</var></h5> () &mdash; </p>
 
<p><h5><var>packet-marks</var></h5> (Comma separated list of) &mdash; </p>
 
<p><h5><var>packet-marks</var></h5> (Comma separated list of) &mdash; </p>
 +
  
 
<h4>HTB Properties</h4>
 
<h4>HTB Properties</h4>
 +
  
 
<p><h5><var>parent</var></h5> (Name of , or <i>none</i>) &mdash; </p>
 
<p><h5><var>parent</var></h5> (Name of , or <i>none</i>) &mdash; </p>
Line 40: Line 55:
 
<p><h5><var>burst-time</var></h5> (<i><em>TIME</em>/<em>TIME</em></i>) &mdash; </p>
 
<p><h5><var>burst-time</var></h5> (<i><em>TIME</em>/<em>TIME</em></i>) &mdash; </p>
  
<p><h5><var>total-queue</var></h5> () &mdash; </p>
+
 
<p><h5><var>total-limit-at</var></h5> () &mdash; </p>
+
And corresponding options for global-total HTB queue:
<p><h5><var>total-max-limit</var></h5> () &mdash; </p>
+
 
<p><h5><var>total-burst-limit</var></h5> () &mdash; </p>
+
 
<p><h5><var>total-burst-threshold</var></h5> () &mdash; </p>
+
<p><h5><var>total-queue</var></h5> () &mdash; corresponds to <var>queue</var> only for global-total queue </p>
<p><h5><var>total-burst-time</var></h5> () &mdash; </p>
+
<p><h5><var>total-limit-at</var></h5> () &mdash; corresponds to <var>limit-at</var> only for global-total queue  </p>
 +
<p><h5><var>total-max-limit</var></h5> () &mdash; corresponds to <var>max-limit</var> only for global-total queue </p>
 +
<p><h5><var>total-burst-limit</var></h5> () &mdash; corresponds to <var>burst-limit</var> only for global-total queue </p>
 +
<p><h5><var>total-burst-threshold</var></h5> () &mdash; corresponds to <var>burst-threshold</var> only for global-total queue </p>
 +
<p><h5><var>total-burst-time</var></h5> () &mdash; corresponds to <var>burst-time</var> only for global-total queue </p>
  
 
<h4>Statistics</h4>
 
<h4>Statistics</h4>
 
  
 
<p><h5><var>bytes</var></h5> (<i><em>NUMBER</em>/<em>NUMBER</em></i>; read-only) &mdash; </p>
 
<p><h5><var>bytes</var></h5> (<i><em>NUMBER</em>/<em>NUMBER</em></i>; read-only) &mdash; </p>
<p><h5><var>total-bytes</var></h5> (read-only) &mdash; </p>
 
 
 
<p><h5><var>packets</var></h5> (read-only) &mdash; </p>
 
<p><h5><var>packets</var></h5> (read-only) &mdash; </p>
<p><h5><var>total-packets</var></h5> (read-only) &mdash; </p>
 
 
 
<p><h5><var>dropped</var></h5> (read-only) &mdash; </p>
 
<p><h5><var>dropped</var></h5> (read-only) &mdash; </p>
<p><h5><var>total-dropped</var></h5> (read-only) &mdash; </p>
 
 
 
<p><h5><var>overlimits</var></h5> (read-only) &mdash; </p>
 
<p><h5><var>overlimits</var></h5> (read-only) &mdash; </p>
<p><h5><var>total-overlimits</var></h5> (read-only) &mdash; </p>
 
 
 
<p><h5><var>rate</var></h5> (read-only) &mdash; </p>
 
<p><h5><var>rate</var></h5> (read-only) &mdash; </p>
<p><h5><var>total-rate</var></h5> (read-only) &mdash; </p>
 
 
 
<p><h5><var>packet-rate</var></h5> (read-only) &mdash; </p>
 
<p><h5><var>packet-rate</var></h5> (read-only) &mdash; </p>
<p><h5><var>total-packet-rate</var></h5> (read-only) &mdash; </p>
 
 
 
<p><h5><var>queued-packets</var></h5> (read-only) &mdash; </p>
 
<p><h5><var>queued-packets</var></h5> (read-only) &mdash; </p>
<p><h5><var>total-queued-packets</var></h5> (read-only) &mdash; </p>
 
 
 
<p><h5><var>queued-bytes</var></h5> (read-only) &mdash; </p>
 
<p><h5><var>queued-bytes</var></h5> (read-only) &mdash; </p>
<p><h5><var>total-queued-bytes</var></h5> (read-only) &mdash; </p>
+
<p><h5><var>lends</var></h5> (read-only) &mdash; </p>
 +
<p><h5><var>borrows</var></h5> (read-only) &mdash; </p>
 +
<p><h5><var>pcq-queues</var></h5> () &mdash; </p>
  
<p><h5><var>lends</var></h5> (read-only) &mdash; </p>
 
<p><h5><var>total-lends</var></h5> (read-only) &mdash; </p>
 
  
<p><h5><var>borrows</var></h5> (read-only) &mdash; </p>
+
And corresponding options for global-total HTB queue:
<p><h5><var>total-borrows</var></h5> (read-only) &mdash; </p>
 
  
<p><h5><var>pcq-queues</var></h5> () &mdash; </p>
 
<p><h5><var>total-pcq-queues</var></h5> (read-only) &mdash; </p>
 
  
 +
<p><h5><var>total-bytes</var></h5> (read-only) &mdash; corresponds to <var>bytes</var> only for global-total queue </p>
 +
<p><h5><var>total-packets</var></h5> (read-only) &mdash; corresponds to <var>packets</var> only for global-total queue </p>
 +
<p><h5><var>total-dropped</var></h5> (read-only) &mdash; corresponds to <var>dropped</var> only for global-total queue </p>
 +
<p><h5><var>total-overlimits</var></h5> (read-only) &mdash; corresponds to <var>overlimits</var> only for global-total queue </p>
 +
<p><h5><var>total-rate</var></h5> (read-only) &mdash; corresponds to <var>rate</var> only for global-total queue </p>
 +
<p><h5><var>total-packet-rate</var></h5> (read-only) &mdash; corresponds to <var>packet-rate</var> only for global-total queue </p>
 +
<p><h5><var>total-queued-packets</var></h5> (read-only) &mdash; corresponds to <var>queued-packets</var> only for global-total queue </p>
 +
<p><h5><var>total-queued-bytes</var></h5> (read-only) &mdash; corresponds to <var>queued-bytes</var> only for global-total queue </p>
 +
<p><h5><var>total-lends</var></h5> (read-only) &mdash; corresponds to <var>lends</var> only for global-total queue </p>
 +
<p><h5><var>total-borrows</var></h5> (read-only) &mdash; corresponds to <var>borrows</var> only for global-total queue </p>
 +
<p><h5><var>total-pcq-queues</var></h5> (read-only) &mdash; corresponds to <var>pcq-queues</var> only for global-total queue </p>
  
 
</div>
 
</div>
 
</div>
 
</div>

Revision as of 16:06, 25 September 2008

Queues

Submenu level: /queue

Queue implementation in MikroTik RouterOS is based on Hierarchical Token Bucket (HTB). HTB allows to create hierarchical queue structure and determine relations between queues(parent-child, child priority).

In RouterOS it is possible to add queue in 4 different places (HTBs):

  • global-in — represents all the input interfaces in general (INGRESS queue). Queues attached to global-in apply to traffic that is received by the router before the packet filtering
  • global-out — represents all the output interfaces in general (EGRESS queue).
  • global-total
  • <interface name>


There are two ways how to add queues in RouterOS:

  • /queue simple menu - more user-friendly implementation of queues designed to ease configuration of simple,everyday queuing tasks (such as single client upload/download limitation, p2p traffic limitation, etc.).
  • /queue tree menu - simplest way to implement advanced queuing tasks (such as global prioritization policy, user group limitations) require market packet flows from /ip firewall mangle facility.

Simple Queues

name
(Text) —

lalala


Flow Identifiers


target-addresses
(comma separated list of IP prefixes) —

dst-address
(IP prefix) —

interface
(Name of interface, or all) —

direction
(One of both, upload, download or none) —

time
() —

p2p
() —

packet-marks
(Comma separated list of) —


HTB Properties


parent
(Name of , or none) —

priority
(1..8) —

queue
(SOMETHING/SOMETHING) —

limit-at
(NUMBER/NUMBER) —

max-limit
(NUMBER/NUMBER) —

burst-limit
(NUMBER/NUMBER) —

burst-threshold
(NUMBER/NUMBER) —

burst-time
(TIME/TIME) —


And corresponding options for global-total HTB queue:


total-queue
() — corresponds to queue only for global-total queue

total-limit-at
() — corresponds to limit-at only for global-total queue

total-max-limit
() — corresponds to max-limit only for global-total queue

total-burst-limit
() — corresponds to burst-limit only for global-total queue

total-burst-threshold
() — corresponds to burst-threshold only for global-total queue

total-burst-time
() — corresponds to burst-time only for global-total queue

Statistics

bytes
(NUMBER/NUMBER; read-only) —

packets
(read-only) —

dropped
(read-only) —

overlimits
(read-only) —

rate
(read-only) —

packet-rate
(read-only) —

queued-packets
(read-only) —

queued-bytes
(read-only) —

lends
(read-only) —

borrows
(read-only) —

pcq-queues
() —


And corresponding options for global-total HTB queue:


total-bytes
(read-only) — corresponds to bytes only for global-total queue

total-packets
(read-only) — corresponds to packets only for global-total queue

total-dropped
(read-only) — corresponds to dropped only for global-total queue

total-overlimits
(read-only) — corresponds to overlimits only for global-total queue

total-rate
(read-only) — corresponds to rate only for global-total queue

total-packet-rate
(read-only) — corresponds to packet-rate only for global-total queue

total-queued-packets
(read-only) — corresponds to queued-packets only for global-total queue

total-queued-bytes
(read-only) — corresponds to queued-bytes only for global-total queue

total-lends
(read-only) — corresponds to lends only for global-total queue

total-borrows
(read-only) — corresponds to borrows only for global-total queue

total-pcq-queues
(read-only) — corresponds to pcq-queues only for global-total queue