dianlight / hassio-addons

Hassio.io
MIT License
139 stars 48 forks source link

✨ [REQUEST] Samba NAS: Enable multi-channel in smb.conf #262

Closed codyrocco closed 1 week ago

codyrocco commented 1 week ago

Addon

SambaNAS

Checked

Is your feature request related to a problem? Please describe

Giving the fact Samba NAS / HA runs nowadays on some really powerful minipcs, a lot of the,m having dual ethernet, why not enable multi-channel in Samba? Even a SATA SSD will exceed the capabilities of a 2.5Gbps link, then there's a lot of cheap 2.5Gbps switches...

Describe the solution you'd like

Simply put in smb.conf these lines:

server multi channel support = yes aio read size = 1 aio write size = 1

dianlight commented 1 week ago

I don't have a multi nic environment to test if it works. I will try to add the settings in the next beta version but I need a feedback before release in the next version. You are available for testing it?

L

codyrocco commented 1 week ago

sure I do. this could be done, anyway, with any nic available - for example, i did this not only with two pcie nic, but one pcie and one usb, or pcie wired + pcie wireless for the minipc,, and one 10 gbpc nic with receive side scaling at the test pc (or also two nic] https://learn.microsoft.com/en-us/azure-stack/hci/manage/manage-smb-multichannel in windows, this option is older, for linux was introduced with Samba 4.4.0 one may use bonding, but this will require a compatible, managed switch Hmm... How is a docker container dealing with two nic? Must be host, both of them... this is beyond my knowledge, unfortunately. Finally, it should be tested on a powerful enough system. I don't think that multichannel will make a big difference on a raspberry pi, for example.

dianlight commented 1 week ago

In the beta channel the new version has the option to enable multi-channel. I try with my RPi4 with 2.5Gbps LAN (HW clapped it at 1Gb/s) + WLAN 250Mbs and I don't have any speed improvement also because my USB3 disk max read speed is 60Mbs. (I don't remember if is a disk or rpi4 limitation! )

In any case, multi-channel is working. I see the traffic on both NICs and if during the file transfer I physically unplug the cable or turn off the Wifi it does not interrupt but slows down for a few seconds and then resumes.

L.

codyrocco commented 1 week ago

That's enough. Great work, thank you!

codyrocco commented 1 week ago

Not wanting to open another issue - do you think there's a method to safe unmount a drive? It seems that's not enough to delete it from system/storage.

dianlight commented 1 week ago

In stable versions there is a bug. So you need to stop the addon and reboot the host. In beta version simply stop the addon.

L