Testing File Transfer SMB vs NFS with CPU Bottleneck!!

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 ต.ค. 2024

ความคิดเห็น • 114

  • @SouravTechLabs
    @SouravTechLabs 4 ปีที่แล้ว +88

    5:12 With 90 MiB/S you would have written the whole 806 MB file three times over within the time you were talking. You started copying before 4:47 and you were 50% done at 5:17 so it takes a minute to complete the copy, that means you are getting around 13 to 14 MBPS. Thunar's copy operation was freezing but the downloading was active (look at your router, it's blinking if it has those lights) that's the reason of seeing 90 MBPS.

    • @baumstamp5989
      @baumstamp5989 3 ปีที่แล้ว +7

      exactly! it was just a buffer flush of the file that made linux file copy show that high speed for a moment, the last second before the video cuts, you can see that CPU jumps to 100% as well. also of course the time it takes for the 806 MB file... never 90MB/s...
      if he would test with a larger file it could be more easily seen after the initial burst of the copy.

    • @bugs181
      @bugs181 3 ปีที่แล้ว +7

      @@baumstamp5989 This is why it's important to use proper testing tools, also. A great one to look for on any OS would be iPerf.

    • @koush_b
      @koush_b 3 ปีที่แล้ว

      Good point Gaurav. I'm a regular linux user & I know the drill; in Linux it doesn't show the correct transfer speed. It's always a gigantic bump in the beginning & slowly decrease to the actual speed after a while if the file is big enough to copy.

    • @maxheadrom3088
      @maxheadrom3088 2 ปีที่แล้ว

      My Samba transfers full Gigabit on a J1900 MB. I'm having problems now but it's probably from the CAT5e long cable. Interesting video and good comment.

    • @epiqpwnage6989
      @epiqpwnage6989 2 ปีที่แล้ว

      @@bugs181 using iperf3 to test my connection from my windows 11 to raspberry pi4 (ubuntu mate) and i get around 900mbps. both are connected wired gigabit ethernet. Using NFS and SAMBA I get about 40MB/s (320mbps) monitoring the pi with htop the cpu is not the bottleneck. Really can't figure out what is limiting it that much

  • @L4X1K3
    @L4X1K3 4 ปีที่แล้ว +14

    that can't be 90mb/s, with the file being just over 800MB, this would take less than 10 seconds if that was the case and this takes around as long as the initial samba transfer at around 15-20mb/s

  • @ryzenforce
    @ryzenforce 2 ปีที่แล้ว +2

    Although NFS (a file level access) is somewhat easier to setup than iSCSI, you need to understand how it works. With NFS, the device that actually read/write and make sure the data is written properly is the system running the NFS service - here your little NAS. It needs to have enough queues also to process stuff network traffic, good and fast disk pool, memory and a fast CPU, all things you dont have in your NAS. For iSCSI, the device that actually read/write is the remote system because it can access at the block level, and the NAS doesn't really do much in terms of data integrity.

  • @ran_red
    @ran_red ปีที่แล้ว +1

    I don't know about people in the comments talking about the tests weren't done right, the numbers aren't correct, buffer this, copy that but I do know how to measure time.
    I just transferred a Ubuntu Server ISO (1.4 gigabytes) from OpenSUSE Tumbleweed to a server running Fedora using NFS and it took 11 seconds.
    I did the same thing from Windows to the same Fedora server and it took well over a minute, almost two minutes.

  • @cocosloan3748
    @cocosloan3748 4 ปีที่แล้ว +7

    I regularly transfer files from 1 comp to another via 1Gbps switch at speeds of 110MBps in Windows .Never had slow speeds (only when cable is low quality then it falls to 100Mbps) Some cables were bad I replaced them all and had no problem reaching 1Gbps ever ...

  • @TheSecurityAgency
    @TheSecurityAgency 2 ปีที่แล้ว +1

    Thank you very much,
    it was very interesting and absolutely unexpected.

  • @thk4711
    @thk4711 4 ปีที่แล้ว +14

    I would recommend that you find out what is causing the high CPU load - is it samba or something in the kernel. If it is samba have a look at the network parameters there if it is the kernel there might be a problem with the driver of your network card. I am running a DIY NAS using a nanopi m4 with the SATA interface add-on . This board has a slower CPU that what you are using. There I get close to gigabit transfer speed in samba, ISCSI and NFS .

    • @NovaspiritTech
      @NovaspiritTech  4 ปีที่แล้ว +2

      thanks good tip, i'll have to cehck that out

    • @AndersJackson
      @AndersJackson 4 ปีที่แล้ว

      Yes, there are lot of things that could be trade of to get more speed when you are running NFS in both client and server. There are probably some things you also can do with SMB, but not that much.

    • @GeertDroid
      @GeertDroid 4 ปีที่แล้ว +8

      I would love to see a follow up video on this topic !!!!

    • @jonnykopp
      @jonnykopp 4 ปีที่แล้ว +1

      @@GeertDroid agreed

  • @noenken
    @noenken 4 ปีที่แล้ว +8

    NFS to NFS (Linux to FreeNAS) I can actually write to my SSD NAS with full 10GbE speeds on a Ryzen 3 1200. Protocol makes a lot of difference.

    • @BrianThomas
      @BrianThomas 4 ปีที่แล้ว

      so which protocol is recommended for file sharing? SMB seems to have a lot of overhead.

  • @raiscl
    @raiscl 4 ปีที่แล้ว +1

    That looks about right. I get better speeds with NFS than SMB at home, the only thing I hate about NFS is that all graphical file managers kind of freeze when transferring big files. Nautilus, PCmanFM, Elementary Files, all the same. So I tend to stick with rsync for big transfers .... =/ And it’s not a Async/Sync thing, unfortunately.

  • @BruceBigby
    @BruceBigby 4 ปีที่แล้ว +1

    Maybe the data is going directly into the Linux kernel's buffer cache. NFS won't necessarily sync the data right away, but eventually, the kernel will sync the data to disk. There are probably NFS sync options. Apply them, and your timings might differ.

  • @TheInternalNet
    @TheInternalNet 4 ปีที่แล้ว +2

    MORE! Really awesome DON!

  • @sashawinters2177
    @sashawinters2177 4 ปีที่แล้ว +2

    i am using rpi 4, file trasfer over smb. hdd is attached to rpi 4 over usb3. If the hdd is formatted to ntfs speed is about 30.-40 (bc linux has a poor ntfs support). If the hdd formatted to ext4 speed is about 90.

  • @donporter8432
    @donporter8432 4 ปีที่แล้ว +2

    Important to be aware of! Thank you

  • @Woodwerker
    @Woodwerker 4 ปีที่แล้ว +2

    Windows 10 slow transfer rate speed fix. I was getting 20 MB/s also when sending files to SAMBA share on Linux from Windows 10.
    After this fix I get up to 100 MB/s...
    step 1.) at administrator cmd prompt type:
    netsh interface tcp set global autotuning=disable
    step 2.) in network interface settings, advanced:
    large send offload disabled for IPv4 and IPv6
    step 3.) Reboot and enjoy faster speeds

    • @lawrencedoliveiro9104
      @lawrencedoliveiro9104 4 ปีที่แล้ว +1

      This is why they say, Windows is a great OS, if your time is worth nothing.

  • @Tumbzilla
    @Tumbzilla 2 ปีที่แล้ว +1

    I was hit with same problem on Asustor NAS. CPU can't give 90MiB/s with SMBv2 or SMBv3 or any protocol that use secured connection. Only way i was able to use full network was with SMBv1 because it's unsecure protocol. I have my NAS direct connect to proxmox with SMBv1 and SMB server on Proxmox securing data connection to clients.

  • @jarisipilainen3875
    @jarisipilainen3875 4 ปีที่แล้ว +1

    0:37 very usefull.it only mean robber take whole case and leavy you monitor and power cable xD

  • @lawrencedoliveiro9104
    @lawrencedoliveiro9104 4 ปีที่แล้ว +1

    In general, I would expect that file-access protocols like SMB or NFS would be inefficient for bulk file transfer. I was going to suggest you compare using rsync for this test, but given you can already max out your LAN bandwidth, that might or might not prove anything. ;)

  • @danieldewindt3919
    @danieldewindt3919 2 ปีที่แล้ว

    Cool Comparison

  • @rhfweb
    @rhfweb 4 ปีที่แล้ว +4

    Epic, I just re-installed Freelancer the other day, what mods are you playing?

    • @NovaspiritTech
      @NovaspiritTech  4 ปีที่แล้ว

      Hahahahahah same here!! I'm trying out discovery freelancer mod

    • @rhfweb
      @rhfweb 4 ปีที่แล้ว

      @@NovaspiritTech IIRC back in the day, the dedicated server binary ran better under Wine than it did Windows itself.

  • @MarkParkTech
    @MarkParkTech 4 ปีที่แล้ว +12

    Windows NFS implementations have always been horrible.

  • @CINEMATIK
    @CINEMATIK 3 ปีที่แล้ว

    very helpfull. thanks

  • @Tweak42
    @Tweak42 4 ปีที่แล้ว

    I'd like to add comparison using SFTP transfer speeds and a better method to accurately benchmark throughput.

    • @mikehensley78
      @mikehensley78 4 ปีที่แล้ว

      I only use sftp to transfer to/from my NAS via filezilla. I get 95 to 110MB/s. If I try to transfer from my server in Europe to USA via sftp I get 1 to 3MB/s. But if I mv the file to my http dir in EU and wget the file(http) in USA I get 14MB/s(my inet speed cap). Sftp adds a layer to decrypt because its basically ssh protocol. So a good CPU for both machines is needed for higher speed transfers via sftp. My EU server has a weaker CPU so it can't keep up. Some protocols be a harsh mistress.

  • @ngoquang2708
    @ngoquang2708 4 ปีที่แล้ว +1

    In case of nfs, I think there is caching is going on, mean the linux system read the file you are uploading from disk to ram first but don't upload the data to the nas yet so the speed there is the read speed of the disk.

  • @uibsen
    @uibsen 4 ปีที่แล้ว +3

    Do you have SMB 2 or higher enabled on the NAS ?

  • @methanoid
    @methanoid 4 ปีที่แล้ว +4

    Don, what is that ITX NAS case? I wanna see if it's FS in UK.

    • @HULCHUL1
      @HULCHUL1 4 ปีที่แล้ว

      Looking for same, hope you find out what it was?

    • @HentaiNat
      @HentaiNat 4 ปีที่แล้ว

      @@HULCHUL1 watch his video on the diy nas build

  • @pepeshopping
    @pepeshopping 4 ปีที่แล้ว +2

    “Newbie” issue:
    This is due to the protocol (write sync) more than the cpu.
    It does not help to get a cheap cpu for your NAS.

    • @lessevilgoog
      @lessevilgoog 4 ปีที่แล้ว

      So.. are you saying the Windows implementation of the NFS protocol is doing write-sync differently than Linux, that seems like a pretty dramatic difference.

  • @rjshaver1
    @rjshaver1 4 ปีที่แล้ว

    Would love to know the issue here. Many have suggested several things but I would like to have some of the suggestions tested. Poor CPU, antivirus, windows settings, etc. Thank you Don for sharing.

  • @Smart-Skippy
    @Smart-Skippy 2 ปีที่แล้ว +1

    Thanks for making this video!
    Would SSH be an option for fast Windows 10 to my Ubuntu Raid 5 NAS ?

  • @crazyrussianbot8012
    @crazyrussianbot8012 4 ปีที่แล้ว +1

    Linux/Unix is way better technology. only reason Microsoft exists is monopolies and chaining people to various systems like eg. DirectX, C#, Visual C++, and stuff like that. this way they have secured to be gaming platform #1 and apps platform #1 - at the cost of user friendlyness, surveillance, reboots, forced updates, etc...

  • @lezbriddon
    @lezbriddon 4 ปีที่แล้ว +1

    win7, i can often download a file from the net to my network shared hdd faster than i can copy a file from the desktop to it.... which makes no sense. i just walk away as theres always time to make fresh coffee

  • @MrJaz8088
    @MrJaz8088 4 ปีที่แล้ว +1

    Windows 10 has Turned Off Read/Write Ahead for Attached Device, as people do not "Safely Remove Hardware" they just pull the unit
    It can be Turned back On and speeds are good again

  • @peachiekeen1565
    @peachiekeen1565 2 ปีที่แล้ว

    I have not researched different shares or file systems. I am currently using Windows to truenas based on Linux. Don't know what speed is. Doesn't seem slow would guess is limited by 1 Gb Ethernet ports

  • @davocc2405
    @davocc2405 4 ปีที่แล้ว

    that's GOTto be something to do with the MS NFS implementation - also can you try running WSL on the windows box and in that bash session try to NFS mount from that - and see how it goes? Another good test of overhead is FTP - it's very light, allegedly the lighest of all but the servers aren't always great for it. I'd be interested to see your FTP speeds from windows, from linux and also ftp on multi-stream using LFTP on a unix box with the pget n=15 options.

    • @AndersJackson
      @AndersJackson 4 ปีที่แล้ว

      No, please. FTP is an old obsoleted protocol. Should be droped in favour of Sftp ot SCP.
      It doesn't handle owners, rights etc in a proper way.

    • @davocc2405
      @davocc2405 4 ปีที่แล้ว

      @@AndersJackson FTP is still very much relevant on closed or low risk/impact networks - it's still in very common use in data centres where you have a closed or segmented off network and speed is of top priority. For the purposes of this exercise the test is worthy given the objective is to assess throughput and CPU load with a view to working out the overheads of the various daemons.

  • @RoyHess666
    @RoyHess666 4 ปีที่แล้ว +5

    Network File System file system!

  • @AcielGamingTech
    @AcielGamingTech 4 ปีที่แล้ว +1

    Hi Don,
    I really like your channel and I watch all your videos. Your videos have hooked me into the world of SBCs hehe.
    Here is a question I would to ask you. Recently I lost my RPi3B, which sadly died. Now I'm planning to buy another SBC keeping the budget friendly, here are the 3 I'm confused between:
    1. RPi4B 2GB
    2. NanoPi M4 2GB or M4V2 4GB
    I want to build headless NAS (non RAID for now) and other dozen services based on docker & non docker. Which one should I go for? Any suggestionz/recommendations? Thanks

  • @VinaykanthK
    @VinaykanthK ปีที่แล้ว

    Can I possibly add network files either smb/nfs to local search index ?

  • @itaco8066
    @itaco8066 4 ปีที่แล้ว

    Great Video !!

  • @doomicle
    @doomicle 2 ปีที่แล้ว

    NFS for Windows is a buggy mess. I installed it, and it stopped my SAMBA shares from working.

  • @kirmistube
    @kirmistube 2 ปีที่แล้ว

    Is there any performance difference for copy/paste speeds between NAS if you use NFS instead of SMB ?

  • @lucalac3329
    @lucalac3329 4 ปีที่แล้ว

    It is interesting and also somewhat unexpected. I have the feeling that the drive fs plays a role here...you are copyng from ntfs to ext4 I guess right? Can you try to mount a local ntfs partition on that Linux server and try to copy again? Thanks

    • @AndersJackson
      @AndersJackson 4 ปีที่แล้ว

      I doubt that the file system are a problem here. It is probably network protocols (NFS vs SMB) that is the problems, and a bad NFS client implementation in the MS Windows kernel.
      Still, when it comes to NFS client in MS Windows, it can probably be a bit faster with some options, like async instead of sync.

  • @nadeemm3536
    @nadeemm3536 4 ปีที่แล้ว

    Have NAS share from Dell hw with centos and client is VM rhel7 having slow speed for read/write it happen on 6 diffrent nodes which have same MAS master share.. any advice

  • @WPGinfo
    @WPGinfo 4 ปีที่แล้ว

    Thnx for these observations.. Yes, this is interesting... however... is there a solution [or did I miss the clue here]?
    Speeds vary greatly, but can we influence the results in such a way that we get the best solutions.
    Next question imo would be can the linux open source experts find a work around and insert it in linux so that this is a thing of the past.

  • @pdx2240
    @pdx2240 4 ปีที่แล้ว

    Funny, I have a HDD attached directly to my ASUS AC68U router via USB, and via SMB, I hit a router-CPU bottleneck on 20MB pr second.
    If I then also use the built in open VPN built in and via open VPN and SMB, the transfer speed is about 2.5MB pr second, or 10 times slower.
    Im on a 1gbit internet line on both sides, so no internet bottleneck.

    • @mikehensley78
      @mikehensley78 4 ปีที่แล้ว

      VPN adds a layer to be decrypted by your routers CPU. Routers usually have worse CPUs than an old cellphone. Makes sense it would slow down. Smb 1 ? Smb2? Smb3? Protocol matters.

  • @williamrutter3619
    @williamrutter3619 4 ปีที่แล้ว

    Can you put something with a bit more hp in it, that device does seem slow, you would struggle to watch a high quality video from it, interesting video though, good work.

    • @AndersJackson
      @AndersJackson 4 ปีที่แล้ว

      Well, the hp in the server was enough to saturate the net with NFS - NFS between Linux machines (Ubuntu - NAS). Not so much with MS Windows on client side.

  • @AndrewAHayes
    @AndrewAHayes 4 ปีที่แล้ว +1

    Why does the NAS need a graphics card?

  • @tommyb.6064
    @tommyb.6064 4 ปีที่แล้ว

    So, i would guess that windows is giving the nfs server some shit to eat that it has to process? How is that possible? I mean, does when a file is transfered over ftp smb or nfs, other things that needs to be later converted such as the file system are carried over? How can windows send "bad nfs packets" that later on overloads the receiver cpu? I see it but, i need to have that understood.

  • @rablumberg
    @rablumberg 4 ปีที่แล้ว

    By my knowledge NFS does not use any kind of credential check, so for a small business would it be better to use SMB and CIFS to authenticate users? Is there a better solution to authenticate users using NFS?

  • @empetor492
    @empetor492 4 ปีที่แล้ว

    whats the model of nas which runs webmin? i saw armv7 so it won't be so much powerfull as intel/amd would be

  • @anant0089
    @anant0089 3 ปีที่แล้ว +1

    dude speak in simple english what is transfer speed on smb and what is nfs, i get 20MB/s on smb i think i should get more.. using all gigaport etc..and all top notch stuff money can buy ..

  • @stevenbell9589
    @stevenbell9589 4 ปีที่แล้ว

    I'm on the lookout for a new server I'm using a hp proliant micro server n36l over 13 years old thinking of a new proliant and going down the Linux rout maybe you could test some different Linux server distros to see what's best for the need

  • @souravbiswas-tk3se
    @souravbiswas-tk3se 10 หลายเดือนก่อน

    Interesting

  • @cdoublejj
    @cdoublejj 4 ปีที่แล้ว

    so linux has a better nfs implementation?

  • @zilog1
    @zilog1 ปีที่แล้ว

    Sounds like windows being windows :p

  • @Diegura250
    @Diegura250 4 ปีที่แล้ว +2

    Simba :-) haha

  • @jarisipilainen3875
    @jarisipilainen3875 4 ปีที่แล้ว

    windows filetransfer is slow.it sure doing more than just sending file.it still use window filetransfer even use nfs or smb.
    try replasement filetransfer for window.
    teracopy?
    fastcopy?
    extremecopy?

  • @darenthoman9962
    @darenthoman9962 4 ปีที่แล้ว

    Wow is there a way to improve the speeds from windows to a Linux OS?

    • @BrianThomas
      @BrianThomas 4 ปีที่แล้ว +1

      TCP windowing. You can check your TCP window size and adjust it to make the throughput more efficient. Windows 10 should be doing this for you automatically, but you'll know how that works out at times.

    • @BrianThomas
      @BrianThomas 4 ปีที่แล้ว +1

      Oh you can also increase your MTU frame size as well. Sending a thousands of 64 byte size frames is way less efficient than sending 4864 byte size frames.

  • @LiRaye
    @LiRaye 4 ปีที่แล้ว

    So same fs would be more efficient?

    • @AndersJackson
      @AndersJackson 4 ปีที่แล้ว

      Probably marginaly with different FS, but the speed different in NFS -> NFS with Linux clients. And not so much MS Windows -> NAS, whatever protocol and fs you uses.

  • @henryincalgary6959
    @henryincalgary6959 4 ปีที่แล้ว

    Did you try winscp and scp on linux

    • @AndersJackson
      @AndersJackson 4 ปีที่แล้ว

      Those are not file systems, not even network file systems.

    • @mikehensley78
      @mikehensley78 4 ปีที่แล้ว

      Those are protocols. Scp is basically using SSH protocol to transfer a file. Has encrypt/decrypt overhead. Its CPU intensive. I use sftp/scp everyday. If you have a weak CPU on either the sender or receiver you will notice a slow-down.

  • @NewsBroadcasting
    @NewsBroadcasting 3 ปีที่แล้ว

    sshfs is so unreliable, and takes up so much CPU and locks up applications

  • @johncnorris
    @johncnorris 4 ปีที่แล้ว +4

    Windows is broke.

  • @jamess1787
    @jamess1787 4 ปีที่แล้ว

    Weird. I'm perplexed

  • @ХоўелРейес-з5в
    @ХоўелРейес-з5в 3 ปีที่แล้ว

    Never trust the rate calculation

  • @JeffSmithInStJacobs
    @JeffSmithInStJacobs 4 ปีที่แล้ว +7

    Further proof that you should dump Windows and just stick to Linux...

  • @dmbrv
    @dmbrv 4 ปีที่แล้ว

    interesting

  • @KENMUOKI
    @KENMUOKI 4 ปีที่แล้ว

    Very interesting, could it work with pi3...

    • @ionescuig
      @ionescuig 4 ปีที่แล้ว

      If this works with rpi3 and rpi4... is awesome

    • @NovaspiritTech
      @NovaspiritTech  4 ปีที่แล้ว +2

      Yup nfs works for raspberry pi

    • @AndersJackson
      @AndersJackson 4 ปีที่แล้ว +1

      You know that Raspbian is actually Debian, which is what also Ubuntu is based on.
      Yes, as long as you don't run MS Windows on your Raspberries.

    • @ionescuig
      @ionescuig 4 ปีที่แล้ว +3

      @@NovaspiritTech I tried but.. not even close enough:
      - eth0 raspberry pi4 with nfs server and usb3 hdd
      - wifi (next to router) ubuntu laptop with nfs client
      - max speed 16MB/s
      Maybe I am doing something wrong. Do you have or can you make a tutorial about this for guys like me?
      I am using rpi4 for a few things and NAS is one. Would be nice to have a good transfer speed...
      Thanks!

  • @ukaszzywczyk3855
    @ukaszzywczyk3855 4 ปีที่แล้ว

    MTU and jumbo frames

  • @ukaszzywczyk3855
    @ukaszzywczyk3855 4 ปีที่แล้ว

    jumbo frames are the answer

    • @tommyb.6064
      @tommyb.6064 4 ปีที่แล้ว

      Really? so windows is sending thousand of miniatures frames that are harder to process for the NAS and linux to linux simply has larger frames "or packets" being sent ? is that a setting that can be adjusted in the registry of windows? That's a good point only you lifted up!

  • @lawrencedoliveiro9104
    @lawrencedoliveiro9104 4 ปีที่แล้ว +1

    So Microsoft makes you pay extra for an inferior implementation of a feature that Linux does better, for free?
    I’m shocked. Shocked, I tell you!

  • @Tripnode01
    @Tripnode01 4 ปีที่แล้ว +1

    please stop you have a face for radio but not the voice !

  • @nekilof-2363
    @nekilof-2363 3 ปีที่แล้ว

    I feel like this video could've been much better edited - like take out the bit where you're correcting your slashes and I don't understand the beginning bit about the system build...that's not the purpose of this video.

  • @barrykirkby9626
    @barrykirkby9626 ปีที่แล้ว

    File transfer to a usb3 seagate 12tb drive sucks... Don't matter the file system.