Share and Share Alike: Building QoS Fairness Into Your Network

Share and Share Alike: Building QoS Fairness Into Your Network

As an independent network architect with over three decades of experience, I’ve seen my fair share of networking challenges. But one that continues to vex both service providers and enterprise IT teams alike is the age-old problem of ensuring fair usage of limited bandwidth resources. It’s a delicate balancing act – you want to provide a great experience for your customers or users, but you also need to make sure that one noisy neighbor doesn’t hog all the good bandwidth.

Enter the world of Quality of Service (QoS). Now, I know what you’re thinking – “QoS? Isn’t that some ancient networking voodoo that’s more trouble than it’s worth?” And you wouldn’t be entirely wrong. Traditionally, implementing effective QoS has been a complex, error-prone endeavor, with countless knobs and dials to tweak. But hear me out, because there’s a new generation of QoS tools and techniques that can actually make your life easier while delivering tangible benefits.

The key, in my experience, is to focus on fairness. Gone are the days when you had to meticulously classify and prioritize every last network flow. The new frontier of QoS is all about ensuring each user or device gets their fair share of the available bandwidth, no matter what they’re doing. [1] And the best part? You can achieve this without getting bogged down in the nitty-gritty details.

Embracing the Airtime

One of the most promising developments in this space is the concept of Airtime Fairness. Unlike traditional QoS, which typically operates in the packet domain, Airtime Fairness looks at the problem through the lens of wireless airtime usage. [2] The idea is simple – instead of trying to micromanage each individual flow, you focus on ensuring that each client device connected to your wireless network gets a fair slice of the available airtime.

This might sound a bit abstract, but bear with me. Imagine you’ve got a bustling coffee shop, with a bunch of customers all vying for the sweet, sweet WiFi. Without Airtime Fairness, a single bandwidth-hungry user streaming 4K video could hog all the available airtime, leaving the poor souls trying to check their email out in the cold. But with Airtime Fairness, the network ensures that each device gets a fair share of that precious airtime, so everyone can enjoy a smooth, lag-free experience. [3]

The beauty of Airtime Fairness is that it’s not just for wireless networks. The same principles can be applied to wired networks as well, using a technique called Hierarchical QoS (HQOS). [4] Instead of relying on complex, flow-based classification, HQOS focuses on ensuring fairness at the per-client level, making sure that no single user or device can monopolize the available bandwidth.

A Cake Walk to Fairness

Of course, implementing effective QoS fairness isn’t as simple as just flipping a switch. There are still some technical considerations to keep in mind. But thankfully, the networking community has been hard at work, developing tools and technologies to make the process a whole lot easier.

One such example is the CAKE (Common Applications Kept Enhanced) queuing discipline, which combines a number of advanced QoS techniques into a single, easy-to-use package. [5] CAKE takes care of all the heavy lifting, automatically detecting and prioritizing different types of network traffic to ensure a fair, responsive experience for all users.

But CAKE is just the tip of the iceberg. There’s also the Deficit Round Robin (DRR) scheduler, which is designed to provide fair sharing of bandwidth among multiple flows or clients. [6] And let’s not forget about the magic of FQ-CoDel (Fair Queueing with Controlled Delay), which can work wonders in taming buffer bloat and keeping latency in check. [7]

The key thing to remember is that you don’t have to be a networking wizard to reap the benefits of these technologies. Many modern networking devices and operating systems, like OpenWRT, come pre-loaded with these advanced QoS features, making it easier than ever to get your network in tip-top shape. [8]

Tying it All Together

Now, I know what you’re thinking – “Okay, this all sounds great, but how do I actually put it into practice?” And that’s a fair question. Implementing effective QoS fairness isn’t exactly a walk in the park, but with the right approach, you can make it happen.

The first step is to take a good, hard look at your network topology and traffic patterns. Where are the potential bottlenecks? Which devices or users are consuming the most bandwidth? Understanding the lay of the land is crucial for developing a targeted QoS strategy.

Next, it’s time to start experimenting with some of those fancy queuing disciplines we talked about earlier. CAKE, FQ-CoDel, DRR – try them out, see how they perform, and find the one that best fits your needs. Don’t be afraid to get your hands dirty and tinker a bit. After all, that’s half the fun of being a network nerd, right?

And finally, don’t forget to keep an eye on things. Monitoring your network’s performance, identifying any trouble spots, and tweaking your QoS settings as needed will be key to maintaining a fair, responsive network. It’s an ongoing process, but trust me, the payoff is well worth it.

So there you have it, folks – the secret to building QoS fairness into your network. It’s all about embracing the airtime, leveraging the latest and greatest in queuing technology, and being willing to roll up your sleeves and get a little bit hands-on. With a little bit of effort and a whole lot of determination, you can transform your network from a chaotic free-for-all into a well-oiled, user-friendly machine. Happy networking!

[1] Reddit. (2021, October 28). Does QoS really matter when the bandwidth is not limited?. https://www.reddit.com/r/networking/comments/qtqz9i/does_qos_really_matter_when_the_bandwidth_is/

[2] OpenWRT Forum. (n.d.). Bufferbloat: Does Airtime FQ replace the need to shape per-client?. https://forum.openwrt.org/t/bufferbloat-does-airtime-fq-replace-the-need-to-shape-per-client/189074

[3] Kubernetes. (n.d.). Multi-tenancy. https://kubernetes.io/docs/concepts/security/multi-tenancy/

[4] OpenWRT Forum. (2017, November 19). Limit bandwith per ip/mac with openwrt luci. https://forum.openwrt.org/t/limit-bandwith-per-ip-mac-with-openwrt-luci/33699

[5] ipSpace.net. (2024, April). QUIC, NBAR, AI Nonsense. https://blog.ipspace.net/2024/04/quic-nbar-ai-nonsense.html

[6] Citrix. (n.d.). QoS Fairness. https://docs.netscaler.com/en-us/citrix-sd-wan/current-release/quality-of-service/qos-fairness.html

[7] Sonos Community. (2021, December 6). Asus RT-AX86U Sonos connection issue solved. https://en.community.sonos.com/components-and-architectural-228999/asus-rt-ax86u-sonos-connection-issue-solved-6852561

[8] Ubiquiti Community. (2022, March 16). Wireless Traffic QoS. https://community.ui.com/questions/Wireless-Traffic-QoS/2d49969e-612f-41fa-af29-1ca0dea4f86a

Facebook
Pinterest
Twitter
LinkedIn