Downloading affecting other client's internet

Hello OpenWrt forum!

I am currently using rpi4 as my main router with LuCI openwrt-23.05 branch.

I have already set up SQM cake.

My network environment and problem is following.

I have few desktops (A,B,C) and one unraid server.

When I am downloading through deluge on my server, it does not affect internet at all.

However - for example - when desktop A is playing games (League of Legends or CS:GO or any real time online games) and any other desktop is downloading something, it will severely affect ping of the desktop A.

It affects other way around as well. (Desktop B and C playing game and desktop A downloading something will make anything unplayable.)

Currently, desktop A is directly connected to router via ethernet and desktop B and C is connected via powerline. So, I thought powerline was some kind of bottleneck and tested direct connection via ethernet or even wifi and it still affects the same.

What I don't really understand is why is downloading something from my server, it wouldn't affect but desktops will each other.

I am hoping to solve this but I would love to have some input from more advanced users. I would greatly appreciate any input.

Make tests wired to LAN using https://www.waveform.com/tools/bufferbloat and post the result, if possible connecting directly to provider's ethernet port. Paste 2 result links.

Please connect to your OpenWrt device using ssh and copy the output of the following commands and post it here using the "Preformatted text </> " button:
grafik
Remember to redact passwords, MAC addresses and any public IP addresses you may have:

ubus call system board
cat /etc/config/network
cat /etc/config/wireless
cat /etc/config/dhcp
cat /etc/config/sqm
tc -s qdisc

Thanks for your input!

Buffer bloat Test Results - directly connected to ISP's ONT:

  1. https://www.waveform.com/tools/bufferbloat?test-id=4bbbd917-ffc7-4f1e-91c4-921bfa5dffa0
  2. https://www.waveform.com/tools/bufferbloat?test-id=d9ae6ce6-65ea-4b87-a0b5-fe99dd2a0501

Buffer bloat Test Results - connected to rpi4 openwrt router:

  1. https://www.waveform.com/tools/bufferbloat?test-id=151e29a2-6882-4aff-9131-368747a75c1d
  2. https://www.waveform.com/tools/bufferbloat?test-id=d9df0fca-21f9-4f36-95a1-e745d0113674

And here are the results of the commends.

[root@d83add / 49°]# ubus call system board
at /etc/config/network
cat /etc/config/wireless
cat /etc/config/dhcp
cat /etc/config/sqm
tc -s qdisc{
        "kernel": "5.15.150",
        "hostname": "rpi4-d83add2c59",
        "system": "ARMv8 Processor rev 3",
        "model": "Raspberry Pi 4 Model B Rev 1.5",
        "board_name": "raspberrypi,4-model-b",
        "rootfs_type": "ext4",
        "release": {
                "distribution": "OpenWrt",
                "version": "23.05.3",
                "revision": "r23809-234f1a2efa",
                "target": "bcm27xx/bcm2711",
                "description": "OpenWrt 23.05.3 r23809-234f1a2efa"
        }
}
[root@d83add / 47°]# cat /etc/config/network

config interface 'loopback'
        option device 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fd1f:5a42:6256::/48'
        option packet_steering '1'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'eth0'

config interface 'lan'
        option device 'eth0'
        option proto 'static'
        option ipaddr 'REDACTED'
        option netmask '255.255.255.0'
        option ip6assign '60'

config interface 'wan'
        option proto 'dhcp'
        option device 'eth1'

[root@d83add / 47°]# cat /etc/config/wireless

config wifi-device 'radio0'
        option type 'mac80211'
        option path 'platform/soc/fe300000.mmcnr/mmc_host/mmc1/mmc1:0001/mmc1:0001:1'
        option channel '36'
        option band '5g'
        option htmode 'HT20'
        option disabled '1'
        option country '00'
        option legacy_rates '0'

config wifi-iface 'default_radio0'
        option device 'radio0'
        option network 'lan'
        option mode 'ap'
        option ssid 'ap103'
        option encryption 'psk2+ccmp'
        option key 'somerandomhardtoguesspassword'

[root@d83add / 47°]# cat /etc/config/dhcp

config dnsmasq
        option domainneeded '1'
        option boguspriv '1'
        option filterwin2k '0'
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option local '/lan/'
        option domain 'lan'
        option expandhosts '1'
        option nonegcache '0'
        option cachesize '5000'
        option authoritative '1'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
        option nonwildcard '1'
        option localservice '1'
        option ednspacket_max '1232'
        option filter_aaaa '0'
        option filter_a '0'
        option dnsforwardmax '2300'
        option min_cache_ttl '270'
        list address '/router/REDACTED'
        list rebind_domain 'dns.msftncsi.com'
        option serversfile '/var/run/adblock-fast/dnsmasq.servers'

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'
        option dhcpv6 'server'
        option ra 'server'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'

config dhcp 'wan'
        option interface 'wan'
        option ignore '1'

config odhcpd 'odhcpd'
        option maindhcp '0'
        option leasefile '/tmp/hosts/odhcpd'
        option leasetrigger '/usr/sbin/odhcpd-update'
        option loglevel '3'

config host
        option ip 'REDACTED'
        option name 'REDACTED'
        list mac 'REDACTED'

config host
        list mac 'REDACTED'
        option ip 'REDACTED'

config host
        list mac 'REDACTED'
        option ip 'REDACTED'

config host
        option name 'REDACTED'
        list mac 'REDACTED'
        option ip 'REDACTED'

config host
        list mac 'REDACTED'
        option ip 'REDACTED'

config host
        list mac 'REDACTED'
        option ip 'REDACTED'

[root@d83add / 47°]# cat /etc/config/sqm

config queue 'eth1'
        option enabled '1'
        option interface 'eth1'
        option download '950000'
        option upload '930000'
        option qdisc 'cake'
        option script 'piece_of_cake.qos'
        option linklayer 'ethernet'
        option debug_logging '0'
        option verbosity '5'
        option overhead '44'

[root@d83add / 47°]# tc -s qdisc
qdisc noqueue 0: dev lo root refcnt 2
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc mq 0: dev eth0 root
 Sent 12080250 bytes 14518 pkt (dropped 0, overlimits 0 requeues 211)
 backlog 0b 0p requeues 211
qdisc fq_codel 0: dev eth0 parent :5 limit 10240p flows 1024 quantum 1514 target 5ms interval 100ms memory_limit 4Mb ecn drop_batch 64
 Sent 5097099 bytes 4328 pkt (dropped 0, overlimits 0 requeues 133)
 backlog 0b 0p requeues 133
  maxpacket 1514 drop_overlimit 0 new_flow_count 44 ecn_mark 0
  new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth0 parent :4 limit 10240p flows 1024 quantum 1514 target 5ms interval 100ms memory_limit 4Mb ecn drop_batch 64
 Sent 722292 bytes 1641 pkt (dropped 0, overlimits 0 requeues 4)
 backlog 0b 0p requeues 4
  maxpacket 82 drop_overlimit 0 new_flow_count 1 ecn_mark 0
  new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth0 parent :3 limit 10240p flows 1024 quantum 1514 target 5ms interval 100ms memory_limit 4Mb ecn drop_batch 64
 Sent 1026186 bytes 2822 pkt (dropped 0, overlimits 0 requeues 2)
 backlog 0b 0p requeues 2
  maxpacket 264 drop_overlimit 0 new_flow_count 2 ecn_mark 0
  new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth0 parent :2 limit 10240p flows 1024 quantum 1514 target 5ms interval 100ms memory_limit 4Mb ecn drop_batch 64
 Sent 3773140 bytes 3878 pkt (dropped 0, overlimits 0 requeues 62)
 backlog 0b 0p requeues 62
  maxpacket 1514 drop_overlimit 0 new_flow_count 36 ecn_mark 0
  new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth0 parent :1 limit 10240p flows 1024 quantum 1514 target 5ms interval 100ms memory_limit 4Mb ecn drop_batch 64
 Sent 1461533 bytes 1849 pkt (dropped 0, overlimits 0 requeues 10)
 backlog 0b 0p requeues 10
  maxpacket 1514 drop_overlimit 0 new_flow_count 5 ecn_mark 0
  new_flows_len 0 old_flows_len 0
qdisc cake 800b: dev eth1 root refcnt 2 bandwidth 930Mbit besteffort triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms noatm overhead 44
 Sent 1980135 bytes 7426 pkt (dropped 0, overlimits 189 requeues 0)
 backlog 0b 0p requeues 0
 memory used: 8256b of 15140Kb
 capacity estimate: 930Mbit
 min/max network layer size:           36 /    1500
 min/max overhead-adjusted size:       80 /    1544
 average network hdr offset:           14

                  Tin 0
  thresh        930Mbit
  target            5ms
  interval        100ms
  pk_delay          9us
  av_delay          1us
  sp_delay          0us
  backlog            0b
  pkts             7426
  bytes         1980135
  way_inds           83
  way_miss          594
  way_cols            0
  drops               0
  marks               0
  ack_drop            0
  sp_flows            4
  bk_flows            1
  un_flows            0
  max_len          4482
  quantum          1514

qdisc ingress ffff: dev eth1 parent ffff:fff1 ----------------
 Sent 10997271 bytes 12843 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc cake 800c: dev ifb4eth1 root refcnt 2 bandwidth 950Mbit besteffort triple-isolate nonat wash no-ack-filter split-gso rtt 100ms noatm overhead 44
 Sent 11384873 bytes 12843 pkt (dropped 0, overlimits 2727 requeues 0)
 backlog 0b 0p requeues 0
 memory used: 513466b of 15140Kb
 capacity estimate: 950Mbit
 min/max network layer size:           46 /    1500
 min/max overhead-adjusted size:       90 /    1544
 average network hdr offset:           14

                  Tin 0
  thresh        950Mbit
  target            5ms
  interval        100ms
  pk_delay        148us
  av_delay         52us
  sp_delay          0us
  backlog            0b
  pkts            12843
  bytes        11384873
  way_inds          990
  way_miss          579
  way_cols            0
  drops               0
  marks               0
  ack_drop            0
  sp_flows            3
  bk_flows            1
  un_flows            0
  max_len         60560
  quantum          1514

Is your CPE performing NAT for 2nd time?

1 Like

Thanks for your reply.

What exactly is CPE?

CPE is an acronym for Customer Premise(s) Equipment, which refers to any piece of connected equipment that is used for accessing the Internet or generally accessing services on a provider network, whether directly or indirectly connected to that network.

1 Like

As far as I know the ONT from Telus does not perform any NAT.... But that's my guess.

What I don't understand is why would downloading on my server which is in the same network wouldn't affect any other client while one PC downloading will affect all other PC's internet.

Got it. In this case I assume it will be ONT.

Thank you!

You need to fine tune SQM to your bandwidth so that you get fairness between connection streams and to some degree users.

Is there specific SQM queue Discipline that you recommend?


This is what I am using right now. And I have made sure to set the ingress and egress to the speed that doesn't cause bufferbloat.

You need to tune bandwidths
https://www.waveform.com/tools/bufferbloat -> note upload bandwidth and download bandwidth

Multiply them by 1024
set download/ingress to 0 and upload to half - measure, then to 3/4 measure, 7/8 measure, when upload added latency starts to increase make a step back.
Then repeat with download/ingress.