Freigeben über


Übersicht über netzwerkdirekte Kernelanbieterschnittstelle (NDKPI)

Die Network Direct Kernel Provider Interface (NDKPI) ist eine Erweiterung von NDIS, die es IHVs ermöglicht, Remote Direct Memory Access (RDMA)-Unterstützung im Kernelmodus in einem Netzwerkadapter (auch RNIC genannt) bereitzustellen. Um die RDMA-Funktionalität des Adapters verfügbar zu machen, muss der IHV die NDKPI-Schnittstelle implementieren, wie in der NDKPI-Referenz definiert.

NDKPI und RDMA

Ein NIC-Anbieter implementiert RDMA als Kombination aus Software, Firmware und Hardware. Der Hardware- und Firmwareteil ist ein Netzwerkadapter, der NDK/RDMA-Funktionen bereitstellt. Dieser Adaptertyp wird auch als RDMA-fähige NIC (RNIC) bezeichnet. Der Softwareteil ist ein NDK-fähiger Miniporttreiber, der die NDKPI-Schnittstelle implementiert.

Die Windows-Implementierung von RDMA heißt Network Direct (ND). Der Kernelteil heißt Network Direct Kernel (NDK).

NDK-Anbieter müssen die Direkte Netzwerkkonnektivität sowohl über IPv4- als auch über IPv6-Adressen unterstützen, die NDK-fähigen Miniportadaptern zugewiesen sind.

Weitere Informationen zu RDMA finden Sie unter Background Reading on RDMA.

Der NDK-Anbieter

Ein NDK-Anbieter ist ein Miniporttreiber, der die NDKPI-Schnittstelle implementiert.

Der NDK-Anbieter wird vom PnP-Manager geladen und initialisiert. Weitere Informationen finden Sie unter Initialisieren eines NDK-Capable Miniporttreibers und Initialisieren eines NDK-Miniportadapters.

Sobald der NDK-Anbieter geladen und initialisiert wurde, ist er bereit, Anforderungen vom NDK-Consumer zu verarbeiten. Diese Anforderungen kommen als Aufrufe von Anbieterfunktionen an.

Beim Verarbeiten von Anforderungen eines NDK-Consumers kann der Anbieter die NDK-Rückruffunktionen des Consumers aufrufen. Diese sind in NDKPI Consumer Callback Functions dokumentiert.

NDK-Anbieter müssen alle Elemente der NDKPI-Schnittstelle implementieren, die in der NDKPI-Referenz dokumentiert sind, mit Ausnahme der NDKPI-Consumer-Rückruffunktionen.

Der NDK-Consumer

NDK-Consumer sind Windows-Komponenten im Kernelmodus, z. B. SMB-Server und -Client.

Hinweis In dieser Dokumentation wird nicht erläutert, wie ein NDK-Consumer implementiert wird. Die NDKPI Consumer Device Driver Interface (DDI) ist eine proprietäre Windows-interne Schnittstelle.

Ein NDK-Consumer ruft die Rückruffunktion NdkOpenAdapter (OPEN_NDK_ADAPTER_HANDLER) des Anbieters auf, um ein Adapterobjekt zu erstellen, und NdkCloseAdapter (NDK_FN_CLOSE_OBJECT), um es zu schließen. Nachdem der Anbieter das Adapterobjekt erstellt hat, ruft der Consumer andere Anbieterrückruffunktionen auf, um zusätzliche NDK-Objekte zu erstellen.

NDK-Consumer implementieren die NDKPI-Consumer-Rückruffunktionen, die von NDK-Anbietern aufgerufen werden.