Jump to content

Problem setting up samba Multichannel connection and achieving 2gbit trasnfers

Hello forum. In short I want to achieve 2gbit transfer speed between my uRaid server and my Windows 10 workstation.

 

I have my Windows 10 workstation with specs:

Intel i7-6700k

Asus Maximus Hero VIII

2x8GB Ram

1x Samsung 850 evo

1x 2TB Seagate sv35

Lan1: Integrated intel 219-v 1gbit

Lan2: Realtek USB GBE 1gbit

 

And my unRaid NAS with the following specs

Intel i3-4160

Asrock  B85 Pro3

2x4Gb ram

1x 2TB Seagate sv35 and other HDDs

Lan1: Integrated Realtek 1gbit

Lan2: PCI-E Realtek 1gbit

 

I have my switch  d-link DGS-1100-08 and router TP-Link Archer C7 

 

I have researching these week a lot regarding this topic and the final answer tend to No. But i will show the options I find

 

Link aggregation, NIC bounding and samba multi channel.

 

I tried multiple combination of OS and methods. 

 

On the unRaid I setup bounding and set it to balance-rr - the only mode that can split a tcp connection. Between 2 unraid boxed and switch setup to link aggregation I achieved ~200MB/s (NICs in any combination)

 

Transferring from unraid Box to Windows Server 2016 with balance-rr oin unraid and static teaming on windows   i achieve ~200MB/s dl  and ~100MB/s  upl . Don't know why but it seems windows doesn't split traffic but i saw in the switch the traffic goes on both NIC to unraid. 

 

Windows 10 doesn't support NIC Bounding .

 

I see NIC bounding doesn't work windows 10 - linux . The only Requirement is that my workstation to be Windows 10. The Server can run on windows or unraid.

 

I tested samba multi channel and between Windows 10 - Windows Server 2016 I got the multi channel to work out of the box almost( worked only when pairing intel NIC with the USB NIC and on other pc the two realtek, swaping the usb with the PCI-E card didn't work with multi channel). Achived ~200MB/s.

 

That is fine with me but WIndows server works very slow and i see decreased in speed and lag when using it.  I tested unraid with all its features and it is what i want due the multiple options, easy samba share, docker, wm and many useful plugins and also very good performance.  I rather prefer Unraid

 

The main problem I can't get samba multi channel to work. I enabled it in config and checked if the version of unraid haves samba version that haves multi channel.  Swapped the NICs and still doesn't work.  Can someone suggest what i need to tweak or what can be the problem?.

 

unRAIDServer-6.3.5 having samba: 4.5.10 (CVE-2017-7494)

 

Settings added in samba:  

 

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

 

 

 

 

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

have you tried turning it off and back on again?
Also did you use express settings?

Link to comment
Share on other sites

Link to post
Share on other sites

Just curious. If you don't do mulitchannel and just connect 1 wire to both, what kind of speeds are you getting?
And what if you set it up like this?

Link to comment
Share on other sites

Link to post
Share on other sites

9 hours ago, b632 said:

have you tried turning it off and back on again?
Also did you use express settings?

Yes. I tried multiple restarts and service restarts and reapply the settings also swapping NICs.

Use express settings where ?

6 hours ago, Levisallanon said:

Just curious. If you don't do mulitchannel and just connect 1 wire to both, what kind of speeds are you getting?
And what if you set it up like this?

Connecting 1 wire to both sides gets 1gbit ( 112MB/s ), but that isn't the point. I don't see activity on both adapters when transferring. 

Link to comment
Share on other sites

Link to post
Share on other sites

Samba's implementation of SMB3 multichannel is still very experimental.

 

Making it work with non-Linux clients requires a little extra configuration :

 

Samba has to report interface speeds and some capabilities to
the client. On Linux, Samba can auto-detect the speed of an
interface. But to support other platforms, and in order to be
able to manually override the detected values, the "interfaces"
smb.conf option has been given an extended syntax, by which an
interface specification can additionally carry speed and
capability information. The extended syntax looks like this
for setting the speed to 1 gigabit per second:

    interfaces = 192.168.1.42;speed=1000000000

 

https://www.samba.org/samba/history/samba-4.4.0.html (under "EXPERIMENTAL FEATURES")

Main Linux rig: HP Elitebook 2560P (i5-2410M, 8 GB, Pop! OS)

Living room/couch gaming rig: AMD 5800X, Asus TUF Radeon 6900 XT, 32 GB, 65" LG C1 OLED

Home server and internet gateway: Dell Optiplex 3040 MFF (i5-6500T, 16 GB, Ubuntu Server 22.04 LTS)

Phone: Asus Zenfone 10

Link to comment
Share on other sites

Link to post
Share on other sites

Still doesn't work. I tried binding the IPs and also the interfaces.

Link to comment
Share on other sites

Link to post
Share on other sites

On ‎11‎/‎23‎/‎2017 at 3:16 PM, ttony said:

Hello forum. In short I want to achieve 2gbit transfer speed between my uRaid server and my Windows 10 workstation.

 

I have my Windows 10 workstation with specs:

Intel i7-6700k

Asus Maximus Hero VIII

2x8GB Ram

1x Samsung 850 evo

1x 2TB Seagate sv35

Lan1: Integrated intel 219-v 1gbit

Lan2: Realtek USB GBE 1gbit

 

And my unRaid NAS with the following specs

Intel i3-4160

Asrock  B85 Pro3

2x4Gb ram

1x 2TB Seagate sv35 and other HDDs

Lan1: Integrated Realtek 1gbit

Lan2: PCI-E Realtek 1gbit

 

I have my switch  d-link DGS-1100-08 and router TP-Link Archer C7 

 

I have researching these week a lot regarding this topic and the final answer tend to No. But i will show the options I find

 

Link aggregation, NIC bounding and samba multi channel.

 

I tried multiple combination of OS and methods. 

 

On the unRaid I setup bounding and set it to balance-rr - the only mode that can split a tcp connection. Between 2 unraid boxed and switch setup to link aggregation I achieved ~200MB/s (NICs in any combination)

 

Transferring from unraid Box to Windows Server 2016 with balance-rr oin unraid and static teaming on windows   i achieve ~200MB/s dl  and ~100MB/s  upl . Don't know why but it seems windows doesn't split traffic but i saw in the switch the traffic goes on both NIC to unraid. 

 

Windows 10 doesn't support NIC Bounding .

 

I see NIC bounding doesn't work windows 10 - linux . The only Requirement is that my workstation to be Windows 10. The Server can run on windows or unraid.

 

I tested samba multi channel and between Windows 10 - Windows Server 2016 I got the multi channel to work out of the box almost( worked only when pairing intel NIC with the USB NIC and on other pc the two realtek, swaping the usb with the PCI-E card didn't work with multi channel). Achived ~200MB/s.

 

That is fine with me but WIndows server works very slow and i see decreased in speed and lag when using it.  I tested unraid with all its features and it is what i want due the multiple options, easy samba share, docker, wm and many useful plugins and also very good performance.  I rather prefer Unraid

 

The main problem I can't get samba multi channel to work. I enabled it in config and checked if the version of unraid haves samba version that haves multi channel.  Swapped the NICs and still doesn't work.  Can someone suggest what i need to tweak or what can be the problem?.

 

unRAIDServer-6.3.5 having samba: 4.5.10 (CVE-2017-7494)

 

Settings added in samba:  

 

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

 

 

 

 

 

 

try going into router and telling router that the 2 lans are to be bridged(the 2 pc bridged to 1 and same for nas lans but do not bridge to each other) this should let router know that both lans go to same device and it should auto balance bandwidth

Link to comment
Share on other sites

Link to post
Share on other sites

@Windows7ge You should be able to help since you just got this working on FreeNAS.

 

@ttony You need to make sure you are running the latest version of SAMBA, will need to do this manually, and you have enable SMB 3 Multichannel support which is disabled by default (You said you are just restating the requirements). It is also a requirement of SAMBA, not Windows SMB 3, that you have each network adapter on it's own subnet.

 

This means that on the server and client there needs to be two NICs paired together using their own subnet i.e.

 

Server

NIC1: 192.168.1.1/24

NIC2: 192.168.2.1/24

 

Client

NIC1: 192.168.1.2/24

NIC2: 192.168.2.2/24

 

SMB 3 Multichannel is switch independent so there is nothing you need to configure to support it, you should also not try and make configuration changes on a switch to make it work either. 

 

Link to comment
Share on other sites

Link to post
Share on other sites

Thank you for the suggestions.

Added the option and still doesn't work.

 

Here is the config I used 

 

Samba config:

 

interfaces = 192.168.1.20/24;speed=1000000000, 192.168.2.20/24;speed=1000000000
aio read size = 1
aio write size = 1
strict locking = No
use sendfile = No
server multi channel support = Yes

 

*Not sure if a ',' is required between adapters name.

I tried also: interfaces = eth0;speed=1000000000, eth1;speed=1000000000 

 

Ifconfig unraid:

 

root@SERVER:~# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.20  netmask 255.255.255.0  broadcast 192.168.1.255
        ether xxxxxxxxxxxxxxxxx  txqueuelen 1000  (Ethernet)
        RX packets 98026  bytes 6364240 (6.0 MiB)
        RX errors 0  dropped 66  overruns 0  frame 0
        TX packets 180148  bytes 265543630 (253.2 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.2.20  netmask 255.255.255.0  broadcast 0.0.0.0
        ether xxxxxxxxxxxxxxxxx  txqueuelen 1000  (Ethernet)
        RX packets 627  bytes 101446 (99.0 KiB)
        RX errors 0  dropped 65  overruns 0  frame 0
        TX packets 171  bytes 26681 (26.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.255.255.255
        loop  txqueuelen 1  (Local Loopback)
        RX packets 2  bytes 140 (140.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2  bytes 140 (140.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
 

ipconfig windows 10:

 

Ethernet adapter Ethernet:

   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Intel(R) Ethernet Connection (2) I219-V
   Physical Address. . . . . . . . . : xxxxxxxxxxxxxxxxxxxxxxxx
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes
   IPv4 Address. . . . . . . . . . . : 192.168.1.10(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Lease Obtained. . . . . . . . . . : sâmbătă, 25 noiembrie 2017 13:02:08
   Lease Expires . . . . . . . . . . : marți, 1 ianuarie 2154 19:43:03
   Default Gateway . . . . . . . . . : 192.168.1.1
   DHCP Server . . . . . . . . . . . : 192.168.1.1
   DNS Servers . . . . . . . . . . . : 192.168.1.1
   NetBIOS over Tcpip. . . . . . . . : Enabled

Ethernet adapter Ethernet 3:

   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Realtek PCIe GBE Family Controller
   Physical Address. . . . . . . . . : xxxxxxxxxxxxxxxxxxxx
   DHCP Enabled. . . . . . . . . . . : No
   Autoconfiguration Enabled . . . . : Yes
   IPv4 Address. . . . . . . . . . . : 192.168.2.10(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . :
   NetBIOS over Tcpip. . . . . . . . : Enabled

Link to comment
Share on other sites

Link to post
Share on other sites

@ttony I've added you in to a PM so you can have a look over the information talked about in there, might be something useful.

 

Start a file copy between the server and NAS then run the following powershell commands.

 

PS C:\WINDOWS\system32> Get-SmbMultichannelConnection

Server Name Selected Client IP   Server IP   Client Interface Index Server Interface Index Client RSS Capable Client RDMA Capable
----------- -------- ---------   ---------   ---------------------- ---------------------- ------------------ -------------------
192.168.1.2 True     192.168.1.3 192.168.1.2 8                      14                     False              False
192.168.1.2 True     192.168.2.3 192.168.2.2 11                     8                      False              False
PS C:\WINDOWS\system32> Get-SmbClientNetworkInterface

Interface Index RSS Capable RDMA Capable Speed    IpAddresses                              Friendly Name
--------------- ----------- ------------ -----    -----------                              -------------
8               True        False        10 Gbps  {fe80::493b:dcb7:7a91:2f23, 192.168.1.3} Ethernet 6
11              True        False        10 Gbps  {fe80::8a2:773d:671a:e3a1, 192.168.2.3}  Ethernet 7
22              False       False        1 Gbps   {fe80::69ae:75d:8272:af8f, 10.4.10.18}   Ethernet

Removed useless interface from above output such as ISATAP and wireless.

 

PS C:\WINDOWS\system32> Get-NetIPInterface

ifIndex InterfaceAlias                  AddressFamily NlMtu(Bytes) InterfaceMetric Dhcp     ConnectionState PolicyStore
------- --------------                  ------------- ------------ --------------- ----     --------------- -----------
11      Ethernet 7                      IPv6                  9000              15 Enabled  Connected       ActiveStore
8       Ethernet 6                      IPv6                  9000              15 Enabled  Connected       ActiveStore
22      Ethernet                        IPv6                  1500              25 Enabled  Connected       ActiveStore
11      Ethernet 7                      IPv4                  9000              15 Disabled Connected       ActiveStore
8       Ethernet 6                      IPv4                  9000              15 Disabled Connected       ActiveStore
22      Ethernet                        IPv4                  1500              25 Disabled Connected       ActiveStore

 

Link to comment
Share on other sites

Link to post
Share on other sites

PS C:\Windows\system32> Get-NetAdapter

Name                      InterfaceDescription                    ifIndex Status       MacAddress             LinkSpeed
----                      --------------------                    ------- ------       ----------             ---------
Ethernet 3                Realtek PCIe GBE Family Controller            2 Up           xxxxxxxxxxxxxxxx        1 Gbps
Ethernet                  Intel(R) Ethernet Connection (2) I219-V       5 Up           xxxxxxxxxxxxxxxx       1 Gbps

 

PS C:\Windows\system32> Get-NetIPInterface

ifIndex InterfaceAlias                  AddressFamily NlMtu(Bytes) InterfaceMetric Dhcp     ConnectionState PolicyStore
------- --------------                  ------------- ------------ --------------- ----     --------------- -----------
6       Teredo Tunneling Pseudo-Inte... IPv6                  1280              75 Enabled  Disconnected    ActiveStore
1       Loopback Pseudo-Interface 1     IPv6            4294967295              75 Disabled Connected       ActiveStore
2       Ethernet 3                      IPv4                  9198             300 Disabled Connected       ActiveStore
5       Ethernet                        IPv4                  1500               1 Enabled  Connected       ActiveStore
1       Loopback Pseudo-Interface 1     IPv4            4294967295              75 Disabled Connected       ActiveStore

 

 

PS C:\Windows\system32> Get-NetAdapterRSS


Name                                            : Ethernet 3
InterfaceDescription                            : Realtek PCIe GBE Family Controller
Enabled                                         : True
NumberOfReceiveQueues                           : 2
Profile                                         : NUMAStatic
BaseProcessor: [Group:Number]                   : 0:0
MaxProcessor: [Group:Number]                    : 0:6
MaxProcessors                                   : 4
RssProcessorArray: [Group:Number/NUMA Distance] : 0:0/0  0:2/0  0:4/0  0:6/0
IndirectionTable: [Group:Number]                : 0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2
                                                  0:0   0:2     0:0     0:2     0:0     0:2     0:0     0:2

Name                                            : Ethernet
InterfaceDescription                            : Intel(R) Ethernet Connection (2) I219-V
Enabled                                         : True
NumberOfReceiveQueues                           : 2
Profile                                         : NUMAStatic
BaseProcessor: [Group:Number]                   : 0:0
MaxProcessor: [Group:Number]                    : 0:6
MaxProcessors                                   : 4
RssProcessorArray: [Group:Number/NUMA Distance] : 0:0/0  0:2/0  0:4/0  0:6/0
IndirectionTable: [Group:Number]                :

PS C:\Windows\system32> Get-NetAdapterHardwareInfo

Name                           Segment Bus Device Function Slot NumaNode PcieLinkSpeed PcieLinkWidth Version
----                           ------- --- ------ -------- ---- -------- ------------- ------------- -------
Ethernet 3                           0   5      0        0                    2.5 GT/s             1 1.1
Ethernet                             0   0     31        6                     Unknown


PS C:\Windows\system32> Get-SmbClientConfiguration | Select EnableMultichannel

EnableMultichannel
------------------
              True


PS C:\Windows\system32> Get-SmbClientNetworkInterface

Interface Index RSS Capable RDMA Capable Speed    IpAddresses            Friendly Name
--------------- ----------- ------------ -----    -----------            -------------
5               False       False        1 Gbps   {192.168.1.10}         Ethernet
2               True        False        1 Gbps   {192.168.2.10}         Ethernet 3
6               False       False        100 Kbps {fe80::ffff:ffff:fffe} Teredo Tunneling Pseudo-Interface


PS C:\Windows\system32> Get-SmbMultichannelConnection
PS C:\Windows\system32> Get-SmbMultichannelConnection -IncludeNotSelected
PS C:\Windows\system32> Get-SmbConnection
PS C:\Windows\system32> Get-SmbConnection

ServerName ShareName UserName     Credential   Dialect NumOpens
---------- --------- --------     ----------   ------- --------
SERVER     plex      ASUS-PC\ASUS ASUS-PC\ASUS 3.1.1   2


PS C:\Windows\system32> Get-SmbMultichannelConnection -IncludeNotSelected
PS C:\Windows\system32> Get-SmbMultichannelConnection -IncludeNotSelected
PS C:\Windows\system32> Get-SmbMultichannelConnection
 

 

Also done some tests on windows to check SMB config and connection and see the intel adapter is not RSS capable for some reason and also when swaping with the usb NIC also says is not capable.  And both should be capable of RSS.

 

It seems on windows the multi channel doesn't start at all. 

Link to comment
Share on other sites

Link to post
Share on other sites

9 minutes ago, ttony said:

PS C:\Windows\system32> Get-SmbClientNetworkInterface

Interface Index RSS Capable RDMA Capable Speed    IpAddresses            Friendly Name
--------------- ----------- ------------ -----    -----------            -------------
5               False       False        1 Gbps   {192.168.1.10}         Ethernet
2               True        False        1 Gbps   {192.168.2.10}         Ethernet 3
6               False       False        100 Kbps {fe80::ffff:ffff:fffe} Teredo Tunneling Pseudo-Interface

There's your problem, both interfaces need to support RSS. Check the NIC advanced hardware properties and make sure RSS is enabled, if it's not listed or supported you'll need a different NIC.

 

Edit:

Also try:

Enable-NetAdapterRSS -Name "Ethernet"

 

Then run Get-SmbClientNetworkInterface again

Link to comment
Share on other sites

Link to post
Share on other sites

@leadeater

Receive Side Scaling (RSS) = enabled on both adapters

 

the metric wasn't the same. fixed.

Still says false.

 

How can I check on unraid part if adapters are rss capable and ok?


PS C:\Windows\system32> Enable-NetAdapterRSS -Name "Ethernet"

PS C:\Windows\system32> Get-NetIPInterface

ifIndex InterfaceAlias                  AddressFamily NlMtu(Bytes) InterfaceMetric Dhcp     ConnectionState PolicyStore
------- --------------                  ------------- ------------ --------------- ----     --------------- -----------
6       Teredo Tunneling Pseudo-Inte... IPv6                  1280              75 Enabled  Disconnected    ActiveStore
1       Loopback Pseudo-Interface 1     IPv6            4294967295              75 Disabled Connected       ActiveStore
2       Ethernet 3                      IPv4                  1500              25 Disabled Connected       ActiveStore
5       Ethernet                        IPv4                  1500              25 Enabled  Connected       ActiveStore
1       Loopback Pseudo-Interface 1     IPv4            4294967295              75 Disabled Connected       ActiveStore


PS C:\Windows\system32> Get-SmbClientNetworkInterface

Interface Index RSS Capable RDMA Capable Speed    IpAddresses            Friendly Name
--------------- ----------- ------------ -----    -----------            -------------
5               False       False        1 Gbps   {192.168.1.10}         Ethernet
2               True        False        1 Gbps   {192.168.2.10}         Ethernet 3
6               False       False        100 Kbps {fe80::ffff:ffff:fffe} Teredo Tunneling Pseudo-Interface

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

It seems the intel nic doesnt want to be rss enabled even the options is enabled.

Also checked and the usb nic isnt rss capable also.

 

A funny thing since when pairing the rss capable nics on windows server and pairing the non rss capable on windows 10 smb multichannel works like a charm.

Link to comment
Share on other sites

Link to post
Share on other sites

34 minutes ago, ttony said:

It seems the intel nic doesnt want to be rss enabled even the options is enabled.

Also checked and the usb nic isnt rss capable also.

 

A funny thing since when pairing the rss capable nics on windows server and pairing the non rss capable on windows 10 smb multichannel works like a charm.

The function of RSS isn't necessarily a requirement to get SMB3.0 Multichannel working. What it does is it divides up the responsibility of handling the multiple TCP/IP connections across multiple CPU cores. You should still be able to make it work but the downside is the entire load will be forced on 1 core / 2 threads. Depending on how many links you're attempting to aggregate it may or may not impact performance. Seeing as how you're only trying to aggregate 2 this shouldn't be a big issue but you'll see high utilization of only 1 core.

 

SAMBA supporting SMB3.0 multi-channel is still considered experimental. As leadeater mentioned just as of recently I got it working on FreeNAS. From my research you need SAMBA version 4.4.0 or later for any multi-channel support which you have. For me I'm using SAMBA version 4.6.4 you also need to consider that version 4.4.0 or your version 4.5.10 may not fully support windows 10. In some instances even Windows 10 needs to be updated for full support.

 

You have set up the addresses appropriately for SAMBA because despite Windows allowing all ports to be on the same network SAMBA requires the interfaces to be on separate networks/subnets. Although I might recommend if this is a dedicated point-to-point connection that you use a /30 subnet then you can assign each interface addresses of .1-.2 & .5-.6

 

Also mixing different types of NICs (especially USB with PCI_e) can cause trouble. If you can help it use the same type. I will say though it does not have to be this way on both ends of the link. Multichannel isn't THAT picky.

 

Also SMB3.0 Multichannel doesn't require NIC Teaming, bonding, or any other form of aggregation. On Windows side just plug them in. They'll auto configure. On the unRAID side it's a little finicky but still don't configure any form of link aggregation. In one instance I heard of someone having to add a static route to the Windows Server routing table before it worked but other than that it should work on its own.

 

I noticed in one of your config messages you're eth1 interface has a broadcast of 0.0.0.0 is there a default route you're using? Otherwise it should be 192.168.2.255

 

Just for testing purposes exclude the router. Disconnect it and configure the interfaces as follows:

 

Windows server:

NIC1: 10.0.0.1 255.255.255.252

NIC2: 10.0.0.5 255.255.255.252

 

unRAID:

NIC1: 10.0.0.2 255.255.255.252

NIC2: 10.0.0.6 255.255.255.252

 

A router isn't necessary to run multi-channel and neither is a default gateway by setting it up like this we can rule out network configuration and the router as potential causes of conflict. Beyond this I would try a different switch. If that doesn't help then update SAMBA to my version or later. 

Link to comment
Share on other sites

Link to post
Share on other sites

@Windows7ge

 

I tested on my windows 10 -windows server 2016 smb and it's working only with specific NIC config. 

 

I added on my Windows 10 workstation 2 x 1gbit PCI realtek nics and on windows server the integrated realtek nic and the usb nic . And it's working on one side , when accessing the share from windows 10 workstation i get ~200MB/s( all nics are used on both sides) , when accessing from windows server I got only 100MB/s( goes only by single nic and arrived on both nics on windows 10). Also the first config integrated intel + usb realtek nic and integrated realtek + PCI-E realtek NIC works.

 

I booted unraid and applied the IPs and settings you suggested also bypass the switch and it's multichannel isn't working at all. All normal share works and all adapters can ping each other. 

 

Also when entering this command I didn't get and response also tried multiple times(On windows it showed even when isn't working)

 

PS C:\Windows\system32> Get-SmbMultichannelConnection

PS C:\Windows\system32> Get-SmbMultichannelConnection -IncludeNotSelected
---no output, nothing----

 

Another stupid thing I observed when testing on windows 10 - windows server 2016, activate the integrate nic (3rd one) on windows 10 workstation the samba multichannel didin't worked any more for some reason despite there where 2 NICs that worked perfectly before. 

 

My belied is the protocol isn't working at all maybe due the NIC mixing but I can't figure out why I can't get  any response from that command at all.

 

Thanks for the suggestions.

Link to comment
Share on other sites

Link to post
Share on other sites

25 minutes ago, ttony said:

I booted unraid and applied the IPs and settings you suggested also bypass the switch and it's multichannel isn't working at all. All normal share works and all adapters can ping each other. 

Not bypass the switch I recommended trying a different switch. Multichannel will not work using a direct P2P connection I did mention disconnecting the router to see if that was in any way the issue.

 

I have never tried or even considered attempting multi channel using a Ethernet to USB adapter. Using two PCI realtek NICs (two identical adapters) is probably the best method if the motherboard slots are available. It'll offer redundancy, however on the other end mixing an onboard NIC with a USB to Ethernet adapter might explain why it isn't working.

 

Did someone tell you or did you read somewhere that multichannel can work using the USB adapters? Also is it USB3.0? USB2.0 cannot transfer files at 1Gbit and multichannel may not aggregate links of varying speeds. Best (best as in easiest) option is a dual port 1Gbit NIC.

 

I'd use the two realtek NICs in the server they're currently in and find a dual port NIC for the other system then go from there. I can vouch for any NICs that use the Intel i210 or Intel 82574L controller. Both support RSS.

 

Especially if this is to be a long term solution I wouldn't trust a USB adapter to last.

Link to comment
Share on other sites

Link to post
Share on other sites

45 minutes ago, Windows7ge said:

Not bypass the switch I recommended trying a different switch. Multichannel will not work using a direct P2P connection I did mention disconnecting the router to see if that was in any way the issue.

Actually P2P connections do work, that's how mine is setup. Mine is Windows Server 2016 & Windows 10 though.

Link to comment
Share on other sites

Link to post
Share on other sites

7 minutes ago, leadeater said:

Actually P2P connections do work, that's how mine is setup. Mine is Windows Server 2016 & Windows 10 though.

It's possible for multichannel to work without a switch? I'll have to test this on FreeNAS but it'll have to wait for the 10Gbit hardware as I don't have any 1Gbit NICs

Link to comment
Share on other sites

Link to post
Share on other sites

Just now, Windows7ge said:

It's possible for multichannel to work without a switch? I'll have to test this on FreeNAS but it'll have to wait for the 10Gbit hardware as I don't have any 1Gbit NICs

Yep I have dual port 10Gb NICs directly connected using SFP+ DAC cables, giving me 20Gb with no switch.

Link to comment
Share on other sites

Link to post
Share on other sites

2 minutes ago, leadeater said:

Yep I have dual port 10Gb NICs directly connected using SFP+ DAC cables, giving me 20Gb with no switch.

Cool, right now I'm using LC UPC to LC UPC OM4 2.0mm fiberoptic cable with 850nm transceivers. I'll still want to use a switch because I have expansion ideas for security surveillance, converting the file server to a backup server, SSD server, pfsense box, maybe a virtualization server, so a 10Gbit switch is something I can use anyways plus I'm finding fiber-optics and transceivers to be fun to play with.

 

Related to multichannel. I've finished the guide and I'm posting it tonight. I put a disclaimer in there because I know some things in there are probably wrong but once those get worked out I hope it helps people.

Link to comment
Share on other sites

Link to post
Share on other sites

  • 2 weeks later...

I have added 2 same PCI-E NICs with RSS enabled on both PCs and still the same problem 

 

Get-SmbMultichannelConnection still return nothing

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×