網路直接核心提供者介面概觀 (NDKPI)
網路直接核心提供者介面 (NDKPI) 是 NDIS 的延伸模組,可讓 IHD 在網路適配器 (也稱為 RNIC) 中提供內核模式遠端直接記憶體存取 (RDMA) 支援。 若要公開配接器的 RDMA 功能,IHV 必須實作 NDKPI 介面,如 NDKPI 參考中所定義。
NDKPI 和 RDMA
NIC 廠商會將 RDMA 實作為軟體、韌體和硬體的組合。 硬體和韌體部分是提供 NDK/RDMA 功能的網路適配器。 這種類型的適配卡也稱為已啟用 RDMA 的 NIC (RNIC)。 軟體部分是支援 NDK 的迷你埠驅動程式,可實作 NDKPI 介面。
RDMA 的 Windows 實作稱為網路直接(ND)。 核心部分稱為網路直接核心 (NDK)。
NDK 提供者必須透過指派給支援 NDK 迷你埠適配卡的 IPv4 和 IPv6 位址,支援網路直接連線。
如需 RDMA 的詳細資訊,請參閱 RDMA 背景資料。
NDK 提供者
NDK 提供者是實作 NDKPI 介面的迷你埠驅動程式。
PnP 管理器會載入並初始化 NDK 提供者。 如需詳細資訊,請參閱 初始化 NDK-Capable Miniport Driver 和 初始化 NDK Miniport Adapter。
載入並初始化 NDK 提供者之後,即可處理來自 NDK 取用者的要求。 這些要求會在呼叫提供者函式時發出。
處理來自NDK取用者的要求時,提供者可以呼叫取用者的NDK回呼函式。 這些記載於 NDKPI 消費者回呼函數。
NDK 提供者必須實作 NDKPI 參考中所記載之 NDKPI 介面的所有元素,但 NDKPI 取用者回呼函式除外。
NDK 使用者
NDK 取用者是核心模式 Windows 元件,例如 SMB 伺服器和用戶端。
注意 本文件不會討論如何實作 NDK 使用者。 NDKPI 取用者裝置驅動程式介面 (DDI) 是專屬的 Windows 內部介面。
NDK 取用者會呼叫提供者的 NdkOpenAdapter (OPEN_NDK_ADAPTER_HANDLER) 回呼函式來建立配接器物件,並 NdkCloseAdapter (NDK_FN_CLOSE_OBJECT) 關閉它。 提供者建立配接器對象之後,取用者會呼叫其他提供者回呼函式來建立其他 NDK 物件。
NDK 取用者會實作由 NDK 提供者呼叫的 NDKPI 取用者回呼函式。