Slow write/transfer speeds


Recommended Posts

Hey guys, complete noob to Unraid (5 days) and servers/PC building in general. Learning as I go, had some frustrating times getting up and running last week but I've learned a lot. Still experiencing some extremely slow file download/transfer speeds to the server though. I know Unraid isn't known as a high-performance file system but I'm mostly seeing like 10-15 MB/sec speeds, that feels really low.


I built my server last Thursday to use as a home media server and general personal data storage. I'm running 4 16TB Seagate Exos enterprise drives, 3 data 1 parity, and a Samsung 970 Evo Plus SSD 500GB as cache. Unraid version 6.9.1.

 

I've got a Gbit line from my router to the server, Cat6 cable. Gigabyte C246 Mobo has 2 Gbit lines. So I don't think it's a networking issue. I also turned on Turbowrite because I saw somebody mention that on the forum as a possible solution, but it doesn't seem to have made much of a difference. I have only been writing files to one user share (Movies) and it's set to write to the cache.

 

For file transfers I've just been using CuteFTP which is what I've used for a long time to transfer files from my seedbox over in Europe to my laptop and I usually see great speeds, only now I'm directing the files from the seedbox directly to the Unraid server, but still running the FTP client from my laptop. I'm currently transferring 10 large files (between about 7GB and 60GB) and all are transferring between 10-15 Mbps, so *does some quick math* 100 to 150 mbps which is about 12 to 19 MB/sec total throughput. When I transfer a single file at a time instead of multiple that one file can get as high as 8-10 MB/sec. Still really slow.

 

I've attached my diagnostics as per the site rules. It's getting late but I'll check this post in the morning and hope somebody was able to find something in there that can explain this.

tower-diagnostics-20210330-2254.zip

Link to comment
7 hours ago, JorgeB said:

Did you test local transfers using for example Windows explorer?

I hadn't done much transferring through Explorer yet, but I just transferred a 1GB folder to test it out. It ranged from about 8 MB/sec up to a peak of about 40 MB/sec with a lot of peaks and valleys, I'd say it averaged about 20-22 MB/sec. Better but still not coming close to saturating a Gbit line.

Link to comment
1 minute ago, thehumangenius said:

not coming close to saturating a Gbit line.

You won't saturate a GB line when writing to an array with parity unless writing to a cached share.

 

Are you sure there isn't a problem at the client end?

9 hours ago, thehumangenius said:

transfer files from my seedbox over in Europe to my laptop and I usually see great speeds, only now I'm directing the files from the seedbox directly to the Unraid server, but still running the FTP client from my laptop

I think you need a simpler test to isolate your problem.

 

Link to comment
5 minutes ago, trurl said:

You won't saturate a GB line when writing to an array with parity unless writing to a cached share.

I know, but it is a cached share. Or at least according to my (very limited) understanding it is? As I said in the OP, I'm writing to a user share that is set to write to the cache, is that not what that means?

 

7 minutes ago, trurl said:

Are you sure there isn't a problem at the client end?

 

I'm not sure of anything lol.

8 minutes ago, trurl said:

I think you need a simpler test to isolate your problem.

 

 

I'm all ears. I was just describing the use case I'm currently experiencing the problem with in case that set off any red flags for anybody immediately.

Link to comment
27 minutes ago, JorgeB said:

Start by running a single stream iperf test between the server and your desktop/laptop.

Struggling to figure out how to use this.

When I extract and run the .exe it does nothing, pops up a black DOS screen for 1 second and disappears.

After googling it said to copy it into the Windows System 32 folder and use it in CMD - I did that and it's still telling me it doesn't recognize the commands  "iperf3 -s" for example.

So I'm googling around trying to find some more instruction.

 

 

EDIT: nevermind, I figured out I had to take the .exe out of the folder first

Edited by thehumangenius
I'm a dummy
Link to comment

Alright, here's what my iperf test looks like:

 

[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-1.00   sec  24.5 MBytes   205 Mbits/sec
[  4]   1.00-2.00   sec  26.6 MBytes   223 Mbits/sec
[  4]   2.00-3.00   sec  27.8 MBytes   233 Mbits/sec
[  4]   3.00-4.00   sec  28.6 MBytes   241 Mbits/sec
[  4]   4.00-5.00   sec  28.5 MBytes   239 Mbits/sec
[  4]   5.00-6.00   sec  28.8 MBytes   241 Mbits/sec
[  4]   6.00-7.01   sec  27.9 MBytes   232 Mbits/sec
[  4]   7.01-8.00   sec  28.1 MBytes   237 Mbits/sec
[  4]   8.00-9.00   sec  28.6 MBytes   240 Mbits/sec
[  4]   9.00-10.00  sec  28.0 MBytes   234 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-10.00  sec   277 MBytes   233 Mbits/sec                  sender
[  4]   0.00-10.00  sec   277 MBytes   233 Mbits/sec                  receiver

Link to comment
3 minutes ago, JorgeB said:

That confirms it's a network problem, you should get close to line speed (1Gbits/s), it's at 20/25% expected bandwidth.
 

Hmm ok. There's no way it could be related to the drives, the SATA cables/ports, etc? That's a relief because that seems messier to fix.

 

If both the router and the server have Gbit capability (and the router even shows it as operating as a Gbit line) and the cable is Cat6, where do I go from here?

Link to comment
  • 2 years later...
On 3/31/2021 at 8:13 AM, JorgeB said:

Start by running a single stream iperf test between the server and your desktop/laptop.

so i would like to do this same test on my server to see were i stand bc it feels like sometimes its slower then what it should be so i put this in iperf

C:\Users\owner\Desktop\iperf-3.1.3-win64>iperf -c 192.168.1.24 -w 2m -t 30s -i 1s
'iperf' is not recognized as an internal or external command,
operable program or batch file.

so im not quite sure what to put in command wise

 

 

Link to comment
2 hours ago, chrismitt2002 said:

so i would like to do this same test on my server to see were i stand bc it feels like sometimes its slower then what it should be so i put this in iperf

C:\Users\owner\Desktop\iperf-3.1.3-win64>iperf -c 192.168.1.24 -w 2m -t 30s -i 1s
'iperf' is not recognized as an internal or external command,
operable program or batch file.

so im not quite sure what to put in command wise

 

Replace "iperf" to "./iperf3"

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.