Slow Write/Read Speeds

Status
Not open for further replies.

thejamesk

Explorer
Joined
Sep 2, 2018
Messages
71
Hi

I have just completed building my first FreeNAS Box however am shocked with some of the speeds i'm currently getting. As Iv'e not yet received my HDD's for my main data pool I have decided to start with using my Samsung SSD drive to get up and running with applications such as plex. This means I have 1 data pool called apps which I have used for my applications and temporary plex media storage. A seemed good until I decided to test dumping a few GB consisting of multiple images or a single video file. While writing i'm getting around 3mbps and when downloading the files back 10mbps. It appears there is some issue with any sizable data transfer.

In networking terms the mobo supports 1GB and so does my network router which it is directly connected to. I have also insured my main PC which I am transferring from is using 1GB direct to router.

Could it be that my problems will be answered upon setting up my main pool of 5 4TB WD Red drives in Parity 2?

Does anyone have any advise for how I can find any bottlenecks and find a solution to this rather annoying problem?

CPU: Intel - Core i3-6100 3.7GHz Dual-Core Processor
Motherboard: ASRock - C236 WSI Mini ITX LGA1151 Motherboard
Memory: Crucial - 16GB (1 x 16GB) DDR4-2666 Memory
Storage: Samsung - 850 EVO-Series 250GB 2.5" Solid State Drive Used for APP pool with a temporary dataset for plex media


Thank you!
 

kdragon75

Wizard
Joined
Aug 7, 2016
Messages
2,457
Please let us know HOW your transfering the files and what OS versions you are using. Are you trying to do this on Windows ME? Are you running FreeNAS 8? That SSD should have not issues saturating a 1g network.
the mobo supports 1GB
Also please be mindful of units. I would assume you mean your motherboard is 1gb.
 

thejamesk

Explorer
Joined
Sep 2, 2018
Messages
71
Hi kdragon

Thanks for your reply, I am using a Windows 10 Home Desktop over a Ethernet link to a 1GB Port on my router. I am transferring via dragging and dropping into a Windows (SMB) Share. The transfers seem really quick when only transferring one or two small files (kb low mb sizes) but it seems when the overall transfer is around 1gb it gets painfully slow. Currently using the latest version of FreeNAS
OS Version: FreeNAS-11.2-BETA2

By mobo I did mean motherboard :)

If you need any further details of clarification please ask, I should have mentioned the above in my original post!
 

kdragon75

Wizard
Joined
Aug 7, 2016
Messages
2,457

Bidule0hm

Server Electronics Sorcerer
Joined
Aug 5, 2013
Messages
3,710
Actually it's Gb, not gb :)
 

thejamesk

Explorer
Joined
Sep 2, 2018
Messages
71
Here are some example data transfers from Win 10 Desktop -> FreeNAS Server
upload_2018-9-4_16-58-56.png
upload_2018-9-4_16-59-33.png

upload_2018-9-4_17-0-50.png
upload_2018-9-4_17-1-22.png


As hopefully shown on the above screenshots no matter what type of media i'm trying to transfer from my Windows 10 Desktop I get a transfer write speed peaking no higher than 4MB/s. (D is assigned to my Desktop's internal HDD)

Are there any tests I can run on my FreeNAS server to try identify what is causing such slow speeds, Any configuration I should check out? I don't think its a network bottleneck as my Windows PC and FreeNAS server are connected to a gigabit port on a router and support it themselves. Really unsure why the speeds are so slow :(

upload_2018-9-4_17-6-6.png

Even made sure my Desktop's network driver is configured to always use the highest speeds.

Apologies some of my terminology might not be perfect as I'm new to the world of FreeNAS!
 

Attachments

  • upload_2018-9-4_16-57-4.png
    upload_2018-9-4_16-57-4.png
    14.2 KB · Views: 581

kdragon75

Wizard
Joined
Aug 7, 2016
Messages
2,457
Ok lets look at a few things. Please post the output of each command in [ code ] tags.
lspci
zpool list -v
ifconfig
 

thejamesk

Explorer
Joined
Sep 2, 2018
Messages
71
Ok lets look at a few things. Please post the output of each command in [ code ] tags.
lspci
zpool list -v
ifconfig

Without trying to sound stupid, how can I copy the code out of the shell window? Cant seem to CTRL C on it

EDIT- Legacy Shell seems to work better :)
 

thejamesk

Explorer
Joined
Sep 2, 2018
Messages
71
Ok lets look at a few things. Please post the output of each command in [ code ] tags.
lspci
zpool list -v
ifconfig

Hope this is what you need, Let me know if not :)

lspci
Code:
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers (rev 07)		
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06)													   
00:14.0 USB controller: Intel Corporation Sunrise Point-H Thermal subsystem (rev 31)												
00:14.0 USB controller: Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller (rev 31)										 
00:16.0 Communication controller: Intel Corporation Sunrise Point-H CSME HECI #1 (rev 31)										   
00:16.0 Communication controller: Intel Corporation Sunrise Point-H KT Redirection (rev 31)										 
00:17.0 SATA controller: Intel Corporation Sunrise Point-H SATA controller [AHCI mode] (rev 31)									 
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #1 (rev f1)											 
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #8 (rev f1)											 
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-H LPC Controller (rev 31)													   
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-H PMC (rev 31)																 
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-H HD Audio (rev 31)															 
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-H SMBus (rev 31)																
02:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)	


zpool list -v
Code:
NAME									 SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG	CAP  DEDUP  HEALTH  ALTROOT				
JK-APP								   230G  7.35G   223G		-		 -	 2%	 3%  1.00x  ONLINE  /mnt				   
  gptid/27421b48-aed6-11e8-b1b6-d05099c3d562   230G  7.35G   223G		-		 -	 2%	 3%								 
freenas-boot							  14G   876M  13.1G		-		 -	  -	 6%  1.00x  ONLINE  -					 
  mirror								  14G   876M  13.1G		-		 -	  -	 6%										
   da0p2								   -	  -	  -		-		 -	  -	  -										
   da1p2								   -	  -	  -		-		 -	  -	  -		 


ifconfig
Code:
igb0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500												 
	   options=2400b9<RXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWTSO,RXCSUM_IPV6>								 
	   ether d0:50:99:c3:d5:62																									 
	   hwaddr d0:50:99:c3:d5:62																									
	   inet 192.168.1.117 netmask 0xffffff00 broadcast 192.168.1.255															   
	   nd6 options=9<PERFORMNUD,IFDISABLED>																						
	   media: Ethernet autoselect (100baseTX <full-duplex>)																		
	   status: active																											 
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384																   
	   options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>																	   
	   inet6 ::1 prefixlen 128																									 
	   inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2																				 
	   inet 127.0.0.1 netmask 0xff000000																						   
	   nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>																				   
	   groups: lo																												 
bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500													   
	   ether 02:ab:05:b2:5d:00																									 
	   nd6 options=1<PERFORMNUD>																								   
	   groups: bridge																											 
	   id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15																 
	   maxage 20 holdcnt 6 proto rstp maxaddr 2000 timeout 1200																	
	   root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0																	
	   member: vnet0:1 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>															   
			   ifmaxaddr 0 port 4 priority 128 path cost 2000																	 
	   member: igb0 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>																 
			   ifmaxaddr 0 port 1 priority 128 path cost 200000																	
vnet0:1: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500											   
	   description: associated with jail: plex																					 
	   options=8<VLAN_MTU>																										 
	   ether 02:ff:60:14:fa:09																									 
	   hwaddr 02:df:d0:00:04:0a																									
	   nd6 options=1<PERFORMNUD>																								   
	   media: Ethernet 10Gbase-T (10Gbase-T <full-duplex>)																		 
	   status: active																											 
	   groups: epair
 
Last edited:

kdragon75

Wizard
Joined
Aug 7, 2016
Messages
2,457
media: Ethernet autoselect (100baseTX <full-duplex>)
Under ifconfig in the igb0 section we can see the network card is set to/limited to 100Mb/s or 12MB/s
Check/replace the ethernet cable and if that doesn't help, under the network settings, you can force 1000 full duplex.

I also see you only have one drive in your pool. That's fine but if it fails, all data is lost. If your saving anything important, get a second drive and add it as a mirror.;)
 

thejamesk

Explorer
Joined
Sep 2, 2018
Messages
71
Under ifconfig in the igb0 section we can see the network card is set to/limited to 100Mb/s or 12MB/s
Check/replace the ethernet cable and if that doesn't help, under the network settings, you can force 1000 full duplex.

I also see you only have one drive in your pool. That's fine but if it fails, all data is lost. If your saving anything important, get a second drive and add it as a mirror.;)

Speeds appear to have increased (now getting between 6-8mb/s) ! Suspect the network cable I had used was of low quality so will buy some decent ones and run further test transfers (I am only able to test using Laptop -> NAS due to running out of network cables, of course I can't see the full picture until I have got another cable and can run further copies from my desktop).

Is it possible to force 1000 full duplex anyway or is this not recommended, if so how?

With regards to the data pool I plan to create a main pool with ZFS2 and all important stuff including plex media will be moved onto that. So anything that is on this pool is more for testing than anything, thanks for the heads up though! :)

Thanks for your help so far, Things seem to be looking more positive already.
 

kdragon75

Wizard
Joined
Aug 7, 2016
Messages
2,457
Is it possible to force 1000 full duplex anyway or is this not recommended, if so how?
It depends on the cause. If it's the cable thats not connecting on all pins, no.
The option SHOULD be here http://doc.freenas.org/11/network.html#interfaces but it's blatantly missing... BUt you can try adding media 1000baseTX mediaopt full-duplex to the options field. If you lose the connection, you will have to reset networking from the console.
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
Is it possible to force 1000 full duplex anyway or is this not recommended, if so how?
No. IEEE 802.3 defines that 1GbE and higher are only possible with auto-negotiation and it implies full-duplex. That is because all pairs transmit and receive, unlike 10/100 Ethernet. If that isn't working, there's likely a hardware problem that needs to be fixed anyway.

There is no such thing as "ZFS2". You probably meant RAIDZ2.
 
Joined
Dec 29, 2014
Messages
1,135
Is it possible to force 1000 full duplex anyway or is this not recommended, if so how?

Forcing versus negotiating speed and duplex is sometimes almost a religious debate. As a full time networking person for almost 20 years, I will tell you I am firmly planted in the negotiate camp. YMMV, but my is experience is emphatic that forcing speed and duplex causes way more problems than it ever solves. I do remember clearly a DEC Alpha (does anybody else know what that is?) in the 2000-2001 time frame that would not negotiate speed and duplex correctly with a Cisco switch. Yeah, that was the last one I can remember. It is beyond count the number of times I have had to troubleshoot all kinds of problems caused by forced speed and duplex. < Soapbox mode >What people typically don't understand is that forcing duplex causes that side to not respond to duplex negotiation requests. If the other side is in auto, the specification forces it to fall back to half duplex if the other side does not respond to the negotiation request. Short of a bridging loop, this is about the WORST thing you can do to a network connection! < /Soapbox mode >. Sorry, pet peeve....
 
Last edited:

thejamesk

Explorer
Joined
Sep 2, 2018
Messages
71
Great to read all your responses as things seem to be working as expected now I think Ill just leave it as it is. I can see in ifconfig freeNAS is now using the gigabit connection my port lights also confirm this.

So happy to finally have good Write speeds. Stupid of me not to realise sooner but turns out the cable is so bad it only has 4 internal wires upon inspecting it.

Done some tests today and have this result.
upload_2018-9-5_19-53-8.png


Thank you @kdragon75 for your advise and help on this matter.
 
Status
Not open for further replies.
Top