網路直接核心提供者介面概觀 (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 驅動程式 和 初始化 NDK Miniport 配接器。
載入並初始化 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 取用者會實作 NDKPI 取用者回呼函式,由 NDK提供者呼叫。