Introduzione a NDIS 6.89

In questo argomento viene presentato Network Driver Interface Specification (NDIS) 6.89 e vengono descritte le principali aggiunte di progettazione. NDIS 6.89 è incluso in Windows 11, versione 24H2 e Windows Server 2022 e successive.

NDIS 6.89 è un aggiornamento della versione secondaria a NDIS 6.88. Per altre informazioni sulla conversione di driver NDIS 6.x a NDIS 6.89, vedere Conversione di driver NDIS 6.x a NDIS 6.89.

Aggiornamenti delle funzionalità

NDIS 6.89 aggiunge il supporto per udp Receive Segment Coalescing Offload (URO). Questo offload hardware consente alle schede di interfaccia di rete di unire i segmenti di ricezione UDP. Le schede di interfaccia di rete possono combinare datagrammi UDP dello stesso flusso che corrispondono a un set di regole in un buffer logicamente contiguo. Questi datagrammi combinati vengono quindi indicati allo stack di rete di Windows come singolo pacchetto di grandi dimensioni. L'unione di datagrammi UDP riduce il costo della CPU per elaborare i pacchetti in flussi a larghezza di banda elevata, con conseguente maggiore velocità effettiva e un minor numero di cicli per byte.

Implementazione di un driver NDIS 6.89

Un driver NDIS 6.89 deve soddisfare i requisiti definiti in Implementazione di un driver NDIS 6.30.

Inoltre, un driver NDIS 6.89 deve essere conforme ai requisiti seguenti:

  • Un driver NDIS 6.89 deve segnalare la versione NDIS corretta quando esegue la registrazione con NDIS.

    • È necessario aggiornare il numero di versione principale e secondario NDIS nella struttura NDIS_Xxx_DRIVER_CHARACTERISTICS per supportare NDIS 6.89. Il membro MajorNdisVersion deve contenere 6 e il membro MinorNdisVersion deve contenere 89. Questo requisito si applica ai driver miniport, protocollo e filtro. È anche necessario aggiornare le informazioni sulla versione per il compilatore (vedere Compilazione di un driver NDIS 6.89).

    • I driver Miniport devono impostare il membro Header di NDIS_MINIPORT_DRIVER_CHARACTERISTICS: impostare Revision su NDIS_MINIPORT_DRIVER_CHARACTERISTICS_REVISION_3 e Size su NDIS_SIZEOF_MINIPORT_DRIVER_CHARACTERISTICS_REVISION_3.

    • I driver di filtro devono impostare il membro Header di NDIS_FILTER_DRIVER_CHARACTERISTICS: impostare Revision su NDIS_FILTER_CHARACTERISTICS_REVISION_3 e Size su NDIS_SIZEOF_FILTER_DRIVER_CHARACTERISTICS_REVISION_3.

    • I driver di protocollo devono impostare il membro Header di NDIS_PROTOCOL_DRIVER_CHARACTERISTICS: impostare Revision su NDIS_PROTOCOL_CHARACTERISTICS_REVISION_2 e Size su NDIS_SIZEOF_PROTOCOL _DRIVER_CHARACTERISTICS_REVISION_2.

  • I driver miniport NDIS 6.89 per Windows 11, versione 24H2 e Windows Server 2022 e successive devono usare le versioni NDIS 6.89 delle strutture di dati.

Compilazione di un driver NDIS 6.89

WdK per Windows Server 2022 supporta il controllo delle versioni delle intestazioni. Il controllo delle versioni delle intestazioni assicura che i driver NDIS 6.89 usino le strutture di dati NDIS 6.89 appropriate in fase di compilazione.

Aggiungere le impostazioni del compilatore seguenti al progetto di Visual Studio per il driver:

  • Per un driver miniport, aggiungere NDIS689_MINIPORT=1.
  • Per un driver di filtro o protocollo, aggiungere NDIS689=1.

Per informazioni sulla compilazione di un driver con la versione di Windows Server 2022 di WDK, vedere Compilazione di un driver.