I have a need to transfer about 200GB of data from MacBook to PC on regular basis. Since both devices are wirelessly connected to my router I'm using local network provided by router to transfer files (mostly photos from 10 to 100MB in size). But data transfer rate is way too slow: 2 Megabytes per second. Simple calculations: 200 000MB / 2MB / 60s / 60min = 28 hours
what approximately matches my real life results.
I'm curious if it is limitation of the router or I'm doing something terribly wrong? I'm failing to find any relevant spec for such setup in their docs. To my understanding I should be limited by maximum upload speed 122Megabit / 8 = 15.25 Megabyte per second
what should give almost 8 times faster transfer rate than I observe.
PS It is very unlikely that I'm limited by IO of my hard drives on both ends I do have NVMe SSDs and Task Manager/Activity Monitor show almost no load on CPU and hard drives. I've also tried to disconnect all other devices from the router (phones, tablets, etc) and close all internet connections on PC and Mac what gave some minor improvements: 3MB/s
was the top speed I was able to squeeze.
Q&A for comments
>> What router do you have?
Model is mentioned in the question's title: Netgear N600 C3700
>> Details for Wi-Fi controllers on the ends of the chain
Wi-Fi: Intel® Wi-Fi 802.11 a/b/g/n/ac, supporting 2.4/5 GHz Dual-Band. Support for 11ac wireless standard and up to 433 Mbps data rate.
LAN: Intel® GbE LAN chip (10/100/1000 Mbit)
802.11ac Wi-Fi wireless networking; IEEE 802.11a/b/g/n compatible
>> Where are your computers located, in relation to the router?
PC <-> Router - side by side
Macbook <-> Router - under 1 meter (3 feet)
Update #1
I've tried to connect my PC to the router with the cord instead of Wi-Fi and got 3-4x file transfer speed gain (7-8MB/s
vs original 2-3MB/s
). As a side effect I've also got 3x Internet speed boost (From 20-25Mb/s to 70-75Mb/s
. It appears that Wi-Fi connection was a bottleneck and I was not taking full advantage from the bandwidth I'm paying for to ISP)! The next thing I maybe will try is purchasing Thunderbolt to Ethernet adapter ($20-$30 vs at least $100 external storage solution of appropriate size).
Update #2
iperf outputs when PC is connected to the router with cord
Macbook is server
iperf3.exe -c 192.168.0.14
Connecting to host 192.168.0.14, port 5201
[ 4] local 192.168.0.17 port 2734 connected to 192.168.0.14 port 5201
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.00 sec 640 KBytes 5.23 Mbits/sec
[ 4] 1.00-2.00 sec 1.00 MBytes 8.40 Mbits/sec
[ 4] 2.00-3.00 sec 1.00 MBytes 8.38 Mbits/sec
[ 4] 3.00-4.00 sec 1.00 MBytes 8.40 Mbits/sec
[ 4] 4.00-5.00 sec 896 KBytes 7.34 Mbits/sec
[ 4] 5.00-6.00 sec 512 KBytes 4.19 Mbits/sec
[ 4] 6.00-7.00 sec 1.00 MBytes 8.40 Mbits/sec
[ 4] 7.00-8.00 sec 384 KBytes 3.14 Mbits/sec
[ 4] 8.00-9.00 sec 1.00 MBytes 8.39 Mbits/sec
[ 4] 9.00-10.00 sec 896 KBytes 7.34 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-10.00 sec 8.25 MBytes 6.92 Mbits/sec sender
[ 4] 0.00-10.00 sec 8.25 MBytes 6.92 Mbits/sec receiver
PC is server
iperf3.exe -s
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from 192.168.0.14, port 60856
[ 5] local 192.168.0.17 port 5201 connected to 192.168.0.14 port 60857
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-1.00 sec 981 KBytes 8.04 Mbits/sec
[ 5] 1.00-2.00 sec 1.67 MBytes 14.0 Mbits/sec
[ 5] 2.00-3.00 sec 1.66 MBytes 13.9 Mbits/sec
[ 5] 3.00-4.00 sec 1.53 MBytes 12.8 Mbits/sec
[ 5] 4.00-5.00 sec 1.31 MBytes 11.0 Mbits/sec
[ 5] 5.00-6.00 sec 1.33 MBytes 11.2 Mbits/sec
[ 5] 6.00-7.00 sec 1.53 MBytes 12.8 Mbits/sec
[ 5] 7.00-8.00 sec 1.26 MBytes 10.5 Mbits/sec
[ 5] 8.00-9.00 sec 763 KBytes 6.24 Mbits/sec
[ 5] 9.00-10.00 sec 275 KBytes 2.26 Mbits/sec
[ 5] 10.00-10.11 sec 9.98 KBytes 719 Kbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-10.11 sec 0.00 Bytes 0.00 bits/sec sender
[ 5] 0.00-10.11 sec 12.3 MBytes 10.2 Mbits/sec receiver
Correct me if I'm wrong but these results look 10 times slower comparing to 7-8Mbytes/sec
I'm getting when transferring files from MBP to PC...
Update #3
So, I've looked into my router's configuration and discovered that it serves two Wi-Fi networks (2.4GHz b/g/n
and 5GHz a/n
). I've told Macbook to connect to 5Ghz network (I was connected to 2.4Ghz one when I got all previous results...) and moved it as close as possible to the router. Here is what iperf told to me:
Macbook is server (the case I'm looking forward to optimize)
iperf3.exe -c 192.168.0.14
Connecting to host 192.168.0.14, port 5201
[ 4] local 192.168.0.17 port 2912 connected to 192.168.0.14 port 5201
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.00 sec 23.8 MBytes 199 Mbits/sec
[ 4] 1.00-2.00 sec 23.9 MBytes 200 Mbits/sec
[ 4] 2.00-3.00 sec 24.1 MBytes 203 Mbits/sec
[ 4] 3.00-4.00 sec 23.6 MBytes 198 Mbits/sec
[ 4] 4.00-5.00 sec 24.0 MBytes 201 Mbits/sec
[ 4] 5.00-6.00 sec 24.0 MBytes 202 Mbits/sec
[ 4] 6.00-7.00 sec 24.0 MBytes 201 Mbits/sec
[ 4] 7.00-8.00 sec 24.4 MBytes 204 Mbits/sec
[ 4] 8.00-9.00 sec 23.9 MBytes 200 Mbits/sec
[ 4] 9.00-10.00 sec 24.0 MBytes 201 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-10.00 sec 240 MBytes 201 Mbits/sec sender
[ 4] 0.00-10.00 sec 240 MBytes 201 Mbits/sec receiver
Window's file explorer peaks at 20+MB/sec
! What leads us to 10x speed boost compared to my initial setup!
TODO for Update #4
Out of curiosity I want to get Thunderbolt to Ethernet adapter and see what I can max out from all these puzzle pieces.
iPerf
. It's like a speedtest for two computers that are on the same LAN. You could then see if it's still only getting 2 Mbps.