Navigeren in de ontwerphandleiding voor netwerkstuurprogramma's
Op Microsoft Windows gebaseerde besturingssystemen ondersteunen verschillende typen netwerkstuurprogramma's in de kernelmodus. In de sectie Netwerk van de WdK-documentatie (Windows Driver Kit) wordt beschreven hoe u deze netwerkstuurprogramma's schrijft. In dit onderwerp worden de ondersteunde typen netwerkstuurprogramma's kort beschreven en wordt uitgelegd welke secties van de sectie Netwerk u moet lezen voordat u elk type netwerkstuurprogramma schrijft.
Deze ontwerphandleiding voor netwerkstuurprogramma's documenteren de volgende NDIS-interfaces (Network Driver Interface Specification):
NDIS 6.40, dat wordt ondersteund in Windows 8.1, Windows Server 2012 R2 en latere versies van Windows. NDIS 6.30 bevat ondersteuning voor Network Direct Kernel Provider Interface (NDKPI) 1.12.
Zie Inleiding tot NDIS 6.40voor meer informatie over NDIS 6.30.
NDIS 6.30, die wordt ondersteund in Windows 8, Windows Server 2012 en latere versies van Windows. NDIS 6.30 bevat ondersteuning voor single root/I/O virtualisatie (SR-IOV), Hyper-V uitbreidbare switch, Network Direct Kernel Provider Interface (NDKPI) 1.1 en andere services.
Zie Inleiding tot NDIS 6.30voor meer informatie over NDIS 6.30.
NDIS 6.20, die wordt ondersteund in Windows 7, Windows Server 2008 R2 en latere versies van Windows. NDIS 6.20 bevat ondersteuning voor Virtual Machine Queue (VMQ), vertraging aan de ontvangstzijde en andere services.
Zie Inleiding tot NDIS 6.20voor meer informatie over NDIS 6.20 .
NDIS 6.1, die wordt ondersteund op Windows Vista met Service Pack 1 (SP1), Windows Server 2008 en nieuwere versies van Windows. NDIS 6.1 bevat ondersteuning voor het splitsen van headergegevens, directe OID-aanvragen en andere services.
Zie Inleiding tot NDIS 6.1voor meer informatie over NDIS 6.1.
NDIS 6.0, dat wordt ondersteund op Windows Vista en latere versies van Windows. NDIS 6.0 bevat ondersteuning voor filterstuurprogramma's en veel aanvullende services die niet zijn geleverd door eerdere NDIS-versies. NDIS 6.0 bevat belangrijke updates voor het initialiseren van stuurprogramma's en netwerkgegevensbeheer, inclusief vereiste ondersteuning voor herconfiguratie van stuurprogramma's tijdens runtime en de NET_BUFFER-architectuur voor het verwerken van netwerkpakketgegevens. Voor meer informatie over het ondersteunen van runtime-herconfiguratie, zie Driver Stack Management. Zie NET_BUFFER Architecturevoor meer informatie over het verwerken van netwerkpakketgegevens in NDIS 6.0.
Zie Inleiding tot NDIS 6.0voor meer informatie over NDIS 6.0.
Windows Vista en latere versies van het besturingssysteem ondersteunen de volgende typen NDIS-gebaseerde netwerkstuurprogramma's in de kernelmodus:
Miniport-stuurprogramma's
Een minipoortstuurprogramma beheert minipoortadapters en biedt een interface voor de adapters voor stuurprogramma's op een hoger niveau. Een minipoortadapter is een conceptuele entiteit die een fysiek apparaat of een virtueel apparaat kan vertegenwoordigen. Een minipoortadapter kan bijvoorbeeld een netwerkinterfacekaart (NIC) of een virtueel apparaat vertegenwoordigen dat is gekoppeld aan een tussenliggend stuurprogramma.
Er zijn veel variaties van minipoortstuurprogramma's, zoals een verbindingsgeoriënteerd miniport-oproepbeheer (MCM), een WDM-minipoortstuurprogramma (Windows Driver Model), en de bovenrand van een tussenliggend stuurprogramma.
Protocolstuurprogramma's
Een protocolstuurprogramma biedt services op hoog niveau in een stuurprogrammastack. Een protocolstuurprogramma verbindt zich met onderliggende minipoortadapters. Een protocolstuurprogramma op het hoogste niveau implementeert een interface, mogelijk een toepassingsspecifieke interface, aan de bovenrand om services te bieden aan gebruikers van het netwerk. Aan de onderrand biedt een protocolstuurprogramma een protocolinterface om netwerkgegevens door te geven aan en binnenkomende gegevens te ontvangen van het volgende lagere stuurprogramma.
Er zijn veel variaties van protocolstuurprogramma's, zoals een connection-oriented call manager (MCM), een verbindingsgerichte client, en de onderrand van een tussenliggend stuurprogramma.
Filterstuurprogramma's
Een filterstuurprogramma filtert informatie over de interface tussen protocolstuurprogramma's en minipoortstuurprogramma's.
Filtermodules zijn gekoppeld aan de binding tussen het protocolstuurprogramma en de minipoortadapter en zijn over het algemeen transparant voor de andere stuurprogramma's. Filterstuurprogramma's kunnen wijzigen of controleren van filters implementeren. Een filterstuurprogramma kan bijvoorbeeld de services verbeteren die de onderliggende minipoortadapter biedt of gewoon statistieken verzamelen.
tussenliggende stuurprogramma's
Een tussenliggend stuurprogramma interfaces tussen protocolstuurprogramma's op het hoogste niveau en minipoortstuurprogramma's. Tussenliggende stuurprogramma's hebben aan de bovenzijde een miniportstuurprogramma-interface om verbinding te maken met overliggende protocolstuurprogramma's. Tussenliggende stuurprogramma's bieden een interface voor protocolstuurprogramma's aan hun onderrand om verbinding te maken met onderliggende minipoortadapters. Tussenliggende stuurprogramma's worden doorgaans gebruikt om n naar m multiplexerdiensten te implementeren. Een tussenliggend stuurprogramma kan bijvoorbeeld load balance- en failover-oplossingen implementeren.
Tussenliggende stuurprogramma's kunnen ook hardware beheren wanneer ze zijn geconfigureerd als een miniport-tussenliggend stuurprogramma.
Voor meer informatie over de Windows-netwerkarchitectuur en programmeeroverwegingen, zie Network Architecture for Kernel-Mode Drivers en Network Driver Programming Considerations.
Zie Network Components installerenvoor meer informatie over netwerk-INF-bestanden die worden gebruikt voor het installeren van netwerkonderdelen. Als uw netwerkstuurprogramma bijvoorbeeld een meldingsobject vereist, bijvoorbeeld om bindingen te beheren, raadpleegt u ook Objecten waarschuwen voor netwerkonderdelen.
De volgende aanvullende stuurprogrammamodellen zijn beschikbaar voor het gebruik van bepaalde hardwaretechnologieën en architecturen.
Technologie | Beschrijving |
---|---|
Netwerktechnologieën die de offload van taken naar een netwerkadapter ondersteunen, zoals de volgende:
|
|
Netwerktechnologieën die ondersteuning bieden voor Hyper-V virtualisatieomgevingen, zoals de volgende: |
|
Netwerkmogelijkheden met systeemeigen 802.11 Draadloze LAN. |
|
Een systeemfaciliteit waarmee een stuurprogramma netwerkmodules aan elkaar kan koppelen. |
|
Een NPI (Network Programming Interface) in de kernelmodus. |
|
Een set hulpprogrammafuncties waarmee stuurprogramma's informatie over de netwerkconfiguratie van de lokale computer kunnen ophalen en wijzigen. |
|
Een kernelmodusinterface die grondige inspectie, pakketwijziging, stroomwijziging en logboekregistratie van netwerkgegevens mogelijk maakt. |
|
Een type netwerkverbinding die Gebruikmaakt van Windows Sockets Direct ter ondersteuning van een netwerk met hoge prestaties, verbindingsgeoriënteerd. |
|
Een klassespecificatie waarmee een door het systeem geleverd, busonafhankelijk bericht wordt gedefinieerd via een USB-bus. |