Need some help diagnosing slow wired performance

I recently got a new modem and router, and installed OpenWrt on the NETGEAR R7800 without too much trouble.

I'm also in the process of transferring data from an old Synology NAS drive to a new, larger one, and I noticed how slowly the data transfer is proceeding, even with both drives plugged in directly to the router with ethernet cables

I have printed some diagnostic configuration settings to help you help me, in case you see some obvious setting that is throttling the wired transfer speed

ssh root@192.168.1.1

enter password

uname -a

Linux OpenWrt 5.10.176 #0 SMP Thu Apr 27 20:28:15 2023 armv7l GNU/Linux

root@OpenWrt:~# 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 'fdf3:6cde:1e0d::/48'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'eth1.1'

config interface 'lan'
        option device 'br-lan'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

config interface 'wan'
        option device 'eth0.2'
        option proto 'dhcp'

config interface 'wan6'
        option device 'eth0.2'
        option proto 'dhcpv6'

config switch
        option name 'switch0'
        option reset '1'
        option enable_vlan '1'

config switch_vlan
        option device 'switch0'
        option vlan '1'
        option ports '1 2 3 4 6t'

config switch_vlan
        option device 'switch0'
        option vlan '2'
        option ports '5 0t'

root@OpenWrt:~# cat /etc/config/wireless

config wifi-device 'radio0'
        option type 'mac80211'
        option path 'soc/1b500000.pci/pci0000:00/0000:00:00.0/0000:01:00.0'
        option channel '36'
        option band '5g'
        option htmode 'VHT80'
        option cell_density '0'

config wifi-iface 'default_radio0'
        option device 'radio0'
        option network 'lan'
        option mode 'ap'
        option ssid 'OpenWrtDualBand'
        option encryption 'psk2'
        option key '********'

config wifi-device 'radio1'
        option type 'mac80211'
        option path 'soc/1b700000.pci/pci0001:00/0001:00:00.0/0001:01:00.0'
        option channel '1'
        option band '2g'
        option htmode 'HT20'
        option disabled '1'

config wifi-iface 'default_radio1'
        option device 'radio1'
        option network 'lan'
        option mode 'ap'
        option ssid 'OpenWrt'
        option encryption 'none'

root@OpenWrt:~# 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 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 confdir '/tmp/dnsmasq.d'

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'
        option dhcpv6 'server'
        option ra 'server'
        option ra_slaac '1'
        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 '4'


What speed are you expecting, and what speed are you observing?

Are both devices capable of the same speed? If not, then the speed will only be as fast as the slowest device.

Also, what method/protocol are you using to transfer the data? Some methods/protocols are slower than others.

LAN-LAN traffic is switched by hardware which won't depend on the CPU or OS.

Run swconfig dev switch0 show | grep link to confirm that all links are operating at 1000 Mb.

1 Like
root@OpenWrt:~# swconfig dev switch0 show | grep link
        link: port:0 link:up speed:1000baseT full-duplex
        link: port:1 link:up speed:1000baseT full-duplex auto
        link: port:2 link:up speed:1000baseT full-duplex txflow rxflow auto
        link: port:3 link:up speed:1000baseT full-duplex txflow rxflow auto
        link: port:4 link:up speed:100baseT full-duplex txflow rxflow auto
        link: port:5 link:up speed:1000baseT full-duplex txflow rxflow auto
        link: port:6 link:up speed:1000baseT full-duplex

how do I map the #'s 0 through 6 to physical devices? There are only 4 wired ethernet ports on the router

I'm using Beyond Compare to transfer files between mapped drives in Windows

It's telling me it's going to take 20 hours to transfer ~50GB of video files

Was hoping to use the built-in Synology Migration Assistant, but apparently it's not compatible with the older NAS drive

If you can get to the CLI on both devices, try rsync.

Synology NAS has settings to run rsync

But will I need Linux to setup the transfer? I'm on Windows 11 Pro

How do I determine whether the bottleneck is hardware or software related?

What is plugged into port 4? Just unplug things one at a time and test again to determine the numbering scheme. Usually but not always port 0 is the CPU (which never goes down) and port 5 is the WAN.

Run rsync directly on NAS A to copy to NAS B.

Or run rsync directly on NAS B to copy from NAS A.

Most commercial NAS software is just Linux under the hood, with a fancy skin on top of it. If you can get to the CLI there's a good chance either or both NAS devices will have rsync already installed.

You can use Windows or Linux to establish the terminal session (SSH session) to either or both NAS devices.

As for proving the speed, iperf3 is a handy tool. It might or might not be installed on the NAS devices already. If it is, then great. If it isn't, then there might be a package you can download and install.

Having used Beyond Compare in the past, and having had the displeasure of supporting Windows in the past, my hunch is that your bottleneck is the method you're using to perform the transfer.

My guess is that a direct rsync between the two devices would probably be quicker.

update: port #4 was the laptop I'm using to move files around. Replaced the ethernet cable and it's now 1000 Mbps

Problem is the good cable is only 3 feet long. Do I need to park myself near the router, or can I wifi the files back and forth?

If you can get reliable gigabit throughput over Wi-Fi, then sure, use it. Otherwise, bring a book and settle in next to the router for a while...

Of course, if you don't need to do anything with the laptop, you can always just park the laptop next to the router while you go off and do something else.

1 Like

I've heard wild rumors that cat6 patch cables up to 100m in length are even on sale, rather affordably in brick-and-mortar stores as well as online.

--
Why the notebook needs to be part of the copying chain is another question, it wouldn't, using rsync under GNU screen or tmux.

2 Likes

Set up/enable ftp servers on the NASes, one with PASV capabilities, and FXP the files across.

1 Like