Ethernet port priority queue

OMG…

I have spent hours today trying to figure out queues..

I have played around alot, read a lot…

But I just cant seem to do what i want.

I want to assign priorities to all data based on ethernet port. Ive got 4 ports bridged and I want to give different priorities to each port.

What is the best way to do this ?

So… Um… Like this ?

add burst-limit=0/0 burst-threshold=0/0 burst-time=0s/0s comment=\
    "Main Computer" direction=both disabled=no dst-address=0.0.0.0/0 interface=\
    all limit-at=0/0 max-limit=0/0 name="Ether 2" parent=none priority=3 queue=\
    ethernet-default/ethernet-default total-queue=ethernet-default
add burst-limit=0/0 burst-threshold=0/0 burst-time=0s/0s comment="Computer 2" \
    direction=both disabled=no dst-address=0.0.0.0/0 interface=ether3 limit-at=\
    0/0 max-limit=0/0 name="Ether 3" parent="Ether 2" priority=6 queue=\
    ethernet-default/ethernet-default total-queue=ethernet-default
add burst-limit=0/0 burst-threshold=0/0 burst-time=0s/0s comment=Wireless \
    direction=both disabled=no dst-address=0.0.0.0/0 interface=ether4 limit-at=\
    0/0 max-limit=0/0 name="Ether 4" parent="Ether 2" priority=6 queue=\
    ethernet-default/ethernet-default total-queue=ethernet-default
add burst-limit=0/0 burst-threshold=0/0 burst-time=0s/0s comment=Misc \
    direction=both disabled=no dst-address=0.0.0.0/0 interface=ether5 limit-at=\
    0/0 max-limit=0/0 name="Ether 5" parent="Ether 2" priority=8 queue=\
    ethernet-default/ethernet-default total-queue=default-small

Will that do what I want ?

Hmmm I dont think so..

To clarify what I want to do…

If a high priority packet comes along other packets will be delayed until after the priority packet is delivered.

I dont care about bandwidth limiting. I want a higher priority ethernet port ( or IP ) to have full use of the connection and all the bandwidth if needed. I want to be able to assign different levels of this priority. BUT I want the higher priority even if none of the ports are in heavy use. My focus is more on latency then bandwidth.

There are no strict priority queues in RouterOS. It is impossible to say “transmit these packets first”. Priority in queues simply means “first give everything the limit-at CIR, when that has been satisfied, give those with a higher priority the bandwidth between limit-at and max-limit first and drop lower priorities to make that happen”.

Sightly paraphrased, a high priority does not mean “transmit first”, it means “drop last when giving more than the CIR”.

try this example
I put ether2 in higher priority
/interface bridge filter
add action=set-priority chain=forward comment=“” disabled=no in-interface=ether2 new-priority=1 passthrough=no
add action=set-priority chain=forward comment=“” disabled=no new-priority=1 out-interface=ether2 passthrough=no
add action=set-priority chain=forward comment=“” disabled=no in-interface=ether3 new-priority=8 passthrough=no
add action=set-priority chain=forward comment=“” disabled=no new-priority=8 out-interface=ether3 passthrough=no

MRMISSY, Hmmm… Thats a different way to go at it. I gotta think about that for a minute..

Fewi,

Booooo…

A whole day wasted…

Well no wonder I couldn’t do it… So you can just allocate bandwidth. That I figured out pretty quickly. Well maybe I will at least do that…

At least it was educational.

Ok I am obviously a noob on this one… MRMISSY what exactly does that rule set do ?

What I did was this.

add action=set-priority chain=forward comment="" disabled=no in-interface=ether2 new-priority=1 passthrough=no
add action=set-priority chain=forward comment="" disabled=no new-priority=1 out-interface=ether2 passthrough=no
add action=set-priority chain=forward comment="" disabled=no in-interface=ether3 new-priority=3 passthrough=no
add action=set-priority chain=forward comment="" disabled=no new-priority=3 out-interface=ether3 passthrough=no
add action=set-priority chain=forward comment="" disabled=no in-interface=ether4 new-priority=3 passthrough=no
add action=set-priority chain=forward comment="" disabled=no new-priority=3 out-interface=ether4 passthrough=no
add action=set-priority chain=forward comment="" disabled=no in-interface=ether5 new-priority=7 passthrough=no
add action=set-priority chain=forward comment="" disabled=no new-priority=7 out-interface=ether5 passthrough=no

As far as I can tell those rules dont seem to do anything…

Clearly my testing showed that between 2 computers both had the same priority…

The Queue rules however were useful and had a beneficial effect. The primary computer’s latency was almost completely unaffected when I saturated the link with the secondary connection. The secondary computer’s latency was effected drastically however when i saturated the link with the primary computer. So priorities do work nicely in simple queues in 5rc11..

Maybe I need to do something else with that set of Bridge Filter rules. I dont understand what they are just exactly. They look like firewall rules. But they are under the Bridge category. I dont understand at all what the Set-Priority does.

HI
these rules give different priority for each port alone when they bridged together
during the communication with server
or as far as I understood