SMB Slow performance even with 1Gbps NIC Card

  • I installed OMV v 5.3.2-1 on raspi 4 and attached a segate backup plus 4tb hdd..


    I configured SMB as per troubleshooting guide an added these extra parameters.


    Complete list of Extra Options are as below:


    min receivefile size = 16384
    write cache size = 524288
    getwd cache = yes
    socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536
    log level = 1
    read raw = yes
    write raw = yes
    max xmit = 65535
    dead time = 15



    Even after this my network speed while copying is not going beyond 100-150 Mbps.


    I am using Robomirror 2.0 for syncing folders between NAS (Raspi) and my PC.


    I also increased threads to 32 to increase performance but its still same.


    While i copy file directly.. I can see the performance is better.. but its not upto full. Speed keeps on hovering between 20 MBps to 55 MBps (160 mbps to 500mbps apprx).


    Still this is not utilizing my 1GBps connection to full.


    On PC, the NIC is set to Auto-negotiate and Raspi it show 1Gbps.


    Below is the config details for eth0.


    Not sure what is the issue and why I am not getting full speed. Router is the Bell Router which was provided and both are connected using Cat 5E/6 cables.


    Settings for eth0:
    Supported ports: [ TP MII ]
    Supported link modes: 10baseT/Half 10baseT/Full
    100baseT/Half 100baseT/Full
    1000baseT/Half 1000baseT/Full
    Supported pause frame use: Symmetric Receive-only
    Supports auto-negotiation: Yes
    Supported FEC modes: Not reported
    Advertised link modes: 10baseT/Half 10baseT/Full
    100baseT/Half 100baseT/Full
    1000baseT/Half 1000baseT/Full
    Advertised pause frame use: Symmetric Receive-only
    Advertised auto-negotiation: Yes
    Advertised FEC modes: Not reported
    Link partner advertised link modes: 10baseT/Half 10baseT/Full
    100baseT/Half 100baseT/Full
    1000baseT/Half 1000baseT/Full
    Link partner advertised pause frame use: No
    Link partner advertised auto-negotiation: Yes
    Link partner advertised FEC modes: Not reported
    Speed: 1000Mb/s
    Duplex: Full
    Port: MII
    PHYAD: 1
    Transceiver: internal
    Auto-negotiation: on
    Supports Wake-on: gs
    Wake-on: d
    SecureOn password: 00:00:00:00:00:00
    Current message level: 0x00000007 (7)
    drv probe link
    Link detected: yes
    --------------------------------------------------------------------------------
    Driver information eth0:
    ========================
    driver: bcmgenet
    version: v2.0
    firmware-version:
    expansion-rom-version:
    bus-info:
    supports-statistics: yes
    supports-test: no
    supports-eeprom-access: no
    supports-register-dump: no
    supports-priv-flags: no

    • Offizieller Beitrag

    If the files are small, it will never hit 1gbps. And that many robocopy threads won't help. Hopefully your PC isn't wireless as well.

    omv 7.0.4-2 sandworm | 64 bit | 6.5 proxmox kernel

    plugins :: omvextrasorg 7.0 | kvm 7.0.10 | compose 7.1.2 | k8s 7.0-6 | cputemp 7.0 | mergerfs 7.0.3


    omv-extras.org plugins source code and issue tracker - github


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

    • Offizieller Beitrag

    What is the fastest transfer speed you can achieve between any pair of clients in your network? Is that speed close to 1 Gbps?


    Some possible problem areas:


    1. Network problems.


    You don't seem to use a switch. It may be that the router is good at routing and not at switching. That is, each client has full speed access to the Internet, bot perhaps not to each other.


    You can test this using the ifperf3 software between to Linux computers. You can boot a Windows computer from a USB stick with Linux to temporarily make it into a Linux computer.


    It is also possible that network cables are bad. Swap around to see if that helps.



    Google something like "how do i test network speed between two linux computers using iperf" for details on how to test network speed and throughput.


    2. Filesystem problems:


    What filesystem are you using on the RPi4? If you are using NTFS that may cause very poor performance. if you don't have specific reasons not to, use EXT4.


    3. USB problems:


    Some USB enclosures are not working at full speed with Linux. Try some enclosure that you KNOW works well with Linux and Debian/OMV. Not all cables supports USB3 at full speed. Make sure that the cables you use are intended for use with USB3.


    The problem is that some USB interfaces are assumed to support the faster USB3 UASP drivers, but in reality they just support the slower standard USB3 driver. When the RPi4 tries to use the USB3 UASP drivers the performance becomes very, very low.


    Here you can read more about this problem: https://www.raspberrypi.org/forums/viewtopic.php?t=245931


    You can test the combined USB and disk transfer speed using many tools. Google something like "how do i measure disk performance on a linux computer using the command line" and try some different options.


    4. Overload or bad config:


    The RPi4 is a beast compared to older RPi SBCs, but it is still a puny runt compared to normal x86 servers. Avoid running too many other things on it. Run the tests above on a fresh install without anything else installed. Make sure to try the default settings first, and make sure to measure if any changes actually improve the performance or not. If not, don't change that setting.


    Also some network filesystems, file transfer and backup applications introduce overhead that may slow down the performance. Try other apps or methods. I like NFS. For me that is typically faster than SMB.

  • I am jumping in this conversation because I would like to know where did you get these extra options and if they are actually useful. So far I've only enforced SMB2 and above.


    EDIT: I don't have technical experience with these parameters, but after few readings seems like that most of them are unnecessary or debatable. What is the performance without them?

    OMV BUILD - MY NAS KILLER - OMV 6.x + omvextrasorg (updated automatically every week)

    NAS Specs: Core i3-8300 - ASRock H370M-ITX/ac - 16GB RAM - Sandisk Ultra Flair 32GB (OMV), 256GB NVME SSD (Docker Apps), Several HDDs (Data) w/ SnapRAID - Fractal Design Node 304 - Be quiet! Pure Power 11 350W


    My all-in-one SnapRAID script!

    2 Mal editiert, zuletzt von auanasgheps ()

  • Thanks all for providing your inputs.. I did not expect these many replys in a day :):)


    1. My PC is directly connected to Router using Network cable, so as my Raspi 4.. Router name is Bell Home Hub 3000 (https://www.ncf.ca/ncf/support…me_Hub_3000_Configuration)
    2. When I ran Iperf3 between PC and Rapsi4 I got speeds of 900Mbps + constantly and in average.. So it seems the issue is not with router.
    3. Before installing OMV5, I used with raspbian and did the same thing for copy.. and the times are far more better.. but I did not take a note of speeds.
    4. Yes.. I am using NTFS since its external and want to use it on both rapsi and PC when required or transfer content to my laptop. If needed or if its mandatory to get speed then I will plan to move to EXT4.. But with NTFS on raspbian.. it seems working ok.. So not sure why it happens only after OMV5 install.. Do I need to try OMV4 ?
    5. I am using Segate Backup Plus and its not an enclosure. I can see the hard disk is able to transfer around 110 MB/s when copying data from other external HDD connected to rapsi both to usb3
    6. I think without updating parameters as per troubleshooting guide, transfer speeds were at 20-25 MBps, so there is an increase after adding parameters
    7. So if want to use NFS, how can I do that and can rsync write to share folders or NFS.. ? I dont see those options under rsync. I have Netgear 214 NAS, and backup tool under that can write to windows share.. but i dont see same option here. How can I enable it.




    Thanks once again for helping me out.

    • Offizieller Beitrag

    It seems likely that it is use of NTFS that is your problem. Perhaps in combination with USB problems.


    It won't help with OMV4. Using NTFS may be very slow then as well. However USB might work better, since it is an older version of Debian.


    Check performance of the Seagate Backup Plus when running the OMV version you intend to use. Most likely you will have to use a remote login using ssh. No point in testing using any other operating system that may or may not work completely different.


    Seagate Backup Plus is a hdd in a enclosure with a USB interface. From the name it can be assumed that it is intended for intermittent backup use, not as a NAS storage. A quick check seem to suggest that the Seagate Backup Plus is only intended for use with Windows or Mac. It may work OK with Linux, or it may not. Unclear.


    If you intend to run backups between linux servers, the NFS may be useful and fast. But not otherwise. You then need to mount a NFS share from a NFS server on a NFS client. OMV provides remote mount for this. I use autofs instead.


    So I think you should first try to use EXT4 instead of NTFS. Then try another external HDD. One that is more suitable for 24/7 NAS use and is known to be fully compatible with Linux.

  • I formatted disk to EXT4, but SMB performance did not change..


    I hardly get 60-80 Mbps speed while writing anything.


    But when I use rsync.. I get speeds upto 550 Mbps.. It seems issue is with SMB.


    Will SMB work like this only ????

    • Offizieller Beitrag

    Have you tried with the default settings for SMB, instead of your custom? I don't know if that would help, but it might? And it should be very easy to test. Make sure to reboot after changing anything.


    I would expect you to get much closer to the possible network bandwidth with SMB.


    The external HDD might also reduce the speed.


    Also the size of files copied will have a great effect. Many small files will be much slower than few very big files.


    I assume that by 80 Mbps you actually mean 80 megabits per second? Not 80 MBps? Megabytes per second. 80MBps would more what could be expected.

  • yeah SMB looks ok - i just use it the default way - copy a movie (round about 5GB) from NAS to my PC with around 110-120MB/sec - copy another movie from PC to NAS - also around 110-120MB/sec (on windows explorer)


    thats close to the max of a 1gbit connection (120MB/s x8 = 960mbit/s)


    so like Adoby say, maybe the external HDD (is ist USB 3.0? can you benchmark it nas internal?) or maybe some other hardware limitations.


    Also don't know how rsync works if rsync works bit for bit it also can make a different.

    ___________________________
    OMV5@AsRock j3455 8GB RAM

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!