NDIS_RECEIVE_QUEUE_PARAMETERS estrutura (ntddndis.h)
A estrutura NDIS_RECEIVE_QUEUE_PARAMETERS contém os parâmetros de configuração de uma fila de recebimento.
Sintaxe
typedef struct _NDIS_RECEIVE_QUEUE_PARAMETERS {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
NDIS_RECEIVE_QUEUE_TYPE QueueType;
NDIS_RECEIVE_QUEUE_ID QueueId;
NDIS_RECEIVE_QUEUE_GROUP_ID QueueGroupId;
GROUP_AFFINITY ProcessorAffinity;
ULONG NumSuggestedReceiveBuffers;
ULONG MSIXTableEntry;
ULONG LookaheadSize;
NDIS_VM_NAME VmName;
NDIS_QUEUE_NAME QueueName;
ULONG PortId;
ULONG InterruptCoalescingDomainId;
NDIS_QOS_SQ_ID QosSqId;
} NDIS_RECEIVE_QUEUE_PARAMETERS, *PNDIS_RECEIVE_QUEUE_PARAMETERS;
Membros
Header
O tipo, a revisão e o tamanho da estrutura NDIS_RECEIVE_QUEUE_PARAMETERS. Esse membro é formatado como uma estrutura NDIS_OBJECT_HEADER.
O driver de miniporto deve definir o membro tipo do de cabeçalho para NDIS_OBJECT_TYPE_DEFAULT. Para especificar a versão da estrutura de NDIS_NIC_SWITCH_CAPABILITIES, o driver deve definir o membro de Revisão do de Cabeçalho para um dos seguintes valores:
NDIS_NIC_SWITCH_VPORT_PARAMETERS_REVISION_3
Adicionado o campo QosSqId para NDIS 6.50.
Defina o membro tamanho do como NDIS_SIZEOF_NIC_SWITCH_VPORT_PARAMETERS_REVISION_3.
NDIS_RECEIVE_QUEUE_PARAMETERS_REVISION_2
Membros adicionais adicionados para o NDIS 6.30.
Defina o membro tamanho do como NDIS_SIZEOF_RECEIVE_QUEUE_PARAMETERS_REVISION_2.
NDIS_RECEIVE_QUEUE_PARAMETERS_REVISION_1
Versão original do NDIS 6.20.
Defina o membro tamanho como NDIS_SIZEOF_RECEIVE_QUEUE_PARAMETERS_REVISION_1.
Flags
Um valor ULONG que contém um OR bit a bit dos sinalizadores a seguir. Os sinalizadores a seguir são válidos para o OID OID_RECEIVE_FILTER_ALLOCATE_QUEUE e o conjunto de OID_RECEIVE_FILTER_QUEUE_PARAMETERS e consultar o OID:
NDIS_RECEIVE_QUEUE_PARAMETERS_PER_QUEUE_RECEIVE_INDICATION
O driver de miniporto não deve misturar pacotes de rede para outras filas de recebimento com os pacotes dessa fila em uma única chamada para a função NdisMIndicateReceiveNetBufferLists.
NDIS_RECEIVE_QUEUE_PARAMETERS_LOOKAHEAD_SPLIT_REQUIRED
O adaptador de rede deve dividir um pacote recebido em um deslocamento igual ou maior que o tamanho do lookahead solicitado e usar o DMA para transferir os dados lookahead e os dados pós-lookahead para segmentos de memória compartilhados separados.
Nota
A partir do NDIS 6.30, não há mais suporte para a divisão de dados de pacote em buffers lookahead separados. Os drivers de miniport que dão suporte ao NDIS 6.30 ou versões posteriores devem ignorar esse sinalizador.
Os sinalizadores a seguir são válidos para a OID de conjunto de OID_RECEIVE_FILTER_QUEUE_PARAMETERS e NDIS_STATUS_RECEIVE_FILTER_QUEUE_PARAMETERS indicação de status:
NDIS_RECEIVE_QUEUE_PARAMETERS_FLAGS_CHANGED
A configuração no membro sinalizadores do foi alterada.
NDIS_RECEIVE_QUEUE_PARAMETERS_PROCESSOR_AFFINITY_CHANGED
A configuração no membro ProcessorAffinity foi alterada.
NDIS_RECEIVE_QUEUE_PARAMETERS_SUGGESTED_RECV_BUFFER_NUMBERS_CHANGED
A configuração no membro NumSuggestedReceiveBuffers foi alterada.
NDIS_RECEIVE_QUEUE_PARAMETERS_NAME_CHANGED
A configuração no membro QueueName foi alterada.
Nota
Um driver determina quais parâmetros de fila de recebimento foram alterados executando uma operação de AND bit a bit entre a definição de NDIS_RECEIVE_QUEUE_PARAMETERS_CHANGE_MASK e o valor no membro sinalizadores do. Se o resultado for zero, nenhum parâmetro de fila de recebimento foi alterado.
QueueType
Um valor de enumeração NDIS_RECEIVE_QUEUE_TYPE que especifica o tipo da fila de recebimento.
QueueId
Um valor de tipo NDIS_RECEIVE_QUEUE_ID que contém um identificador de fila de recebimento. Esse identificador é um valor inteiro entre zero e o número de filas que o adaptador de rede dá suporte. Um valor de NDIS_DEFAULT_RECEIVE_QUEUE_ID especifica a fila de recebimento padrão.
QueueGroupId
Este membro é reservado para NDIS.
ProcessorAffinity
Um valor GROUP_AFFINITY que especifica o número do grupo e um bitmap das CPUs às quais essa fila pode ser associada. Pelo menos um processador deve ser especificado. Portanto, o valor não deve ser zero.
NumSuggestedReceiveBuffers
Um valor ULONG que contém um valor sugerido para o número de buffers de recebimento que o adaptador de rede deve usar para dar suporte à fila. Esse número pode ser ajustado em relação aos recursos que o driver de miniporto tem disponíveis ou proporcionalmente ao número que o adaptador de rede usa para outras filas. Por exemplo, o número real de buffers de recebimento pode ser o dobro ou metade desse valor sugerido.
MSIXTableEntry
Este membro é reservado para NDIS.
LookaheadSize
Um valor ULONG para o tamanho, em bytes, do requisito de tamanho lookahead para essa fila. Um adaptador de rede que dá suporte a lookahead em filas de VM divide um pacote recebido em um deslocamento igual ou maior que o tamanho do lookahead solicitado e usa o DMA para transferir os dados lookahead e os dados pós-lookahead para segmentos de memória compartilhada separados. Se o LookaheadSize for zero, o driver de miniporto não deverá dividir o pacote.
LookaheadSize é válido quando o NDIS define o sinalizador NDIS_RECEIVE_QUEUE_PARAMETERS_LOOKAHEAD_SPLIT_REQUIRED no membro sinalizadores do. Ou seja, o driver de miniporto deve dividir o pacote no tamanho do lookahead especificado se o sinalizador também estiver definido. Se o sinalizador estiver claro, um valor diferente de zero para LookaheadSize será inválido.
Nota
A partir do NDIS 6.30, não há mais suporte para a divisão de dados de pacote em buffers lookahead separados. O valor desse membro deve ser zero.
VmName
Um valor NDIS_VM_NAME que contém a descrição da máquina virtual que os usuários leem.
QueueName
Um valor NDIS_QUEUE_NAME que contém a descrição da fila que os usuários leem.
PortId
Um valor ULONG que contém o identificador exclusivo de uma porta no Hyper-V comutador extensível ao qual a fila de VM está anexada.
InterruptCoalescingDomainId
Este membro é reservado para NDIS.
QosSqId
Associa uma VMQ (Fila de Máquina Virtual) a uma Fila do Agendador (SQ). Defina esse campo como zero para nenhuma associação SQ. Para obter mais informações sobre NDIS_QOS_SQ_ID, consulte OID_QOS_OFFLOAD_CREATE_SQ.
O suporte à QoS (Qualidade de Serviço de Hardware) para O VMQ herdado não é necessário. O driver de miniporto poderá retornar NDIS_STATUS_NOT_SUPPORTED se QosSqId não for zero.
Observações
A estrutura de NDIS_RECEIVE_QUEUE_PARAMETERS é usada no OID OID_RECEIVE_FILTER_ALLOCATE_QUEUE e no OID OID_RECEIVE_FILTER_QUEUE_PARAMETERS.
No NDIS 6.30, a estrutura de NDIS_RECEIVE_QUEUE_PARAMETERS também é usada em indicações de status NDIS_STATUS_RECEIVE_FILTER_QUEUE_PARAMETERS.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Com suporte no NDIS 6.20 e posterior. |
servidor com suporte mínimo | Windows Server 2022 |
cabeçalho | ntddndis.h (inclua Ndis.h) |
Consulte também
NDIS_STATUS_RECEIVE_FILTER_QUEUE_PARAMETERS
NdisMIndicateReceiveNetBufferLists