Community discussions

MikroTik App
 
PackElend
Member Candidate
Member Candidate
Topic Author
Posts: 268
Joined: Tue Sep 29, 2020 6:05 pm

Global Parent for Simple Queue really needed?

Thu Dec 01, 2022 2:24 pm

Hi MTs,
that is my first attempt in EN section, lets how it goes face-smile

ROS v7.5

As I got my mikrotiks around two years ago, the vendor created a basic configuration which includes:
/queue simple
  add limit-at=100M/100M max-limit=1G/1G name=admin target=vlan20-admin.sfp+
  add limit-at=100M/100M max-limit=1G/1G name=mieter1 target=vlan21-mieter1.sfp+
  add limit-at=100M/100M max-limit=1G/1G name=mieter2 target=vlan22-mieter2.sfp+
  add limit-at=100M/100M max-limit=1G/1G name=mieter3 target=vlan23-mieter3.sfp+
  add limit-at=50M/50M max-limit=100M/100M name=wlan-gast target=br.wlan-gast 
Thanks to a discussion with BRMateus2 about PCQ Queue size and total queue size recommendations for 1G/50M internet I upgraded the simple queue configuration but still not using a global parent as it was confirmed that ROS will handle ensure that bandwidth is equally distributed.
/queue simple
  add limit-at=0/0       max-limit=0/0         name=Intranet_unlimited  target=10.10.0.0/18 dst=10.10.0.0/18   queue=pcq-up/pcq-down 
  add limit-at=10M/10M   max-limit=90M/90M     name=USER1                target=VLAN_USER1                      queue=pcq-up/pcq-down
  add limit-at=10M/10M   max-limit=90M/90M     name=USER2                target=VLAN_USER2                      queue=pcq-up/pcq-down
  add limit-at=10M/10M   max-limit=90M/90M     name=USER3                target=VLAN_USER3                      queue=pcq-up/pcq-down
  add limit-at=10M/10M   max-limit=90M/90M     name=USER4                target=VLAN_USER4                      queue=pcq-up/pcq-down
  add limit-at=10M/10M   max-limit=90M/90M     name=USER5                target=VLAN_USER5                      queue=pcq-up/pcq-down
  add limit-at=10M/10M   max-limit=90M/90M     name=USER6                target=VLAN_USER6                      queue=pcq-up/pcq-down
  add limit-at=10M/10M   max-limit=90M/90M     name=USER7                target=VLAN_USER7                      queue=pcq-up/pcq-down
  add limit-at=10M/10M   max-limit=90M/90M     name=USER8                target=VLAN_USER8                      queue=pcq-up/pcq-down
  add limit-at=10M/10M   max-limit=90M/90M     name=GUEST                target=VLAN_GUEST                      queue=pcq-up/pcq-down
  add                    max-limit=10M/10M     name=SERVICES-GLOBAL      target=Combo1                          
  add limit-at=1M/1M     max-limit=10M/10M     name=COMMON-SERVICES      target=VLAN_COMMON                     queue=pcq-up/pcq-down  parent="SERVICES-GLOBAL"
  add limit-at=1M/1M     max-limit=10M/10M     name=SYSTEM-SERVICES      target=VLAN_SYS                        queue=pcq-up/pcq-down  parent="SERVICES-GLOBAL"
  add limit-at=1M/1M     max-limit=10M/10M     name=IoT                  target=VLAN_IoT                        queue=pcq-up/pcq-down  parent="SERVICES-GLOBAL"
and
[adminuser@CR_2B_MT-CCR1009-8G-1S-1S+] /queue/type> print
Flags: * - default 
 5   name=”pcq-up” kind=pcq pcq-rate=0 pcq-limit=4KiB pcq-classifier=src-address,dst-address pcq-total-limit=400KiB pcq-burst-rate=0 pcq-burst-threshold=0 pcq-burst-time=10s pcq-src-address-mask=32 pcq-dst-address-mask=32 pcq-src-address6-mask=128 
     pcq-dst-address6-mask=128 
 6   name=”pcq-down” kind=pcq pcq-rate=0 pcq-limit=4KiB pcq-classifier=src-address,dst-address pcq-total-limit=400KiB pcq-burst-rate=0 pcq-burst-threshold=0 pcq-burst-time=10s pcq-src-address-mask=32 pcq-dst-address-mask=32 
     pcq-src-address6-mask=128 pcq-dst-address6-mask=128 

BUT recently I noticed, if a VLAN continuously downloads it consumes all bandwidth although minimum bandwidth is set for User 3.Minimum bandwidth is ignored but why?
image_2022-11-08_09-42-28 (3).png
but no overload on of the hardware:
image_2022-11-08_09-52-14.png
so I double checked the configuration:

basic:
image_2022-11-08_09-42-28.png
advanced:
image_2022-11-08_09-42-28 (2).png
So the only “workaround” I figured out, is to use a global entry
image_2022-11-08_20-43-04.png
1    name=”UPLINK” target=”” parent=none packet-marks=”” priority=8/8 queue=default-small/default-small limit-at=0/0 max-limit=20M/20M burst-limit=0/0 burst-threshold=0/0 burst-time=0s/0s bucket-size=0.1/0.1 
and making all previous top level entries a child of that one.
It only works if the target is set to
0.0.0.0/0
, putting it on the uplink only does not have any affect.

My theory is, that is not known to the algorithm to which route/interface the 20M refer to, means it does not know that all VLAN interfaces eat from the same cake.So if User 6 continuously downloads it always eats free bandwidth if a different user makes a break ending up eating the full bandwidth.How to tell the algorithm that the 20M have to be shared between all top levels queues?

As my vendor uses the same approach as in the code block above for the initial configuration, I’m quite surprised that I need this global parent.
Any clue why?

thx
stefan
You do not have the required permissions to view the files attached to this post.

Who is online

Users browsing this forum: baragoon, BinaryTB, Google [Bot], raphaps, rplant, Semrush [Bot] and 73 guests