Partager via


structure NDIS_NET_BUFFER_LIST_8021Q_INFO (ndis/nbl8021q.h)

La structure NDIS_NET_BUFFER_LIST_8021Q_INFO spécifie les informations 802.1Q associées à une structure NET_BUFFER_LIST.

Syntaxe

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;

Membres

TagHeader

Membre de l’union qui est contenu dans NDIS_NET_BUFFER_LIST_8021Q_INFO. Les pilotes miniport Ethernet 802.3 utilisent TagHeader pour accéder aux informations 802.1Q. tagHeader est un champ de bits avec les membres suivants :

TagHeader.UserPriority

Spécifie les informations de priorité 802.1p utilisées pour établir la priorité des paquets dans les réseaux partagés 802. Les bits de ce membre spécifient une valeur de priorité 802.1p.

TagHeader.CanonicalFormatId

Ce membre doit être défini sur zéro, ce qui indique que toutes les informations d’adresse MAC présentes dans un paquet sont au format canonique (autrement dit, forme la plus simple).

TagHeader.VlanId

Identifie le réseau local virtuel auquel appartient un paquet. Les paquets sortants sont marqués avec l’identificateur VLAN.

TagHeader.Reserved

Ce membre est réservé et doit être défini sur zéro.

WLanTagHeader

Membre de l’union qui est contenu dans NDIS_NET_BUFFER_LIST_8021Q_INFO. Les pilotes miniport natifs 802.11 utilisent WLanTagHeader pour accéder aux informations 802.1Q. WLanTagHeader est un champ de bits avec les membres suivants :

WLanTagHeader.UserPriority

Spécifie les informations de priorité 802.1p utilisées pour établir la priorité des paquets dans les réseaux partagés 802. Les bits de ce membre spécifient une valeur de priorité 802.1p.

WLanTagHeader.CanonicalFormatId

Ce membre doit être défini sur zéro, ce qui indique que toutes les informations d’adresse MAC présentes dans un paquet sont au format canonique (autrement dit, forme la plus simple).

WLanTagHeader.VlanId

Identifie le réseau local virtuel auquel appartient un paquet. Les paquets sortants sont marqués avec l’identificateur VLAN.

WLanTagHeader.WMMInfo

Valeur entière multimédia sans fil (WMM) identique aux champs TID (Traffic Identifier) qui apparaissent dans certaines images utilisées pour fournir et contrôler la livraison des données de qualité de service (QoS) 802.1Q. Les valeurs 0 à 7 représentent les priorités utilisateur qoS (UPS) pour les unités de données de service MAC (MSDUS). Les valeurs 8 à 15 sont réservées. Par conséquent, le bit le plus élevé dans WMMInfo doit être égal à zéro.

Remarque Spécification du trafic (TSPEC) et classification du trafic (TCLAS) ne sont pas pris en charge.
 

WLanTagHeader.Reserved

Ce membre est réservé et doit être défini sur zéro.

Value

Membre de l’union qui est contenu dans NDIS_NET_BUFFER_LIST_8021Q_INFO. valeur contient une valeur de pointeur compatible avec le membre NetBufferListInfo dans la structure NET_BUFFER_LIST.

Remarques

Pour récupérer ou insérer des informations 802.1Q associées à une structure NET_BUFFER_LIST, un pilote NDIS appelle la macro NET_BUFFER_LIST_INFO et spécifie le type d’informations Ieee8021QNetBufferListInfo.

La macro NET_BUFFER_LIST_INFO retourne le pointeur spécifié dans le membre Valeur de la structure NDIS_NET_BUFFER_LIST_8021Q_INFO. Le pilote NDIS peut utiliser le TagHeader ou WLanTagHeader membre de l’union pour accéder à des types d’informations spécifiques, tels que les informations de priorité 802.1p et d’identificateur VLAN. Le membre WLanTagHeader fournit un accès aux informations multimédia sans fil (WMM) en plus des informations disponibles via le membre TagHeader.

Les pilotes miniport qui prennent en charge la balise 802.1Q dans le matériel doivent utiliser la structure NDIS_NET_BUFFER_LIST_8021Q_INFO pour les opérations de transmission et de réception :

  • Pour les opérations de transmission, le pilote miniport doit rechercher NDIS_NET_BUFFER_LIST_8021Q_INFO données OOB dans la structure NET_BUFFER_LIST. Le pilote miniport doit s’assurer que le matériel crée la balise 802.1Q à partir des spécifications NDIS_NET_BUFFER_LIST_8021Q_INFO et l’insérer dans le cadre Ethernet.
  • Pour les opérations de réception, le pilote miniport doit supprimer la balise 802.1Q du cadre Ethernet et mapper les informations de balise 802.1Q dans les données OOB NDIS_NET_BUFFER_LIST_8021Q_INFO dans la structure NET_BUFFER_LIST avant d’indiquer les données à NDIS avec le NdisMIndicateReceiveNetBufferLists fonction.

Exigences

Exigence Valeur
client minimum pris en charge Prise en charge dans NDIS 6.0 et versions ultérieures.
d’en-tête ndis/nbl8021q.h (include ndis.h)

Voir aussi

NET_BUFFER_LIST

NET_BUFFER_LIST_INFO

NdisMIndicateReceiveNetBufferLists