Making WiFi fast
Making WiFi fast
Posted Nov 10, 2016 3:11 UTC (Thu) by mtaht (subscriber, #11087)In reply to: Making WiFi fast by sourcejedi
Parent article: Making WiFi fast
So... we backed off from the more aggressive 5ms default. Most of our recent testing has been against the original 5ms target with pretty good results. We also reverted back to the quantum 1514 default, rather than 300, as that hurt us on cpu on small platforms.
So, after more stuff lands it is my hope that we will revert these two changes back to the theoretically more correct 5% of 100ms that the target represents. Also, codel's taking place 2-10ms behind the actual packet delivery, presently.
In the talk I suggested shrinking txops more explicitly under contention. There is also the idea of turning codel's drop scheduler off at either a "good sized" aggregate, or an aggregate close to the ideal size for a given station, to move the knee of the curve closer to full utilization, where currently it turns off at a single large packet outstanding. We've also discussed dynamically modifying the target via ewma based on the workload and other common delays in the system (contention and interference).
Testing this stuff is HARD! Nobody's ever applied AQM technology to wifi or aggregating macs before, so far as I know. We will never get a perfect result, the goal is merely to get one that is reasonably good across most rates, and across most common numbers of stations.
I struggle to rewrite the description - one thing that is not obvious is that the fq_codel implementation for wifi is one very large set of queues for the entire device, with the per-station pointer within it disambiguating things. This was michal kazior's innovation - prior to that I'd been stuck on the idea of a full fq_codel instance created per station, with perhaps 64 queues each (and possibly derived from cake's set associative version of fq_codel). Now there's tons of queues and if there is a station collision on a given queue, it gets sorted out. Much better than what I'd had in mind!
It was my first talk on the work, mae culpa!
Still working on rephrasing the troublesome bit in the article, give me a few hours.