Compartir a través de


estructura NDIS_RECEIVE_QUEUE_INFO (ntddndis.h)

La estructura NDIS_RECEIVE_QUEUE_INFO contiene información sobre una cola de recepción en un adaptador de red.

Sintaxis

typedef struct _NDIS_RECEIVE_QUEUE_INFO {
  NDIS_OBJECT_HEADER                   Header;
  ULONG                                Flags;
  NDIS_RECEIVE_QUEUE_TYPE              QueueType;
  NDIS_RECEIVE_QUEUE_ID                QueueId;
  NDIS_RECEIVE_QUEUE_GROUP_ID          QueueGroupId;
  NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE QueueState;
  GROUP_AFFINITY                       ProcessorAffinity;
  ULONG                                NumSuggestedReceiveBuffers;
  ULONG                                MSIXTableEntry;
  ULONG                                LookaheadSize;
  NDIS_VM_NAME                         VmName;
  NDIS_QUEUE_NAME                      QueueName;
  ULONG                                NumFilters;
  ULONG                                InterruptCoalescingDomainId;
} NDIS_RECEIVE_QUEUE_INFO, *PNDIS_RECEIVE_QUEUE_INFO;

Miembros

Header

Tipo, revisión y tamaño de la estructura NDIS_RECEIVE_QUEUE_INFO . Este miembro tiene formato de estructura NDIS_OBJECT_HEADER .

El controlador de minipuerto debe establecer el miembro Type de Header en NDIS_OBJECT_TYPE_DEFAULT. Para especificar la versión de la estructura de NDIS_RECEIVE_QUEUE_INFO , el controlador debe establecer el miembro Revision de Header en uno de los valores siguientes:

NDIS_RECEIVE_QUEUE_INFO_REVISION_2

Se han agregado miembros adicionales para NDIS 6.30.

Nota La revisión 2 de esta estructura solo se admite en Windows Server 2012 y versiones posteriores de Windows Server.

Establezca el miembro Size en NDIS_SIZEOF_RECEIVE_QUEUE_INFO_REVISION_2.

NDIS_RECEIVE_QUEUE_INFO_REVISION_1

Versión original de NDIS 6.20.

Establezca el miembro Size en NDIS_SIZEOF_RECEIVE_QUEUE_INFO_REVISION_1.

Flags

Valor de ULONG que contiene un OR bit a bit de marcas. Este miembro está reservado para NDIS.

QueueType

Valor de enumeración NDIS_RECEIVE_QUEUE_TYPE que especifica el tipo de la cola de recepción.

QueueId

Valor de tipo NDIS_RECEIVE_QUEUE_ID que contiene un identificador de cola de recepción. Este identificador es un valor entero entre cero y el número de colas que admite el adaptador de red. Un valor de NDIS_DEFAULT_RECEIVE_QUEUE_ID especifica la cola de recepción predeterminada.

QueueGroupId

Este miembro está reservado para NDIS.

QueueState

Valor de enumeración NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE que especifica el estado operativo de la cola de recepción.

ProcessorAffinity

Mapa de bits de GROUP_AFFINITY que especifica la CPU con la que la cola tiene afinidad. Por ejemplo, si se establece el bit 0, se indica que se usa la CPU 0, el valor del bit 1 indica que se usa la CPU 1, etc. Dado que una cola de máquina virtual está asociada a una CPU, todas las indicaciones de recepción de la cola se controlan en ese procesador.

NumSuggestedReceiveBuffers

Valor de ULONG que contiene un valor sugerido para el número de búferes de recepción que el adaptador de red debe usar para admitir la cola. Este número se puede ajustar en relación con los recursos que el controlador de miniporte tiene disponible o en proporción al número que usa el adaptador de red para otras colas. Por ejemplo, el número real de búferes de recepción podría ser doble o mitad de este valor sugerido.

MSIXTableEntry

Valor de ULONG que contiene el índice de entrada de tabla MSI-X para la cola.

LookaheadSize

Valor de ULONG para el tamaño, en bytes, del requisito de tamaño de lookahead para esta cola. Un adaptador de red que admite lookahead en las colas de máquina virtual divide un paquete recibido en un desplazamiento que es igual o mayor que el tamaño de lookahead solicitado y usa DMA para transferir los datos de lookahead y los datos posteriores a lookahead a segmentos de memoria compartidos independientes.

Nota A partir de NDIS 6.30, ya no se admite la división de datos de paquetes en búferes de lookahead independientes. El valor de este miembro debe establecerse en cero.

VmName

Valor NDIS_VM_NAME que contiene la descripción fácil de usar de la máquina virtual.

QueueName

Valor de NDIS_QUEUE_NAME que contiene la descripción fácil de usar de la cola.

NumFilters

Valor de ULONG que especifica el número de filtros de recepción que se han configurado en el adaptador de red.

Nota A partir de NDIS 6.30, el controlador de minipuerto debe mantener un contador para el número actual de filtros de recepción que se establecen en el adaptador de red. El controlador debe incrementar el contador cada vez que se establece un filtro de recepción a través de una solicitud de conjunto de OID de OID_RECEIVE_FILTER_SET_FILTER. El controlador también debe disminuir el contador cada vez que se borra un filtro de recepción a través de una solicitud de conjunto de OID de OID_RECEIVE_FILTER_CLEAR_FILTER.

InterruptCoalescingDomainId

Valor de ULONG reservado para su uso por NDIS. Este valor se utiliza con fines informativos por el controlador de miniporte.

Comentarios

La estructura NDIS_RECEIVE_QUEUE_INFO se usa con el NDIS_RECEIVE_QUEUE_INFO_ARRAY estructura para OID_RECEIVE_FILTER_ENUM_QUEUES OID que enumera las colas de recepción en un adaptador de red.

Con una devolución correcta de la OID_RECEIVE_FILTER_ENUM_QUEUES, NDIS proporciona una estructura de NDIS_RECEIVE_QUEUE_INFO_ARRAY que define las propiedades de la matriz de colas de recepción. Cada elemento de la matriz es una estructura NDIS_RECEIVE_QUEUE_INFO .

Requisitos

Requisito Value
Cliente mínimo compatible Compatible con NDIS 6.20 y versiones posteriores.
Encabezado ntddndis.h (include Ndis.h)

Consulte también

NDIS_OBJECT_HEADER

NDIS_RECEIVE_QUEUE_INFO_ARRAY

NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE

NDIS_RECEIVE_QUEUE_TYPE

OID_RECEIVE_FILTER_CLEAR_FILTER

OID_RECEIVE_FILTER_ENUM_QUEUES

OID_RECEIVE_FILTER_SET_FILTER