How to Configure and Audit SMB Multichannel in Windows 11 Using PowerShell

SMB Multichannel is a high-performance network feature built into Windows 11 and Windows Server that enables the SMB3 protocol to automatically aggregate network throughput and provide transparent network fault tolerance. When client machines and file servers possess multiple network adapters or single adapters supporting Receive Side Scaling (RSS), SMB Multichannel establishes multiple simultaneous TCP connections per session. This can double or quadruple file copy speeds over 1GbE, 2.5GbE, or 10GbE networks without requiring complex switch-dependent link aggregation (LACP).

In this guide, you will learn how to verify hardware prerequisites, audit active multichannel links, test throughput, and troubleshoot connection failovers in Windows 11 using PowerShell.

Understanding SMB Multichannel Requirements

For Windows 11 to initiate multichannel data streams across SMB shares, the network configuration must satisfy one of the following hardware topologies:

  • Multiple Physical Adapters: The client and server each possess two or more separate network interfaces (for example, two 1GbE Ethernet ports connected to the same subnet or routed subnets).
  • Single RSS-Capable Adapter: A single network card that supports Receive Side Scaling (RSS) allows the operating system to establish multiple TCP channels across multiple CPU cores on a single physical link.
  • RDMA (Remote Direct Memory Access): High-end adapters supporting SMB Direct (RoCE or iWARP) bypass the CPU stack entirely while establishing parallel queues.

SMB Multichannel is enabled by default in Windows 11, but validating that both client and server negotiate multichannel sessions requires PowerShell diagnostic cmdlets.

Auditing Network Interface Multichannel Capabilities

Launch an elevated PowerShell console (Run as Administrator). First, verify whether your local client network adapters support SMB Multichannel:

Get-SmbClientNetworkInterface | Format-Table InterfaceIndex, InterfaceDescription, LinkSpeed, RssCapable, RdmaCapable -AutoSize

Review the columns in the output:

  • RssCapable: Must display True for the network card to spawn multiple parallel TCP connections across CPU cores.
  • RdmaCapable: Displays True on enterprise network cards configured for SMB Direct.

Next, audit the network interfaces on the remote file server hosting your network share (replace FS01 with your server name):

Get-SmbServerNetworkInterface | Format-Table InterfaceIndex, InterfaceDescription, LinkSpeed, RssCapable -AutoSize

Inspecting Active SMB Multichannel Connections

SMB Multichannel does not hold connections open constantly; it dynamically spawns parallel worker channels when an active file transfer begins. To observe active multichannel sessions:

  1. Map a network share or open an SMB path in Windows Explorer (e.g., \\Server01\Data).
  2. Begin copying a large file (e.g., an ISO or multi-gigabyte video archive).
  3. While the copy progress bar is moving, execute Get-SmbMultichannelConnection in PowerShell:
    Get-SmbMultichannelConnection | Format-Table ServerName, ClientInterfaceIndex, ServerInterfaceIndex, Selected, ClientRSSCapable, ServerRSSCapable -AutoSize

If multichannel is operating correctly, Windows displays multiple rows for the same ServerName, with the Selected column set to True across all connected interfaces.

Viewing Detailed Channel Bandwidth and IP Endpoints

To inspect the exact IP addresses, port numbers, and interface pairs used for each data channel:

Get-SmbMultichannelConnection | Select-Object -ExpandProperty ConnectionProperties | Format-Table ServerIPAddress, ClientIPAddress, InterfaceIndex, SessionId -AutoSize

Confirm that both local and remote IPv4/IPv6 addresses are actively listed without errors.

Enabling or Disabling SMB Multichannel

While SMB Multichannel is enabled by default, network administrators occasionally need to toggle the feature for benchmarking or isolation testing.

To check the current configuration state on your Windows 11 client:

Get-SmbClientConfiguration | Select-Object EnableMultichannel

To disable client multichannel (forcing single-stream legacy connections):

Set-SmbClientConfiguration -EnableMultichannel $false -Confirm:$false

To re-enable multichannel functionality:

Set-SmbClientConfiguration -EnableMultichannel $true -Confirm:$false

Similarly, on systems sharing folders out to other endpoints, verify the server-side configuration:

Get-SmbServerConfiguration | Select-Object EnableMultichannel

Forcing a Multichannel Network Re-Evaluation

If you recently connected a second Ethernet adapter or changed IP routing rules while a file transfer was active, Windows may continue utilizing the single initial connection until the cache expires. To force the SMB client to immediately re-evaluate and scale across all available adapters:

Update-SmbMultichannelConnection

This cmdlet probes all remote server interfaces and instantly scales the active transfer across newly detected network pathways.

Troubleshooting Common Multichannel Bottlenecks

If file transfers remain locked to single-cable speeds despite multiple adapters, investigate the following items:

  • Asymmetric Link Speeds: SMB Multichannel automatically selects interfaces matching the fastest available link speed. If adapter 1 is 10GbE and adapter 2 is 1GbE, Windows will utilize only the 10GbE adapter to prevent packet reordering penalties. Ensure teaming adapters share identical link speeds.
  • RSS Disabled at Driver Level: If RssCapable reports False, check driver settings using Get-NetAdapterRss and enable it:
    Enable-NetAdapterRss -Name "Ethernet 1"
  • Subnet Isolation: In multi-NIC environments, configure each physical network adapter pair on distinct IP subnets (e.g., 192.168.10.x and 192.168.20.x) to prevent Windows routing table ambiguity.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.