Congestion Control Issues

General discussion about Gargoyle, OpenWrt or anything else even remotely related to the project

Moderator: Moderators

varmint
Posts: 25
Joined: Tue Oct 20, 2015 2:49 am

Re: Congestion Control Issues

Post by varmint »

I thought that was the issue so I used this site to perform the test when network was idle:

http://www.dslreports.com/speedtest

I think it works the same way you mentioned by sending pings at the same time as saturating up link and down link separately. With both qos disabled I got consistently high pings but slightly higher down and up speed whereas with qos enabled it reduced ping to very low values like 20 to 50 ms instead of 300-500 ms. However there were still some ping spikes, that might be whats causing the ping spikes in games as well.

Another thing which is driving me mad is that one computer takes up 50kB upload consistently for seeding torrents and skype client only gets 5kB when it should be other way around, Seems Skype instead of taking min fixed bandwidth adapts down to very low values when someone else uploads. Is there any mechanism to counter this?
TL-WR1043nd v2.1 running Gargoyle v 1.8.0

shm0
Posts: 67
Joined: Sat Sep 19, 2015 10:06 am

Re: Congestion Control Issues

Post by shm0 »

Here is my current setup.
Thanks to dumas777 because it is based on his approach.
I have a 150/5 Mbit cable line.
My Modem sync with 168960/5248 kbit/s.
I entered 156000 as download speed (150Mbit+Overhead).
It will also work with the 168960 but i get this speed only at night and will increase the time acc needs to adjust so i set it that way.
For upload rate you have to experiment.
For a starting point use 80% of your uplink speed and increase in small steps until you find the max upload rate.
To find the max upload rate start some upload through ftp or web upload. Ping a host on the wan side. Watch your pings increase the upload rate. If pings start to raise lower your upload rate again.
You maybe have to this on different days/time if your isp can't deliver stable rates.
I found my ping target for acc this way:
Download the software WinMRT or something similar.
Start the software enter a target like 8.8.8.8
Disable QoS on the Router.
Make sure no one else if using the internet when you do testing.
In the software you will see all gateways your traffic will go through and the ping times.
Start a heavy download.
Now switch back to winmrt and look at the ping times of the gateways.
Choose the first one where the ping times start to increase first.
Try to use this ip as your acc ping target and check if it works any better. You maybe have to try different target ips because of different routing.


My Upload Classes:
Image

My Download Classes:
Image

For the Game and TS3 class i used the guide directly from the gargoyle homepage to calculate the min bandwidth and percent Link
For those interactive classes (and definitely not on harmful traffic like torrents) you always want to use the min bandwidth setting. Because this will tell the used shaper (hfsc) to use the realtime mode. This mode will ensure that there is always the bandwidth available to the class as specified by min bandwidth.
And also 2xmin bandwidth for the first 20ms. So im not quite sure if it is a good a idea to set a min bandwidth higher than YourUploadBandwidth/2. You maybe want to modify the qos script to change this behavior.

For the Fast and Normal Class i tried to maintain a 3:1 ratio.

The Slow class is for all harmful traffic like torrents and downloaders.
A tip for torrent clients and traffic classification.
Usually you just set one port in your torrent client and forward this one. But there are more ports you can mostly find a setting in the advanced options to set a port range for this ports. You also have to include this ports in your torrent rule.

If it is still not working you maybe also want to hard limit the upload on the torrent and maybe other classes.

Sorry for the long post.

Volaris
Posts: 177
Joined: Thu May 01, 2014 1:02 pm

Re: Congestion Control Issues

Post by Volaris »

varmint wrote:I thought that was the issue so I used this site to perform the test when network was idle:

http://www.dslreports.com/speedtest

I think it works the same way you mentioned by sending pings at the same time as saturating up link and down link separately. With both qos disabled I got consistently high pings but slightly higher down and up speed whereas with qos enabled it reduced ping to very low values like 20 to 50 ms instead of 300-500 ms. However there were still some ping spikes, that might be whats causing the ping spikes in games as well.

Another thing which is driving me mad is that one computer takes up 50kB upload consistently for seeding torrents and skype client only gets 5kB when it should be other way around, Seems Skype instead of taking min fixed bandwidth adapts down to very low values when someone else uploads. Is there any mechanism to counter this?
Did you lower your upload bandwidth?
QoS Tip: Don't complicate your QoS settings. Gargoyle evenly splits available bandwidth between active devices as needed. Just delete all your classification rules and leave only one normal service class and you're done. No more arguing over bandwidth.

varmint
Posts: 25
Joined: Tue Oct 20, 2015 2:49 am

Re: Congestion Control Issues

Post by varmint »

@Volaris Yes I did lower upload bandwidth from 1050 down to 500 with no appreciable change in the ping spike or even the consistent ping values.

@shm0 No worries I appreciate your detailed response, I've tried what you suggested and using winMTR tested 8.8.8.8 with Ubuntu on download and qos disabled. Couldn't really tell which gateway's ping increased first so I went with the one having a more consistent ping from best to worst, and set that as ping target with auto ping limit. No other network activity while testing this.

I also set upload to 870k (80% of 1094) and gave a 3:1 ratio to fast and normal classes. Added a slow class in both qos with 1% as min bw. Also created an interactive class in both up and down qos and gave it 5% min perc and 400k min bw in upload and 9% min perc and 1024k min bw in download, but did not set it to minRTT as suggested by Volaris. This class is for Skype.

Added a rule which set single ip I know only uses Skype to the interactive class. Also added two torrent clients to slow class with ports I know they use. Not gonna add any gaming rules yet.

Will see if it makes any difference
TL-WR1043nd v2.1 running Gargoyle v 1.8.0

Post Reply