Delen via


Opsommingstrefwoorden

NDIS 6.0 en latere versies van NDIS bieden gestandaardiseerde opsommingstrefwoorden voor minipoortstuurprogramma's van netwerkapparaten. Opsommingstrefwoorden zijn gekoppeld aan waarden die worden weergegeven als een lijst in een menu.

In het volgende voorbeeld ziet u een INF-bestandsdefinitie voor een opsommingstrefwoord.

HKR, Ndi\params\<SubkeyName>, ParamDesc, 0, "%<SubkeyName>%"
HKR, Ndi\params\<SubkeyName>, Type, 0, "enum"
HKR, Ndi\params\<SubkeyName>, Default, 0, "3"
HKR, Ndi\params\<SubkeyName>, Optional, 0, "0"
HKR, Ndi\params\<SubkeyName>\enum, "0", 0, "%Disabled%"
HKR, Ndi\params\<SubkeyName>\enum, "1", 0, "%Tx Enabled%"
HKR, Ndi\params\<SubkeyName>\enum, "2", 0, "%Rx Enabled%"
HKR, Ndi\params\<SubkeyName>\enum, "3", 0, "%Rx & Tx Enabled%"

De algemene opsommingstrefwoorden zijn:

*SpeedDuplex
Snelheid en duplex-instellingen die een apparaat ondersteunt. In het INF-apparaatbestand moeten alleen de instellingen worden vermeld die door het bijbehorende apparaat worden ondersteund. Dat wil gezegd dat voor een Ethernet 10/100-apparaat dat alleen full-duplex-modus kan ondersteunen, instellingen voor Gigabit of hogere snelheden of halve duplex niet moeten worden vermeld in het bijbehorende INF-bestand.

Snelheidswaarden die niet specifiek zijn gedefinieerd met geïnventareerde waarden van 0 tot en met 10, kunnen worden ingesteld als een getal dat de waarde rechtstreeks in Mbps is. Directe waarden moeten ten minste 1000 Mbps (1 Gbps) en hoger zijn. Hier volgen enkele voorbeelden voor het rechtstreeks opgeven van de snelheid:

SpeedDuplex-waarde Resulterende snelheid
1,000 1 Gbps
10.000 10 Gbps
25,000 25 Gbps
50,000 50 Gbps
100,000 100 Gbps

*FlowControl
De mogelijkheid voor het apparaat om stroombeheer in of uit te schakelen in het verzend- of ontvangstpad.

Notitie Ethernet-apparaten ondersteunen momenteel stroombeheer en de Windows 8-stuurprogramma's voor LAN hebben standaard stroombeheer ingeschakeld. Wanneer een kernel-debugger wordt gekoppeld aan een van deze LAN-adapters, begint de NIC met het pushen van flow control pauzeframes in het netwerk. De meeste netwerkswitches reageren door het netwerk tijdelijk uit te schakelen voor alle andere computers die zijn verbonden met dezelfde hub. Dit is een veelvoorkomend ontwikkelingsscenario en de eindgebruikerservaring is zowel ongewenst als moeilijk te diagnosticeren.

Notitie De standaardinstellingen voor clients en servers zijn niet hetzelfde; raadpleeg de onderstaande tabel met standaardwaarden.

Daarom schakelt NDIS in Windows 8 en hoger stroombeheer automatisch uit wanneer foutopsporing is ingeschakeld op de computer (bijvoorbeeld door bcdedit /set foutopsporing in te stellen op de opdrachtregel). Wanneer kernelfoutopsporing is ingeschakeld en de miniport NdisReadConfiguration aanroept en '*FlowControl' doorgeeft voor de parameter Trefwoord , overschrijft NDIS de geconfigureerde waarde en retourneert nul.

Als u stroombeheer wilt inschakelen tijdens foutopsporing, biedt NDIS de registerwaarde AllowFlowControlUnderDebugger zodat u dat kunt doen. Met de registerwaarde AllowFlowControlUnderDebugger voorkomt u dat NDIS stroombeheer uitschakelt en kunnen NIC's hun geconfigureerde gedrag behouden. Deze vindt u onder de volgende registersleutel:

\ HKEY_LOCAL_MACHINESysteem\CurrentControlSet\Diensten\NDIS\Parameters

Stel deze registerwaarde in op 0x00000001.

Als deze niet bestaat, kunt u een waarde maken met de naam AllowFlowControlUnderDebugger en het type REG_DWORD en deze instellen op 0x00000001.

*PriorityVLANTag
Een waarde die aangeeft of het apparaat de mogelijkheid heeft ingeschakeld of uitgeschakeld om de 802.1Q-tags in te voegen voor pakketprioriteit en virtuele LAN's (VLAN's). Dit trefwoord geeft niet aan of het apparaat pakketprioriteit of VLAN-tags heeft ingeschakeld of uitgeschakeld. In plaats daarvan wordt het volgende beschreven:

  • Of het apparaat 802.1Q-tags invoegt tijdens een verzendbewerking
  • Of 802.1Q-taggegevens beschikbaar zijn in de NET_BUFFER_LIST out-of-band -informatie (OOB)
  • Of het apparaat 802.1Q-tags kopieert naar OOB tijdens ontvangstbewerkingen

Het minipoortstuurprogramma moet de 802.1Q-header verwijderen uit alle ontvangen pakketten, ongeacht de instelling *PriorityVLANTag . Als de header 802.1Q overblijft in een pakket, kunnen andere stuurprogramma's het pakket mogelijk niet correct parseren.

Als de Rx-vlag is ingeschakeld op het ontvangstpad, moet het minipoortstuurprogramma de verwijderde 802.1Q-header naar OOB kopiëren.

Als de Rx-vlag is uitgeschakeld, mag het minipoortstuurprogramma de verwijderde 802.1Q-header niet naar OOB kopiëren.

Als de tx-vlag is ingeschakeld op het verzendpad, moet het minipoortstuurprogramma het volgende doen:

  • Voeg de 802.1Q-header in elk uitgaand pakket in en vul deze in met de gegevens van OOB (als er niet-nul gegevens in OOB bestaan).
  • De juiste MacOptions adverteren in NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES (NDIS_MAC_OPTION_8021P_PRIORITY en NDIS_MAC_OPTION_8021Q_VLAN).

Als de Tx-vlag is uitgeschakeld, dan:

  • Het miniportfilter moet geen 802.1Q-informatie in OOB verwerken (en dus geen tag toevoegen).
  • Het minipoortfilter moet geen relevante MacOptions aankondigen in NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES.

Notitie Als het minipoortstuurprogramma NDIS Quality of Service (QoS) ondersteunt, moet het ook de * QOS-trefwoordwaarde lezen. Op basis van de *QOS-trefwoordwaarde worden de * PriorityVLANTag-trefwoordwaarden anders geïnterpreteerd. Zie Gestandaardiseerde INF-trefwoorden voor NDIS QoSvoor meer informatie.

*InterruptModeration
Een waarde die beschrijft of het apparaat onderbrekingsbeheer heeft ingeschakeld of uitgeschakeld. Algoritmen voor onderbrekingsbeheer zijn apparaatafhankelijk. De fabrikant van het apparaat kan niet-gestandaardiseerde trefwoorden gebruiken om algoritmen te ondersteunen. Zie Onderbrekingsbeheer voor meer informatie over onderbrekingsbeheer.

*RSS
Een waarde die beschrijft of het schalen aan de ontvangstzijde van het apparaat is ingeschakeld of uitgeschakeld (RSS). Zie Schalen aan de ontvangstzijdevoor meer informatie over RSS.

*HeaderDataSplit
Een waarde die aangeeft of het apparaat header-data split heeft ingeschakeld of uitgeschakeld. Zie Header-Data Splitvoor meer informatie over het splitsen van headergegevens.

De volgende trefwoorden zijn gekoppeld aan offloadservices voor verbindingen:

*TCPConnectionOffloadIPv4

*TCPConnectionOffloadIPv6

Zie Registerwaarden gebruiken om offloading van verbindingen in- en uit te schakelen voor meer informatie over de trefwoorden voor het offloaden van verbindingen.

De volgende trefwoorden zijn gekoppeld aan taakoverdrachtsdiensten.

*IPChecksumOffloadIPv4

*TCPChecksumOffloadIPv4

*TCPChecksumOffloadIPv6

*UDPChecksumOffloadIPv4

*UDPChecksumOffloadIPv6

*LsoV1IPv4

*LsoV2IPv4

Notitie Voor apparaten die ondersteuning bieden voor zowel grote offloadversie 1 (LSOv1) als LSOv2 via IPv4, moet alleen het sleutelwoord *LsoV2IPv4 worden gebruikt in het INF-bestand en de registerwaarden. Als bijvoorbeeld het trefwoord *LsoV2IPv4 wordt weergegeven in het INF-bestand en het trefwoord *LsoV1IPv4 wordt weergegeven in het register (of omgekeerd), heeft het sleutelwoord *LsoV2IPv4 altijd voorrang.

*LsoV2IPv6

*IPsecOffloadV1IPv4

*IPsecOffloadV2

*IPsecOffloadV2IPv4

*TCPUDPChecksumOffloadIPv4

*TCPUDPChecksumOffloadIPv6

Zie Registerwaarden gebruiken om taak offloading in en uit te schakelen voor meer informatie over de TCP/IP-offloadtrefwoorden.

De kolommen in de tabel aan het einde van dit onderwerp beschrijven de volgende kenmerken voor opsommingstrefwoorden:

Subsleutelnaam
De naam van het trefwoord dat u moet opgeven in het INF-bestand en die wordt weergegeven in het register.

ParamDesc
De weergavetekst die is gekoppeld aan SubkeyName.

Waarde
De opsommingswaarde voor een geheel getal dat is gekoppeld aan elke optie in de lijst. Deze waarde wordt opgeslagen in NDI\params\SubkeyName Value\.

EnumDesc
De weergavetekst die is gekoppeld aan elke waarde die in het menu wordt weergegeven.

Verstek
De standaardwaarde voor het menu.

De volgende tabel bevat alle trefwoorden en beschrijft de waarden die een stuurprogramma moet gebruiken voor de voorgaande kenmerken. Zoek naar het trefwoord in de WDK-documentatie voor meer informatie over een trefwoord.

Subsleutelnaam ParamDesc Waarde EnumDesc
*SpeedDuplex Snelheid & Duplex 0 (standaard) Automatische onderhandeling
1 10 Mbps Half Duplex
2 10 Mbps Full Duplex
3 100 Mbps Half Duplex
4 100 Mbps Full Duplex
5 1,0 Gbps Half Duplex
6 1,0 Gbps Full Duplex
7 10 Gbps Full Duplex
8 20 Gbps Volledig Dublex
9 40 Gbps Full Duplex
10 100 Gbps Full Duplex
*FlowControl Stroombeheer 0 (standaardserver) Tx & Rx uitgeschakeld
1 Tx ingeschakeld
2 Rx ingeschakeld
3 (standaard client) Rx & Tx ingeschakeld
4 Automatische onderhandeling
*PriorityVLANTag Pakketprioriteit en VLAN 0 Pakketprioriteit en VLAN uitgeschakeld
1 Pakketprioriteit ingeschakeld
2 VLAN ingeschakeld
3 (standaard) Pakketprioriteit en VLAN ingeschakeld
*InterruptModeration Onderbrekingsmoderatie 0 Uitgeschakeld
1 (standaard) Ingeschakeld
*RSS Schaalverdeling aan de ontvangstkant 0 Uitgeschakeld
1 (standaard) Ingeschakeld
*HeaderDataSplit Koptekstgegevens splitsen 0 (standaard) Uitgeschakeld
1 Ingeschakeld
*TCPConnectionOffloadIPv4 Uitbesteden van TCP-verbindingen (IPv4) 0 Uitgeschakeld
1 (standaard) Ingeschakeld
*TCPConnectionOffloadIPv6 Offload van TCP-verbinding (IPv6) 0 Uitgeschakeld
1 (standaard) Ingeschakeld
*IPChecksumOffloadIPv4 IPv4 Checksum Offload 0 Uitgeschakeld
1 Tx ingeschakeld
2 Rx ingeschakeld
3 (standaard) Rx & Tx ingeschakeld
*TCPChecksumOffloadIPv4 TCP Checksum Offload (IPv4) 0 Uitgeschakeld
1 Tx ingeschakeld
2 Rx ingeschakeld
3 (standaard) Rx & Tx ingeschakeld
*TCPChecksumOffloadIPv6 TCP Checksum Offload (IPv6) 0 Uitgeschakeld
1 Tx ingeschakeld
2 Rx ingeschakeld
3 (standaard) Rx & Tx ingeschakeld
*UDPChecksumOffloadIPv4 UDP Checksum Offload (IPv4) 0 Uitgeschakeld
1 Tx ingeschakeld
2 Rx ingeschakeld
3 (standaard) Rx & Tx ingeschakeld
*UDPChecksumOffloadIPv6 UDP Checksum Offload (IPv6) 0 Uitgeschakeld
1 Tx ingeschakeld
2 Rx ingeschakeld
3 (standaard) Rx & Tx ingeschakeld
*LsoV1IPv4 Large Send Offload Versie 1 (IPv4) 0 Uitgeschakeld
1 (standaard) Ingeschakeld
*LsoV2IPv4 Large Send Offload versie 2 (IPv4) 0 Uitgeschakeld
1 (standaard) Ingeschakeld
*LsoV2IPv6 Large Send Offload versie 2 (IPv6) 0 Uitgeschakeld
1 (standaard) Ingeschakeld
*IPsecOffloadV1IPv4 IPsec-offload versie 1 (IPv4) 0 Uitgeschakeld
1 Authenticatieheader ingeschakeld
2 ESP ingeschakeld
3 (standaard) Authenticatieheader & ESP ingeschakeld
*IPsecOffloadV2 IPsec Offload 0 Uitgeschakeld
1 Authenticatieheader ingeschakeld
2 ESP ingeschakeld
3 (standaard) Authenticatieheader & ESP ingeschakeld
*IPsecOffloadV2IPv4 IPsec Offload (alleen IPv4) 0 Uitgeschakeld
1 Auth-header ingeschakeld
2 ESP ingeschakeld
3 (standaard) Authenticatieheader en ESP ingeschakeld
*TCPUDPChecksumOffloadIPv4 TCP/UDP Checksum Offload (IPv4) 0 Uitgeschakeld
1 Tx ingeschakeld
2 Rx ingeschakeld
3 (standaard) Tx en Rx ingeschakeld
*TCPUDPChecksumOffloadIPv6 TCP/UDP Checksum Offload (IPv6) 0 Uitgeschakeld
1 Tx ingeschakeld
2 Rx ingeschakeld
3 (standaard) Tx en Rx ingeschakeld