DL-WRX36 lower latency during/post network load

I got my router setup with OpenWrt finally and it took some time to tweak everything. I setup SQM for my 500/20 speeds and the bufferbloat results are A+ now.

With that said, I have a few questions.

Firstly, when doing a bufferbloat test or a speedtest, I’ve noticed often times my ping is lower during or after a test/load than it is at idle. I understand idle latency usually is just a quick ping on a speedtest vs constant pings once the down/up starts. I guess why I’m even mentioning this, is there a way to trick the router into this lower ping constantly? I got from ~30 ping to about ~27 under load sometimes. I read somewhere it might have to do with CPU idling, but I’m not sure how accurate that is. I also notice when testing in game, I can start the game and have around ~40 ping but after a bufferbloat/speedtest I’ll have ~35. Surely there’s a way to make this lower latency the default.

Second, sometimes when doing a bufferbloat/speedtest, the test doesn’t recognize a couple spikes but a game will, my priority is the game not having large latency spikes/jitter, is there a way to solve this?

Lastly, I am curious about any other optimizations I can do for latency. I understand network basics and I know you can’t literally lower your ping, but is there any way to optimize my router and squeeze a few extra ms?

Thanks in advance

Edit: I might also ask, do routers have efficiency modes or power management that can be disabled? (DL-WRX36 is my router)

To be clear, you're asking how to gain 3 milliseconds?

Can you explain this in more detail?

Squeeze 3 ms, correct?

If so, I doubt it's enabled anyway.

You can use CPU performance governor and see if that makes a difference in ping.

echo performance > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor

Note:
For a test just run the command, but the setting will be lost after boot, so add it to system->startup, local startup if you want to run the command during boot.

To see your current governor:
cat /sys/devices/system/cpu/cpufreq/policy0/scaling_governor

1 Like

Also depends on the ISP technology. Cable uses time allocation between customers to share the uplink. A random ping during a period of inactivity may need to wait for a new time slot to be set up. Once traffic is moving the timing becomes more optimal.

1 Like

No, not asking how to gain 3ms. 30ms would be great, but I usually hover from 40-45 sometimes higher in game. With SQM on, the download portion increases jitter causing this to hover from 40-55 but the upload portion reduces this to as low as 35ms. This is at peak hours. At non peak hours, I have seen as low as 28 or 29ms (before OpenWrt/new router) Basically, I’m curious how to trick my router into doing whatever it’s doing during the upload portion of the test, but constantly.

I will give this a try right now, thanks a ton.

Gave it a try and as I’m not at my PC I couldn’t do a proper comparison. I used a SSH terminal on my phone and my AppleTV connected via ethernet to do a speed test before an after. Speedtest before gave me 43ms and the 4 speed tests after have given me 30ms or below ping. Obviously this doesn’t say much and could’ve been coincidence, plus it’s just a speedtest but it seems to have done something?

I understand. Ignore everything you read. Now, when doing a test my ping goes from 40-45 constant to a steady 35-36 in game during the upload portion of a bufferbloat test, this is router based in your opinion, right?

Here is a video of what is happening, it happens every single time.

A video displaying the occurrence

Maybe someone else will see - because I don't see anything. I honestly don't see what you say "happens every single time".

But TBH, I rarely see issues people attempt to present from these testing sites. I was under the impression you had a real connectivity issue.

Question:

What software is this; and where is it running?

If you mean this small spike here:

Screenshot 2023-07-07 164454
Screenshot 2023-07-07 164434

  • This is negligible - to be clear, is this your concern, or something else (I ask because I inquired if you were trying to gain 3 ms, and then you told me 30 - I only see a ~3 ms variance in your video)?
  • My though on the culprit is the client device - likely its NIC or CPU - but to be clear, if this is what you're referring to, it's hardly an issue

Are you purposefully trying to be complicated? I’ve been very clear in my explanation that I’m referring to the drop in latency and jitter when the upload phase of the bufferbloat test begins…

To entertain you though, the graphs are running the game itself (Valorant). And again, I’m not talking about 30ms drop to 27ms gains, I’m talking about the 40-50ms you see in the video that drops to a very stable 35ms during the upload portion of the test.

Nevermind - I'll stop responding, I guess I can't see the issue. I assume that means my screenshot didn't capture the issue you're describing. Apologies. Carry on.

I hope the bset for resoultion of your problem.

I’m sorry for being rude, I just felt like I’ve been clear and have been trying to get replies for a couple days now and no one seems give me any help they just say it’s my ISP or something else.

I can’t get a timestamp on mobile for you, but if you watch the video, as soon as it says “Warming up…” under Upload (after the download test) you will see in the graphs (in game) that the ping drops to a stable 35-36ms and stays until the upload test finishes. It then “normalizes” back to 40-50ms.

I’m not claiming this gain would be life changing, but like anyone here we want to be optimized and everyone has different priorities. I personally want low latency and there seems to be opportunity here to gain stability and lower latency.

To be clear:

  • You're playing a game on a client, game says ~45 ms
  • You then run an upload test on an unrelated software/site (e.g. web browser/bufferbloat) while playing the game from the same client, game "stabilizes" to displays ~35 ms
  • You want game to always say 35 ms
  • You want an OpenWrt fix for this

Correct?

Essentially yes. I understand they aren’t literally correlated, but the test obviously has an effect on the game. In theory, it should be possible to force the router into whatever state it’s in during the upload portion of the test, which leads to reduced latency.

you originally have started 2 threads with slightly varying info, the other one was I have what I would consider an anomaly in my setup and am curious if there is a way to take advantage of it (DL-WRX36). In that other thread you are mentioning 2 things that are noteworthy parts probably kicking in here as negative side effects:

  • it is a cable internet/DOCSIS Internet access
  • you are mentioning temporarily better results during speedtests

Adding some thoughts to such a scenario, that you should be aware of:

  • throughput/ping/latency may vary a lot in a shared cable segment, if there are many subscribers in the same segment and many of them showing traffic activity at the same time, especially if capacity in the segment is close to being saturated, as then provider-sided traffic shaping will kick in, which has unpredictable blackbox behavior from subscriber perspective)
  • cable companies in particular sometimes on top can be tricky a-holes, as some of their traffic shaping equipment is actually able to detect that you are running a well-known speedtest. And while doing so, to make your Internet connection look better, you might temporarily get assigned higher shaping priority, to make your test results feel good. This is not a made-up story, we just don’t know, if your provider is up to things like this. But this is not something obscure or rare.

Both are aspects that you cannot detect or influence on your own OpenWRT equipment. Could still be that there are other things in your particular case in your local network.

Good description. I was just gonna tell the OP that when considering and averaging then subtracting (or adding as one may view it) the jitter - that it's the same.

yeah, you’re right, I think the second is more likely considering everything but also I will hold out hope that’s not the case until I get a definitive answer and see if I can figure this out