SMB Multichannel utilizza più percorsi verso un NAS domestico associando diverse connessioni di rete a una singola sessione logica SMB. Il client e il server scoprono interfacce e capacità utilizzabili, quindi creano canali paralleli su un adattatore con supporto RSS, su più NIC fisiche o su collegamenti con supporto RDMA.
La funzionalità può aumentare la larghezza di banda e preservare una sessione di file quando una connessione fallisce, ma non somma semplicemente tutte le velocità delle porte pubblicizzate. Le interfacce selezionate devono essere compatibili e raggiungibili, e i dischi NAS, lo storage client, la CPU, il percorso PCIe e lo switch definiscono ancora il limite utilizzabile.
Come scopre un client SMB più di un percorso?
Dopo che la prima connessione SMB è stata stabilita, gli endpoint scambiano informazioni sulle loro interfacce di rete e capacità. SMB scambia informazioni sulle capacità delle interfacce, inclusa la velocità del collegamento e le caratteristiche che influenzano la selezione di un'interfaccia.
Un percorso richiede più di una semplice porta fisica aggiuntiva. Entrambi gli endpoint devono avere indirizzi che possano raggiungersi reciprocamente e le implementazioni SMB devono esporre tali interfacce come idonee per la stessa sessione.
Interfacce con velocità o classi di capacità diverse potrebbero non essere utilizzate insieme come suggerirebbe una semplice somma. SMB può preferire adattatori più veloci, con supporto RSS o RDMA, invece di distribuire il traffico in modo uniforme su ogni percorso esistente.
Perché una sessione SMB crea più connessioni TCP?
Una condivisione montata e una sessione di file autenticata rimangono logicamente unificate anche quando una sessione SMB può utilizzare più connessioni. SMB associa i canali aggiuntivi alla sessione esistente anziché presentare più condivisioni non correlate.
Richieste di file, risposte, crediti e dati possono essere distribuiti su quei canali. Il sistema operativo gestisce la mappatura, quindi un’applicazione normalmente apre lo stesso percorso e handle del file che userebbe con una singola connessione.
Questo è diverso dall’avviare diversi programmi di copia indipendenti. Multichannel crea parallelismo di trasporto all’interno di una singola sessione SMB, mentre il protocollo file continua a preservare autenticazione, blocchi, ordinamento e semantica di condivisione.
In che modo RSS e più NIC cambiano il parallelismo disponibile?
Receive Side Scaling permette a un adattatore di rete di distribuire l’elaborazione della ricezione su più core CPU. RSS distribuisce l’elaborazione di rete tra i core CPU invece di costringere un flusso ad alta velocità a passare attraverso una singola coda del processore.
Con diverse NIC fisiche, SMB può anche stabilire canali su interfacce distinte. Questo aumenta la capacità del collegamento e fornisce alla sessione punti di guasto separati, a condizione che sia il client che il NAS espongano percorsi compatibili e raggiungibili.
Una singola NIC ad alta velocità con supporto RSS e due NIC indipendenti sono quindi topologie diverse. La prima migliora il parallelismo della CPU all’interno di un singolo collegamento; la seconda può aumentare la larghezza di banda fisica del collegamento oltre a fornire ridondanza.
Dove si colloca RDMA in SMB Multichannel?
SMB Direct è la capacità di trasporto RDMA utilizzata da SMB, mentre Multichannel seleziona e combina i percorsi SMB disponibili. RDMA riduce l’uso della CPU per il trasferimento dati SMB quando sia gli endpoint che la rete supportano la tecnologia RDMA richiesta.
Multichannel può operare su TCP ordinario senza RDMA. Un percorso abilitato RDMA è generalmente preferito per il suo minore carico sulla CPU host, ma un normale NAS domestico con adattatori Ethernet standard può comunque utilizzare più canali TCP.
RoCE e altri design RDMA introducono i propri requisiti di switch, gestione delle perdite, driver e topologia. Aggiungere RDMA a un NAS domestico è una decisione infrastrutturale separata, non una casella da spuntare richiesta per il semplice SMB Multichannel.
Come fornisce Multichannel il failover senza riavviare la copia?
Poiché diverse connessioni appartengono alla stessa sessione SMB, i canali rimanenti possono preservare la sessione SMB. Il client può continuare a usare i canali ancora raggiungibili invece di ricostruire l'intera connessione di condivisione.
L'interruzione può essere ancora visibile mentre la connessione guasta viene rilevata e le richieste in sospeso vengono recuperate. La durabilità del file dipende anche dal dialetto SMB, dal comportamento del server e dal timeout dell'applicazione.
Multichannel protegge da un guasto di connessione o percorso NIC; non protegge dal riavvio del NAS, dal guasto del pool di archiviazione, dalla perdita di alimentazione dello switch o dal fatto che ogni canale attraversi lo stesso componente fisico nascosto.
Perché la rete multipla non garantisce una velocità di trasferimento multipla?
Il design multi-NIC di Microsoft consente ai carichi di lavoro SMB di utilizzare diversi percorsi di rete idonei, ma più percorsi non possono superare il collo di bottiglia dello storage. Un NAS a due porte non può fornire il doppio della velocità di trasferimento quando i suoi dischi o la CPU sono già saturati da una porta.
Il client deve anche scrivere o leggere dati alla velocità combinata. Un singolo SSD lento del laptop, un adattatore USB, una corsia PCIe, un processo di crittografia o un percorso di firma SMB possono mantenere la sessione al di sotto della somma delle interfacce di rete.
SMB fornisce accesso condiviso ai file tra dispositivi. Usa Multichannel quando un client o carico di lavoro SMB può consumare più di un percorso, quindi verifica i canali attivi e misura il percorso di storage NAS prima di considerare la capacità di link inutilizzata come un errore del protocollo.
| Capacità di rete | Cosa aggiunge SMB Multichannel | Limite rimanente |
|---|---|---|
| Una NIC non RSS | Di solito un percorso di connessione efficace | Link singolo e coda del processore |
| Una NIC con supporto RSS | Più connessioni possono usare diversi core CPU | Velocità di linea fisica della NIC |
| Più NIC compatibili | Aggregazione di link a livello di sessione SMB e failover del percorso | Throughput di storage NAS e client |
| NIC compatibili con RDMA | Canali SMB Direct a basso utilizzo CPU | Configurazione RDMA e velocità di storage |
Domande frequenti
SMB Multichannel è lo stesso dell'aggregazione di link?
No. L'aggregazione di link opera sotto SMB e comunemente assegna ogni flusso a un singolo link membro. SMB Multichannel crea diverse connessioni per una sessione SMB e può usarle direttamente.
Un client 2.5GbE può usare due porte NAS 1GbE?
Può richiederlo in topologie supportate quando il client e il server SMB scoprono canali compatibili e il link del client può ricevere il traffico combinato. Il supporto effettivo varia in base all'implementazione NAS, al sistema operativo e alla capacità della NIC.
SMB Multichannel richiede uno switch gestito?
Non intrinsecamente. Più percorsi Ethernet ordinari possono funzionare tramite uno switch senza LACP, ma le interfacce, gli indirizzi, le subnet e la topologia senza loop devono comunque essere progettati correttamente.
Una copia di file sopravvive se si scollega un cavo?
Può continuare sui canali rimanenti quando il client e il server mantengono la sessione SMB, anche se il rilevamento e il recupero delle richieste possono causare una pausa temporanea.
Conclusione finale
SMB Multichannel trasforma una sessione di condivisione file in un insieme di canali di trasporto paralleli. RSS può distribuire una connessione ad alta velocità tra i core della CPU, più NIC possono aumentare la larghezza di banda e la resilienza del percorso, e RDMA può ridurre il carico della CPU. La funzionalità migliora solo il percorso di rete; lo storage, l'I/O del client, la compatibilità dell'interfaccia e l'hardware condiviso determinano ancora se la velocità di trasferimento misurata si scala.
Hub Tecnologico e AI
Altro da leggere

Che cos’è lo stato di Plex e quali parti devono essere persistenti?
Lo stato persistente di Plex è l’insieme di informazioni che conserva l’esperienza del server tra un riavvio e una ricostruzione; i contenuti multimediali e...

In che modo Plex gestisce l’autenticazione nelle sessioni locali e remote?
L’autenticazione Plex inizia con l’identità del server e dell’account; quindi i percorsi di rete locali o remoti determinano la raggiungibilità e il comportamento della...

Perché la ricerca in Plex può rallentare man mano che aumentano i dati della libreria?
La crescita della libreria, da sola, non è la diagnosi. Verifica la struttura delle query, gli indici, lo stato della cache, la latenza dello...

