Přehled rozhraní NDKPI (Network Direct Kernel Provider Interface)

Rozhraní NDKPI (Network Direct Kernel Provider Interface) je rozšíření NDIS, které umožňuje IHV poskytovat podporu vzdáleného přímého přístupu do paměti v režimu jádra (RDMA) v síťovém adaptéru (označovaném také jako RNIC). Aby byla zpřístupněna funkcionalita RDMA adaptéru, musí IHV implementovat rozhraní NDKPI, jak je definováno v referenčním dokumentu NDKPI.

NDKPI a RDMA

Dodavatel síťových adaptérů implementuje RDMA jako kombinaci softwaru, firmwaru a hardwaru. Část hardwaru a firmwaru je síťový adaptér, který poskytuje funkce NDK/RDMA. Tento typ adaptéru se také označuje jako síťová karta s podporou RDMA (RNIC). Softwarová část je ovladač miniportu podporující NDK, který implementuje rozhraní NDKPI.

Implementace RDMA systému Windows se nazývá Network Direct (ND). Část jádra se nazývá jádro s přímým přístupem k síti (NDK).

Poskytovatelé NDK musí podporovat síťové přímé připojení přes adresy IPv4 i IPv6 přiřazené k adaptérům miniportu podporujícím NDK.

Další informace o RDMA naleznete v tématu Pozadí k RDMA.

Poskytovatel NDK

Poskytovatel NDK je miniportový ovladač, který implementuje rozhraní NDKPI.

Zprostředkovatel NDK je načten a inicializován Správcem zařízení PnP. Další informace naleznete v tématu Inicializace ovladače NDK-Capable miniport a Inicializace adaptéru miniportu NDK.

Jakmile se zprostředkovatel NDK načte a inicializuje, je připravený zpracovat požadavky od příjemce sady NDK. Tyto požadavky přicházejí jako hovory na funkce poskytovatele.

Při zpracování požadavků od příjemce sady NDK může poskytovatel volat funkce zpětného volání NDK příjemce. Jsou dokumentovány v funkce zpětného volání zákazníka NDKPI.

NDK poskytovatelé musí implementovat všechny prvky rozhraní NDKPI, které jsou zdokumentované v NDKPI Reference, s výjimkou NDKPI Consumer Callback Functions.

Konzument NDK

Příjemci sady NDK jsou součásti systému Windows v režimu jádra, jako je server SMB a klient.

Poznámka Tato dokumentace se nezabírá, jak implementovat příjemce sady NDK. Rozhraní ovladače zařízení příjemce NDKPI (DDI) je proprietární interní rozhraní systému Windows.

Příjemce sady NDK volá callback funkci poskytovatele NdkOpenAdapter (OPEN_NDK_ADAPTER_HANDLER) k vytvoření objektu adaptéru a NdkCloseAdapter (NDK_FN_CLOSE_OBJECT) k jeho zavření. Jakmile zprostředkovatel vytvoří objekt adaptéru, příjemce zavolá další funkce zpětného volání zprostředkovatele a vytvoří další objekty NDK.

Příjemci sady NDK implementují funkce zpětného volání příjemce NDKPI, které volají poskytovatelé sady NDK.