NDIS_PD_CAPABILITIES struttura (ntddndis.h)
Questa struttura indica le funzionalità PD per un provider.
Sintassi
typedef struct _NDIS_PD_CAPABILITIES {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
ULONG MaximumTxPartialBufferCount;
ULONG MaximumRxPartialBufferCount;
UCHAR RxFilterContextWidth;
ULONG CapabilityFlags;
ULONG MaxNumberOfRxQueues;
ULONG MaxNumberOfTxQueues;
ULONG MaxNumberOfRxQueuesForDefaultVport;
ULONG MaxNumberOfTxQueuesForDefaultVport;
ULONG MaxNumberOfRxQueuesPerNonDefaultVport;
ULONG MaxNumberOfTxQueuesPerNonDefaultVport;
ULONG ExactMatchProfileArrayOffset;
ULONG ExactMatchProfileArrayNumElements;
ULONG ExactMatchProfileArrayElementSize;
ULONG WildcardMatchProfileArrayOffset;
ULONG WildcardMatchProfileArrayNumElements;
ULONG WildcardMatchProfileArrayElementSize;
ULONG MinimumModerationInterval;
ULONG MaximumModerationInterval;
ULONG ModerationIntervalGranularity;
ULONG MaxRxQueueSize;
ULONG MaxTxQueueSize;
} NDIS_PD_CAPABILITIES;
Members
Header
Struttura NDIS_OBJECT_HEADER per la struttura NDIS_PD_CAPABILITIES . Impostare i membri di questa struttura come indicato di seguito:
- Digitare = NDIS_OBJECT_TYPE_DEFAULT
- Revisione = NDIS_PD_CAPABILITIES_REVISION_1
- Dimensione = NDIS_SIZEOF_PD_CAPABILITIES_REVISION_1
Flags
Questo membro è riservato e deve essere impostato su 0.
MaximumTxPartialBufferCount
Lunghezza massima della trasmissione parziale PD_BUFFER supportata dal provider.
MaximumRxPartialBufferCount
La ricezione parziale massima PD_BUFFER lunghezza della catena supportata dal provider.
RxFilterContextWidth
Larghezza del contesto di filtro supportata dal provider. Un provider può supportare fino a 64 bit in larghezza.
CapabilityFlags
Flag che contengono funzionalità aggiuntive supportate dal provider.
Flag | Descrizione |
---|---|
NDIS_PD_CAPS_RECEIVE_FILTER_COUNTERS_SUPPORTED | Questo flag indica che il provider supporta la creazione di contatori con il tipo PDCounterTypeReceiveFilter che fa parte dell'enumerazione NDIS_PD_COUNTER |
MaxNumberOfRxQueues
Numero massimo di code di ricezione supportate dal provider. Ciò è rilevante solo per le code create dalla routine NdisPDAllocateQueue , pertanto questo numero non è accurato per il client perché le code RSS preesistenti aggiuntive (che il client può richiedere l'accesso in modalità PD all'uso di NdisPDOnRssReceiveQueues) non vengono accountate nella routine NdisPDAllocateQueue .
È possibile che i provider impostano questo valore su 0, se supporta solo i client per inserire code RSS preesistenti in modalità PD usando la routine NdisPDOnRssReceiveQueues .
MaxNumberOfTxQueues
Il numero massimo di code di trasmissione che il provider può creare usando la routine NdisPDAllocateQueue . Il provider non deve impostare questo valore su 0.
MaxNumberOfRxQueuesForDefaultVport
Numero massimo di code di ricezione supportate dal provider per la porta virtuale predefinita.
MaxNumberOfTxQueuesForDefaultVport
Numero massimo di code di trasmissione supportate dal provider per la porta virtuale predefinita.
MaxNumberOfRxQueuesPerNonDefaultVport
Numero massimo di code di ricezione supportate dal provider per porte virtuali non predefinite.
MaxNumberOfTxQueuesPerNonDefaultVport
Numero massimo di code di trasmissione supportate dal provider per porte virtuali non predefinite.
ExactMatchProfileArrayOffset
Offset della matrice per una matrice di strutture NDIS_GFP_EXACT_MATCH_PROFILE.
ExactMatchProfileArrayNumElements
Numero di elementi per una matrice di strutture NDIS_GFP_EXACT_MATCH_PROFILE.
ExactMatchProfileArrayElementSize
Numero di elementi per una matrice di strutture NDIS_GFP_EXACT_MATCH_PROFILE.
WildcardMatchProfileArrayOffset
Offset della matrice per una matrice di strutture NDIS_GFP_WILDCARD_MATCH_PROFILE.
WildcardMatchProfileArrayNumElements
Numero di elementi per una matrice di strutture NDIS_GFP_WILDCARD_MATCH_PROFILE.
WildcardMatchProfileArrayElementSize
Numero di elementi per una matrice di strutture NDIS_GFP_WILDCARD_MATCH_PROFILE.
MinimumModerationInterval
MaximumModerationInterval
ModerationIntervalGranularity
MaxRxQueueSize
MaxTxQueueSize
Commenti
Questa struttura deve essere allineata su un limite a 8 byte.
Se il provider ha un'implementazione flessibile in cui supporta un numero massimo di code N, in cui qualsiasi coda può essere usata in modo flessibile come una coda Rx o Tx, il provider deve annunciare ~N/2 per i valori MaxNumberOfRxQueues e MaxNumberOfTxQueues perché i client creano in genere un numero corrispondente di code Rx e Tx.
Se un provider può partizionare in modo flessibile le code Rx o Tx tra le porte virtuali, è possibile usare NDIS_PD_QUEUE_COUNT_DYNAMIC per i conteggi max specifici della porta virtuale.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10 |
Server minimo supportato | Windows Server 2016 |
Intestazione | ntddndis.h (include Ndis.h) |