Next day I download World of Warcraft on Battle.net client (which tends to use all of my available bandwidth, around 6-9 MB/s) and play CS:GO and my ping is around 500 miliseconds, which makes CS:GO totally unplayable. Then I disable SQM in OpenWRT gui and check my ping again - now it's 30 miliseconds on average (with WoW still being downloading in background). What did I do wrong when I configure OpenWRT?
Additional info: sometimes my bandwidth is really variable and is in between 2 MB/s to 9 MB/s.
My provider provides me with PPPoE fibre cable connection.
My router model is TP-Link WR841N v13 .
If the available bandwidth really varies THAT much, you're out of luck
SQM works by trading a liiiiitle bit of bandwidth for a moderate increase in latency, to avoid spikes... to do that, you need to know what your bw is... when that changes, you would have to reconfigure based on the new values.
Point is, if you tune it for 2MB/s you'll never see an increase in ping times but you'll permanently cap your speed. If, on the other hand, you tune for the max speed but in reality the speed is lower, well, then you get increase in ping times, since SQM no longer has enough bw to trade for ping.
It can probably be done, just not with SQM the way it is now, I guess.
I did configure SQM download speed to 1 MB/s. This didn't decrease my ping time. Ping still went to 500 ms and my download speed on Battle.net client just went to 1 MB/s. So with 8 MB/s free bandwidth ping was still high. I don't know now what's the purpose of that SQM now.
if you have fibre connection and effective bandwidth varies between 2-10MB/s than:
you may have ISP ONT problem
very unstable ISP service
and likely your router cannot keep up if SQM is used. bear in mind SQM does require CPU, low end devices have "just enough" CPU usually as networking is covered by chipset.
This is certainly a problem for sqm, have a look at cake-autorate, which tries to adjust the shaper rate according to the available capacity (however this will result in somewhat larger RTTs (aka ping) than with a static shaper). But @ 2Mbps things will be painful, no matter what...
But with the battlenet client downloading on the same machine as playing CS:GO you will need to use one of the prioritization add ons for sqm/cake (like qosify) so that CS:GO will get an unfair advantage over the download. If download and game run on different machines then cake's per-internal-IP-isolation might help.