Hi Kai,

Thanks for your help :-)

Code here:
/usr/share/info $ cat /proc/sys/net/ipv4/tcp_fastopen
1
/usr/share/info $ cat /proc/sys/net/core/default_qdisc
pfifo_fast
/usr/share/info $ cat /proc/sys/net/ipv4/tcp_congestion_control
cubic

dnsmasq may help because...if my understanding is correct, Steam Linux
client has a bug that it tries to query the DNS too often during
downloading, then its request got throttled. Please see
https://wiki.gentoo.org/wiki/Steam/Client_troubleshooting
Section "Slow download speeds".

For disk, I don't think it fits my case because for a downloading speed
of 100KB/s, disk write should not be a bottleneck.

I suspect it is related to Linux client because Steam Windows client on
my machine downloads at the normal speed...

Well, I am not that familiar with network tuning things...so I will
definitely check the methods you mentioned.

Thanks,
Danny


On 2017-03-15 21:07, Kai Krakow <hurikha...@gmail.com> wrote:
> Am Wed, 15 Mar 2017 21:53:44 +0100
> schrieb Kai Krakow <hurikha...@gmail.com>:
>
>> Am Wed, 15 Mar 2017 21:24:10 +0800
>> schrieb Danny YUE <sheepd...@gmail.com>:
>>
>> > Hi guys,
>> >
>> > I just got Steam installed and running successfully on my machine,
>> > and tried to get CS:GO running smoothly, which made me really
>> > happy :-D
>> >
>> > However when Steam is downloading games, the speed is extremely
>> > slow, down to several KB/s, even some bytes/s.
>> > I have already installed dnsmasq and it *was* good during
>> > downloading CS:GO (~4MB/s), but became slow again with Civilization
>> > V.
>> >
>> > I googled a lot but all point to installing dnsmasq, which I don't
>> > think is really helpful since I already have done that...
>> >
>> > Also I'm sure downloading region is correct.
>> >
>> > Anybody experienced the same issue with dnsmasq installed?
>> > Any clue is welcome and thanks in advance.
>>
>> Here, it's downloading with peak bandwidths of 48 mbytes/s but usually
>> it's around 38 mbytes/s. However, I sometimes see slowdowns, too. I
>> guess that games are downloaded file by file, and when a lot of small
>> files are left in the queue, it just cannot get good bandwidth.
>>
>> But I only see such slowdowns mostly short before the last few
>> megabytes of a game.
>>
>> Could you check if your downloaded games consist of many smallish
>> files? Then that could be the explanation.
>>
>> You could try activating fq_codel and tcp fastopen:
>>
>> In /proc/sys/net/ipv4/tcp_fastopen it should say 1.
>> In /proc/sys/net/core/default_qdisc it should say fq_codel.
>>
>> Also, you may want to try out bbr congestion control:
>>
>> In /proc/sys/net/ipv4/tcp_congestion_control it should say bbr.
>>
>> By recompiling the kernel, you can reconfigure the defaults for this
>> (and enable support). Some of these need modern kernels.
>>
>> Additionally, many small tcp request need a good portion of your
>> upload bandwidth and are very dependent on good round trip times.
>> Traditional DSL lines with ping times of 50-60ms can really slow down
>> requests of small files a lot due to three-way tcp handshaking, that
>> is, you could request only one smallish file per 100-120ms. This can
>> totally destroy the usable bandwidth. Maybe watch a running ping
>> while the downloads are running. If the ping times increase while the
>> download slows down, your bottleneck is the upload.
>>
>> But also keep in mind that traditional spinning disks may not keep up
>> with the bandwidth if confronted with many small files. If you're
>> using SSD all should be fine. I'm running on bcache with writeback
>> caching which gives a really good performance boost by adding a small
>> SSD to one or more big HDDs.
>
> BTW: I don't see how dnsmasq could help you here... It can do nothing
> about bandwidth. It only acts as a DNS cache which helps keeping
> latency of the DNS resolver down. But this doesn't matter here because
> during download, steam won't do many DNS requests.
>
> As already stated, part of the problem may be the upload, and/or bad
> queue handling within your broadband router. You can work around it
> with a traffic shaper and throttling upload below what's physically
> possible with your internet line, thus keeping the queue in front of the
> broadband router. That way, a traffic shaper could handle it and work
> around bad queue handling.
>
> To resolve the issue it is important to sophistically test the
> suggestions one step at a time, starting with the easy ones, and do
> your measurements.

Reply via email to