iWARP (Internet Wide Area RDMA Protocol)
Remote Direct Memory Access, o RDMA, consente a un computer di accedere alla memoria di un altro computer senza interagire con i buffer di dati del sistema operativo di entrambi i computer, aumentando così il throughput e la velocità di rete. Internet Wide Area RDMA Protocol (iWARP) è un protocollo per implementare RDMA sulle reti Internet Protocol.
Microsoft* Windows* offre due forme di RDMA: Network Direct (ND) e Network Direct Kernel (NDK). ND consente alle applicazioni in modalità utente di utilizzare le funzioni di iWARP. NDK consente ai componenti Windows in modalità kernel (come File Manager) di utilizzare le funzioni di iWARP. La funzionalità NDK è inclusa nei driver di rete di base Intel. La funzionalità NDK è un'opzione separata disponibile durante l'installazione del software di rete e dei driver Intel. Se si prevede di utilizzare le funzioni di iWARP nelle applicazioni che si stanno sviluppando, è necessario installare la funzione Network Direct (ND) in modalità utente durante l'installazione dei driver (vedere Installazione qui di seguito).
|
NOTE:
- Sebbene la funzionalità NDK sia inclusa nei driver di base, se si vuole che le funzioni RDMA di NDK siano utilizzate in tutte le subnet, è necessario selezionare "Abilitare il routing iWARP su subnet IP" nella schermata Opzioni di configurazione iWARP durante l'installazione dei driver di base (vedere Installazione qui di seguito).
- Per attivare la funzionalità RDMA su una scheda di rete virtuale collegata allo switch di una macchina virtuale, le proprietà avanzate *SRIOV (Single Root IO Virtualization) e *VMQ (Virtual Machine Queues) devono essere attivate su ogni driver di porta. Per impostare queste opzioni, usare la scheda Avanzate della finestra di dialogo delle proprietà della scheda di rete o i seguenti comandi di Windows PowerShell.
Set-NetAdapterAdvancedProperty -Name <nome_nic> -RegistryKeyword *SRIOV -RegistryValue 1
Set-NetAdapterAdvancedProperty -Name <nome_nic> -RegistryKeyword *VMQ -RegistryValue 1
|
Requisiti
Provider iWARP Ethernet Intel® modalità utente è supportato sui sistemi operativi Linux* e su Microsoft* Windows Server* 2012 R2 o versione successiva. Per le installazioni Windows, è necessario che sia installato il pacchetto Microsoft* HPC o Intel® MPI Library.
Installazione delle funzioni di Network Direct (ND) iWARP in modalità utente
|
NOTA: per l'installazione di Intel® Ethernet User Mode iWARP Provider su Windows Server 2016 Nano Server, vedere Installazione su Nano Server qui di seguito.
|
Le funzioni Network Direct Kernel (NDK) sono incluse nei driver di base Intel. Seguire questi passaggi per installare le funzioni di Network Direct (ND) iWARP in modalità utente.
- Dal supporto di installazione, eseguire Autorun.exe per avviare il programma di installazione, quindi scegliere "Installa i driver e il software" e accettare il contratto di licenza.
- Nella schermata Opzioni di installazione, selezionare "Intel® Ethernet User Mode iWARP Provider".
- Nella schermata Opzioni di configurazione iWARP, selezionare "Abilitare il routing iWARP su subnet IP", se desiderato. Notare che quest'opzione, poiché è applicabile anche alla funzionalità Network Direct Kernel, viene visualizzata durante l'installazione dei driver di base anche se iWARP modalità utente non era stato selezionato.
- Se Windows Firewall è installato e attivo, selezionare "Creare una regola di Intel® Ethernet iWARP Port Mapping Service in Windows Firewall" e le reti a cui applicare la regola. Se Windows Firewall è disattivato o si sta utilizzando un firewall di terze parti, la regola dovrà essere aggiunta manualmente.
- Continuare con l'installazione dei driver e del software.
Installazione su Nano Server
Seguire questi passaggi per installare Intel® Ethernet User Mode iWARP Provider su Microsoft Windows Server 2016 Nano Server.
- Creare una directory in cui installare i file di iWARP. Ad esempio, C:\Nano\iwarp.
- Copiare i seguenti file nella nuova directory:
- \Disk\APPS\PROSETDX\Winx64\DRIVERS\i40wb.dll
- \Disk\APPS\PROSETDX\Winx64\DRIVERS\i40wbmsg.dll
- \Disk\APPS\PROSETDX\Winx64\DRIVERS\indv2.cat
- \Disk\APPS\PROSETDX\Winx64\DRIVERS\indv2.inf
- \Disk\APPS\PROSETDX\Winx64\DRIVERS\indv2.sys
- Eseguire il comando DISM per inserire i file iWARP nell'immagine del Nano Server, utilizzando la directory che si è creata nel passaggio 1 per il percorso del parametro AddDriver. Ad esempio, "DISM .../Add-Driver C:\Nano\iwarp"
- Creare una regola del firewall in entrata per la porta UDP 3935.
- Se lo si desidera, utilizzare i seguenti comandi di Windows PowerShell per abilitare il routing iWARP sulle subnet IP.
- Set-NetOffloadGlobalSetting -NetworkDirectAcrossIPSubnets Allow
- Disable Adapter
- Enable Adapter
Configurazione del supporto guest di iWARP (modalità 3 di NDK)
La modalità 3 di NDK consente ai componenti Windows in modalità kernel di utilizzare le funzioni iWARP all'interno delle partizioni guest Hyper-V. Per attivare la modalità 3 di NDK su un dispositivo Ethernet Intel, procedere come indicato di seguito:
- Attivare SR-IOV nel BIOS o UEFI del sistema.
- Attivare l'opzione avanzata SR-IOV sul dispositivo.
- Configurare il dispositivo con SR-IOV attivato sullo switch. Eseguire questo passaggio per tutte le funzioni sullo stesso dispositivo:
New-VMSwitch -Name <nome_switch> -NetAdapterName <nome_dispositivo>
-EnableIov $true
- Configurare il numero di funzioni virtuali (VF) RDMA sul dispositivo impostando l'opzione avanzata "RdmaMaxVfsEnabled". Tutte le funzioni fisiche devono essere impostate sullo stesso valore. Il valore è il numero massimo di funzioni virtuali (VF) che sono in grado di utilizzare contemporaneamente RDMA per l'intero dispositivo. L'attivazione di un numero maggiore di funzioni virtuali (VF) limiterà le risorse RDMA disponibili per le funzioni fisiche (PF) e le altre funzioni virtuali.
Set-NetAdapterAdvancedProperty -Name <nome_dispositivo> -RegistryKeyword RdmaMaxVfsEnabled -RegistryValue <Valore: 0 – 32>
- Disattivare tutte le schede di rete delle funzioni fisiche (PF) sull'host e riattivarle. Questa operazione è necessaria quando la parola chiave del registro di sistema "RdmaMaxVfsEnabled" è cambiata o quando si crea o elimina un VMSwitch.
Get-NetAdapterRdma | Disable-NetAdapter
Get-NetAdapterRdma | Enable-NetAdapter
- Creare schede di rete VM per macchine virtuali (VM) che richiedono il supporto di VF RDMA.
Add-VMNetworkAdapter -VMName <nome_vm> -VMNetworkAdapterName <nome_dispositivo> -SwitchName <nome_switch>
- Se si prevede di utilizzare Microsoft Windows 10 Creators Update (RS2) o versione successiva su una partizione guest, impostare il peso di RDMA sulla scheda di rete VM inserendo il seguente comando nell'host:
Set-VMNetworkAdapterRdma -VMName <nome_vm> -VMNetworkAdapterName <nome_dispositivo> -RdmaWeight 100
- Impostare il peso di SR-IOV sulla scheda di rete VM (nota: il peso di SR-IOV deve essere impostato a 0 prima di impostare RdmaWeight a 0):
Set-VMNetworkAdapter -VMName <nome_vm> -VMNetworkAdapterName <nome_dispositivo> -IovWeight 100
- Installare la scheda di rete VF con il programma di installazione di PROSET nella macchina virtuale.
- Attivare RDMA sul driver VF e sulla scheda di rete Hyper-V usando PowerShell nella macchina virtuale:
Set-NetAdapterAdvancedProperty -Name <nome_dispositivo> -RegistryKeyword RdmaVfEnabled -RegistryValue 1
Get-NetAdapterRdma | Enable-NetAdapterRdma
Verificare che RDMA sia stato correttamente attivato controllando il campo "RDMA Capable". Eseguire:
Get-SmbServerNetworkInterface
Se il campo "RDMA Capable" riporta "false", provare a disattivare e riattivare le funzionalità RDMA nella macchina virtuale:
Get-NetAdapterRdma | Disable-NetAdapterRdma
Get-NetAdapterRdma | Enable-NetAdapterRdma
Se il campo "RDMA Capable" riporta ancora "false", provare a disattivare e riattivare le funzioni fisiche sull'host: Get-NetAdapterRdma | Disable-NetAdapter
Get-NetAdapterRdma | Enable-NetAdapter
Assistenza Clienti
- Sito Web principale del supporto tecnico di Intel: http://www.intel.com/p/it_IT/support/
- Informazioni sui prodotti di rete: http://www.intel.com/network
Informazioni legali/Declinazioni di responsabilità
Copyright (C) 2018, Intel Corporation. Tutti i diritti riservati.
Intel Corporation non si assume alcuna responsabilità per eventuali errori o omissioni presenti in questo documento. Inoltre, Intel non si assume alcun impegno di aggiornare le informazioni ivi contenute.
Intel è un marchio di Intel Corporation negli Stati Uniti e in altri paesi.
*Gli altri marchi e nomi potrebbero essere proprietà di terzi.
Il presente software viene fornito con una licenza e può soltanto essere utilizzato o copiato in base ai termini della licenza. Il contenuto di questo manuale viene fornito esclusivamente per uso informativo, è soggetto a cambiamenti senza preavviso e non va interpretato come impegno alcuno da parte di Intel Corporation. Intel Corporation non si assume alcuna responsabilità per eventuali errori o imprecisioni presenti in questo documento o nel software che potrebbe essere fornito insieme al documento. Fatta eccezione per quanto previsto da tale licenza, nessuna parte di questo documento può essere riprodotta, archiviata in un sistema di registrazione o trasmessa in alcuna forma o alcun mezzo senza il preventivo consenso scritto di Intel Corporation.