Project

General

Profile

Actions

Bug #13662

open

Limit traffic with weighted queues using WF2Q+

Added by Marcos M over 1 year ago. Updated over 1 year ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
Traffic Shaper (Limiters)
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:
Plus Target Version:
Release Notes:
Default
Affected Version:
Affected Architecture:

Description

Issue

Traffic is not limited based on the weight value within WF2Q+ queues resulting in higher-weighted queue traffic being slower than lower-weighted queue traffic.

Goal

Prioritize known traffic over other known traffic which shares the same bandwidth limit. For example:
  • A guest and home subnet should share a symmetrical (up/down) bandwidth limit of 10Mbps
  • Traffic from home can use all 10Mbps when no traffic exists from guest, and vice versa.
  • When both guest and home try to use 10Mbps at the same time, home has a 75% share (i.e. can use up to 7.5Mbps)

Setup

WAN_up limiter
  • Queue Management Algorithm: Tail Drop
  • Scheduler: WF2Q+
  • WAN_upQ_HIGH child queue:
    • Mask: Source addresses, /32
    • Queue Management Algorithm: Tail Drop
    • Weight: 75
  • WAN_upQ_LOW child queue:
    • Mask: Source addresses, /32
    • Queue Management Algorithm: Tail Drop
    • Weight: 25
WAN_down limiter
  • Queue Management Algorithm: Tail Drop
  • Scheduler: WF2Q+
  • WAN_downQ_HIGH child queue:
    • Mask: Destination addresses, /32
    • Queue Management Algorithm: Tail Drop
    • Weight: 75
  • WAN_downQ_LOW child queue:
    • Mask: Destination addresses, /32
    • Queue Management Algorithm: Tail Drop
    • Weight: 25

Rules

match in on $HOME inet from 10.0.1.0/24 to any dnqueue(1,3) label "QoS high" 
match in on $GUEST inet from 10.0.2.0/24 to any dnqueue(2,4) label "QoS low" 
pass in quick on $HOME $WAN_GW inet from 10.0.1.0/24 to any keep state label "QoS high" 
pass in quick on $GUEST $WAN_GW inet from 10.0.2.0/24 to any keep state label "QoS low" 

Actions

Also available in: Atom PDF