estrutura NDIS_NET_BUFFER_LIST_8021Q_INFO (ndis/nbl8021q.h)

A estrutura NDIS_NET_BUFFER_LIST_8021Q_INFO especifica informações de 802.1Q associadas a uma estrutura NET_BUFFER_LIST .

Sintaxe

typedef struct _NDIS_NET_BUFFER_LIST_8021Q_INFO {
  union {
    struct {
      UINT32 UserPriority : 3;
      UINT32 CanonicalFormatId : 1;
      UINT32 VlanId : 12;
      UINT32 Reserved : 16;
    } TagHeader;
    struct {
      UINT32 UserPriority : 3;
      UINT32 CanonicalFormatId : 1;
      UINT32 VlanId : 12;
      UINT32 WMMInfo : 4;
      UINT32 Reserved : 12;
    } WLanTagHeader;
    PVOID Value;
  };
} NDIS_NET_BUFFER_LIST_8021Q_INFO, *PNDIS_NET_BUFFER_LIST_8021Q_INFO;

Membros

TagHeader

Um membro da união contido em NDIS_NET_BUFFER_LIST_8021Q_INFO. 802.3 Drivers de miniporta Ethernet usam TagHeader para acessar informações de 802.1Q. TagHeader é um campo de bits com os seguintes membros:

TagHeader.UserPriority

Especifica informações de prioridade 802.1p que são usadas para estabelecer prioridade de pacote em redes de mídia compartilhada 802. Os bits neste membro especificam um valor de prioridade de 802,1p.

TagHeader.CanonicalFormatId

Esse membro deve ser definido como zero, o que indica que todas as informações de endereço MAC presentes em um pacote estão em formato canônico (ou seja, forma mais simples).

TagHeader.VlanId

Identifica a VLAN à qual um pacote pertence. Os pacotes de saída são marcados com o identificador de VLAN.

TagHeader.Reserved

Esse membro é reservado e deve ser definido como zero.

WLanTagHeader

Um membro da união contido em NDIS_NET_BUFFER_LIST_8021Q_INFO. Drivers de miniporta nativos 802.11 usam WLanTagHeader para acessar informações do 802.1Q. WLanTagHeader é um campo de bits com os seguintes membros:

WLanTagHeader.UserPriority

Especifica informações de prioridade 802.1p que são usadas para estabelecer prioridade de pacote em redes de mídia compartilhada 802. Os bits neste membro especificam um valor de prioridade de 802,1p.

WLanTagHeader.CanonicalFormatId

Esse membro deve ser definido como zero, o que indica que todas as informações de endereço MAC presentes em um pacote estão em formato canônico (ou seja, forma mais simples).

WLanTagHeader.VlanId

Identifica a VLAN à qual um pacote pertence. Os pacotes de saída são marcados com o identificador de VLAN.

WLanTagHeader.WMMInfo

Um valor inteiro de multimídia sem fio (WMM) que é o mesmo que os campos de identificador de tráfego (TID) que aparecem em determinados quadros que são usados para entregar e controlar a entrega de dados de QoS (Qualidade de Serviço) 802.1Q. Os valores de 0 a 7 representam UPs (prioridades de usuário) de QoS para as MSDUs (unidades de dados de serviço) MAC. Os valores de 8 a 15 são reservados. Portanto, o bit mais alto em WMMInfo deve ser zero.

Nota Não há suporte para TSPEC (especificação de tráfego) e TCLAS (classificação de tráfego).
 

WLanTagHeader.Reserved

Esse membro é reservado e deve ser definido como zero.

Value

Um membro da união contido em NDIS_NET_BUFFER_LIST_8021Q_INFO. Value contém um valor de ponteiro compatível com o tipo com o membro NetBufferListInfo na estrutura NET_BUFFER_LIST .

Comentários

Para recuperar ou inserir informações de 802.1Q associadas a uma estrutura NET_BUFFER_LIST , um driver NDIS chama a macro NET_BUFFER_LIST_INFO e especifica o tipo de informação Ieee8021QNetBufferListInfo .

A macro NET_BUFFER_LIST_INFO retorna o ponteiro especificado no membro Value da estrutura NDIS_NET_BUFFER_LIST_8021Q_INFO. O driver NDIS pode usar o membro TagHeader ou WLanTagHeader da união para acessar tipos específicos de informações, como prioridade 802.1p e informações de identificador de VLAN. O membro WLanTagHeader fornece acesso às informações de multimídia sem fio (WMM), além das informações disponíveis por meio do membro TagHeader .

Os drivers de miniporta que dão suporte à marca 802.1Q em hardware devem usar a estrutura NDIS_NET_BUFFER_LIST_8021Q_INFO para operações de transmissão e recebimento:

  • Para operações de transmissão, o driver de miniporto deve marcar para NDIS_NET_BUFFER_LIST_8021Q_INFO dados OOB na estrutura NET_BUFFER_LIST. O driver de miniporta deve garantir que o hardware crie a marca 802.1Q com base nas especificações do NDIS_NET_BUFFER_LIST_8021Q_INFO e insira-a no quadro Ethernet.
  • Para operações de recebimento, o driver de miniporto deve remover a marca 802.1Q do quadro Ethernet e mapear as informações da marca 802.1Q para a NDIS_NET_BUFFER_LIST_8021Q_INFO dados OOB na estrutura NET_BUFFER_LIST antes de indicar os dados para o NDIS com o Função NdisMIndicateReceiveNetBufferLists .

Requisitos

Requisito Valor
Cliente mínimo com suporte Com suporte no NDIS 6.0 e posterior.
Cabeçalho ndis/nbl8021q.h (include ndis.h)

Confira também

NET_BUFFER_LIST

NET_BUFFER_LIST_INFO

NdisMIndicateReceiveNetBufferLists