Compartir a través de


Información general sobre la interfaz del proveedor de kernel directo de red (NDKPI)

La interfaz del proveedor de kernel directo de red (NDKPI) es una extensión de NDIS que permite a los IHD proporcionar compatibilidad con el acceso directo a memoria remota (RDMA) en modo kernel en un adaptador de red (también denominado RNIC). Para exponer la funcionalidad RDMA del adaptador, el IHV debe implementar la interfaz NDKPI tal como se define en la referencia de NDKPI.

NDKPI y RDMA

Un proveedor de NIC implementa RDMA como una combinación de software, firmware y hardware. La parte de hardware y firmware es un adaptador de red que proporciona funcionalidad NDK/RDMA. Este tipo de adaptador también se denomina NIC habilitada para RDMA (RNIC). La parte de software es un controlador de miniporte compatible con NDK, que implementa la interfaz NDKPI.

La implementación de Windows de RDMA se denomina Network Direct (ND). La parte del kernel se denomina Kernel directo de red (NDK).

Los proveedores de NDK deben admitir la conectividad directa de red a través de direcciones IPv4 e IPv6 asignadas a adaptadores de minipuerto compatibles con NDK.

Para obtener más información sobre RDMA, consulte Lectura en segundo plano en RDMA.

Proveedor NDK

Un proveedor NDK es un controlador de minipuerto que implementa la interfaz NDKPI.

El proveedor NDK se carga e inicializa mediante el Administrador de PnP. Para obtener más información, consulte Inicialización de un controlador de minipuerto de NDK-Capable e Inicialización de un adaptador de minipuerto NDK.

Una vez cargado e inicializado el proveedor de NDK, está listo para controlar las solicitudes del consumidor de NDK. Estas solicitudes llegan como llamadas a funciones del proveedor.

Al controlar las solicitudes de un consumidor de NDK, el proveedor puede llamar a las funciones de devolución de llamada NDK del consumidor. Estos se documentan en funciones de devolución de llamada de consumidor de NDKPI.

Los proveedores de NDK deben implementar todos los elementos de la interfaz NDKPI que se documentan en la referencia de NDKPI, excepto las funciones de devolución de llamada de consumidor de NDKPI.

Consumidor de NDK

Los consumidores de NDK son componentes de Windows en modo kernel, como el servidor SMB y el cliente.

Nota En esta documentación no se describe cómo implementar un consumidor de NDK. La interfaz del controlador de dispositivo de consumidor (DDI) de NDKPI es una interfaz interna de Windows propietaria.

Un consumidor de NDK llama a la función de devolución de llamada NdkOpenAdapter (OPEN_NDK_ADAPTER_HANDLER) del proveedor para crear un objeto de adaptador y NdkCloseAdapter (NDK_FN_CLOSE_OBJECT) para cerrarlo. Una vez que el proveedor ha creado el objeto de adaptador, el consumidor llama a otras funciones de devolución de llamada del proveedor para crear objetos NDK adicionales.

Los consumidores de NDK implementan las funciones de devolución de llamada de consumidor de NDKPI, a las que llaman los proveedores de NDK.