Manual:Queues - PCQ

From MikroTik Wiki
Revision as of 17:32, 11 March 2010 by Marisb (talk | contribs)
Jump to navigation Jump to search

Applies to RouterOS: 2.9, v3, v4

Usage

PCQ was introduced to optimize massive QoS systems, where most of the queues are exactly the same for different sub-streams. For example a sub-stream can be download or upload for one particular client (IP) or connection to server.

PCQ algorithm is very simple - at first it uses selected classifiers to distinguish one sub-stream from another, then applies individual FIFO queue size and limitation on every sub-stream, then groups all sub-streams together and applies global FIFO queue size and limitation.

PCQ parameters:

  • pcq-classifier (dst-address | dst-port | src-address | src-port; default: "")  : selection of sub-stream identifiers
  • pcq-rate (number) : maximal available data rate of each sub-steam
  • pcq-limit (number) : queue size of one sub-stream in packets
  • pcq-total-limit (number) : queue size of global FIFO queue


PCQ Algorithm


So instead of having 100 queues with 1000kbps limitation for download we can have one PCQ queue with 100 sub-streams

Classification Examples

To better understand classification we will take a list of 18 packet streams from specific address and port, to a specific address and port. Then we will choose a classifier and divide all 18 packet streams into PCQ sub-streams

Classifiers

Classifiers

PCQ Rate Examples

Here it is possible to see what happens if PCQ-rate is, or isn't specified. I must noted that if both limits (pcq-rate and max-limit) are unspecified, queue behavior can be imprecise. So it is strongly suggested to have at least one of these options set.


Classifiers


Classifiers

See Also