This feature currently is available on the Firewalla Gold and Firewalla Purple (in router mode) and a simpler version on the Firewalla Blue Plus
The core function of the Smart Queue is to help you to decongest your network, decrease buffer bloat, and allows you to have better zoom calls. This feature can be turned on with a single button, and if needed, you can further customize the policies behind it.
(there is a spelling mistake in the video, we will fix it in the future)
When to use this feature?
Like your home plumbing system, your internet access can be congested and backed up. This will result in buffer bloat which may increase delays in your network and applications. By default, this configuration will "smooth" out the traffic on your network and making all the flows "fair".
How to use this feature?
You can turn Smart Queue on for Firewalla Purple, Gold, and Blue Plus (only a simplified version is available for Blue Plus).
- On your box's main page, navigate to the Smart Queue feature.
- Toggle Smart Queue on.
- Tap Smart Queue Rules to see and edit your Smart Queue rules. Smart Queue rules can help you further tailor your network experience by allowing you to prioritize traffic and setting upload or download limits.
- You can also tap on Queue Type to change your queuing method from fq_codel to CAKE (currently only available for Purple).
Underneath the covers, the smart queue management feature can be broken down into these features:
Active queue management is the policy of dropping packets in the network before that buffer becomes full, often with the goal of reducing network congestion or improving end-to-end latency. Firewalla uses fq_codel.
- FQ_Codel (Fair Queuing Controlled Delay) is a queuing discipline that combines Fair Queuing with the CoDel AQM scheme. FQ_Codel uses a stochastic model to classify incoming packets into different flows and is used to provide a fair share of the bandwidth to all the flows using the queue. (source, Linux man pages)
- CAKE (Purple only, requires early access box) is another queuing method that is best used with low-speed internet.
When you turn on Smart Queue or Simple Smart Queue, you are turning on AQM.
Traffic Shaping and Rate Limit
Firewalla can set a download or upload limit from the following targets
- Category of traffic (video, gaming ...)
- IP Address/Range
Smart Queue rules can be applied to devices, device groups, networks, and all devices. To set a Smart Queue rule, tap on Smart Queue Rules on the Smart Queue screen. Then, tap "Add Smart Queue Rule" and select a target, a device or device group, and rule priority (Low, Default, or High). You can also set an upload or download limit if needed and schedule the rule if you don't want it to always be applied to your network. Once you save your rule, it should appear in the list of Smart Queue rules.
Note that if you create a rate-limiting rule that applies to All Devices or a device group, the rule will apply to all traffic from those devices cumulatively.
When there is conflict:
the priority of different levels are device > group > network > global(All devices).
- When there is conflict, device/group rules will take precedence over Network rules.
- When there is conflict, Network rules will take precedence over Global rules.
In addition to limiting bandwidth usage, you can prioritize traffic by creating smart queue rules. The priority applies to both Upload and Download traffic, it can be set to one of the following:
- High: For video conferencing/voice chat/gaming and other traffic that requires minimum delay.
- Default: Default priority for all traffic.
- Low: For P2P or other non-essential services run in the background to prevent network congestion.
When to use the Rate Limit feature?
- If you have gigabit download and upload, you shouldn't need to do any rate limit. Turning on the smart queue is enough.
- If you have the Gold, and your download or upload bandwidth is low, applying a simple rate limit that's 90% or 95% of your max bandwidth will make your delay a lot better. For example, Xfinity in the SF/Bay Area is 1Gbit down and 40Mbit up. To make your experience smoother, you may want to apply the rule to limit "upload traffic" to 90% or 95% of the max. (36, or 38mbit). This will minimize the delay in zoom meetings; Since the download rate is fairly high, you do not need to rate limit.
- Some of our earlier customers were able to shape video traffic to reduce bandwidth usage. Which reduces the quality of the video from 1080P to 720P.
- Traffic Shaping is less effective if your network is not congested.
- Some of you may use internet tools to test latency or buffer bloat. Please remember, buffer bloat is end to end, which means, Firewalla is just part of the puzzle (intermediate routers will also buffer). For example, if you are running the test when your neighbors are also busy ... it is likely you will get a lot more buffer bloat than if you are doing it when people are at using their internet.
How are these rules prioritized when they may be in conflict? So say I set a smart queue rule to limit video sites to 5 Mbps for all devices all the time. But then I have a second rule to limit video sites to 2 Mbps for all devices daily only between midnight and 6 AM... Will the more restrictive rule be prioritized when in effect as they would otherwise both seem to both apply simultaneously ...
This is a very good question. In the current version, it's first-match, only the first rule matching the traffic will take effect. So it's not the more restrictive rule, and it's not "both apply" either.
The way to adjust the order of rules are not provided in the app, as we want to simplify the way how rules are used. We may come up with a better way in the future release.
Good to know. Another option would be to have some intelligence that would identify rule overlaps/conflicts and disallow saving of the second rule until the overlap is eliminated (in my example, this could easily be accomplished by defining two non-overlapping time periods).
Got it. Thanks for the suggestion. Well noted.
Yes, I think we can do something about it.
Wish this was available on Red, especially since the advisor pointed me to Red based on my ISP speed (thanks rural America!). Any chance this will be able to be added to Red, or is this a limitation on CPU?
Is there anything showing what the difference is between this feature on Gold and Blue Plus?
This feature will not be on the red due to memory + CPU limitations.
The blue plus only has the fairness algorithm, it can not do shaping or prioritization. Shaping + prioritization requires a physical in and out port.
What if I have this:
So does Game traffic actually get reduced to 512kbps or does the "All Internet" match first and set all bandwidth to unlimited? So it's unclear on the rule priority for different traffic targets on the SAME group/device.
Please sign in to leave a comment.