NDIS 驅動程式堆疊必須包含迷你埠驅動程式和通訊協定驅動程式,也可以包含中繼驅動程式。 因為中繼驅動程式是選擇性的,您必須瞭解迷你埠驅動程序、通訊協定驅動程式和 NDIS 之間的關聯性,才能處理中繼驅動程式。
迷你埠驅動程式會控制 NIC 裝置,並與通訊協定驅動程式的下邊緣通訊。 通訊協定驅動程式會實作通訊協定,例如 TCP/IP,且位於驅動程式堆疊中的迷你埠驅動程式上方。 NDIS 提供服務,以簡化小型埠驅動程式和通訊協定驅動程序的開發和維護。
迷你埠驅動程式、通訊協定驅動程式和 NDIS 之間的關聯性如下圖所示。
NDIS 迷你埠驅動程式和通訊協定驅動程式會透過標準 NDIS 介面系結在一起。
NDIS 中繼驅動程式包含位於其上邊緣的通訊協定驅動程式介面,以及位於其下邊緣的迷你埠驅動程式介面。 中繼驅動程式的協定介面允許它通過迷你埠驅動程式介面在另一個驅動程式之上運行。 因此,中繼驅動程式可以疊加在比迷你埠驅動程式或其他中繼驅動程式更高層級。 中繼驅動程式的迷你埠介面可讓您使用通訊協定較低邊緣介面在驅動程式下方載入。 因此,中繼驅動程式可以載入次於通訊協定驅動程式或次於其他中繼驅動程式的部分。
迷你埠驅動程式、通訊協定驅動程式、中繼驅動程式和 NDIS 之間的關聯性如下圖所示。
中繼驅動程式迷你埠介面稱為虛擬迷你埠。 它是虛擬的,因為它不會直接控制實體裝置。 相反地,它依賴基礎迷你埠驅動程式來與實體裝置通訊。
中繼驅動程式與其他驅動程式之間的系結稱為外部系結。 NDIS 控制外部系結。 虛擬迷你埠的上邊緣會與下一個較高的驅動程序系結,它可以是通訊協定驅動程式或其他中繼驅動程式。 中繼驅動程式通訊協定的下邊緣會系結至下一個較低驅動程式,它可以是另一個中繼驅動程式或基礎迷你埠驅動程式。
虛擬迷你埠的下邊緣和中繼驅動程式通訊協定的上邊緣不需要外部系結。 相反地,中繼驅動程式會在內部系結其虛擬迷你埠和其通訊協定。 這些內部系結是特定的實作,不受 NDIS 控制。
下圖說明虛擬迷你埠與中繼驅動程式通訊協定之間的內部系結。
NDIS 中繼驅動程式有兩種類型:篩選中繼驅動程式和 MUX 中繼驅動程式。 下列主題描述這些驅動程式類型: