Slow Performance on SMB Network Drive

  • I am using a Windows 7 computer with another OMV rig that has a Samba share.


    I noticed that whenever I play music (FLACs) and edit photos (RAW/CR2) using Adobe Lightroom such that these music and photos files are on the same Samba network drive, the music will be quite laggy and the photo editing will be unusually slow at the same time.


    I am suspecting a few causes such as:
    1. My computer being on Windows 7 instead of 10, which means I cannot use Samba 3
    2. My OMV rig using a Realtek NIC instead of an Intel NIC
    3. My OMV rig is lacking in other ways (e.g. lack of RAM or CPU?)


    Where should I start in figuring out the cause of the problem?

  • Weird, those tweaks went missing so I put them back in. Let's see how it goes. As for upgrading to Samba 4, it looks like the command

    Code
    apt-get -t wheezy-backports install samba=2:4.1.17+dfsg-1~bpo70+1

    won't work in OMV 3; I think it needs to be tweaked for Jessie.


    Meanwhile, will those hardware I mentioned help/hinder SMB speeds?

  • won't work in OMV 3; I think it needs to be tweaked for Jessie.

    OMV 3.x/jessie is using samba 4.3 already. No need to do that.


    Meanwhile, will those hardware I mentioned help/hinder SMB speeds?

    Lots of people have had issues with realtek networking. Are you on the 4.8 kernel? Do you have the firmware-realtek package installed?

    omv 5.3.9 usul | 64 bit | 5.3 proxmox kernel | omvextrasorg 5.2.6
    omv-extras.org plugins source code and issue tracker - github


    Please read this before posting a question.
    Please don't PM for support... Too many PMs!

  • What motherboard are you using? I have had good luck with a couple of realtek boards but Intel networking is always good for me.

    omv 5.3.9 usul | 64 bit | 5.3 proxmox kernel | omvextrasorg 5.2.6
    omv-extras.org plugins source code and issue tracker - github


    Please read this before posting a question.
    Please don't PM for support... Too many PMs!

  • Currently I am using these settings too:


    which seems to work better than my initial settings:

    Code
    socket options = TCP_NODELAY SO_RCVBUF=65536 SO_SNDBUF=65536
    read raw = yes
    write raw = yes
    max xmit = 65535
    dead time = 15
    getwd cache = yes

    I am unsure why, let me monitor further before making up my conclusion about settings.


    But in the meantime, am I right to say that the following will affect SMB speeds (top = biggest factor, bottom = lowest factor)?:


    1. Server SMB settings
    2. NIC
    3. Client SMB settings
    4. HDD speeds
    5. CPU/RAM

  • No max protocol or min protocol settings? I actually don't use any settings for my samba setups and they saturate gigabit.


    In your list, file size is the largest factor. Small files will never transfer as fast as large files.

    omv 5.3.9 usul | 64 bit | 5.3 proxmox kernel | omvextrasorg 5.2.6
    omv-extras.org plugins source code and issue tracker - github


    Please read this before posting a question.
    Please don't PM for support... Too many PMs!

  • No max protocol or min protocol settings? I actually don't use any settings for my samba setups and they saturate gigabit.


    In your list, file size is the largest factor. Small files will never transfer as fast as large files.


    I recalled that using the max/min protocol settings caused some of my SMB shares to be unconnectable at all but I can try again.


    And ah yes, I forgot about file size but are the rest of the factors in the list correct?

  • are the rest of the factors in the list correct?

    I guess. In most situations, it is just the NIC and file size. Some systems need server settings but I have never had to change a setting on the client. cpu/ram only come into play if you are using an arm board. Most newer hard drives are fast enough to saturate gigabit. So, they typically aren't the issue either.

    omv 5.3.9 usul | 64 bit | 5.3 proxmox kernel | omvextrasorg 5.2.6
    omv-extras.org plugins source code and issue tracker - github


    Please read this before posting a question.
    Please don't PM for support... Too many PMs!

  • I guess. In most situations, it is just the NIC and file size. Some systems need server settings but I have never had to change a setting on the client. cpu/ram only come into play if you are using an arm board. Most newer hard drives are fast enough to saturate gigabit. So, they typically aren't the issue either.


    Hmm I see. What tests should I do in the meantime? I see many commands but not sure what is for what...

  • Ok, the problem is still there but not as bad as before...


    I managed to free up an Intel NIC from my pfSense box, let me try using that and see how it goes.


    Which commands I should use to test? Iperf right?

  • iperf for network speed. Large files for samba speed.


    Thanks, without the Intel NIC, I am getting 40 MB/s for samba speed when copying from server to client like my computer, 90 MB/s for copying from client to server. As for iperf, I cannot do this yet as I do not have a Linux computer as a client (as per detailed here: how to find bottlenecks and increase write/read speeds ) I am unsure if another OMV host will be ok for this.

  • I went ahead with using another OMV host as the iperf client. Here's the results when the OMV host that is the iperf server does not have the Intel NIC (I will install that tonight due to some family stuff I need to go to):


    ------------------------------------------------------------
    Server listening on TCP port 12345
    TCP window size: 85.3 KByte (default)
    ------------------------------------------------------------
    [ 4] local 192.168.1.21 port 12345 connected with 192.168.1.22 port 60764
    [ ID] Interval Transfer Bandwidth
    [ 4] 0.0- 0.9 sec 100 MBytes 924 Mbits/sec
    [ 5] local 192.168.1.21 port 12345 connected with 192.168.1.22 port 60768
    [ 5] 0.0- 8.9 sec 1000 MBytes 938 Mbits/sec
    [ 4] local 192.168.1.21 port 12345 connected with 192.168.1.22 port 60770
    [ 4] 0.0-89.2 sec 9.77 GBytes 941 Mbits/sec
    [ 5] local 192.168.1.21 port 12345 connected with 192.168.1.22 port 60800
    [ 5] 0.0- 9.2 sec 1.00 GBytes 936 Mbits/sec
    [ 4] local 192.168.1.21 port 12345 connected with 192.168.1.22 port 60866
    [ 4] 0.0-912.5 sec 100 GBytes 941 Mbits/sec

  • Iperf results with Intel NIC:
    ------------------------------------------------------------
    Server listening on TCP port 12345
    TCP window size: 85.3 KByte (default)
    ------------------------------------------------------------
    [ 4] local 192.168.1.247 port 12345 connected with 192.168.1.22 port 58736
    [ ID] Interval Transfer Bandwidth
    [ 4] 0.0- 0.9 sec 100 MBytes 942 Mbits/sec
    [ 5] local 192.168.1.247 port 12345 connected with 192.168.1.22 port 58738
    [ 5] 0.0- 9.1 sec 1.00 GBytes 941 Mbits/sec
    [ 4] local 192.168.1.247 port 12345 connected with 192.168.1.22 port 58744
    [ 4] 0.0-91.2 sec 10.0 GBytes 941 Mbits/sec
    [ 5] local 192.168.1.247 port 12345 connected with 192.168.1.22 port 59038
    [ 5] 0.0-9123.7 sec 1000 GBytes 941 Mbits/sec


    File transfer from server: 75MB/s
    File transfer to server: 75MB/s


    Now onto real-world usage tests

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!