SMB TCP vs UDP Performance

Joined
Sep 10, 2022
Messages
3
  • Supermicro X9SCM-F (Gigabit LAN)
  • Xeon E3-1275V2
  • 32gb Ram
  • Kingston SA400S37 120gb Boot SSD
  • 8 x 6TB Iron Wolf NAS ST6000VN001 (Raid Z2)
  • M1015 SAS card
Server Internet: 300 mb/s Down -- 20 mb/s up
Client Internet: 300 mb/s Down -- 300 mb/s up

So my main problem is getting useable speeds over remote internet access to my NAS via SMB share. So far I have been only able to achieve 20 mb/s up/down over the internet. This setup was using OpenVPN on my TP-Link AX1800 router, I tried with UDP and TCP with little change in speed. Recently I got OpenVPN working on my Truenas server and tested speeds of 20 mb/s received when port forwarded as TCP. I tried changing the port forward to UDP and speeds dramatically increased to +200 mb/s received to the server.

My main concern learning about UDP vs TCP is UDP safe for an SMB share, data integrity is very important to me (having ECC ram). Does SMB need a TCP port or is UDP perfectly fine in this scenario? I read in one conversation that I could be possibly TCP stacking and hurting speeds?

Local Transfer Rate: 560 mb/s up/down
1662824187292.png


Code:
root@truenas[~]# iperf -s -w 256k
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size:  250 KByte
------------------------------------------------------------
[  1] local 192.168.0.163 port 5001 connected with 192.168.0.191 port 52201
[ ID] Interval       Transfer     Bandwidth
[  1] 0.00-10.03 sec   411 MBytes   344 Mbits/sec



C:\Users\Alex\Downloads>iperf.exe -c 192.168.0.163 -p 5001 -f m -w 256k
------------------------------------------------------------
Client connecting to 192.168.0.163, TCP port 5001
TCP window size: 0.25 MByte
------------------------------------------------------------
[  3] local 192.168.0.191 port 52201 connected with 192.168.0.163 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec   411 MBytes   344 Mbits/sec
 
Top