Speed Query regarding slower reading than writing

Hello, I have 4 x 16TB Seagate IronWolf Pro drives setup in a RAIDZ1 (details in sig block).

My switch is only 1gbps and although I have aggregated my NICS into a bonded pair so 2gpps, I realise that means one transfer still uses still only 1gbps.

So anyway doing some testing and writing to the NAS is faster than reading from the NAS, is that normal?

Writing to the NAS from Windows via SMB share I see peak 111MB/s (888mbps) which I believe is around optimal for a gigabit link right?

However reading from the NAS, so copying from the NAS to Windows I see a peak of only 84MB/ps which translates to 672mbps well under my gigabit link!

Is this normal? What could be happening here? LZ4 compression is enabled on the dataset. No encryption.

What’s the internal disk of the client like? HDD, SSD, make/model?

It’s just a WD Blue 2.5" SSD nothing special, but that’s a good thought maybe I should test writing to this drive from an external USB see what write speed is like to it (https://www.amazon.com.au/500GB-Blue-NAND-SATA-inch/dp/B073SBZ8YH?th=1)

I am seeing 118MB/s copying from external USB3 drive to the internal SSD that i was copying from the NAS too so it is not a write limitation of the disk i guess.

Yeah. Have you tried an FIO on your pool to benchmark it locally?

What is FIO sorry? So obviously I have not lol

It’s a benchmarking tool. Create a new dataset and then from the shell cd into it and try something like the below :point_down:

If I copy from one pool dataset to another on the NAS it is blazingly fast

Sure but would be good to quantify that.

Reading from NAS requires data to be read from disk.

Writing to NAS over SMB from Windows is asynchronous so writes are actually to memory (and are staged to disk later).

Thanks, but is it expected for the NAS to be slower than a local USB transfer even with the caveat that it’s not pulling from a RAM cache?

Reading from an HDD is generally slower than reading from a USB stick.

Reading data from a NAS drive and sending it across the network is likely to be slower than reading the same data locally.

So read performance is limited by the smallest link in the technology chain.

Yes but my network can handle 111MB/s as is shown by the write to the NAS.

I can read and write locally on the NAS in excess of 400MB/s so it does not seem that the NAS local drive IO or the network is the bottleneck. Got me stumped, maybe it’s an issue with SMB?