iWARP RDMA para Intel Ethernet

El Acceso directo remoto a la memoria, o RDMA, permite a un equipo acceder a la memoria de otro sin interactuar con los búferes de datos del sistema operativo de ambos equipos, aumentando así la velocidad y el rendimiento de las redes. iWARP es un protocolo para implementar RDMA a través de redes de Internet Protocol.

Microsoft* Windows* ofrece dos formatos de RDMA: Network Direct Kernel (NDK) y Network Direct (ND).

iWARP RDMA para NDK incluye características como SMB Direct (Bloque de mensajes del servidor)

NDK permite que los componentes de Windows (como el almacenamiento SMB Direct) utilicen características de iWARP.

Configuración de iWARP NDK

La funcionalidad NDK está incluida en los controladores de red base de Intel y no requiere la instalación de características adicionales.

Verificación del funcionamiento de iWARP RDMA

Compruebe que RDMA está habilitado en las interfaces de red

Get-NetAdapterRDMA

Verifique que las interfaces de red se muestren como compatibles con RDMA y el multicanal esté habilitado

Get-SmbClientNetworkInterface

Network Direct está habilitado en el sistema operativo

Get-NetOffloadGlobalSetting | Seleccionar NetworkDirect

Cada interfaz de red compatible con RDMA debe tener un receptor en el puerto 445 (los sistemas operativos cliente de Windows que admiten RDMA no pueden publicar escuchas)

netstat.exe -xan | ? {$_ -match "445"}

Enrutamiento de iWARP a través de subredes IP

Si desea habilitar la característica RDMA de NDK a través de subredes, tendrá que seleccionar "Habilitar enrutamiento de iWARP a través de subredes IP" en la pantalla Opciones de configuración de iWARP durante la instalación del controlador básico (vea la sección Instalación más abajo).

iWARP para entornos virtualizados

Para habilitar la capacidad de RDMA en un adaptador virtual conectado a un VMSwitch, las propiedades avanzadas *SRIOV (Virtualización de E/S de raíz única) y *VMQ (Colas de máquina virtual) deben estar habilitadas en cada controlador de puerto. En determinadas circunstancias, estas configuraciones pueden estar deshabilitadas de manera predeterminada. Estas opciones se pueden configurar manualmente en la pestaña avanzada del cuadro de diálogo de propiedades del adaptador o se pueden usar los siguientes comandos de Powershell:

Set-NetAdapterAdvancedProperty -Name <nombre_nic> -RegistryKeyword *SRIOV -RegistryValue 1

Set-NetAdapterAdvancedProperty -Name <nombre_nic> -RegistryKeyword *VMQ -RegistryValue 1

Prueba de iWARP NDK: Microsoft* Windows* SMB Direct con DiskSPD

Esta sección describe una forma recomendada de probar iWARP RDMA para la funcionalidad y el rendimiento de Intel Ethernet en los sistemas operativos Microsoft* Windows*.

Tenga en cuenta que, dado que SMB Direct es una carga de trabajo de almacenamiento, el rendimiento de la prueba de referencia puede estar limitado a la velocidad del dispositivo de almacenamiento en lugar de a la interfaz de red que se está probando. Intel recomienda utilizar el almacenamiento más rápido posible para probar las prestaciones reales de los dispositivos de red sometidos a prueba.

Instrucciones de prueba:

  1. Configure al menos dos servidores Microsoft* Windows* Server 2012 R2 o Microsoft* Windows* Server 2016 con al menos una interfaz de red de Intel® Ethernet compatible con iWARP conectada por servidor.
  2. En el sistema designado como servidor SMB, configure un recurso compartido SMB. Tenga en cuenta que el rendimiento de la prueba de referencia puede estar limitado a la velocidad del dispositivo de almacenamiento en lugar de a la interfaz de red que se está probando. La configuración de almacenamiento está fuera del ámbito de este documento.
    Comando de PowerShell (PS):
    New-SmbShare -Name <nombre_rec_compartido_SMB> -Path <ruta_archivo_rec_compartido_SMB> -FullAccess <nombre_dominio>\Administrator,Everyone

    Ejemplo:
    New-SmbShare -Name RAMDISKShare -Path R:\RAMDISK -FullAccess group\Administrator,Everyone

  3. Descargue e instale la utilidad de Microsoft Diskspd desde aquí: https://gallery.technet.microsoft.com/DiskSpd-a-robust-storage-6cd2f223
  4. Mediante CMD o Powershell, ejecute cd a la carpeta DiskSpd y ejecute las pruebas. (Consulte la documentación de Diskspd para obtener más detalles sobre los parámetros)

    Ejemplo: establezca el tamaño de bloque en 4K, ejecute la prueba durante 60 segundos, deshabilite todo el almacenamiento en memoria caché de hardware y software, mida y muestre las estadísticas de latencia, aproveche 16 E/S superpuestas y 16 subprocesos por destino, 0 % escrituras al azar y 100 % lecturas y cree un archivo de prueba de 10 GB en "\\<SMBserverX722IP>\<nombre_rec_compartido_SMB>\test.dat":
    .\diskspd.exe –b4K -d60 -h -L –o16 -t16 –r –w0 -c10G \\<SMBserverX722IP>\<nombre_rec_compartido_SMB>\test.dat

  5. Verifique que el tráfico RDMA se esté ejecutando utilizando contadores de perfmon como "Actividad RDMA" y "Conexión directa SMB". Consulte la documentación de Microsoft para obtener más detalles.

Configuración del soporte de invitado de iWARP (modo NDK 3)

El modo NDK 3 permite que los componentes de Windows en modo de kernel utilicen las características de iWARP dentro de las particiones de invitados de Hyper-V. Para habilitar el modo NDK 3 en un dispositivo Intel Ethernet, haga lo siguiente:

  1. Habilite SR-IOV en el BIOS o UEFI de su sistema.
  2. Habilite la opción avanzada SR-IOV en el dispositivo.
  3. Configure el dispositivo con SR-IOV habilitado en el conmutador. Realice este paso para todas las funciones en el mismo dispositivo:
    New-VMSwitch -Name <nombre_conmutador> -NetAdapterName <nombre_dispositivo>
    -EnableIov $true
  4. Configure el número de funciones virtuales RDMA (VF) en el dispositivo estableciendo la opción avanzada "RdmaMaxVfsEnabled". Todas las funciones físicas se deben establecer en el mismo valor. El valor es la cantidad máxima de VF que pueden tener la capacidad de RDMA a la vez para todo el dispositivo. Habilitar más VF restringirá los recursos RDMA de las funciones físicas (PF) y otras VF.
    Set-NetAdapterAdvancedProperty -Name <nombre_dispositivo> -RegistryKeyword RdmaMaxVfsEnabled -RegistryValue <Valor: 0 – 32>
  5. Deshabilite todos los adaptadores PF en el host y vuelva a habilitarlos. Esto es necesario cuando se cambia la palabra clave de registro "RdmaMaxVfsEnabled" o cuando se crea o destruye un VMSwitch.
    Get-NetAdapterRdma | Disable-NetAdapter
    Get-NetAdapterRdma | Enable-NetAdapter
  6. Cree adaptadores de red VM para máquinas virtuales que requieran soporte de RDMA VF.
    Add-VMNetworkAdapter -VMName <nombre_vm> -VMNetworkAdapterName <nombre_dispositivo> -SwitchName <nombre_conmutador>
  7. Si planea usar la Actualización para creadores de Microsoft Windows 10 (RS2) o posterior en una partición invitada, establezca el peso de RDMA en el adaptador de red de VM introduciendo el siguiente comando en el host:
    Set-VMNetworkAdapterRdma -VMName <nombre_vm> -VMNetworkAdapterName <nombre_dispositivo> -RdmaWeight 100
  8. Establezca el peso de SR-IOV en el adaptador de red VM (Nota: el peso de SR-IOV debe establecerse en 0 antes de configurar RdmaWeight en 0):
    Set-VMNetworkAdapter -VMName <nombre_vm> -VMNetworkAdapterName <nombre_dispositivo> -IovWeight 100
  9. Instale el adaptador de red VF con el instalador PROSET en la máquina virtual.
  10. Habilite RDMA en el controlador de VF y el adaptador de red de Hyper-V utilizando PowerShell en la máquina virtual:
    Set-NetAdapterAdvancedProperty -Name <nombre_dispositivo> -RegistryKeyword RdmaVfEnabled -RegistryValue 1
    Get-NetAdapterRdma | Enable-NetAdapterRdma

iWARP RDMA para aplicaciones de modo de usuario ND

ND permite que las aplicaciones de modo de usuario utilicen características de iWARP. Si tiene previsto utilizar características de iWARP en aplicaciones de modo de usuario que está desarrollando, tendrá que instalar la característica Network Direct (ND) cuando instale los controladores.

Instalación de modo de usuario iWARP

El proveedor de iWARP en modo de usuario Intel® Ethernet es compatible con los sistemas operativos Linux* y Microsoft* Windows Server* 2012 R2 o posterior.

NOTAS:

  • Para instalar en Windows Server 2016 Nano Server, vea la sección Instalación en Nano Server más abajo.
  • Las aplicaciones en modo de usuario pueden tener requisitos previos, como Microsoft HPC Pack o Intel MPI Library; consulte la documentación de su aplicación para obtener más detalles.

Siga los pasos indicados más abajo para instalar las características de Network Direct (ND) iWARP.

  1. Desde el soporte de instalación, ejecute Autorun.exe para iniciar el instalador y, a continuación, seleccione "Instalar controladores y software" y acepte el acuerdo de licencia.
  2. En la pantalla Opciones de configuración, seleccione "Proveedor de iWARP en modo de usuario Intel® Ethernet".
  3. En la pantalla Opciones de configuración de iWARP, seleccione "Habilitar enrutamiento de iWARP a través de subredes IP", si lo desea. Tenga en cuenta que esta opción se visualiza durante la instalación del controlador base, aunque no se haya seleccionado iWARP de modo de usuario, ya que esta opción es aplicable también a la funcionalidad de Network Direct Kernel.
  4. Si Windows Firewall está instalado y activo, seleccione "Crear una regla del servicio de asignación de puertos iWARP de Intel® en el firewall de Windows" y las redes a las que se aplicará la regla. Si el firewall de Windows está deshabilitado o utiliza un firewall de terceros, tendrá que añadir esta regla manualmente.
  5. Continúe con la instalación del controlador y del software.

Instalación del modo de usuario iWARP en Microsoft Windows Server 2016 Nano Server

Siga los pasos indicados a continuación para instalar el Proveedor de iWARP en modo de usuario Intel® Ethernet en Microsoft Windows Server 2016 Nano Server.

  1. Cree el directorio desde el que instalará los archivos de iWARP. Por ejemplo: C:\Nano\iwarp.
  2. Copie los archivos siguientes al nuevo directorio:
  3. Ejecute el comando DISM para instalar los archivos de iWARP en la imagen de Nano Server, utilizando el directorio que creó en el paso 1 del parámetro AddDriver de la ruta de acceso. Por ejemplo: "DISM .../Add-Driver C:\Nano\iwarp"
  4. Cree una regla de firewall de entrada para el puerto UDP 3935.
  5. Si lo desea, utilice los siguientes comandos de Windows PowerShell para habilitar el enrutamiento de iWARP a través de subredes IP.

Asistencia al cliente

Cuestiones legales / Exenciones de responsabilidad

Copyright (C) 2018, Intel Corporation. Todos los derechos reservados.

Intel Corporation no asume ninguna responsabilidad por los errores y omisiones en esta guía. Del mismo modo, Intel no se compromete de ninguna forma a actualizar la información aquí contenida.

Intel es una marca comercial de Intel Corporation en los Estados Unidos y en otros países.

* Otros nombres y marcas pueden ser reclamados como propiedad de terceras partes.

Este software se proporciona bajo licencia y sólo se puede utilizar o copiar según los términos de la licencia. La información de este manual se ofrece sólo como referencia, está sujeta a cambios sin previo aviso y no debe interpretarse como un compromiso por parte de Intel Corporation. Intel Corporation no asumirá responsabilidad alguna por los errores o inexactitudes que aparezcan en este documento o en cualquier software que pueda proporcionarse en relación con este documento. Excepto tal y como lo permite dicha licencia, ninguna parte de este documento podrá ser reproducida, almacenada en un sistema de recuperación o transmitida en ningún formato o por ningún medio sin el consentimiento escrito expreso de Intel Corporation.