Active Queue Management (AQM): the key to reducing latency
The battle for network speed and capacity is on in home networks. For smooth videoconferencing and online gaming services, low latency is key. Streaming and download services require high bandwidth. All that competition for speed and capacity puts your network quality under serious pressure. Active Queue Management (AQM) to the rescue!
The basics: buffers and queues
To understand what Active Queue Management is about, we must start with memory buffers and queues. Most modern network devices like routers and switches come with a set of queues, which all have a buffer to store arriving packets. The queues absorb naturally occurring bursts of traffic: when there is too much traffic, it is temporarily held back in the buffer to avoid unnecessary losses.
However, when high-speed (often TCP-based) applications put too much pressure on the network, these will start to fill up and block real-time data in the queues. The result: high delay and possibly varying packet delays, also known as latency and jitter. This will severely degrade interactive applications or even break them completely (‘buffer bloat’).
→ Deeper dive into latency? Read our low latency blog post series.
Why embrace Active Queue Management?
Queues used to operate on the principle of tail drop: a packet was put in the queue only if there was still enough space, if not, the packet was dropped.
Active Queue Management (AQM) is smarter: it actively marks or drops packets before the queue is full, usually by maintaining mark/drop probabilities. In this way, AQM:
- minimizes the length of queues, thereby combatting buffer bloat and reducing network latency;
- helps flow sources to control their sending rates without unnecessary losses (e.g. through Explicit Congestion Notification (ECN));
- uses different techniques to protect flows from negative effects of other more aggressive or misbehaving flows.
Initial tests with PIE AQM have shown that it greatly improves the customer experience!
Although an AQM algorithm that drops packets could be considered to be something negative, it does avoid buffer bloat while not significantly affecting any running application. For example: a TCP session will slow down when packet loss occurs, which will lower that TCP traffic speed a little, but this is usually not as critical as having huge latencies and jitter on latency-sensitive real-time applications. When the algorithm uses marking instead of dropping, that’s even better as it asks the sender to slow down without inducing packet loss.
Read more about the impact of high latencies applied to a gaming application:
Lag or bad aim in Counter-Strike? QED: Quality of Experience Delivered
How to choose the best AQM algorithm
There is a range of AQM and hybrid AQM/fairness queueing algorithms available. While they are all aimed at achieving low queue delay and high network throughput, their benefits will differ according to the use case. To determine which algorithm performs best under what conditions, you’ll need to conduct extensive tests and be able to optimize the vast array of AQM algorithm parameters.
Relying on Excentis ByteBlower for your testing
Test different applications (VoIP, web traffic, video conferencing, gaming) with background traffic, adjust the different queue management settings and then analyze all the results: choosing the best AQM algorithm requires a bit of expertise. Using ByteBlower, our traffic generator, we can help you:
- simulate real applications;
- look for an easy way to measure all KPIs (latency statistics, application fairness, transient behavior of algorithms at flow startup, etc.);
- benchmark the results against quality perception thresholds
How does ByteBlower help?
With ByteBlower, we can create real field-like traffic patterns while analyzing the customer’s real Quality of Experience (QoE). The ByteBlower visualization makes it easy to compare different latency (C)CDF diagrams and allows us to quickly compare different AQM algorithms and settings while testing many application scenarios.
Read more on the topic in these articles:
- A network traffic generator that analyses latency the right way
- Download: How to measure latency: 4 crucial KPIs
- Is low latency the holy grail to fantastic user experience?
- QoE Webinar